Commit Graph
456 Commits
Author SHA1 Message Date
Joakim Hove dd42660a00 Using TableManager to get tables. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen bc4116fd39 Fix unneeded-internal-declaration warning.
Again related to anonymous namespace function only being used
in template functions.
2018-01-02 14:28:06 +01:00
Markus Blatt 7f19fc0759 Put spaces around operators. 2018-01-02 14:28:06 +01:00
Markus Blatt 97d0155c36 Rely on auto instead of querying the explicit type
via e.g. typename UgGridHelpers::Face2VerticesTraits<Grid>::Type
2018-01-02 14:28:06 +01:00
Markus Blatt dec7a93918 Ported initStateEquil to using the GridHelpers.
Currently the keyword EQUIL is not supported by the fully
implicit blackoil simulator when using CpGrid. This
commit is a first step towards this as it makes the
implementation of initStateEquil generic.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 733061c943 Silence unused argument warning. 2018-01-02 14:28:06 +01:00
Andreas Lauser 18c641e0c7 PVT properties: allow them to be temperature dependent
Note that this patch does not introduce any real temperature
dependence but only changes the APIs for the viscosity and for the
density related methods. Note that I also don't like the fact that
this requires so many changes to so many files, but with the current
design of the property classes I cannot see a way to avoid this...
2018-01-02 14:28:06 +01:00
Robert K b6e5dcd706 remove unused typedef to avoid compiler warning and keep code clean. 2018-01-02 14:28:06 +01:00
Andreas Lauser 5518843275 adapt the the table related API changes of opm-parser 2018-01-02 14:28:06 +01:00
Tor Harald Sandve ebaaa2c51c Include goc and woc in the span for the phase pressure calculation 2018-01-02 14:28:06 +01:00
Tor Harald Sandve 4923b9968e Remove fix for GOC and WOC above/below reservoir 2018-01-02 14:28:06 +01:00
Tor Harald Sandve a03a4e112f Fix sign error in the specified oil pressures at at WOC and GOC
The oil pressure at the contact for the special cases:

contact	location	po(contact)
GOC 	above 	-inf
GOC 	below 	+inf
WOC 	above 	-inf
WOC 	below 	+inf
2018-01-02 14:28:06 +01:00
Tor Harald Sandve b389f40849 Currectly handling GOC below and WOC above the reservoir The phase pressure of water and gas is set to inf when WOC and GOC is above and below the reservoir. This make sure the minimum saturation values are picked for these cases. 2018-01-02 14:28:06 +01:00
Tor Harald Sandve ba54cd84c2 Fixes issues pointed out in the PR comments 2018-01-02 14:28:06 +01:00
Tor Harald Sandve b1d20aa83d The water/gas pressures are only calculated if woc and goc lies within
the reservoar
The water/gas pressure is set to -inf when woc and goc is above or below
the reservoar.
2018-01-02 14:28:06 +01:00
Tor Harald Sandve 480f5337b6 BUGFIX
Wrong placement of parentes
2018-01-02 14:28:06 +01:00
Tor Harald Sandve 70dc519539 Implements initialization for constant capillary pressure functions 2018-01-02 14:28:06 +01:00
Tor Harald Sandve c61fb736fa Computes saturations based on depths
For constant capillar pressure function the saturation is
    determined by cell depths:

    Sg_max, Sw_min
    ----- goc ----
    Sg_min, Sw_min
    ----- woc ----
    Sg_min, Sw_max
