Eclipse User Guide
Eclipse User Guide
Eclipse User Guide
Version 2014.1
Proprietary notice
Copyright (c) 2014 Schlumberger. All rights reserved. Reproduction or alteration without
prior written permission is prohibited, except as allowed under applicable law.
Use of this product is governed by the License Agreement. Schlumberger makes no
warranties, express, implied, or statutory, with respect to the product described herein
and disclaims without limitations any warranties of merchantability or fitness for a
particular purpose.
Trademarks & service marks
"Schlumberger," the Schlumberger logotype, and other words or symbols used to
identify the products and services described herein are either trademarks, trade names,
or service marks of Schlumberger and its licensors, or are the property of their
respective owners. These marks may not be copied, imitated, or used, in whole or in
part, without the express prior written permission of their owners. In addition, covers,
page headers, custom graphics, icons, and other design elements may be service
marks, trademarks, and/or trade dress of Schlumberger and may not be copied,
imitated, or used, in whole or in part, without the express prior written permission of
Schlumberger.
Table of Contents
1
Introduction .................................................................................................. 1
A Workflows ................................................................................................... 34
Use an aquifer to simulate water cells in a model ....................................................... 34
Define the area of interest ............................................................................................. 34
Create an aquifer to simulate the water in your model .................................................. 35
Define and run the simulation case using the aquifer .................................................... 37
Remove unwanted isolated cells ................................................................................... 38
Create a property to exclude cells with zero pore volume ............................................. 38
Show the connected volumes in the new property ........................................................ 41
Display the statistics for the connected volume property .............................................. 44
Determine which cells to remove from the model .......................................................... 44
Determine which cells to remove from the model using a continuous property ............ 45
Check the hydrocarbon pore volume in the filtered cells ............................................... 47
Check the well trajectories through the filtered cells ..................................................... 49
Deactivate the filtered cells ............................................................................................ 51
Deactivate groups of cells individually ........................................................................... 52
Define a simulation case which includes the isolated cells property ............................. 54
ii
1
Introduction
The data chosen to model the reservoir may be such that the simulator can only solve the model by taking
extremely short time steps or excessive amounts of CPU time. These are referred as convergence problems.
Recognizing and correcting the cause of convergence problems is an important part of simulation.
Simulation run time can be a key component in determining the scope and quality of a study. The run time
of a study can be determined by many factors that may be changed to keep the run time to a minimum
without compromising results.
This document aims to explain what you can do if a model fails to converge or when it takes a long time to
converge.
Making small changes to the model or adding new options or new keywords can sometimes lead to
dramatic improvements in the speed of the simulation without changing the results to engineering accuracy.
In particular, it is worth checking:
The model size. Can elements of the grid be improved? Reviewing the grid may show that cells with
small pore volumes can be removed either across the whole grid (MINPV), or part of the grid
(MINPVV). If the model size cannot be changed, can the model be run in parallel to reduce simulation
time? Can the model be coarsened to reduce time spent simulating areas of lesser interest in the
model? Does the model contain isolated cells? These cells contribute to the total size and run time and
can distort average reservoir pressure, but typically do not contribute to the model.
Model Complexity. Does the model include unnecessary physics that could be removed?
If, after checking, you find the data cannot be changed, convergence criteria can sometimes be chosen to
improve simulator performance. You do not normally need to change convergence criteria, and you should
not do so unless necessary. The default value of convergence criteria, as other internal parameters in
ECLIPSE, will usually give you a stable and robust solution for your model, in a reasonable time.
In some cases the results of a run can depend on the convergence criteria and how they are applied, and
there is a trade-off between accuracy and speed: the more accuracy is required, the more time will be
needed for the simulation to converge.
ECLIPSE can output a lot of messages during a run, and you need to know what you should do about them;
which you can safely ignore and which ones need action. For instance:
Introduction
Failure to converge a minimum timestep can affect the accuracy of the results and this is something
you need to address.
ECLIPSE can also produce reports showing how both linear and non-linear iterations are proceeding and
the methods by which timesteps are selected.
Hardware solutions
Make sure no other jobs are running on your computer. If you are running on a cluster, check that
there is no contention for memory or other resources on the nodes on which your job is running.
Run in parallel. If your model is running smoothly but slowly on one processor, try running in
parallel on two; if it speeds up, try running on four processors, and so on. However, if there are
convergence issues in serial mode, then there may be even more convergence problems in
parallel and the run may not go any faster.
Note: Running an ECLIPSE dataset in parallel may require the purchase of additional licenses.
2.
3.
Use a faster machine. A new computer may be twice as fast as the equivalent computer from two
years ago.
Can you reduce the number of grid blocks without affecting the quality of the solution? For
instance can you replace a large number of water-filled blocks with an analytic aquifer?
If you are running in compositional mode, can you model your fluid with fewer pseudocomponents?
Most of the advice and suggestions apply equally to all the simulators. When there are differences in the
detailed treatment between ECLIPSE Black Oil and ECLIPSE Compositional we will highlight these
differences and explain how the data for each simulator can be tuned to improve performance.
Introduction
2
What is an ECLIPSE simulation
In general, an ECLIPSE simulation is made up of one or more report steps; a report step is made up of one
or more timestep; a timestep is made up of one or more non-linear iterations; and a non-linear iteration is
made up of one or more linear iterations.
ECLIPSE has default values that control how many timesteps will be used to reach the next report that you
have asked for. These default values will work well in most cases, but there are times when you may need
to adjust them to take shorter or longer timesteps as appropriate, depending on your analysis of the output
data and the convergence issues observed.
Different default values also control how many non-linear iterations will be used to solve each timestep.
These values should normally be left unchanged. In a few cases, adjustments to the convergence criteria
can improve the performance of the simulator. In most cases however the greatest improvements in
performance are obtained by identifying the cause of the non-linear problem and changing the data model
to reduce the non-linearity. The major part of this document will explain how to avoid problems of this
type, and how to find and fix the problems if they do occur.
By the time problems occur in the linear iterations, it is usually too late to fix them by adjusting the linear
convergence control. If the problems are severe, you could try the CPR solver. If problems remain, you can
change some controls, but the best advice is to avoid such problems by controlling the timestepping and the
non-linear iterations.
Report steps
The number of report steps and the time between report steps will depend on the type of model that you are
simulating:
For a prediction or forecasting run lasting for instance 30 years, you may ask for monthly reports for
the first year, quarterly reports for the next five years, and yearly reports for the rest of the simulation.
For history matching you may ask for weekly reports for the first year and for monthly reports for
remainder of the history match, to test the validity of your model on a finer time scale.
For slim-tube experiments, reporting intervals are likely to be minutes and hours
You are asking for more reports than you actually need.
Each report step is being reached in just a single timestep. Savings could also be made if the report
step is taking 2 or 3 iterations.
If you have created a file BASE.STEPS100 (see "ECLIPSE 100" below) and find that it mainly contains
lines of the form:
STEP
STEP
STEP
STEP
40
41
42
43
TIME=
TIME=
TIME=
TIME=
400.00
410.00
420.00
430.00
DAYS
DAYS
DAYS
DAYS
(
(
(
(
+10.0
+10.0
+10.0
+10.0
DAYS
DAYS
DAYS
DAYS
REPT
REPT
REPT
REPT
1
1
1
1
ITS)
ITS)
ITS)
ITS)
(4-FEB-2003)
(14-FEB-2003)
(24-FEB-2003)
(6-MAR-2003)
Each timestep is a report step, and each timestep is solved in a single iteration, then the run may go two or
three times faster if you allow the simulator to produce report steps once a month instead of once every 10
days.
The example above was for an ECLIPSE 100 run. The same applies for an ECLIPSE 300 run with:
Rep
Rep
Rep
Rep
;
;
;
;
400.0
410.0
420.0
430.0
10.0
10.0
10.0
10.0
8.7838
8.7838
8.7838
8.7838
.19498
.19498
.19498
.19498
1.4E05
1.4E05
1.4E05
1.4E05
32884.
32884.
32884.
32884.
1.2E06
1.2E06
1.2E06
1.2E06
4843.6
4843.5
4843.4
4843.3
.00000
.00000
.00000
.00000
1.3E06
1.3E06
1.3E06
1.3E06
1
1
1
1
ECLIPSE 100
From the log file extract the step information into a separate file that contains one line for each timestep.
For example, on a Linux system, with an ECLIPSE 100 log file called BASE.LOG, use the following
command to create a file BASE.STEPS100:
grep STEP BASE.LOG > BASE.STEPS100
The file BASE.STEPS100 contains one line for each timestep of the form:
STEP
15
3 ITS)
(4-FEB-2003)
Where
"STEP 15"
TIME= 400.00 DAYS means there have been 400 simulated days since the beginning of the
simulation.
+30.0 DAYS
REPT
is a mnemonic explaining why 30 days were chosen, and means that a report
step has been reached.
3 ITS
(4-FEB-2003)
ECLIPSE 300
From the log file extract the step information into a separate file that contains one line for each timestep.
For example, on a Linux system, with an ECLIPSE 100 log file called BASE.LOG, use the following
command to create a file BASE.STEPS300:
grep ";" BASE.LOG > BASE.STEPS300
The file BASE.STEPS100 contains one line for each timestep of the form:
Rep ;
400.0 30.0 8.7838 .19498 1.4E05 32884. 1.2E06 4843.6 .00000 1.3E06 3
Where
Rep is the mnemonic that shows that a report step has been reached,
30.0 shows that the latest timestep was of 30 days,
the next 8 numbers show the GOR; water cut; oil, gas, and water production rates; average field pressure;
gas and water injection rates,
3 at the end of the line indicates that three non-linear iterations were required to solve the 30-day timestep.
If the AIM option is used then the line will have an extra number at the end, for example:
Rep ;
400.0 30.0 8.7838 .19498 1.4E05 32884. 1.2E06 4843.6 .00000 1.3E06 3 2%
2% shows the percentage of the cells that was solved fully implicitly.
E300
Init
Explanation
First timestep
MAXF MIF
REPT
Rep
Report step
HREP
Follows CHOP
TRNC TTE
TTE limit
SCT
Solution change
TPT
Throughput limit
A more complete list is available in the "convergence" section of the ECLIPSE Technical Description.
Non-Linear convergence
The equations that the simulators are trying to solve are non-linear where, for instance, doubling the
tubing-head pressure of a water injector will not usually double the amount of water injected, and doubling
the oil saturation in a grid block will not usually double the oil mobility in that grid block.
The simulators use an iterative process based on Newton's method to solve these non-linear equations:
1.
2.
3.
In this case F(x0) is not zero so x0 is not the answer. The next step is to "linearize" the problem by
calculating the gradient of F(x) at x=x0.
F(x)=0 cannot easily be solved, so an approximation to F(x) is used, and the approximation here is a
straight line. The approximation is solved to give the value of x at which the straight line of the gradient
cuts the X axis. This value is x1, and is an improvement on the initial estimate of x0.
F(x1) is not zero, so x1 is not the answer. The next step is to "linearize" the problem again by calculating
the gradient of F(x) at x=x1.
The gradient of F at x1 is calculated to solve the linear equation (the gradient equation) and obtain a new
solution x2. F(x2) is checked to see if it is zero; as F(x2) is not zero, the gradient of F at x2 is calculated.
This leads us to a third estimate of the solution, x3. Although F(x3) is not exactly zero, it is close enough
for engineering accuracy, and x3 is accepted as the solution.
Convergence criteria
In order for the simulation to run, a test is required to know when the current iteration can stop in order to
move on to the next timestep; that is to decide when the solution is 'good enough'. This test of convergence
can be based on a small residual, a small change in solution, or both. This residual can be thought of as a
measure of how close to the step has come solving the non-linear problem and is used as the primary test in
ECLIPSE 100. ECLIPSE 300 uses the change of solution as its basic convergence test.
The convergence criteria are different in ECLIPSE 100 and ECLIPSE 300:
In ECLIPSE 100, the convergence that the absolute value of F must be less than a defined limit, for
example:
In ECLIPSE 300, the calculation of F is expensive, as it involves flash calculations. For this reason,
the criterion for convergence is that the change in x since the last iteration should be small, for
example:
10
Definition of convergence
ECLIPSE needs a test to decide when the solution is 'good enough' so that it can stop the iterations and
carry on to the next timestep. A test of convergence can be based on either a small residual or a small
change in solution or both. The residual can be thought of as a measure of how close you are to solving
the non-linear problem and is used in ECLIPSE 100 for the primary test. ECLIPSE 300 uses the change of
solution as its basic convergence test.
Residual check
For each phase, ECLIPSE 100 calculates the largest residual in any grid block and the largest material
balance for that phase. By default, the program continues to iterate until the largest convergence error for
any phase in any grid block is less than 0.001, and the largest material balance error is less than 1 part in 10
million.
These targets may be reset using the TUNING keyword, but such changes are not recommended.
The pressure change is compared directly with SCONVP, while an approximation using field-wide
properties converts molar density changes to effective saturation changes. These effective saturation
changes are compared with SCONVS.
The maximum solutions change over all cells and all solution variables is converted to an actual-over-target
(AOT), a ratio of the current maximum divided by the appropriate limit. When the value of AOT falls
below 1, the timestep is converged.
11
For example, suppose that the largest absolute pressure change in any grid block during the last non-linear
iteration was 0.25 atm, with a limit on pressure change SCONVP = 0.1 atm. The ratio of the two numbers is
3.5, meaning that the pressure change was 2.5 times bigger than we would accept.
Suppose the limit on effective saturation change was 0.01 and the actual largest absolute value in any cell
was 0.02, which means the actual change was twice what we would accept. The value AOT is the
maximum of 2.5 and 2, so AOT=2.5.
If the 8th data item in the DEBUG3 keyword is set greater than 0, then ECLIPSE 300 will output a line of
debug that shows the convergence behavior. The UNIX grep command can be used to produce summaries
of the output.
For example, grep ";|aot" BASE.DBG will produce something like:
NLStep=
NLStep=
NLStep=
NLStep=
Rep ;
NLStep=
NLStep=
NLStep=
NLStep=
NLStep=
NLStep=
MIF ;
The first four lines above show iterations 0 to 3. Non-Linear iterations start with iteration 0, which is a
first guess at the new solution. The AOT for iteration 0 is 97.21 so the non-linear iterations are not
converged. Iteration three has an AOT of 0.77, which is less than 1. The largest absolute change is
now less than the target, so the iterations have converged.
The simulator provides a timestep report that starts Rep, meaning a report has been reached, and a '4'
near the end of that line means that four non-linear iterations were required to converge.
The second timestep needs a total of six iterations. In this step, the AOT at the last non-linear iteration
drops from 9.00 to 0.08. This is a sign of quadratic convergence, which occurs when the simulator is
very close to the solution and reduces the AOT by orders of magnitude at each non-linear iteration.
Details
If you wish to tighten (reduce) the convergence criteria, there are minimum values below which SCONVP
and SCONVS cannot be set. The pressure minimum is 0.01 and the effective saturation minimum 0.005.
Note: The pressure minimum can be ignored by setting the first data item in CVCRIT negative. Care
should be taken in using this option as the behavior is undocumented, and may be changed in future
releases.
The convergence tolerances are relaxed slightly at each non-linear iteration, to make convergence easier as
the number of iterations increases. The hope is that this will allow a difficult timestep to be completed
without significantly affecting the results. The factor used is:
Factor = 1.0 + "iteration number"/"maximum iterations"
An additional check is made that the sum of the residuals, which is a measure of total material balance
error, is not excessive. This is a safety measure that can prevent convergence but rarely gets invoked in
production cases.
12
Even if the solution change is too great, and AOT is greater than 1, the maximum residual may be small
enough for the timestep to be converged. The criterion used is the variable SNLRMX set using the 11th data
item in CVCRIT. The residual considered is the residual calculated using the previous iteration and is not
the new residual resulting from the solution change. Because of this the test tends not to be effective very
often.
Where:
EAOT
Effective AOT.
AOT
Non-Linear iterations
Each time the simulator goes through a step to find a solution, it performs non-linear iterations. The total
number of times the simulator goes through these steps for each timestep is the number of non-linear
iterations for that timestep. In the example given, there are four iterations, a first guess plus three improved
values.
13
There is a limit to the number of non-linear iterations that the simulators will try before giving up and
trying with a smaller timestep since this makes the problem more linear. This limit depends on the
simulator and on the solution method, and is set using either the TUNING or the CVCRIT keyword.
You can check on how well the model is converging to a solution by looking at the number of non-linear
iterations for each timestep:
1
Non-linear per timestep means the step was very easy to converge.
2 to 3 Non-linear iterations per timestep, meaning the step was easy to converge.
4 to 9 Non-linear iterations per timestep, showing an increasingly difficult problem.
> 10
Non-linear iterations per timestep can mean a problem with the model.
ECLIPSE 100
In ECLIPSE 100, you will get nonlinear debug if you set NEWTON = 2 in RPTSCHED. This will produce
output of the form:
14
DPRESS
0.00
0.00
0.00
DSWAT
0.00000
0.00000
0.00000
DSGAS
0.00000
0.00000
0.00000
LINIT= 5 NSCHP=
6 NCHOP=
IT= 1
CNV
CELL
MAT BAL
OIL-1.99144( 5, 45, 1) 4.3D-02
WAT-0.16316( 2, 4, 4) -3.7D-06
GAS********( 5, 45, 1) -3.1D-02
0 NSTAT1,2,3=
50 5400
DPRESS
DSWAT
DSGAS
-24.89 0.00026 -0.20000
-14.02 0.00490 0.00000
-24.89 0.00026 -0.20000
0 NTRAN=
321
0 NSTAT1,2,3=
50 5370
DPRESS
DSWAT
DSGAS
-21.15 0.00081 -0.01843
-30.47 0.00139 0.04000
-21.15 0.00081 -0.01843
30 NTRAN=
30
LINIT= 3 NSCHP=
IT= 3
CNV
CELL
OIL-0.30993( 5, 45,
WAT-0.04591( 28, 4,
GAS********( 5, 45,
3 NSTAT1,2,3=
50 5367
DPRESS
DSWAT
DSGAS
-26.44 0.00088 -0.21134
-19.80 0.00666 0.11687
-26.44 0.00088 -0.21134
33 NTRAN=
25
44 NCHOP=
MAT BAL
1) -8.9D-05
3) -4.0D-05
1) -1.4D-02
This shows the first four non-linear iterations (IT=0, IT=1, IT=2, IT=3) in a case that has convergence
problems for the gas phase. The first line shows IT=0, the first iteration, and column headers for the next
three lines; the columns are:
CNV
The worst residual for the OIL, WATer and GAS phases.
CELL
MAT BAL The material balance for that cell, a measure of mass accuracy.
DPRESS
DSWAT
DSGAS
The residual for gas in all four iterations is shown as ******* which means that it is greater than the
maximum printable value. It has a very high residual at each iteration for cell (5,45,1), so that is the cell
that is causing problems.
15
After each iteration report above, the line starting LINIT= provides more information on what is
happening within the model.
LINIT
NSCHP
NCHOP
NTRAN
Solution state 2 means both oil and gas are present in the cell.
Any non-zero value of NSCHP or NCHOP increases material balance errors for the subsequent non-linear
iteration and therefore reduces the chances of convergence. Some saturation chops can be avoided by
adjusting relative permeability curves in such a way that the critical saturation is not the same as the lowest
saturation value in the table.
For instance, instead of
SWFN
0.2
0.3
0.4
0.5
0.6
0.8
0.9
1
0
0.07
0.15
0.24
0.33
0.65
0.83
1
7
4
3
2.5
2
1
0.5
0
0
0
0.07
0.15
0.24
0.33
0.65
0.83
1
7
1*
4
3
2.5
2
1
0.5
0
Try using
SWFN
0.2
0.21
0.3
0.4
0.5
0.6
0.8
0.9
1
The new saturation value at 0.21 may help convergence. It will not affect the initial fluids-in-place but will
unfortunately slightly reduce the water mobility for water saturations between 0.2 and 0.3. This may not be
important to engineering accuracy.
Look for oscillations in the CNV for a phase. If the first iteration has a positive value, the next has a
negative value, the next is positive, then negative, and so on, there is perhaps a non-linearity in the system.
These are sometimes associated with sudden changes in the slope of the relative permeability curves. If you
have access to the SCAL program, you can plot these slopes and look for discontinuities. If you have
access to a spreadsheet program then you can numerically calculate and plot the slopes. Remember that
ECLIPSE will use all the values of saturation and relative permeability that you give in the table without
any smoothing.
16
0
0
0.07
0.07
0.14
0.15
0.17
0.19
0.24
0.33
0.65
0.83
1
7
1*
4
4
3
3
3
3
2.5
2
1
0.5
0
The table above has saturation values that are too close to each other and the slopes of the relative
permeabilities shows severe changes.
You should also try to avoid tables such as:
SWFN
0.2
0.3
0.5
0.51
0.8
0.9
1
0
0.
0.01
0.60
0.68
0.83
1
7
4
2.5
2
1
0.5
0
The table above has a very sudden krw change from krw=0.01 at Sw=0.5 to krw=0.60 at Sw=0.51 and will
certainly cause convergence problems.
TUNINGDP output
The NEWTON switch in RPTSCHED produces extra information in the case of TUNINGDP:
PTRG is the target pressure change; the default is 1 psi in Field units.
STRG is the target saturation change; the default is 0 if TUNINGDP is not used and 0.01 if it is used.
If you use TUNINGDP, ECLIPSE solves the linear equations to a tighter tolerance and convergence is
reached if either the residual or the solution change criteria is small enough. If you do not use TUNINGDP,
only the residual is used to test for convergence.
2.
17
3.
4.
5.
RPTRST CONV
You can use a visual display of the grid blocks causing convergence problems. Adding CONV to the
RPTRST keyword sends two new outputs to the restart files. Each cell will have two new variables that will
be used to count the number of times that cell has been one of the most difficult cells to converge.
At the beginning of the simulation, each cell will have its counter set to zero and, at every timestep, the
most difficult cells (10 by default for ECLIPSE 300) will have their counter increased by 1. At the end of
the run, you can display the cells with the most problems.
The outputs in the restart file for ECLIPSE 100 are:
CNV_GAS, CNV_OIL and CNV_WAT indicate the worst cells base on fluid saturations.
0 linears req
7
-40.075969 25 32 4
F
1.469590
-0.000375 25 32 1
T
0.010000
-0.000980 25 32 1
T
0.010000
-0.025419 25 32 1
F
0.010000
-0.002318 25 32 1
T
0.010000
-0.000318 25 32 3
T
0.010000
0.009711 25 32 1
T
0.010000
0.008562 25 32 1
T
0.010000
0.004396 25 32 1
T
0.010000
0.001465 25 32 1
T
0.010000
0.000907 25 32 4
T
0.010000
7 aot=
27.27 Rmax=0.8514E+00 Rsum=0.2739E-03 egain=0.2624E-01
18
Iteration
1 linears req
5
DX Pressure 0
-0.563835 25 32 1
T
1.592056
DX
Comp 1
0.000035 25 32 1
T
0.010833
DX
Comp 2
0.000063 25 32 1
T
0.010833
DX
Comp 3
0.001887 25 32 1
T
0.010833
DX
Comp 4
0.000242 25 32 1
T
0.010833
DX
Comp 5
0.000111 25 32 1
T
0.010833
DX
Comp 6
0.000270 26 32 1
T
0.010833
DX
Comp 7
0.000238 26 32 1
T
0.010833
DX
Comp 8
0.000127 26 32 1
T
0.010833
DX
Comp 9
0.000044 26 32 1
T
0.010833
DX
Comp 10
-0.000317 25 32 2
T
0.010833
NLStep= 1 lin= 5 aot=
0.38 Rmax=0.1921E-01 Rsum=0.1448E-04 egain=0.3165E-01
Max changes:pres
40.6
25 32 4 temp
0.00
0 0 0
oil satn 0.516E-01 17 7 1 gas satn -0.178E-01 17 8 1
wat satn -0.939E-03 25 32 4 eng dens
0.00
0 0 0
Throughput ratio:avrg
0.404E-01 max
0.192
26 32
2
MIF ; 103.0 9.00 6.9094 .01725 8973.3 157.46 62000. 3531.4
0.0 60500. 2 2%
This output shows two non-linear iterations leading to a timestep report. The first line:
Iteration
0 linears req
tells us that the iteration 0 (the initial estimate) needed 7 linear iterations to solve the linear problem.
The next 11 lines consist of one line for each of the solution variables showing the largest change in that
variable in any cell during this iteration. The solution variables for each grid block are the pressure in the
grid block, the molar density of each hydrocarbon component, and a water term. This model has 9
hydrocarbon components. Water is written as component 10.
DX Pressure 0
DX
Comp 1
DX
Comp 2
DX
Comp 3
DX
Comp 4
DX
Comp 5
DX
Comp 6
DX
Comp 7
DX
Comp 8
DX
Comp 9
DX
Comp 10
-40.075969
-0.000375
-0.000980
-0.025419
-0.002318
-0.000318
0.009711
0.008562
0.004396
0.001465
0.000907
25
25
25
25
25
25
25
25
25
25
25
32
32
32
32
32
32
32
32
32
32
32
4
1
1
1
1
3
1
1
1
1
4
F
T
T
F
T
T
T
T
T
T
T
1.469590
0.010000
0.010000
0.010000
0.010000
0.010000
0.010000
0.010000
0.010000
0.010000
0.010000
In each of these lines, DX means the solution change. The first DX line is the pressure change. The largest
pressure change was an increase of 40.075969 psi in cell (25,32,4), which happen to contain an injecting
completion. The 'F' on that line means 'False,' in that the pressure variable has not converged, as the
pressure change is greater than 1.469590, which is the maximum pressure change, allowed for convergence
for this iteration.
The second DX line shows the largest change in the molar density, expressed as a saturation equivalent, for
component 1. The increase of 0.000375 was in cell (25, 32, 1), and is less than the convergence maximum
of 0.01, so the component 1 variable is considered to be converged. In fact all the components have
converged except for component 3.
The non-linear iteration however has not converged since two of the variables (pressure and component 3)
are not yet converged. The next line is a summary of the first iteration (iteration 0).
NLStep= 0 lin=
7 aot=
NLStep=0
lin=7
19
Rmax= 0.8514E+00 is the worst (maximum) absolute residual at the beginning of this iteration
Rsum= 0.2739E-03 is the sum of all the residuals at the beginning of this iteration
egain= 0.2624E-01 is a gain factor calculated from previous timesteps
The next line
Iteration
1 linears req
is the start of the report on the second non-linear iteration, Iteration 1, which needed 5 linear iterations.
The next 11 lines are the solution changes. They are similar to the reported changes for the first non-linear
iteration except that now both the pressure and component 3 have changed by less than the new
convergence criteria.
The non-linear iterations have now converged.
NLStep= 1 lin=
5 aot=
is the report of the converged iteration showing that the maximum residual at the beginning of that iteration
was down to 0.1921E-01 and the sum of residuals was down to Rsum=0.1448E-04. A report follows with
the changes during that timestep.
Max changes:pres
40.6
oil satn 0.516E-01
wat satn -0.939E-03
25 32
17 7
25 32
4 temp
0.00
1 gas satn -0.178E-01
4 eng dens
0.00
0
17
0
0
8
0
0
1
0
The maximum pressure and saturation changes are reported, as well as the cells in which this change
occurred. In the case of thermal runs, the maximum temperature and energy density changes are also
reported.
The maximum throughput is reported next. Throughput is defined as the volume flowing through a cell
divided by the pore volume of the cell. If the throughput is too high (say higher than 0.5) it could cause
convergence problems, and the pore volume of the cell that has the highest throughput should be examined.
Throughput ratio:avrg
0.404E-01 max
0.192
26
32
The last of these lines is the report of production, and so forth for the time step.
MIF ;
0.0 60500. 2 2%
20
Newton iteration. After 12 Newton iterations, the criteria are doubled to 0.2 atm pressure and 0.02 for
component specific volume.
Iteration 0 linears req 4 NTOTNL 4076
DX Pressure 0 2.803147 38 16 10 Ind:GLOB F 1.469590
DX Comp
1 0.000262 34 31 6 Ind:GLOB T 0.010000
DX Comp
2 0.000042 34 31 6 Ind:GLOB T 0.010000
..
NLStep= 0 lin= 4 aot= 1.91 Rmax=0.1149E-02 Rsum=0.8487E-05 egain=0.9926E+00
DCHOP2: 1 cells chopped, Try= 1
Iteration 1 linears req 7 NTOTNL 4077
DX Pressure 0 -2.799664 38 16 10 Ind:GLOB F 1.592056
DX Comp
1 -0.003126 38 16 10 Ind:GLOB T 0.010833
DX Comp
2 -0.000239 38 16 10 Ind:GLOB T 0.010833
..
NLStep= 1 lin= 7 aot= 1.91 Rmax=0.3573E-01 Rsum=0.1269E-05 egain=0.3326E+01
DCHOP2: 1 cells chopped, Try= 1
Iteration 2 linears req 4 NTOTNL 4078
DX Pressure 0 2.694699 38 16 10 Ind:GLOB F 1.714522
DX Comp
1 -0.048358 38 16 10 Ind:GLOB F 0.011667
DX Comp
2 -0.002969 38 16 10 Ind:GLOB T 0.011667
Non-Linearity issues
A few general problems with non-linearity can include:
In explicit cells, the algorithm can try to extract more fluid from a grid block than is present in the grid
block. This happens because flows are calculated from the solution of the previous timestep and not
from the current timestep. The only thing you can do is reduce the timestep. This will only be an issue
if you using the IMPES or AIM solution methods. The default in ECLIPSE 100 is FULLIMP, but the
default in ECLIPSE 300 is AIM unless you are using options such as Radial, Dual Porosity or
Thermal.
The group control algorithm will sometimes change well rates at every non-linear iteration to reflect
the latest calculated conditions in the reservoir. Changing well rates at every non-linear iteration can
lead to poor convergence.
By default, the simulators only recalculate group control parameters for the first few non-linear
iterations, then keep the group controls unchanged for the remaining non-linear iterations. This
number of iterations can be changed using NUPCOL, but it is best to leave the value unchanged, unless
the simulator warns you otherwise.
Non-monotonic VFP tables can cause convergence problems during the simulation. VFP tables are
always checked for monotonicity in ECLIPSE 300, and the check can be switched on in ECLIPSE 100
by using the EXTRAPMS keyword.
21
3
ECLIPSE dataset content
Review ECLIPSE report information
ECLIPSE can output a lot of messages about your dataset information about the simulation run or errors
within the data. You need to know what should you do about them, which ones you can safely ignore, and
which ones need action. You can also ask ECLIPSE to produce reports showing how both linear and nonlinear iterations are proceeding and the methods of timestep selection.
Before reviewing the detail of the content of your dataset, you should check the PRT or log file for
messages related to the simulation run. All the messages start with @ in the files, so you can find all these
messages by looking for @. You should start by checking messages, comments and warnings, and then
correct any problems and errors. Messages that may be printed are:
Messages
These give information about the run and should be checked to make sure the content is what
you expect:
@--MESSAGE
@
@--MESSAGE
@
@
AT TIME
0.0
DAYS
(19-OCT-1982):
CHECKING FOR LICENSES
AT TIME
0.0
DAYS
(19-OCT-1982):
THE MEMORY REQUIRED TO PROCESS THE GRID SECTION IS
1526 KBYTES
Comments
These contain information about potential problems that may affect the run:
@--COMMENT
@
AT TIME
0.0
DAYS
(19-OCT-1982):
NO NON-NEIGHBOUR CONNECTIONS FOUND
If you did not expect non-neighbor connections, this comment can be ignored. If you know that
your reservoir has a lot of fault throws, then you may need to check your model.
Warnings
These are possible data errors and should be checked as there may be an issue to be corrected:
@--WARNING
@
@
@
@
AT TIME
0.0
DAYS
(19-OCT-1982):
INCONSISTENT END POINTS IN SATURATION TABLE
THE MAXIMUM GAS SATURATION (1.0000)
PLUS THE CONNATE WATER SATURATION (0.1200)
MUST NOT EXCEED 1.0
22
This may not be an issue, but the gas and water SCAL tables are inconsistent; using this data
means the gas saturation will never be greater than 0.88.
@--WARNING
@
@
AT TIME
0.0
DAYS
(19-OCT-1982):
THE BOTTOM HOLE PRESSURE LIMIT FOR WELL INJECTR1
HAS BEEN DEFAULTED. THE DEFAULT VALUE IS 100,000 PSIA
This warning could possibly be safe - as long as the injector never goes to BHP control, but
setting a more reasonable limit would be preferable.
Problems
Any problems reported mean there is definitely an issue that must be checked and fixed before
running the simulation:
@--PROBLEM
@
@
@
@
@
AT TIME
0.0
DAYS
(19-OCT-1982):
OIL
PRESSURE IN EQUILIBRATION CALCULATION BETWEEN DEPTHS
8400.0
FEET
AND
8397.7
FEET
HAS NOT CONVERGED.
CONVERGENCE ERROR =
0.86508E+33
PSI.
THE CURRENT NUMBER ( 100 ) OF DEPTH NODES IN THE
EQUILIBRATION CALCULATION IS TOO SMALL
In this example, there is a problem in either the specified depth nodes or oil PVT table.
Errors
This means there is an error in the data and you cannot continue with a simulation run without
fixing it.
@-@
@
@
ERROR
AT TIME
0.0
DAYS
(19-OCT-1982):
ERROR IN PVTO TABLE NUMBER
1
NOT ENOUGH PRESSURE VALUES (ONLY 1) SPECIFIED
FOR HIGHEST RS (=
1.270 MSCF/STB)
Errors may also result in other messages. This error is the underlying cause for the reported
problem above. You should always review and fix errors before looking for the solutions to
other messages.
An error may result in "NaN" (Not a Number) being displayed as part of a message and is
usually caused by dividing by zero or something similar.
@--WARNING
@
@
@
@
@
@
@
AT TIME
0.0
DAYS
(19-OCT-1982):
GAS IS DENSER THAN OIL
WITHIN THE RESERVOIR
IN EQUILIBRATION REGION 1. CHECK SURFACE
DENSITIES, FORMATION VOLUME FACTORS, RS, RV.
THE PROBLEM OCCURS AT DEPTH
8725.0000
GAS
PRESSURE =
0.4201E-01
OIL
PRESSURE = NaN
(RS MAY BE SPECIFIED IN THE WRONG UNITS)
b.
Bugs
A bug is an indication of an internal inconsistency in ECLIPSE.
"Bugs" should not occur unless there has previously been an error; you should therefore fix any
error or problem before reporting the problem. However, if the bug is still occurs, contact your
local support.
23
GRID section
A reservoir or field model is divided into grid cells which divide the model into areas of interest, both in
terms of structures ( such as faults or horizons) and properties. However, these requirements can vary
what is of great interest to a geologist may not be of so much importance to a reservoir engineer. To get the
best performance from a simulation run requires identifying the parts of a model that are less important
reducing the level of detail in those areas within the model. These changes may include:
Making small volume cells inactive by setting a minimum pore volume that must be exceeded.
Coarsen areas of the model that are of less interest for simulation.
Remove isolated cells within a model that do not contribute to the fluid volume.
Note: To view grid structures and properties, use a visualization program. The instructions in this section
describe how to use Petrel to view and manipulate grids.
24
You can also coarsen the model, or coarsen areas/regions of the model, to speed up the simulation.
For a workflow showing how to define an aquifer, see "Use an aquifer to simulate water cells in a model".
25
For a workflow showing how to remove isolated cells, see "Remove unwanted isolated cells".
PVT data
Total compressibility check
In black oil models, both ECLIPSE 100 and ECLIPSE 300 check for positive compressibility of each single
reservoir fluid as the PVT data is read (the formation volume factor must be a monotonically decreasing
function of pressure assuming all other variables are held fixed).
ECLIPSE also checks that mixtures of saturated oil and gas have a positive total compressibility even when
there is mass transfer between the two phases. For example, increasing the pressure of a cell that contains
both oil and gas will:
transfer some gas from the gas phase to the oil phase
26
The oil volume will therefore increase with increasing pressure, and the gas volume will decrease with
increasing pressure. The total (oil+gas) volume must however decrease. This will only happen if the
reduction in the volume of gas is greater than the increase in the volume of oil.
PVT example
Poor convergence may be caused by erratic relative permeability information. For example, a plot of the
relative permeability curve for oil against water may appear accurate. A plot of the original curve is shown
below:
The curve is smooth and looks reasonable. At first, the data in the relative permeability table also looked
reasonable. The data is entered using the SOF3 keyword:
SOF3
-- SOIL
0.181
0.283
0.385
0.436
0.483
0.588
0.686
0.689
0.761
0.837
0.863
0.879
0.880
KROW
0
0.0001
0.0015
0.0124
0.0217
0.0939
0.3499
0.3501
0.7323
0.9887
0.9978
1
1
KROG
0
0.0001
0.0015
0.0124
0.0217
0.0939
0.3499
0.3501
0.7323
0.9887
0.9978
1
1
/
The Soil column is monotonically increasing, and has values between 0 and 1.
The krow column is also monotonically increasing, and has values between 0 and 1.
When the derivative d(krow)/d(Soil) is plotted, the expected derivatives should be smoothly varying as krow
was smoothly varying. The resultant graph was:
27
There are sharp changes in slope around Sw = 24% and around Sw = 31%. These value correspond to Soil of
about 68% and 76% respectively. When the SOF3 table is checked at these values; at around 68% oil there
are two oil saturations with very close values, 0.686 and 0.689, that have very similar krow values of 0.3499
and 0.3501.
The SOF3 table does not need saturation values that close together, and in fact very closely spaced values
in any table may cause ECLIPSE to do extra computing work as it has to find exactly which two point to
interpolate between. In this case to fix the problem remove either one of the two entries. Removing the row
corresponding to the Soil value of 0.686, gives the following table:
SOF3
-- SOIL
0.181
0.283
0.385
0.436
0.483
0.588
0.689
0.761
0.837
0.863
0.879
0.880
KROW
0
0.0001
0.0015
0.0124
0.0217
0.0939
0.3501
0.7323
0.9887
0.9978
1
1
KROG
0
0.0001
0.0015
0.0124
0.0217
0.0939
0.3501
0.7323
0.9887
0.9978
1
1
/
This change is enough to produce smooth derivatives and to resolve the convergence problem:
28
Critical saturation
Consider a grid block with pore volume of 100 m3. Assume it contains 80 m3 of gas and 20 m3 of water.
The water saturation is 20%:
In the case where there is no flow in or out of that grid block, and the pore volume decreases by 1% due to
reservoir pressure changes:
The gas will compress but water is relatively incompressible, so we will have approximately 79 m3 of
gas and 20 m3 of water.
Water saturation will increase from 20% (20 m3 of water in 100 m3 pore volume) to 20.2% (20 m3 of
water in 99 m3 pore volume)
29
As you produce/inject, the pressure in every block will change and therefore the pore volume of each grid
block will change.
Assuming the initial water saturation (SWL) in each grid block was 20%, Sw will now be greater than 20%
in many blocks. If SWCR=SWL=20%, then all those blocks have mobile water even if Sw is only 20.0001%,
and this water WILL flow.
Setting SWCR=SWL+0.01% will stabilize the model without changing the OOIP.
This can be applied to the critical saturation of any phase; using the original SOF3 table:
SOF3
-- SOIL
0.181
0.283
0.385
0.436
0.483
0.588
0.689
0.761
0.837
0.863
0.879
0.880
KROW
0
0.0001
0.0015
0.0124
0.0217
0.0939
0.3501
0.7323
0.9887
0.9978
1
1
KROG
0
0.0001
0.0015
0.0124
0.0217
0.0939
0.3501
0.7323
0.9887
0.9978
1
1
/
The oil can be stabilized by changing the 1E-4 values at 18.1% oil saturation to zero. If this is not the
preferred solution, we could instead add a relative permeability of 0 at an oil saturation of 18.2%
SOF3
-- SOIL
0.181
0.182
0.283
0.385
0.436
0.483
0.588
0.689
0.761
0.837
0.863
0.879
0.880
KROW
0
0
0.0001
0.0015
0.0124
0.0217
0.0939
0.3501
0.7323
0.9887
0.9978
1
1
KROG
0
0
0.0001
0.0015
0.0124
0.0217
0.0939
0.3501
0.7323
0.9887
0.9978
1
1
/
30
SOLUTION section
The SOLUTION section of an ECLIPSE dataset contains the data used to define the initial state (pressure,
saturations and compositions) of the reservoir. There are several methods that can be used to calculate the
initial fluid in place values (the initial oil, water and gas saturations) in each grid block. The choice is
selected using the ninth argument of the EQUIL keyword that specifies the number of sub-layers (N) used
to obtain the initial saturations:
Center-point equilibration (EQUIL item 9 = 0)
The simulator sets the fluid saturations in each grid block according to the conditions at its
center. This method gives a stable initial state since the phase pressure differences in the
simulation are also taken between cell centers. It is however the least accurate method,
particularly in cases where the fluid contact passes through large grid blocks.
Horizontal fine grid equilibration (EQUIL item 9 < 0)
The top and bottom halves of each grid block are each divided into -N layers of equal thickness,
and the saturations are determined locally in each layer. The phase saturations for the block are
the average of the saturations in each layer. This option provides a more accurate calculation of
the fluids in place, but may yield a solution that is not completely stable in the initial state.
Tilted block fine grid equilibration (EQUIL item 9 > 0)
This option is similar to horizontal fine grid equilibration, but it takes into account the slope of
each grid block. The top and bottom faces of the blocks are treated as planes that are tilted about
their central points. The top and bottom halves of the grid block are each divided into N
horizontal layers of equal thickness, but the thickness of the layers in the top half is generally
different from the thickness of the layers in the bottom half. This is because the distance from
the block center line to the highest corner is not the same as the distance from the block center
line to the lowest corner, if the upper and lower faces have different tilts. The phase saturations
in each block are calculated as a weighted average of the saturations in the layers, weighted
according to the area of each layer that is enclosed within the block multiplied by the layer
thickness. This option provides the most accurate calculation of fluids in place, but may yield a
solution which is not completely stable in the initial state.
With fine grid equilibration there is a redistribution of fluids between grid blocks near the
contacts when the simulation begins, which occurs independently of any external driving force
(such as wells). The reason is that a steady state solution on the fine equilibration grid (in which
each block is subdivided into several layers) is not necessarily a steady state solution on the
coarser simulation grid.
SCHEDULE section
The SCHEDULE section specifies the operations to be simulated (production and injection controls and
constraints) and the times at which output reports are required.
31
1.
QC your grid and your fluid data (PVT or relative permeability values) as the system is highly coupled
and although you might see a problem in your well, it might be caused by a non-linearity in your grid
or your fluid data.
2.
Turn off drift flux in any of the segments and use the homogeneous well model instead (item 7 in
WELSEGS, or clear the Phase slip check box in the Petrel Define well segmentation process). If the
model gives significantly different results with and without phase slip (for any time period of the
simulation which does not have convergence issues) then a VFP table could be used instead to derive
the pressure drop along the segments.
Reduce the number of segments in each well. In the Petrel Define well segmentation process this can
be done by increasing the minimum segment length.
Use a conventional well model for the vertical section of the well. In the Petrel Define well
segmentation process this can be done by unchecking the Segment up to (SSTVD) option. If this is
unchecked, by default, the well will be segmented to the top connection/device in the well.
Alternatively, as stated above, a VFP table could be used to model the flow to surface.
Turn off the friction and acceleration pressure drop calculations (item 6 in WELSEGS, or clear
Friction and Acceleration in the Petrel Define well segmentation process).
32
Check in the RFT log if any of the completion devices have a particularly high pressure drop across
them. If they do, try reducing the strength of these devices or removing them altogether.
Turn off cross flow (item 10 in WELSPECS). The default in ECLIPSE is on, set to NO to turn off
cross-flow.
Note that simplifying your model in these ways should only be done as an experiment to help you
determine the root cause of your convergence problem. Your model should still include all the physics
necessary for the problem, but trying some of these changes might help you pinpoint the problem and help
you determine how much of the physics is necessary to include without overcomplicating the problem.
Other keywords that could help are:
WSEGITER this is a more expensive, but more robust iteration sequence, to give multisegment wells
a better opportunity to converge. It involves relaxing the predicted pressure over an iteration by
averaging it with the pressure from the last converged value. The relaxation becomes successively
more severe if the well continues to not converge. When convergence is achieved, the relaxation is
reduced again.
Note: If you are using any tuning keyword, you must add WSEGITER after the tuning keyword.
MXWSIT By default, if the WSEGITER keyword is not entered, each well is allowed up to MXWSIT
iterations. Increasing the value of MXWSIT in record 3 of the TUNING keyword may give your model
a better chance of converging.
WVFPEXP if using VFP tables this can help for tubing head pressure (THP) controlled wells,
especially those with fluctuating gas production.
EXTRAPMS if using VFP tables, use the EXTRAPMS keyword which gives a warning when
extrapolating outside of the VFP table and could be giving physically unrealistic results. You can
check your VFP table by opening the VFP manager in Petrel and using the quality control tools found
there. More information on these tools can be found in the VFP quality control section of the Petrel
help.
WELSEGS item 8 in record 2 check if the friction factor is too high. Lowering this may help
convergence. You should aim to have default roughness for an open hole completion as the upper limit
for roughness values for well equipment.
33
A
Workflows
The workflows in this appendix show how to perform some of the tasks outlined earlier in this guide for
improving your simulation data.
Create a polygon that defines the area of interest in the model using the Polygon editing tools in
Petrel.
Open the simulation case in the Define simulation case process and add the aquifer to the
inputs on the Grid tab.
Note: Ensure that you have set up the simulation case in Petrel to use the maximum number of available
processes. The case can be submitted to a queue on your local machine or cluster if one has been defined in
the System settings dialog.
2.
Appendix A Workflows
34
Use the contact as a reference when creating the polygon defining the area of interest.
3.
4.
Polygon editing to
5.
Digitize the points on the polygon. Double-click on the first point to close the polygon.
6.
In the Input pane, right-click the polygon that you have just created, and then click
7.
In the Settings dialog, click the Info tab, provide a more descriptive name for the polygon and
click OK.
Settings.
2.
3.
Aquifers.
5.
Appendix A Workflows
35
6.
In the Direction panel, select 'Bottom up'. This option specifies that the aquifer is connected to the
bottom edge at the bottom of the reservoir for all cells within the area of interest.
7.
b.
You may find it useful to display the axis in the 3D window when setting the depth. To do this,
on the Window Tools tab, in the Decoration group, click Axis. Display the oil-water
contact as an additional reference.
Appendix A Workflows
36
8.
To use the aquifer in a simulation, open the Define simulation case process and select your
simulation case. On the Grid tab, insert the aquifer from the Aquifers folder on the Models pane into
the grid inputs table. Click Apply and then run the case.
2.
Click Create new and enter a name for the new case.
3.
Click Append
b.
Define case.
Click Apply.
5.
Click Run to export the data files and run the case.
Appendix A Workflows
37
If you haven't already done so, create a property that removes inactive cells and any other cells with
porosity, permeability or pore volume below a threshold value. This property has the value zero (0) for
cells that you want to remove from the simulation and the value one (1) for all other cells.
2.
Use the geometric modeling process to show the connected volumes in this property.
3.
View the statistics to determine the number of connected volumes in the new property.
4.
Create a continuous property and then filter it to investigate the isolated cells.
The connected volumes property is a discrete property. If you have a large number of connected
volumes, more than 10 or 20, you should convert the property to a continuous one as Petrel processes
this more efficiently.
5.
Review the hydrocarbon volume in the cells you have selected for removal from your model.
6.
If you have already defined well trajectories in your model, find selected cell groups that are
penetrated by wells and ensure that you retain these if they are potential targets.
7.
8.
Note: In the descriptions of these stages, the names used for properties and filters, and the example images
used, may be different from the ones that you use and see in your model.
Appendix A Workflows
38
Note: This workflow uses zero pore volume to differentiate between cells, but you could use a different
pore volume cut-off, or another property, for example porosity or permeability.
1.
Open a 3D window and display a pore volume model (you may have more than one defined).
To do this, on the Home tab, in the Insert group, click
Window and then click
3D window.
Then select a pore volume property from the Properties folder in the Models pane.
2.
Analyze the property using filters, statistics and settings to determine the pore volume cut-off. To do
this:
a.
Right-click the property (in the Properties folder in the Models pane) and select
1D filter.
b.
Create
The Min value shows you whether your model contains cells with zero pore volume, or a small
non-zero volume.
c.
To analyze the property further, display a histogram by right-clicking the property and selecting
Settings. In the Settings dialog, click the
d.
Histogram tab.
You can toggle the Log check box to switch between linear or log scaling of the x axis to view
the distribution of the pore volumes, for example:
Appendix A Workflows
39
Using the information from the filter limits and your analysis of the histograms, determine the
pore volume cut-off that you want to use.
e.
Click on Cancel in the filter and histogram windows to clear them without saving your settings.
3.
On the Reservoir Engineering tab in the 3D and fault properties group, click
3D properties.
4.
b.
Click If.
c.
In the Select property variable pane, click the PoreVolume model to add it to the
calculator.
d.
e.
Select the Boolean template in the Attach new to template list. A quick way to do this
is to type boo into the Filter templates box.
Appendix A Workflows
40
If you choose to use a non-zero pore volume as the cut-off limit, for example, less than or equal to
0.0001, you enter this value into the calculator instead:
actnum=If( Petrophysics\PORV[0]<=0.0001, 0, 1)
5.
This adds the actnum property to the Properties folder in the Models pane and you can display it in
the 3D window.
On the Reservoir Engineering tab, in the 3D and fault properties group, click
Geometrical modeling
This displays the Geometrical modeling dialog.
2.
Appendix A Workflows
41
3.
4.
5.
6.
Limit the number of isolated volumes generated by selecting By volume and entering a small volume,
for example 100.
This volume is 100 of the Petrel project's units, for example 100m3 for metric units.
Appendix A Workflows
42
7.
Click OK.
The new property is in the Models pane in the Properties folder and you can display it in the 3D
window.
2.
Click the
3.
Click OK.
Settings.
Info tab and enter the new name in the Name box.
You can use the same method to change the names of other properties. For example you may have defined
a number of different connected volume properties, using different methods and settings, and want to use a
naming convention that allows you to choose between them.
If you have wells defined in your project, you can display them by clicking the Wells folder in the Input
pane. The wells are displayed along with the current property in the 3D window.
Appendix A Workflows
43
If you have a small number of connected volumes, you can start filtering the property to investigate
the isolated volumes to decide which to keep or remove.
If you have a large number of connected volumes, first create a continuous property from the
connected volume property as Petrel processes continuous properties more efficiently. You can then
filter the continuous property to investigate the connected volumes.
1.
Right-click the connected volume property in the Properties folder in the Models pane and
select
Settings.
2.
Click the
Statistics tab.
3.
Note the number of connected volumes and click OK to close the statistics window.
Having viewed the statistics, you should filter the property to investigate the isolated cells, or create a
continuous property and then filter it.
Appendix A Workflows
44
If you don't have the property displayed from the previous process, in the quick access toolbar click
Window and select
2.
Right-click the connected volume property in the Properties folder in the Models pane and
select
3.
3D window. Then click the connected volume model in the Models pane.
Create 1D filter.
Use the filter settings to create a set of volumes to view and click Apply.
0: Volume 1 is the largest volume and 254: Rest of volumes is the smallest and may
contain more than one isolated volume.
4.
To inspect the properties of any of the filtered cells, on the Home tab in the View group, click
Inspector. With the
Pick tool active (click
Select[P] in the 3D window tools
palette), click on any cells in the 3D window to inspect the properties, including volume.
5.
Repeat the filtering and inspecting to display the cell clusters that you want to remove from the model.
You can toggle the well display on and off, by selecting Wells from the Input pane.
This example has all volumes displayed apart from 0: Volume 1, but you could have any set of
volumes here depending on your filtering and the settings in your model.
6.
At the end of the process, you have a number of filtered connected volumes displayed.
Having filtered the cells, you can perform further checks before inactivating the small connected volumes:
Check the volume of hydrocarbon in the filtered cells against the total volume in the model/grid.
Depending on the volume contained, you may wish to re-filter to reduce the potential hydrocarbon
volume that you are going to remove from your model.
If you have wells in your model, you can should the isolated cells to see if any of them are penetrated
by wells.
After these checks you can remove unwanted clusters of cells from the model.
Appendix A Workflows
45
In this step, you create a continuous property from your connected volumes property. You then use a 1D
filter to view different collections of isolated cells so that you can determine which ones to remove from
the model. This is an iterative process in which you apply different filters to display different connected
volumes. If your filtering displays all of the volumes that you want to remove using the filter, you can
remove them in one step. If not, you will have to investigate and remove individual volumes.
To create the continuous property and filter the cells in it:
1.
3D window. Then click the connected volume model in the Models pane.
2.
On the Reservoir Engineering tab in the 3D and fault properties group, click
3D properties.
3.
Use the calculator to create the property. For example, to create a property called cont.
a.
Type cont =
b.
Insert
c.
d.
Click ENTER
4.
Select the continuous property from the Properties folder in the Models pane to display it in the
3D window.
5.
Right click on the property in the Properties folder in the Models pane and select
filter.
6.
Create 1D
This removes the largest volume, Volume 0, in the filtered display. The lower numbers are for the
bigger connected volumes, with the Max limit being for the smallest connected volume.
7.
On the Grid Property Tools tab, in the Color table group, click
Click Yes in the next window.
Appendix A Workflows
46
8.
If the initial filter setting (removing volume 0) does not remove enough connected volumes, use the
filter settings to create a different set of volumes to view and click Apply.
This is an iterative step and you can filter and re-filter until you have the set of connected volumes that
you want to deactivate.
9.
To inspect the properties of any of the filtered cells, on the Home tab in the View group, click
Inspector. With the
Pick tool active (click
Select[P] in the 3D window tools
palette), click any cells in the 3D window to inspect their properties, including volume.
Check the volume of hydrocarbon in the filtered cells against the total volume in the model/grid.
Depending on the volume contained, you may wish to re-filter to reduce the potential hydrocarbon
volume that you are going to remove from your model.
If you already have wells in your model, you should review the isolated cells to see if any of them are
penetrated by wells.
After these checks you can remove unwanted clusters of cells from the model.
Double-click the label of the hydrocarbon pore volume (possibly shortened to HCPV) in the Models
pane.
Appendix A Workflows
47
For example
This displays the Settings dialog.
2.
Click the
Statistics tab.
3.
Create a report for the hydrocarbon volume in the filtered cells from the Settings window:
a.
b.
At the bottom of the window, ensure that the List 2 and Reset check boxes are selected.
c.
Click
This displays the Output sheet for the HCPV property for the filtered cells.
4.
Create a second report for the hydrocarbon volume in the unfiltered cells from the Settings
window:
a.
b.
At the bottom of the window, ensure that only the List 2 check box is selected.
Appendix A Workflows
48
c.
Click
This adds the property for the unfiltered cells to the Output sheet for the HCPV property, for
example:
5.
Compare the sum for the filtered (1028626 in the example) and unfiltered (221234396) volumes and
use the percentage difference to decide how to proceed.
In the example, the filtered cells that have been identified for deactivation account for less that 0.5%
of the hydrocarbon volume and this is well below any threshold for reconsidering the filtering.
6.
Click OK to close the Settings window and close the Output sheet.
At the end of the process, you can re-filter the cells if the hydrocarbon volume in the current set is too high.
You can also check to see how any wells in your model penetrate the filtered cell set.
On the Reservoir Engineering tab, in the 3D and fault properties group, click
Geometrical modeling.
Appendix A Workflows
49
Ensure that Create New is selected (it is by default) and then from the Method menu, select Well
region.
3.
4.
Set the radius from each well that you want to consider.
The units are based on your project settings. For example, metric units with a setting of 100 define a
radius of 100m.
5.
Click OK.
This creates a new property with the default name Region from 'Wells'.
6.
Select the property to display it in the 3D window and then move around the display to look at any
areas of interest.
To toggle the wells on/off in the display, select Wells from the Input pane. For example, here is a
small volume that can be ignored, even though it lies close to a well:
At the end of the process, you can either re-filter the cells if significant volumes are intersected by, or lie
close to wells in your model and are targets for production. If you don't need to re-filter the cells, you can
now deactivate them.
Appendix A Workflows
50
2.
On the Reservoir Engineering tab, in the 3D and fault properties group, select
3D properties.
3.
4.
5.
6.
7.
In the Input pane, click the filter in the Filter folder to switch it off.
).
).
At the end of the process, you have deactivated groups of isolated cells and the simulator will not consider
them in its calculations. The actnum property includes all of the cells that you deactivated.
Appendix A Workflows
51
2.
).
Toggle between pick and view mode by pressing Esc, or select the mode from the window Tool
Palette. In this way, you can move around the grid in view mode and inspect properties in pick mode.
3.
4.
Click individual groups of cells in pick mode to identify small isolated volumes.
Appendix A Workflows
52
Inspector.
Note: Because of limits in the color ranges used for the display, it may be that cells of different volumes are
displayed in the same color. You can check this by creating a 1D filter (right click on the cells and select
Create 1D filter) and filtering on the volume number.
5.
On the Reservoir Engineering tab in the 3D and fault properties group, click
3D properties.
6.
Type actnum=
b.
Click If
c.
Select the connected volume property from the Properties folder in the Models pane and
insert it
d.
Type = and the volume number before the first comma (=180) and 0 before the second
e.
Click before the closing bracket, select the actnum property from the Properties folder in the
Models pane and insert it
f.
Appendix A Workflows
53
Note: If you created a 1D filter in step 4, you can use it to filter several connected volumes at the same
time. In this case, you can set the actnum values on these cells in one go. To do this, enter the calculator
expression actnum=0 and select Use filter.
7.
Click ENTER.
8.
Select the connected volume property from the Properties folder in the Models pane to display it
in the 3D window.
The group of cells indexed by volume number 180 is now set to 0.
At the end of the process, you have deactivated a particular group or groups of cells by adding them to the
Boolean property actnum (created in the first step of the process).
2.
Click Create new and enter a name for your new case.
3.
4.
Click Append
5.
6.
7.
Click Apply.
Appendix A Workflows
54
8.
Click Run to export the data files and run the case.
You can compare the simulation results with the isolated cells defined against other simulations which do
not include the property.
Appendix A Workflows
55