python class Sunbeamstate: remove state.

This commit is contained in:
Steinar Foss
2019-09-13 11:02:10 +02:00
parent 15d70c446f
commit 7fc7a8f0ba
6 changed files with 82 additions and 15 deletions

View File

@@ -12,7 +12,7 @@ from __future__ import absolute_import
from .libopmcommon_python import action
from .libopmcommon_python import Parser, ParseContext, ParserKeyword
from .libopmcommon_python import EclipseConfig, EclipseGrid, Eclipse3DProperties, Tables
from .libopmcommon_python import EclipseConfig, EclipseGrid, Eclipse3DProperties, Tables, EclipseState
#from .schedule import Well, Connection, Schedule
#from .config import EclipseConfig

View File

@@ -1 +1 @@
from opm._common import EclipseConfig, EclipseGrid, Eclipse3DProperties, Tables
from opm._common import EclipseConfig, EclipseGrid, Eclipse3DProperties, Tables, EclipseState

View File

@@ -9,10 +9,6 @@ from ..schedule import Schedule
@delegate(lib.SunbeamState)
class SunbeamState(object):
@property
def state(self):
return self._state()
@property
def schedule(self):

View File

@@ -32,9 +32,11 @@ FIPNUM
self.spe3fn = 'tests/spe3/SPE3CASE1.DATA'
self.norne_fname = os.path.abspath('examples/data/norne/NORNE_ATW2013.DATA')
"""
def test_parse(self):
spe3 = opm.io.parse(self.spe3fn)
self.assertEqual('SPE 3 - CASE 1', spe3.state.title)
"""
def test_parse_with_recovery(self):
recovery = [("PARSE_RANDOM_SLASH", opm.io.action.ignore)]
@@ -63,8 +65,9 @@ FIPNUM
def test_parse_norne(self):
state = opm.io.parse(self.norne_fname, recovery=[('PARSE_RANDOM_SLASH', opm.io.action.ignore)])
es = state.state
"""
es = state.state
self.assertEqual(46, es.grid().getNX())
self.assertEqual(112, es.grid().getNY())
self.assertEqual(22, es.grid().getNZ())

View File

@@ -46,7 +46,7 @@ SATNUM
1000*2 /
\
"""
"""
@classmethod
def setUpClass(cls):
cls.spe3 = opm.io.parse('tests/spe3/SPE3CASE1.DATA')
@@ -61,7 +61,7 @@ SATNUM
def test_state_nnc(self):
self.assertFalse(self.state.has_input_nnc())
"""
def test_grid(self):
grid = self.state.grid()
self.assertTrue('EclipseGrid' in repr(grid))
@@ -73,7 +73,7 @@ SATNUM
g,i,j,k = 295,7,5,3
self.assertEqual(g, grid.globalIndex(i,j,k))
self.assertEqual((i,j,k), grid.getIJK(g))
"""
def test_summary(self):
smry = self.spe3.summary_config
@@ -81,6 +81,7 @@ SATNUM
self.assertTrue('WOPR' in smry) # hasKeyword
self.assertFalse('NONO' in smry) # hasKeyword
def test_simulation(self):
sim = self.state.simulation()
self.assertFalse(sim.hasThresholdPressure())
@@ -88,7 +89,7 @@ SATNUM
self.assertTrue(sim.hasDISGAS())
self.assertTrue(sim.hasVAPOIL())
"""
def test_tables(self):
tables = self.state.table
self.assertTrue('SGOF' in tables)
@@ -120,7 +121,7 @@ SATNUM
f2 = faultdeck.faultFaces('F2')
self.assertTrue((4,0,0,'X-') in f2)
self.assertFalse((3,0,0,'X-') in f2)
"""
def test_jfunc(self):
# jf["FLAG"] = WATER; # set in deck
@@ -142,7 +143,7 @@ SATNUM
self.assertEqual(jf["ALPHA_FACTOR"], 0.5) # default
self.assertEqual(jf["BETA_FACTOR"], 0.5) # default
jfunc_gas = """RUNSPEC
jfunc_gas = ###RUNSPEC
DIMENS
10 10 10 /
GRID
@@ -157,7 +158,7 @@ TOPS
JFUNC
GAS * 13.0 0.6 0.7 Z /
PROPS\nREGIONS
"""
###
js_gas = opm.io.parse_string(jfunc_gas).state
jf = js_gas.jfunc()
self.assertEqual(jf['FLAG'], 'GAS')
@@ -167,6 +168,7 @@ PROPS\nREGIONS
self.assertEqual(jf['GAS_OIL'], 13.0)
self.assertEqual(jf["ALPHA_FACTOR"], 0.6) # default
self.assertEqual(jf["BETA_FACTOR"], 0.7) # default
"""
if __name__ == "__main__":
unittest.main()

View File

@@ -1 +1,67 @@
from opm.io.ecl_state import EclipseConfig, EclipseGrid, Eclipse3DProperties, Tables
import unittest
from opm.io.parser import Parser
from opm.io.ecl_state import EclipseConfig, EclipseGrid, Eclipse3DProperties, Tables, EclipseState
class TestState2(unittest.TestCase):
FAULTS_DECK = """
RUNSPEC
DIMENS
10 10 10 /
GRID
DX
1000*0.25 /
DY
1000*0.25 /
DZ
1000*0.25 /
TOPS
100*0.25 /
FAULTS
'F1' 1 1 1 4 1 4 'X' /
'F2' 5 5 1 4 1 4 'X-' /
/
MULTFLT
'F1' 0.50 /
'F2' 0.50 /
/
EDIT
MULTFLT /
'F2' 0.25 /
/
OIL
GAS
TITLE
The title
START
8 MAR 1998 /
PROPS
REGIONS
SWAT
1000*1 /
SATNUM
1000*2 /
\
"""
@classmethod
def setUpClass(cls):
#cls.spe3 = opm.io.parse('tests/spe3/SPE3CASE1.DATA')
#cpa = opm.io.parse('tests/data/CORNERPOINT_ACTNUM.DATA')
#cls.state = cls.spe3.state
#cls.cp_state = cpa.state
pass
#parser = Parser()
#cls.deck_spe3 = parser.parse_string('tests/spe3/SPE3CASE1.DATA')
#cls.deck_cpa = parser.parse_string('tests/data/CORNERPOINT_ACTNUM.DATA')
#cls.state = EclipseState(cls.deck_spe3)
#cls.cp_state = EclipseState(cls.deck_cpa)