2018-01-02 14:28:06 +01:00
osae 834669dff4 Included inititalisation of surface volumes. 2018-01-02 14:28:06 +01:00
osae c4b5a7e302 Make use of EclipseState for EQLNUM and SWATINIT. 2018-01-02 14:28:06 +01:00
osae f06659cd71 Adjustments for vanishing oil phase. 2018-01-02 14:28:06 +01:00
osae 10f5b07915 SWATINIT: Initialisation and capillary pressure scaling. 2018-01-02 14:28:06 +01:00
Andreas Lauser 897f64c21a incorperate the review comments/decisions for multi-region PVT
the largest change is that all classes below opm/core/props/pvt take
the PVT region index as an argument, the higher-level ones (i.e.,
BlackoilProps*) take cell indices.
2018-01-02 14:28:06 +01:00
Andreas Lauser 68623918a7 Implement multi-region PVT for all property classes
since they are not using a single PVT table anymore, their "Single"
prefix has been removed...
2018-01-02 14:28:06 +01:00
Andreas Lauser 5194a1a782 rename all "newParserDeck" objects to "deck"
The "new" parser is now "the" parser...
2018-01-02 14:28:06 +01:00
Andreas Lauser bd45d3e693 remove EclipseGridParser compatibility methods from all classes 2018-01-02 14:28:06 +01:00
osae bc558f3818 Initialisation of EGLNUM (analogous to e.g SATNUM) 2018-01-02 14:28:06 +01:00
osae 6f3a03c072 Inserted some documentation. 2018-01-02 14:28:06 +01:00
osae 6a587ba8d9 Fix to make EQLNUM consistent with ACTNUM.
This should eventually be integrated in the parser.
2018-01-02 14:28:06 +01:00
Andreas Lauser 3bf249e1ab adapt to the renames of the table classes in opm-parser
basically, "Opm::SimpleTable" becomes "Opm::SingleRecordTable".
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen c8d13d2a79 Fix access to keywords, while still silencing warning.
Previous fix was wrong because it called getKeyword() outside the
hasKeyword() check. Current version (like original code) uses the
short-circuiting behaviour of && to ensure this.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 91dedb0eea Avoid signed/unsigned warning. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 65e435e139 Comment out unused function argument. 2018-01-02 14:28:06 +01:00
osae 7207b50721 Equil regions now internally indexed 0..(NTEQUL-1) 2018-01-02 14:28:06 +01:00
osae 1a30326e1a New parser included. 2018-01-02 14:28:06 +01:00
osae abb8a63e6d Default equil region should be one not zero ...
Otherwise problems when kw EQLNUM is used.
2018-01-02 14:28:06 +01:00
osae a2cd03197c Some adjustments to equil initialisation.
- Saturations, phase pressures, and standard initialsation of RS and RV
   now agree to baseline.
 - Tables of RS and RV versus vertical depth (kw RSVD RVVD) have been
   hardcoded for testing (need new parser) and the calculations agree to
   baseline in the gas and oil zones.  In the water zone there is some
   differences: Our code computes saturated RS and RV using the final
   phase pressures (these are modified to be consistent with saturations
   and capillary pressures) while the baseline uses unmodified phase pressures.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen ad285d452c Bugfix in RsSatAtContact: use min(), not max().
Also modified test to match output.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 6ccc8d7bf8 Fix bug in RS initialisation.
Also throw if default init is specified and datum != goc depth.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen bbcf7a5833 Remove debugging output. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 5aa1a0f999 Add computeRs() function and use from InitialStateComputer. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen a340781958 Add initStateEquil() function.
It is not quite complete yet for the following reasons:
  - it does not compute state.surfacevol(),
  - the InitialStateComputer class does not compute Rs or Rv,
  - it has not been verified.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen cd39c887f5 Added Rv field to InitialStateComputer.
It is currently not computed, as for Rs.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 09e73f2dbd Moved implementation of phaseSaturations() to _impl file. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 02b1d21393 Refactor copying of region to global data. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 055769b8bd Rename PhasePressureSaturationComputer -> InitialStateComputer.
Also add (unused so far) rs_ field to class.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 5c669614bf Added size() method to CellRange inner class. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 9569ea304f Enable live oil in initialisation. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 074dbbb599 Removed redundant calcPressII() method.
Pressure is also calculated in the calcPressSat() method.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen 319bbe5ca6 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.
2018-01-02 14:28:06 +01:00