问答中心分类: Builder请问 Builder中depletion: ON/OFF的作用是什么
0
tian20220309 asked 2年 ago
2 Answers
0
tian20220309 answered 2年 ago

请问 Builder中depletion:ON/OFF的作用是什么?

0
admin 管理员 answered 2年 ago

这是模拟物性时变的另外一种方法,即:孔隙度作为压降(压力变化)的函数,而不是压力的函数。具体可查找IMEX手册关键字*DEPLETION
Depletion Option in Rock Compaction-DILATION Model (Optional)
PURPOSE:
The *DEPLETION option makes the input reference porosity (*POR) the actual input porosity and makes the porosity a function of pressure depletion rather than pressure.
FORMAT:

*DEPLETION

DEFINITIONS:

*DEPLETION
Occurrence of this keyword enables the Depletion option for the corresponding *CROCKTYPE.

DEFAULTS:
Optional keyword. The default is no *DEPLETION.
If *DEPLETION is specified for the first *CROCKTYPE, any grid blocks that belong to different rock types or are not explicitly defined in a *CTYPE region, will also inherit the *DEPLETION feature. If the keyword is absent from the first *CROCKTYPE, it will be only applied to the subsequent rock types that have *DEPLETION explicitly specified.

CONDITIONS:
This keyword must be located in the Reservoir Description section, just after each *CROCKTYPE keyword.

The Depletion option will work when a *CROCKTAB table uses the *CIRREVERS option.
EXPLANATION:
The Depletion option is in reality two separate options.

In the case of models where *CCPOR and *CPRPOR are used, the value of *CPRPOR for each block in the corresponding *CROCKTYPE is overwritten by the initial reservoir pressure in each block ( Prs0(ib) ). This has the effect of changing the porosity reference pressure of each block to be the initial block pressure.

Hence *POR input becomes the actual measured porosity of the block, not the porosity at a reference pressure *CPRPOR (actually every block has its own *CPRPOR which has been set equal to ( Prs0(ib) ) .

In the case of models where *CROCKTAB tables are used (the *CIRREVERS options may also be used), or *CROCKTABE tables are used, the use of the Depletion option operates in a completely different manner. When the Depletion option is used with *CROCKTAB or *CROCKTABE of a particular *CROCKTYPE the tables are interpolated with respect to:
P* = Pshift(itype) + Prs(ib) – Prs0(ib)
Where Prs(ib) is the current grid block pressure, Prs0(ib) is the initial grid block pressure, itype is the *CROCKTYPE of grid block ib and Pshift(itype) is the pressure in the *CROCKTAB or *CROCKTABE table of *CROCKTYPE itype where the Porosity Multiplier (por_mult) is equal to or closest to 1.00.

Interpolation within the *CROCKTAB or *CROCKTABE table to find the best value of Pshift.

As P* rather than Prs(ib) is used in the interpolation procedure to find the value of por_mult, this procedure initially calculates every grid blocks por_mult to be the value at Pshift(itype). This causes the input reference porosity (*POR) to be the measured porosity (as por_mult = 1.00).

The value of por_mult for each grid block calculated as depletion occurs, using this procedure, is calculated in the tables using a pressure offset from Pshift(itype) by Prs(ib) – Prs0(ib).

Therefore, it is how much pressure in a block has depleted from the initial pressure which determinespor_mult and hence compressibility, rather than the actual pressure itself.

When the Depletion option will printout the value of Pshift(itype) it determines for each itype containing a *CROCKTAB or *CROCKTABE table as well as diagnostics on how it arrived at the value chosen. To make the choice (by interpolation) of Pshift as straightforward as possible, the user should use values of por_mult which increase with pressure and which start at a por_mult value below 1.0 and end at values either equal to or greater than 1.0. por_mult should only increase with pressure.