Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Given:

  • a function 
    LaTeX Math Inline
    body--uriencoded--q%5e*(t, %7B\bf p%7D)
     of real-value argument 
    LaTeX Math Inline
    bodyt \in \R
     and set of model parameters 
    LaTeX Math Inline
    body--uriencoded--%7B\bf p%7D = \%7B q%5e*_0, \, \tau_0, \, b \%7D
  • a training data set: 
    LaTeX Math Inline
    body--uriencoded--\%7B (t_k, q_k)\%7D_%7Bk = 1..N%7D = \%7B (t_0, q_0), (t_1, q_1), ..., (t_N, q_N) \%7D

the matching procedure assumes searching for thee specific set of model parameters 

LaTeX Math Inline
body--uriencoded--%7B\bf p%7D
 to minimize the goal function:

LaTeX Math Block
alignmentleft
G({\bf p}) = \sum_{k=1}^N \, \Psi \left( q^*(t_k) - q_k \right) \rightarrow \textrm{min}

where 

LaTeX Math Inline
body\Psi(z)
 is the discrepancy distance function.

Most popular choices are

LaTeX Math Inline
body--uriencoded--\Psi(z) = z%5e2
 and
LaTeX Math Inline
body--uriencoded--\Psi(z) = %7Cz%7C
.


There are few approaches to match the Arps decline to the historical data (or a training dataset within):


The constrained matching is used to one may wish to ensure the smooth transition from the training dataset to future model predictions.

Anchor
Unconstrained
Unconstrained
Unconstrained matching

...


All three model parameters 

LaTeX Math Inline
body--uriencoded--\%7B q%5e*_0, \, \tau_0, \, b \%7D
 are being varied to achieve the best fit to the training dataset.

Exponential Production DeclineHyperbolic Production DeclineHarmonic Production Decline

LaTeX Math Inline
bodyb=0

LaTeX Math Inline
body0<b<1

LaTeX Math Inline
bodyb=1

LaTeX Math Block
anchor1
alignmentleft
q(t)=q^*_0 \exp \left( -  t/\tau_0 \right)
LaTeX Math Block
anchor003NF
alignmentleft
q(t) = \frac{q^*_0}{ \left( 1+b \cdot  t/\tau_0 \right)^{1/b} }
LaTeX Math Block
anchor1
alignmentleft
q(t)=\frac{q^*_0}{1+t/\tau_0} 


The best-fit model may not match: 

  • the initial production rate 
    LaTeX Math Inline
    body--uriencoded--q%5e*(t=0) \neq q_0
  • the current production rate 
    LaTeX Math Inline
    body--uriencoded--q%5e*(t=t_N) \neq q_N
  • the current cumulative production 
    LaTeX Math Inline
    body--uriencoded--Q%5e*(t=t_N) \neq Q_N

Anchor
Initial
Initial
Match the value of the initial rate 
LaTeX Math Inline
body--uriencoded--q%5e*(t=0) = q_0

...

To ensure the smooth transition from historical data

LaTeX Math Inline
body[(t_1,q_1)... (t_N, q_N)]
 to the production forecasts in future time moments
The value of the model rate at the initial time moment is set to training dataset
LaTeX Math Inline
body--uriencoded--
[
q%5e*(t
_%7BN+1%7D,q_%7BN+1%7D), ...]
=0) = q%5e*_0 = q_0
 and the two other model properties
LaTeX Math Inline
body--uriencoded--\%7B \tau_0, \, b \%7D
 
are being varied to achieve the best fit to the training dataset.

Exponential Production DeclineHyperbolic Production DeclineHarmonic Production Decline

LaTeX Math Inline
bodyb=0

LaTeX Math Inline
body0<b<1

LaTeX Math Inline
bodyb=1

LaTeX Math Block
anchor1
alignmentleft
q(t)=q_0 \exp \left( -t/\tau_0 \right)
LaTeX Math Block
anchor003NF
alignmentleft
q(t) = \frac{q_0}{ \left( 1+b \cdot t/\tau_0 \right)^{1/b} }
LaTeX Math Block
anchor1
alignmentleft
q(t)=\frac{q_0}{1+t/\tau_0} 


The best-fit model may not match: 

  • the current production rate 
    LaTeX Math Inline
    body--uriencoded--q%5e*(t=t_N) \neq q_N
  • the current cumulative production 
    LaTeX Math Inline
    body--uriencoded--Q%5e*(t=t_N) \neq Q_N

Anchor
Current_rate
Current_rate
Match the value of the current rate 
LaTeX Math Inline
body--uriencoded--q%5e*(t=t_N) = q_N

...


The value of the model rate at the current time moment is set to training dataset: 

LaTeX Math Inline
body--uriencoded--q%5e*(t=t_N) = q_N
 and the two other model properties
LaTeX Math Inline
body--uriencoded--\%7B \tau_0, \, b \%7D
 are being varied to achieve the best fit to the training dataset. one may wish to constrain the model by firm matching the production at the last historical moment
LaTeX Math Inline
body(t_N, q_N)
 which leads to the following form of Arp's model:


Exponential Production DeclineHyperbolic Production DeclineHarmonic Production Decline

LaTeX Math Inline
bodyb=0

LaTeX Math Inline
body0<b<1

LaTeX Math Inline
bodyb=1

