eclipse 100 - petroleum reservoir simulation course
TRANSCRIPT
of 55 2014 March By: Mohammad Massah [email protected]
1
of 55
ECLIPSE 100 COURSE
1ST SESSION Blackoil Reservoir Simulation By: Mohammad Massah [email protected] 09125289613 Amirkabir University of Technology SPE-Iran Amirkabir Chapter March 2014
2014 March By: Mohammad Massah [email protected]
2
of 55
Eclipse 100 Course
WHAT IS RESERVOIR SIMULATION?
2014 March By: Mohammad Massah [email protected]
3
of 55
Eclipse 100 Course
RESERVOIR SIMULATION
• Numerical modeling used to quantify and interpret physical phenomena
• Dividing the reservoir into several discrete units in three dimensions
• Modeling the progression of reservoir and fluid properties through space and time
• To project future performance.
2014 March By: Mohammad Massah [email protected]
4
of 55
Eclipse 100 Course
INTEGRATED RESERVOIR STUDY
Initial Reservoir Geometry
Formation Tops
Ø, Sw, NTG, WOC,GOC
Geology Study
Res, Geometry Correction
Fault Modeling
Zonation
Lithological modeling
Property Modeling
Static Model
Reservoir Simulation (Dynamic Model)
Sensitivity Analysis
History Matching
Prediction
Scenario Definition
Economic analysis
Reservoir Management
PVT
SCAL
VFT
Production History
Well Completion
Pressure History
Geo-Physic (Seismic)
Drilling (Cutting)
Petro-Physic (Well Log :Sonic, R,ϒ, )..
Core
Fluid Sample (Surface-Bottom Hole)
K, Ø (Rcal)
Data Center
2014 March By: Mohammad Massah [email protected]
5
of 55
Eclipse 100 Course
WHAT IS SIMULATION?
•Governing Physics
•Darcy’s Law (without gravity term)
•Material Balance Equation
2014 March By: Mohammad Massah [email protected]
6
of 55
Eclipse 100 Course
MATHEMATICS
Combination of material balance eq. and Darcy's Law
2014 March By: Mohammad Massah [email protected]
7
of 55
Eclipse 100 Course
TECHNIQUES TO SOLVE THE PHYSICS
2014 March By: Mohammad Massah [email protected]
8
of 55
Eclipse 100 Course
DISCRETIZATION AND SOLUTION
• Eclipse Uses finite difference approach
• Solution approach:
• Fully implicit (ECLIPSE default)
• Implicit Pressure, Explicit Saturation (IMPES)
• Must be used with sound engineering judgment to obtain useful results
2014 March By: Mohammad Massah [email protected]
9
of 55
Eclipse 100 Course
BLACKOIL VS. COMPOSITIONAL MODELS
• Black Oil Simulator (Eclipse 100)
• Oil & Gas Phases are represented by one component
• Assume composition of gas & oil components are constant with pressure and time
• Compositional Simulator (Eclipse 300)
• Oil & gas Phases are represented by multi components mixture
• Assume the reservoir fluids at all temperature, pressure, composition & time can be represented by EOS (PR, SRK)
2014 March By: Mohammad Massah [email protected]
10
of 55
Eclipse 100 Course
GENERAL SOLVE METHOD
• Divide reservoir into several cells
• Provide basic data for each cell
• Position wells
• Specify well production rates as a function of time
• Solve the equations to yield:
• pressure and saturation for each block
• production of each phase from each well
• Each cell is solved simultaneously
• Number of cells is related to time required for a timestep
• Short timesteps are easier (quicker) to solve
2014 March By: Mohammad Massah [email protected]
11
of 55
Eclipse 100 Course
WE ARE INTERESTED IN SIMULATING FLOW
•Flow from one grid block to the next
•Flow from a grid block to the well completion
•Flow within the wells (and surface networks)
Flow= Transmissibility * Mobility * Potential Difference
2014 March By: Mohammad Massah [email protected]
12
of 55
Eclipse 100 Course
MODEL IS NOT THE RESERVOIR
• Input data is uncertain
• Data gathering and evaluation much more time-consuming than constructing a simulation model
• Reservoir processes and characteristics may be unknown
• The simulation software may be unsuited
• Data must be validated, that is history matched
• Data modifications must be viable and justified
• Artifacts that alter the model performance (e.g. upscaling)
2014 March By: Mohammad Massah [email protected]
13
of 55
Eclipse 100 Course
USES OF RESERVOIR SIMULATION
• Asset valuation:
• Accurate determination of recoverable reserves
• Asset management:
• Determine the most economical perforation method, well pattern, number of wells to drill, injection rates
• Determine appropriate facilities
• Uncertainty management:
• Estimate financial risk of exploration prospects & early lifecycle fields
• Assess the effects of early gas or water breakthrough or coning
• Estimate means of meeting gas deliverability contracts
2014 March By: Mohammad Massah [email protected]
14
of 55
Eclipse 100 Course
ECLIPSE BLACKOIL BASIC FEATURES
2014 March By: Mohammad Massah [email protected]
15
of 55
Eclipse 100 Course
INPUT / OUTPUT STRUCTURE
2014 March By: Mohammad Massah [email protected]
16
of 55
Eclipse 100 Course
HOW ECLIPSE WORKS
• Each section of the data file is read, processed, consistency checks are performed & required information is written to various output files (ie *.PRT)
• Exceptions:
• RUNSPEC: Used for allocation of dynamic memory
• SCHEDULE: Time dependent data is read & processed every timestep
2014 March By: Mohammad Massah [email protected]
19
of 55
Eclipse 100 Course
HOW ECLIPSE SECTIONS RELATE TO THE EQUATION
2014 March By: Mohammad Massah [email protected]
20
of 55
Eclipse 100 Course
STATIC RESERVOIR DESCRIPTION
2014 March By: Mohammad Massah [email protected]
21
of 55
Eclipse 100 Course
SIMULATION WITH ECLIPSE
2014 March By: Mohammad Massah [email protected]
22
of 55
Eclipse 100 Course
DATA FILE FORMAT
• Input data file is text
• Can be created by Notepad or Notpad++
• Tab character and Ctrl character are not acceptable
• Keyword length is limited to eight characters
• Anything after the eighth character is taken as a comment
• Data following a keyword must begin on the next line
• The first character of each keyword should be in the first column
• This may be changed using the COLUMNS keyword
2014 March By: Mohammad Massah [email protected]
28
of 55
Eclipse 100 Course
DATA FILE FORMAT
• The file is taken as 132 characters wide
• Anything to the right of column 130 is interpreted as a comment
• COLUMNS keyword may only be needed if data from third party packages
is incorporated
• Comment lines begin with a double dash (--)
• Or begin after the forward slash terminating a keyword
• It is strongly recommended to use many comments
• ECLIPSE keywords are not case-sensitive
2014 March By: Mohammad Massah [email protected]
29
of 55
Eclipse 100 Course
DATA FILE FORMAT
• Omitting a keyword is equivalent to specifying a default
• Keywords that have data, the data record must be terminated by a slash (/)
• If a data record is terminated early with a slash, the remaining data items are
set to their Default Values
• If a keyword is omitted all its associated data items are set to their default
values
• Eclipse data file sections must come in the prescribed order
• But the order of the keywords within each section is arbitrary (except the
SCHEDULE section)
2014 March By: Mohammad Massah [email protected]
30
of 55
Eclipse 100 Course
MESSAGE HANDLING SYSTEM
1. Message (Not an error, purely informative)
2. Comment (Probably not a data error)
3. Warning (Possibly a data error)
4. Problem (Calculation difficulties)
5. Error (Definitelya data error)
6. Bug (Suspected programming error)
The MESSAGES keyword allows you to modify the default
print and stop limits
Example: MESSAGES
2* 10 5* 10000 / alters print and stop limits for warnings
2014 March By: Mohammad Massah [email protected]
33
of 55
Eclipse 100 Course
RUNSPEC SECTION
• The section contains run specification data
• Functions:
• Memory allocation (RAM)
• Specifying character of the model
• Sets start date of the simulation
• Memory allocation for:
• Wells (small)
• Tabular data (small)
• Simulation grid (large)
• Solver stack (large)
2014 March By: Mohammad Massah [email protected]
37
of 55
Eclipse 100 Course
MEMORY ALLOCATION
• Grid:
• Geometry, depth, porosity, permeability, and NTG of each cell
• ECLIPSE converts this to an array of pore volumes, transmissibilities and cell center depths
• The minimum information required: five numbers per active cell
• Total number of cells equals: NX * NY * NZ.
2014 March By: Mohammad Massah [email protected]
38
of 55
Eclipse 100 Course
MEMORY ALLOCATION
• Solver stack:
• Solves equations for the pressure, saturation and gas-oil and/or oil-gas ratio in each cell
• ECLIPSE requires rapid access to several previous solutions
• Known as the solver stack, set to "10" by default
• May be altered using NSTACK keyword
• The default value of NSTACK is 10
2014 March By: Mohammad Massah [email protected]
39
of 55
Eclipse 100 Course
SAMPLE RUNSPEC SECTION
2014 March By: Mohammad Massah [email protected]
40
RUNSPEC
TITLE
ECLIPSE Course Example
DIMENS
20 5 10 /
FIELD
OIL
WATER
WELLDIMS
4 20 1 4 /
TABDIMS
2 2 50 50 /
START
1 JAN 1994 /
A Model With 20*5*10 Cells
Start of simulation
Phases Present may be OIL, WATER, GAS,
DISGAS, VAPOIL
Number of PVT, SCAL, Well,
Aquifer Table in Model
of 55
SOME RUNSPEC KEYWORDS
• TITLE
• FIELD
• OIL
• GAS
• DISGAS
• WATER
• DUALPORO
• DUALPERM
• GRAVDR
• FULLIMP
• DIMENS
• WELLDIMS
• TABDIMS
• REGDIMS
• START
• MESSAGES
• NOSIM
• DPGRID
• NODPPM
2014 March By: Mohammad Massah [email protected]
41
of 55
MINIMUM RUNSPEC KEYWORDS-E100
Keyword Description
TITLE Title
DIMENS Number of blocks in X,Y,Z directions
OIL, WATER, GAS, VAPOIL, DISGAS The active phases present
FIELD/ METRIC/ LAB Unit convention
START Start date of the simulation.
WELLDIMS Well and group dimensions
2014 March By: Mohammad Massah [email protected]
42
of 55
Eclipse 100 Course
RUNSPEC DEFAULTS
• Cartesian geometry
• One set of PVT and Rel. perm. tables
• One reporting region
• Unformatted restart files
• Non-unified restart files
2014 March By: Mohammad Massah [email protected]
43
of 55
Eclipse 100 Course
UNITS
• Three unit conventions can be used: • METRIC units • FIELD units • LAB units
• In Eclipse the default unit convention is METRIC Quantity Metric Field Lab
Length, depth, radius m ft. cm
Time day day hr
Density kg/m3 lbm/ft.3 g/cc
Pressure (absolute( Barsa Psia Atma
Temperature (absolute( K °R K
Temperature (difference( °C °F °C
Viscosity cpoise cpoise cpoise
Permeability MDarcy MDarcy MDarcy
Mass Kg Lb G
Moles kg-mo; Lb-mol g-mol
2014 March By: Mohammad Massah [email protected]
44
of 55
Eclipse 100 Course
RUNSPEC KEYWORDS
•The ECLIPSE Reference manual contains information about all keywords
• Data File Overview chapter shows keywords by section
• Keywords chapter contains details about each keyword
2014 March By: Mohammad Massah [email protected]
45
of 55
Eclipse 100 Course
MINIMUM RUNSPEC SECTION
2014 March By: Mohammad Massah [email protected]
46
of 55
Eclipse 100 Course
• OIL : Indicates that the run contains oil. • GAS : Indicates that the run contains gas. • DISGAS : Run contains dissolved gas in live oil. • WATER : Indicates that the run contains water. • VAPOIL: indicates that the run contains vaporized oil.
ACTIVE PHASES
# Phase
Phase Combination RUNSPEC keyword
1 Dead Oil OIL
Dry Gas GAS
Water WATER
2 Dead Oil Water OIL, Water
Dry Gas Water Gas, Water
Dead Oil Dry Gas OIL, GAS
3 Live Oil with dissolved Water OIL, Gas, DISGAS, Water
Wet Gas with vaporized
Water OIL, GAS, VAPOIL, Water
Live Oil with
dissolved
Wet Gas with
vaporized
Water OIL, GAS, DISGAS, VAPOIL,
Water
2014 March By: Mohammad Massah [email protected]
47
of 55
Eclipse 100 Course
DIMENS
• Defines the basic size of the simulation grid . • It is followed by three integers, specifying the number of cells in
the X, Y and Z or (R, Theta, Z) directions respectively.
• Example • For a reservoir represented by a 10 x 3 x 4 grid the keyword would
be:
DIMENS 10 3 4/
2014 March By: Mohammad Massah [email protected]
48
of 55
Eclipse 100 Course
WELLDIMS
• Dimensions of the well data to be used • The data must be terminated by a slash /)(. • Parameters:
1. The maximum number of wells in the model. 2. The maximum number of connections per well. 3. The maximum number of groups in the model. 4. The maximum number of wells in any one group.
Example: WELLDIMS
20 4 4 5 10 2 4 /
2014 March By: Mohammad Massah [email protected]
49
of 55
Eclipse 100 Course
TABDIMS
• Describe the sizes of saturation and PVT tables used
• Number of fluid-in-place regions
Parameters:
1. NTSFUN : The number of saturation tables entered using SGFN etc. in the PROPS section.
2. NTPVT : The number of PVT tables entered using PVTG, PVTO etc. in the PROPS section.
3. NSSFUN : The maximum number of saturation nodes in any saturation table.
4. NPPVT : The maximum number of pressure nodes in any PVT table.
5. NTFIP : The maximum number of FIP regions defined using FIPNUM in the REGIONS section.
6. NRPVT : The maximum number of Rs nodes in a live oil PVT table.
Example:
TABDIMS
2 1 20 50 4 30 /
39 2014 March By: Mohammad Massah [email protected]
50
of 55
Eclipse 100 Course
START
• Specifies the start date of the simulation • Any report dates entered in the DATES keyword in the SCHEDULE section must
be later than the start date 1. Day: Day of the month (an integer between 1 and 31) 2. Month : Name of the month (JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP,
OCT, NOV, DEC) 3. Year: The year (a 4-figure integer) 4. Time: The time (24 hour, in the format HH:MM:SS.SSSS)
Example START 1 OCT 1999/
2014 March By: Mohammad Massah [email protected]
51
of 55
Eclipse 100 Course
UNIFOUT
• Output files (for example Restart and Summary files), which may be
either multiple or unified, are to be unified
• The default is for multiple (non-unified) files
2014 March By: Mohammad Massah [email protected]
52
of 55
Eclipse 100 Course
FMTOUT
• This indicates that output files which may be either formatted or
unformatted are to be formatted
• This includes the SMSPEC, SUMMARY, GRID, INIT and RESTART files
• The default is unformatted, as this reduces file size and processing
time
2014 March By: Mohammad Massah [email protected]
53
of 55
Eclipse 100 Course
NOSIM
• Turns off time step simulation in the SCHEDULE section
• But the simulator will continue reading and checking the data.
• To verify the validity of the keyword syntax prior to submitting a
large simulation run
2014 March By: Mohammad Massah [email protected]
54
of 55
Eclipse 100 Course
ECLIPSE PARALLEL
• Allows the simulation of a single data set to be distributed across a number of processors
• Large simulations can be run in a shorter time
• Memory requirements for each processor are smaller
• Rule of thumb: 50k cells per processor
PARALLEL
--#Procs MachineType
4 DISTRIBUTED /
2014 March By: Mohammad Massah [email protected]
55