mirror of
https://github.com/OPM/opm-simulators.git
synced 2024-11-26 03:00:17 -06:00
restore the hydrostatic equilibration test from opm-core
This involved quite a bit of kicking and screaming. The result certainly is not pretty, but it works.
This commit is contained in:
parent
f65e9fbb69
commit
4e37c53038
@ -29,13 +29,15 @@
|
|||||||
#ifndef EWOMS_EQUILIBRATIONHELPERS_HH
|
#ifndef EWOMS_EQUILIBRATIONHELPERS_HH
|
||||||
#define EWOMS_EQUILIBRATIONHELPERS_HH
|
#define EWOMS_EQUILIBRATIONHELPERS_HH
|
||||||
|
|
||||||
#include <opm/parser/eclipse/EclipseState/InitConfig/Equil.hpp>
|
|
||||||
|
|
||||||
#include <opm/material/common/Tabulated1DFunction.hpp>
|
#include <opm/material/common/Tabulated1DFunction.hpp>
|
||||||
#include <opm/material/fluidsystems/BlackOilFluidSystem.hpp>
|
#include <opm/material/fluidsystems/BlackOilFluidSystem.hpp>
|
||||||
#include <opm/material/fluidstates/SimpleModularFluidState.hpp>
|
#include <opm/material/fluidstates/SimpleModularFluidState.hpp>
|
||||||
#include <opm/material/fluidmatrixinteractions/EclMaterialLawManager.hpp>
|
#include <opm/material/fluidmatrixinteractions/EclMaterialLawManager.hpp>
|
||||||
|
|
||||||
|
// due to a bug in Equil.hpp, cstddef must be included before Equil.hpp
|
||||||
|
#include <cstddef>
|
||||||
|
#include <opm/parser/eclipse/EclipseState/InitConfig/Equil.hpp>
|
||||||
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
|
|
||||||
|
115
tests/equil_base.DATA
Normal file
115
tests/equil_base.DATA
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
RUNSPEC
|
||||||
|
|
||||||
|
WATER
|
||||||
|
GAS
|
||||||
|
OIL
|
||||||
|
|
||||||
|
METRIC
|
||||||
|
|
||||||
|
DIMENS
|
||||||
|
10 1 10 /
|
||||||
|
|
||||||
|
GRID
|
||||||
|
|
||||||
|
DX
|
||||||
|
100*1 /
|
||||||
|
DY
|
||||||
|
100*1 /
|
||||||
|
DZ
|
||||||
|
100*1 /
|
||||||
|
|
||||||
|
TOPS
|
||||||
|
10*0. /
|
||||||
|
|
||||||
|
PORO
|
||||||
|
100*0.3 /
|
||||||
|
|
||||||
|
PERMX
|
||||||
|
100*500 /
|
||||||
|
|
||||||
|
PROPS
|
||||||
|
|
||||||
|
PVTW
|
||||||
|
4017.55 1.038 3.22E-6 0.318 0.0 /
|
||||||
|
|
||||||
|
ROCK
|
||||||
|
14.7 3E-6 /
|
||||||
|
|
||||||
|
SWOF
|
||||||
|
0.12 0 1 0
|
||||||
|
0.18 4.64876033057851E-008 1 0
|
||||||
|
0.24 0.000000186 0.997 0
|
||||||
|
0.3 4.18388429752066E-007 0.98 0
|
||||||
|
0.36 7.43801652892562E-007 0.7 0
|
||||||
|
0.42 1.16219008264463E-006 0.35 0
|
||||||
|
0.48 1.67355371900826E-006 0.2 0
|
||||||
|
0.54 2.27789256198347E-006 0.09 0
|
||||||
|
0.6 2.97520661157025E-006 0.021 0
|
||||||
|
0.66 3.7654958677686E-006 0.01 0
|
||||||
|
0.72 4.64876033057851E-006 0.001 0
|
||||||
|
0.78 0.000005625 0.0001 0
|
||||||
|
0.84 6.69421487603306E-006 0 0
|
||||||
|
0.91 8.05914256198347E-006 0 0
|
||||||
|
1 0.00001 0 0 /
|
||||||
|
|
||||||
|
|
||||||
|
SGOF
|
||||||
|
0 0 1 0
|
||||||
|
0.001 0 1 0
|
||||||
|
0.02 0 0.997 0
|
||||||
|
0.05 0.005 0.980 0
|
||||||
|
0.12 0.025 0.700 0
|
||||||
|
0.2 0.075 0.350 0
|
||||||
|
0.25 0.125 0.200 0
|
||||||
|
0.3 0.190 0.090 0
|
||||||
|
0.4 0.410 0.021 0
|
||||||
|
0.45 0.60 0.010 0
|
||||||
|
0.5 0.72 0.001 0
|
||||||
|
0.6 0.87 0.0001 0
|
||||||
|
0.7 0.94 0.000 0
|
||||||
|
0.85 0.98 0.000 0
|
||||||
|
0.88 0.984 0.000 0 /
|
||||||
|
|
||||||
|
DENSITY
|
||||||
|
53.66 64.49 0.0533 /
|
||||||
|
|
||||||
|
PVDG
|
||||||
|
14.700 166.666 0.008000
|
||||||
|
264.70 12.0930 0.009600
|
||||||
|
514.70 6.27400 0.011200
|
||||||
|
1014.7 3.19700 0.014000
|
||||||
|
2014.7 1.61400 0.018900
|
||||||
|
2514.7 1.29400 0.020800
|
||||||
|
3014.7 1.08000 0.022800
|
||||||
|
4014.7 0.81100 0.026800
|
||||||
|
5014.7 0.64900 0.030900
|
||||||
|
9014.7 0.38600 0.047000 /
|
||||||
|
|
||||||
|
PVTO
|
||||||
|
0.0010 14.7 1.0620 1.0400 /
|
||||||
|
0.0905 264.7 1.1500 0.9750 /
|
||||||
|
0.1800 514.7 1.2070 0.9100 /
|
||||||
|
0.3710 1014.7 1.2950 0.8300 /
|
||||||
|
0.6360 2014.7 1.4350 0.6950 /
|
||||||
|
0.7750 2514.7 1.5000 0.6410 /
|
||||||
|
0.9300 3014.7 1.5650 0.5940 /
|
||||||
|
1.2700 4014.7 1.6950 0.5100
|
||||||
|
9014.7 1.5790 0.7400 /
|
||||||
|
1.6180 5014.7 1.8270 0.4490
|
||||||
|
9014.7 1.7370 0.6310 /
|
||||||
|
/
|
||||||
|
|
||||||
|
SOLUTION
|
||||||
|
|
||||||
|
SWAT
|
||||||
|
100*0.0 /
|
||||||
|
|
||||||
|
SGAS
|
||||||
|
100*0.0 /
|
||||||
|
|
||||||
|
PRESSURE
|
||||||
|
100*300.0 /
|
||||||
|
|
||||||
|
SUMMARY
|
||||||
|
|
||||||
|
SCHEDULE
|
87
tests/equil_capillary.DATA
Normal file
87
tests/equil_capillary.DATA
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
-- Most of the following sections are not actually needed by the test,
|
||||||
|
-- but it is required by the Eclipse reference manual that they are
|
||||||
|
-- present. Also, the higher level opm-parser classes
|
||||||
|
-- (i.e. Opm::EclipseState et al.) assume that they are present.
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
RUNSPEC
|
||||||
|
|
||||||
|
WATER
|
||||||
|
OIL
|
||||||
|
GAS
|
||||||
|
|
||||||
|
DIMENS
|
||||||
|
1 1 20 /
|
||||||
|
|
||||||
|
TABDIMS
|
||||||
|
1 1 40 20 1 20 /
|
||||||
|
|
||||||
|
EQLDIMS
|
||||||
|
-- NTEQUL
|
||||||
|
1 /
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
GRID
|
||||||
|
|
||||||
|
-- Opm::EclipseState assumes that _some_ grid gets defined, so let's
|
||||||
|
-- specify a fake one...
|
||||||
|
|
||||||
|
DXV
|
||||||
|
1*1 /
|
||||||
|
|
||||||
|
DYV
|
||||||
|
1*1 /
|
||||||
|
|
||||||
|
DZV
|
||||||
|
20*5 /
|
||||||
|
|
||||||
|
DEPTHZ
|
||||||
|
4*0.0 /
|
||||||
|
|
||||||
|
PORO
|
||||||
|
20*0.3 /
|
||||||
|
|
||||||
|
PERMX
|
||||||
|
20*500 /
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
PROPS
|
||||||
|
|
||||||
|
PVDO
|
||||||
|
100 1.0 1.0
|
||||||
|
200 0.9 1.0
|
||||||
|
/
|
||||||
|
|
||||||
|
PVDG
|
||||||
|
100 0.010 0.1
|
||||||
|
200 0.005 0.2
|
||||||
|
/
|
||||||
|
|
||||||
|
PVTW
|
||||||
|
1.0 1.0 4.0E-5 0.96 0.0
|
||||||
|
/
|
||||||
|
|
||||||
|
SWOF
|
||||||
|
0.2 0 1 0.4
|
||||||
|
1 1 0 0.1
|
||||||
|
/
|
||||||
|
|
||||||
|
SGOF
|
||||||
|
0 0 1 0.2
|
||||||
|
0.8 1 0 0.5
|
||||||
|
/
|
||||||
|
|
||||||
|
DENSITY
|
||||||
|
700 1000 1
|
||||||
|
/
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
SOLUTION
|
||||||
|
|
||||||
|
EQUIL
|
||||||
|
50 150 50 0.25 20 0.35 1* 1* 0
|
||||||
|
/
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
SCHEDULE
|
||||||
|
-- empty section
|
128
tests/equil_capillary_overlap.DATA
Normal file
128
tests/equil_capillary_overlap.DATA
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
NOECHO
|
||||||
|
|
||||||
|
RUNSPEC ======
|
||||||
|
|
||||||
|
WATER
|
||||||
|
OIL
|
||||||
|
GAS
|
||||||
|
|
||||||
|
TABDIMS
|
||||||
|
1 1 40 20 1 20 /
|
||||||
|
|
||||||
|
DIMENS
|
||||||
|
1 1 20
|
||||||
|
/
|
||||||
|
|
||||||
|
WELLDIMS
|
||||||
|
30 10 2 30 /
|
||||||
|
|
||||||
|
START
|
||||||
|
1 'JAN' 1990 /
|
||||||
|
|
||||||
|
NSTACK
|
||||||
|
25 /
|
||||||
|
|
||||||
|
EQLDIMS
|
||||||
|
-- NTEQUL
|
||||||
|
1 /
|
||||||
|
|
||||||
|
|
||||||
|
FMTOUT
|
||||||
|
FMTIN
|
||||||
|
|
||||||
|
GRID ======
|
||||||
|
|
||||||
|
DXV
|
||||||
|
1.0
|
||||||
|
/
|
||||||
|
|
||||||
|
DYV
|
||||||
|
1.0
|
||||||
|
/
|
||||||
|
|
||||||
|
DZV
|
||||||
|
20*5.0
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
PORO
|
||||||
|
20*0.2
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
PERMZ
|
||||||
|
20*1.0
|
||||||
|
/
|
||||||
|
|
||||||
|
PERMY
|
||||||
|
20*100.0
|
||||||
|
/
|
||||||
|
|
||||||
|
PERMX
|
||||||
|
20*100.0
|
||||||
|
/
|
||||||
|
|
||||||
|
BOX
|
||||||
|
1 1 1 1 1 1 /
|
||||||
|
|
||||||
|
TOPS
|
||||||
|
0.0
|
||||||
|
/
|
||||||
|
|
||||||
|
PROPS ======
|
||||||
|
|
||||||
|
|
||||||
|
PVDO
|
||||||
|
100 1.0 1.0
|
||||||
|
200 0.9 1.0
|
||||||
|
/
|
||||||
|
|
||||||
|
PVDG
|
||||||
|
100 0.010 0.1
|
||||||
|
200 0.005 0.2
|
||||||
|
/
|
||||||
|
|
||||||
|
SWOF
|
||||||
|
0.2 0 1 0.9
|
||||||
|
1 1 0 0.1
|
||||||
|
/
|
||||||
|
|
||||||
|
SGOF
|
||||||
|
0 0 1 0.2
|
||||||
|
0.8 1 0 0.5
|
||||||
|
/
|
||||||
|
|
||||||
|
PVTW
|
||||||
|
--RefPres Bw Comp Vw Cv
|
||||||
|
1. 1.0 4.0E-5 0.96 0.0 /
|
||||||
|
|
||||||
|
|
||||||
|
ROCK
|
||||||
|
--RefPres Comp
|
||||||
|
1. 5.0E-5 /
|
||||||
|
|
||||||
|
DENSITY
|
||||||
|
700 1000 1
|
||||||
|
/
|
||||||
|
|
||||||
|
SOLUTION ======
|
||||||
|
|
||||||
|
EQUIL
|
||||||
|
45 150 50 0.25 45 0.35 1* 1* 0
|
||||||
|
/
|
||||||
|
|
||||||
|
RPTSOL
|
||||||
|
'PRES' 'PGAS' 'PWAT' 'SOIL' 'SWAT' 'SGAS' 'RESTART=2' /
|
||||||
|
|
||||||
|
SUMMARY ======
|
||||||
|
RUNSUM
|
||||||
|
|
||||||
|
SEPARATE
|
||||||
|
|
||||||
|
SCHEDULE ======
|
||||||
|
|
||||||
|
RPTSCHED
|
||||||
|
'PRES' 'PGAS' 'PWAT' 'SOIL' 'SWAT' 'SGAS' 'RESTART=3' 'NEWTON=2' /
|
||||||
|
|
||||||
|
|
||||||
|
END
|
102
tests/equil_capillary_swatinit.DATA
Normal file
102
tests/equil_capillary_swatinit.DATA
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
-- Most of the following sections are not actually needed by the test,
|
||||||
|
-- but it is required by the Eclipse reference manual that they are
|
||||||
|
-- present. Also, the higher level opm-parser classes
|
||||||
|
-- (i.e. Opm::EclipseState et al.) assume that they are present.
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
RUNSPEC
|
||||||
|
|
||||||
|
WATER
|
||||||
|
OIL
|
||||||
|
GAS
|
||||||
|
|
||||||
|
DIMENS
|
||||||
|
1 1 20 /
|
||||||
|
|
||||||
|
TABDIMS
|
||||||
|
1 1 40 20 1 20 /
|
||||||
|
|
||||||
|
EQLDIMS
|
||||||
|
-- NTEQUL
|
||||||
|
1 /
|
||||||
|
|
||||||
|
START
|
||||||
|
1 'JAN' 2015 /
|
||||||
|
-------------------------------------
|
||||||
|
GRID
|
||||||
|
|
||||||
|
-- Opm::EclipseState assumes that _some_ grid gets defined, so let's
|
||||||
|
-- specify a fake one...
|
||||||
|
|
||||||
|
DXV
|
||||||
|
1 /
|
||||||
|
|
||||||
|
DYV
|
||||||
|
1 /
|
||||||
|
|
||||||
|
DZ
|
||||||
|
20*5 /
|
||||||
|
|
||||||
|
TOPS
|
||||||
|
0 /
|
||||||
|
|
||||||
|
PORO
|
||||||
|
20*0.3 /
|
||||||
|
|
||||||
|
PERMX
|
||||||
|
20*500 /
|
||||||
|
|
||||||
|
PERMZ
|
||||||
|
20*500 /
|
||||||
|
-------------------------------------
|
||||||
|
PROPS
|
||||||
|
|
||||||
|
ROCK
|
||||||
|
14.7 3E-6 /
|
||||||
|
|
||||||
|
PVDO
|
||||||
|
100 1.0 1.0
|
||||||
|
200 0.9 1.0
|
||||||
|
/
|
||||||
|
|
||||||
|
PVDG
|
||||||
|
100 0.010 0.1
|
||||||
|
200 0.005 0.2
|
||||||
|
/
|
||||||
|
|
||||||
|
PVTW
|
||||||
|
1.0 1.0 4.0E-5 0.96 0.0
|
||||||
|
/
|
||||||
|
|
||||||
|
SWOF
|
||||||
|
0.2 0 1 0.4
|
||||||
|
1 1 0 0.1
|
||||||
|
/
|
||||||
|
|
||||||
|
SGOF
|
||||||
|
0 0 1 0.2
|
||||||
|
0.8 1 0 0.5
|
||||||
|
/
|
||||||
|
|
||||||
|
DENSITY
|
||||||
|
700 1000 1
|
||||||
|
/
|
||||||
|
|
||||||
|
SWATINIT
|
||||||
|
5*0
|
||||||
|
10*0.5
|
||||||
|
5*1 /
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
SOLUTION
|
||||||
|
|
||||||
|
EQUIL
|
||||||
|
50 150 50 0.25 20 0.35 1* 1* 0
|
||||||
|
/
|
||||||
|
|
||||||
|
RPTSOL
|
||||||
|
SWATINIT SWAT SGAS SOIL PCOG PCOW
|
||||||
|
/
|
||||||
|
-------------------------------------
|
||||||
|
SCHEDULE
|
||||||
|
-- empty section
|
88
tests/equil_deadfluids.DATA
Normal file
88
tests/equil_deadfluids.DATA
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
-- Most of the following sections are not actually needed by the test,
|
||||||
|
-- but it is required by the Eclipse reference manual that they are
|
||||||
|
-- present. Also, the higher level opm-parser classes
|
||||||
|
-- (i.e. Opm::EclipseState et al.) assume that they are present.
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
RUNSPEC
|
||||||
|
|
||||||
|
WATER
|
||||||
|
GAS
|
||||||
|
OIL
|
||||||
|
|
||||||
|
METRIC
|
||||||
|
|
||||||
|
DIMENS
|
||||||
|
1 1 10 /
|
||||||
|
|
||||||
|
TABDIMS
|
||||||
|
1 1 40 20 1 20 /
|
||||||
|
|
||||||
|
EQLDIMS
|
||||||
|
-- NTEQUL
|
||||||
|
1 /
|
||||||
|
|
||||||
|
GRID
|
||||||
|
|
||||||
|
-- Opm::EclipseState assumes that _some_ grid gets defined, so let's
|
||||||
|
-- specify a fake one...
|
||||||
|
|
||||||
|
DXV
|
||||||
|
1*1 /
|
||||||
|
|
||||||
|
DYV
|
||||||
|
1*1 /
|
||||||
|
|
||||||
|
DZV
|
||||||
|
10*1 /
|
||||||
|
|
||||||
|
TOPS
|
||||||
|
1*0.0 /
|
||||||
|
|
||||||
|
PORO
|
||||||
|
10*0.3 /
|
||||||
|
|
||||||
|
PERMX
|
||||||
|
10*500 /
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
PROPS
|
||||||
|
|
||||||
|
PVDO
|
||||||
|
100 1.0 1.0
|
||||||
|
200 0.5 1.0
|
||||||
|
/
|
||||||
|
|
||||||
|
PVDG
|
||||||
|
100 0.05 0.1
|
||||||
|
200 0.02 0.2
|
||||||
|
/
|
||||||
|
|
||||||
|
PVTW
|
||||||
|
1.0 1.0 4.0E-5 0.96 0.0
|
||||||
|
/
|
||||||
|
|
||||||
|
SWOF
|
||||||
|
0 0 1 0
|
||||||
|
1 1 0 0
|
||||||
|
/
|
||||||
|
|
||||||
|
SGOF
|
||||||
|
0 0 1 0
|
||||||
|
1 1 0 0
|
||||||
|
/
|
||||||
|
|
||||||
|
DENSITY
|
||||||
|
700 1000 10
|
||||||
|
/
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
SOLUTION
|
||||||
|
|
||||||
|
EQUIL
|
||||||
|
5 150 5 0 2 0 1* 1* 0
|
||||||
|
/
|
||||||
|
|
||||||
|
-------------------------------------
|
||||||
|
SCHEDULE
|
||||||
|
-- empty section
|
1014
tests/test_equil.cc
Normal file
1014
tests/test_equil.cc
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user