LaTeX Math Block
anchor1
alignmentleft
q(t)=q_N \cdot \exp \big[ -D_0 \cdot (t-t_N)/\tau_0 \big]
LaTeX Math Block
anchor003NF
alignmentleft
q(t) = q_N \cdot \left[ \frac{1+b \cdot Dt_0 \cdot t_NN/\tau_0 }
{ 1+b \cdot Dt/\tau_0 \cdot t   } \right]^{1/b}
LaTeX Math Block
anchor1
alignmentleft
q(t) =  q_N \cdot  \left[ \frac{1+Dt_0 \cdot t_NN/\tau_0 }
{ 1+ Dt/\tau_0 \cdot t   } \right]



This ensures the smooth transition from historical data

LaTeX Math Inline
body[(t_1,q_1)... (t_N, q_N)]
 to the production forecasts in future time moments
LaTeX Math Inline
body--uriencoded--[(t_%7BN+1%7D,q_%7BN+1%7D), ...]
.

The best-fit model may not match: 

  • the initial production rate 
    LaTeX Math Inline
    body--uriencoded--q%5e*(t=0) \neq q_0
  • the current cumulative production 
    LaTeX Math Inline
    body--uriencoded--Q%5e*(t=t_N) \neq Q_N

Anchor
Current_cumulative
Current_cumulative
Match the value of the current cumulative 
LaTeX Math Inline
body--uriencoded--Q%5e*(t=t_N) = Q_N

...


The value of the model rate at the initial time moment

LaTeX Math Inline
body--uriencoded--q%5e*(t=0) = q%5e*_0
is set to achieve the match between the values of current cumulative from model prediction and training dataset  
LaTeX Math Inline
body--uriencoded--Q%5e*(t=t_N) = Q_N
:

Exponential Production DeclineHyperbolic Production DeclineHarmonic Production Decline

LaTeX Math Inline
bodyb=0

LaTeX Math Inline
body0<b<1

LaTeX Math Inline
bodyb=1

LaTeX Math Block
anchor1
alignmentleft
Qq(t) -= \frac{Q_N/\tau_0}{1-\exp(-t_N/\tau_0)}  \cdot \exp(-t/\tau_0) 
LaTeX Math Block
anchor003NF
alignmentleft
q(t) = [ q_N \frac{(1-b) \cdot Q_N/\tau_0}{ 1 - q(t)] \, \tau_0\left( 1 + b \, t_N/\tau_0 \right) ^{-b/(1-b)}} \cdot \frac{1}{\left(1 + b\, t/\tau_0 \right)^{1/b}}
LaTeX Math Block
anchor1
alignmentleft
q(t)=\frac{Q_N/\tau_0}{\ln (1+ t_N/\tau_0)} - Q_N\cdot \frac{1}{1+t/\tau_0}


The best-fit model may not match: 

  • the initial production rate 
    LaTeX Math Inline
    body--uriencoded--q%5e*(t=0) \neq q_0
  • the current production rate 
    LaTeX Math Inline
    body--uriencoded--q%5e*(t=t_N) \neq q_N

Anchor
Current_rate_cumulative
Current_rate_cumulative
Match the value of the current rate and cumulative 
LaTeX Math Inline
body--uriencoded--q%5e*(t=t_N) = q_N
LaTeX Math Inline
body--uriencoded--Q%5e*(t=t_N) = Q_N

...


The value of the model rate at the current time moment and decline pace are set to match both current rate 

LaTeX Math Inline
body--uriencoded--q%5e*(t=t_N) = q_N
 and current cumulative 
LaTeX Math Inline
body--uriencoded--Q%5e*(t=t_N) = Q_N
.

This makes Exponential Production Decline and Harmonic Production Decline are fully set while Hyperbolic Production Decline has opportunity to vary one model parameter

LaTeX Math Inline
body--uriencoded--\%7B b \%7D
 to achieve the best fit to the training dataset.

Exponential Production DeclineHyperbolic Production DeclineHarmonic Production Decline

LaTeX Math Inline
bodyb=0

LaTeX Math Inline
body0<b<1

LaTeX Math Inline
bodyb=1

LaTeX Math Block
anchor1
alignmentleft
q(t) = \frac{q_N^b \, (Q_N/\tau_0}{1-\exp(-t_N/\tau_0)}  \cdot \exp(-t/\tau_0) 
LaTeX Math Block
anchor003NF
alignmentleft
q(t) = \frac{(1-b) \cdot Q_N/\tau_0}{ 1 - \left( 1 + b \, t_N/\tau_0 \right) ^{-b/(1-b)}} \cdot \frac{1}{\left(1 + b\, t/\tau_0 \right)^{1/b}} + b \, t_N)}{1-b} \left[ q_N^{1-b} - q^{1-b}(t) \right]
LaTeX Math Block
anchor1
alignmentleft
Qq(t) - =\frac{Q_N = q_N \, (/\tau_0}{\ln (1+ t_N/\tau_0)} \cdot \ln \frac{q_N}{q(t)}1}{1+t/\tau_0}


The best-fit model may not match: 

  • the initial production rate 
    LaTeX Math Inline
    body--uriencoded--q%5e*(t=0) \neq q_0


See Also

...

Petroleum Industry / Upstream /  Production / Subsurface Production / Field Study & Modelling / Production Analysis / Decline Curve Analysis / DCA Arps @model

...