Arps hyperbolic declines

Share:

Description

Compute rates, cumulative production values, and instantaneous nominal declines for Arps hyperbolic decline curves.

Usage

1
2
3
hyperbolic.q(qi, Di, b, t)
hyperbolic.Np(qi, Di, b, t)
hyperbolic.D(Di, b, t)

Arguments

qi

initial rate [volume / time], i.e. q(t = 0).

Di

initial nominal Arps decline exponent [1 / time].

b

Arps hyperbolic exponent.

t

time at which to evaluate rate or cumulative [time].

Details

Assumes consistent units of time between qi, D, and t. To convert, see the decline-rate conversion functions referenced below.

When appropriate, internally uses harmonic.q and harmonic.Np to avoid singularities in calculations for b near 1.

Value

hyperbolic.q returns the rate for each element of t, in the same units as qi.

hyperbolic.Np returns the cumulative production for each element of t, in the same units as qi * t.

hyperbolic.D returns the nominal instantaneous decline for each element of t. This can be converted to effective decline and rescaled in time by use of as.effective and rescale.by.time.

See Also

as.effective, as.nominal, rescale.by.time.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
## qi = 1000 Mscf/d, Di = 95% effective / year, b = 1.2, t from 0 to 25 days
hyperbolic.q(1000, as.nominal(0.95, from.period="year", to.period="day"),
    1.2, seq(0, 25))

## qi = 500 bopd, Di = 3.91 nominal / year, b = 0.5, t = 5 years
hyperbolic.Np(rescale.by.time(500, from.period="day", to.period="year"),
    3.91, 0.5, 5)

## Di = 85% effective / year, b = 1.5, t = 6 months
hyperbolic.D(as.nominal(0.85), 1.5, 0.5)