Commit Graph

28 Commits

Author SHA1 Message Date
Tor Harald Sandve
c323345d3b Changes in the ref. solution in the DeakAllDead test 2014-08-12 07:08:57 +02:00
osae
9b30660d1e Correcting the equil test. 2014-08-11 13:19:17 +02:00
osae
89137e8cd0 Make use of EclipseState for EQLNUM and SWATINIT. 2014-06-26 14:46:57 +02:00
Andreas Lauser
0c47d27827 Glue in support for the grid property modifier keywords
this basically means using Opm::EclipseState instead of the raw deck
for these keywords.

with this, property modifiers like ADD, MULT, COPY and friends are
supported for at least the PERM* keywords. If additional keywords are
required these can be added relatively easily as well.

no ctest regressions have been observed with this patch on my machine.
2014-06-11 13:48:49 +02:00
Andreas Lauser
f96dfc2e0f fix the equilibration test by using new values
thanks to @bska for the hints.
2014-06-04 13:26:37 +02:00
Andreas Lauser
3941fbc5f1 remove EclipseGridParser compatibility methods from all classes 2014-05-21 11:22:43 +02:00
Atgeirr Flø Rasmussen
ef5a21d710 Add (all-zero) initialisation of new EquilRecord fields. 2014-04-15 13:41:10 +02:00
osae
04d8322fa0 Some additional tests: live gas, RSVD and RVVD 2014-04-03 09:07:00 +02:00
osae
d0da7a9437 Update tests and provide some eclipse output. 2014-03-31 15:32:06 +02:00
Atgeirr Flø Rasmussen
75a7c5cee8 Bugfix in RsSatAtContact: use min(), not max().
Also modified test to match output.
2014-02-27 14:57:38 +01:00
Atgeirr Flø Rasmussen
3e9b82e083 Fix bug in RS initialisation.
Also throw if default init is specified and datum != goc depth.
2014-02-27 14:48:14 +01:00
Atgeirr Flø Rasmussen
036ab95da2 Rename PhasePressureSaturationComputer -> InitialStateComputer.
Also add (unused so far) rs_ field to class.
2014-02-27 09:08:39 +01:00
Atgeirr Flø Rasmussen
7cc0802f3e Add test for live oil initialisation.
The test is not finished or verified yet.
2014-02-27 08:31:51 +01:00
Atgeirr Flø Rasmussen
8ef54b7c64 Made phase mixing functors a class hierarchy.
In summary:
 - added RsFunction (base class),
 - made NoMixing, RsVD, RsSatAtContact inherit RsFunction,
 - RS and RV are no longer template arguments for EquilReg class,
 - EquilReg constructor now takes two shared_ptr<Miscibility::RsFunction>,
 - use of constructor updated, mostly using make_shared.
2014-02-26 14:47:24 +01:00
Atgeirr Flø Rasmussen
14276f9175 Capitalize nested namespace names.
equil -> Equil
miscibility -> Miscibility
2014-02-24 15:55:14 +01:00
Atgeirr Flø Rasmussen
34595ae225 Move RegionMapping class to its own header, add test.
Class now resides in opm/core/utility/RegionMapping.hpp.
2014-02-24 15:19:04 +01:00
Atgeirr Flø Rasmussen
2b8deb20fd Add test case with overlapping transitions.
Capillary pressure functions and contact depths
have been modified to ensure a large overlap.
2014-02-21 14:50:45 +01:00
Atgeirr Flø Rasmussen
c7af2aa8ca Add test case with capillary transition region. 2014-02-21 08:55:15 +01:00
Atgeirr Flø Rasmussen
e6d21e31d3 Add saturation computation to and rename computer class.
Opm::equil::DeckDependent::PhasePressureComputer ->
Opm::equil::DeckDependent::PhasePressureSaturationComputer
2014-02-21 08:52:25 +01:00
Atgeirr Flø Rasmussen
5e1ad40afd Add test case for capillary inversion. 2014-02-21 08:32:15 +01:00
Atgeirr Flø Rasmussen
e81aa92c03 Complete pressure test for dead-oil deck. 2014-02-19 13:41:20 +01:00
Atgeirr Flø Rasmussen
4396130765 Still working on test_equil.cpp. 2014-02-05 11:26:29 +01:00
Atgeirr Flø Rasmussen
562b00effb Add (unfinished) test case. 2014-02-03 15:36:20 +01:00
Bård Skaflestad
965918a8a3 Include <numeric> for std::iota()
Header was missing in earlier revision.
2014-01-21 17:54:47 +01:00
Bård Skaflestad
aa9e28a5b8 Add reverse look-up mapping for region vectors
Class RegionMapping<> provides an easy way of extracting the cells
that belong to any identified region (e.g., as defined by EQLNUM) of
the deck.
2014-01-21 17:54:47 +01:00
Bård Skaflestad
88b9db9a45 Test cell subset phase pressure assignment. 2014-01-21 17:54:46 +01:00
Bård Skaflestad
e84e6ee4bb Compute phase pressures in subset of cells
This commit adds support for assigning the initial phase pressure
distribution to a subset of the total grid cells.  This is needed in
order to fully support equilibration regions.  The existing region
support (template parameter 'Region' in function 'phasePressures()')
was only used/needed to define PVT property (specifically, the fluid
phase density) calculator pertaining to a particular equilibration
region.
2014-01-21 17:54:46 +01:00
Bård Skaflestad
4ea3e7ed53 Add basic equilibration facility
This commit adds a simple facility for calculating initial phase
pressures assuming stationary conditions, a known reference pressure
in the oil zone as well as the depth and capillary pressures at the
water-oil and gas-oil contacts.

Function 'Opm::equil::phasePressures()' uses a simple ODE/IVP-based
approach, solved using the traditional RK4 method with constant step
sizes, to derive the required pressure values.  Specifically, we
solve the ODE

      dp/dz = rho(z,p) * g

with 'z' represening depth, 'p' being a phase pressure and 'rho' the
associate phase density.  Finally, 'g' is the acceleration of
gravity.  We assume that we can calculate phase densities, e.g.,
from table look-up.  This assumption holds in the case of an ECLIPSE
input deck.

Using RK4 with constant step sizes is a limitation of this
implementation.  This, basically, assumes that the phase densities
varies only smoothly with depth and pressure (at reservoir
conditions).
2014-01-21 17:54:46 +01:00