Learn R Programming

aRpsDCA (version 1.1.1)

curtailed: Arps decline curves with initial curtailment

Description

Create decline curve objects and compute rates, cumulative production, and nominal declines for Arps decline curves with an initial period of curtailment to constant rate. The resulting decline curve models will impose a constant rate of production equal to the initial rate of the underlying model until the specified end-of-curtailment time.

Usage

curtail(decl, t.curtail)
    curtailed.q(decl, t.curtail, t)
    curtailed.Np(decl, t.curtail, t)
    curtailed.D(decl, t.curtail, t)

Arguments

decl

an Arps decline object as returned by arps.decline.

t.curtail

time to end of curtailment, in same units as t [time].

t

time at which to evaluate rate, cumulative, or nominal decline [time].

Value

curtail returns an object having class "arps", suitable for use as an argument to S3 methods listed in arps.

curtailed.q returns the rate for each element of t, under a decline described by decl and curtailed until time t.curtail.

curtailed.Np returns the cumulative production for each element of t, under a decline described by decl and curtailed until time t.curtail.

curtailed.D returns the nominal instantaneous decline for each element of t, under a decline described by decl and curtailed until time t.curtail.

Details

Assumes consistent units as described for underlying Arps decline types.

See Also

arps, print.arps, exponential, hyperbolic, hyp2exp.

Examples

Run this code
# NOT RUN {
## qi = 1000 Mscf/d, Di = 95% effective / year, b = 1.2, t from 0 to 25 days,
## curtailed until 5 days
curtailed.q(arps.decline(
        1000,
        as.nominal(0.95, from.period="year", to.period="day"),
        1.2
    ),
    5, seq(0, 25))

## hyperbolic decline with
## qi = 500 bopd, Di = 3.91 nominal / year, b = 1.5,
## curtailed for 1 month
## cumulative production at t = 5 years
decline <- curtail(
    arps.decline(rescale.by.time(500, from="day", to="year"),
                 3.91, 1.5),
    (1 / 12)
)
arps.Np(decline, 5)
# }

Run the code above in your browser using DataLab