Commit Graph
1982 Commits
Author SHA1 Message Date
Atgeirr Flø Rasmussen a6c173abad Merge pull request #625 from andlaus/fix_wells_in_summary_output
EclipseWriter: attempt to fix the well summary output for activeWells != totalWells
2014-08-14 14:02:54 +02:00
Andreas Lauser 6e1bf4b3ab EclipseWriter: attempt to fix the well summary output for activeWells != totalWells
The summary files now always features all wells which ever appear in
the deck in every timestep (even if they are not specified for the
time step). This _should_ fix the crashes when writing Eclipse output
in the Norne deck, but I have no idea if the resulting summary file is
correct. More testing would be thus highly appreciated...
2014-08-14 13:35:44 +02:00
Tor Harald Sandve 28d7380d40 BUGFIX
Wrong placement of parentes
2014-08-11 12:45:52 +02:00
Tor Harald Sandve 5051658a07 Implements initialization for constant capillary pressure functions 2014-08-11 11:23:15 +02:00
Tor Harald Sandve 4f862e759e 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
2014-08-11 11:22:47 +02:00
Bård Skaflestad 6b36dab2ee swatInitScaling(): Abide by OPM coding conventions
This commit attaches the reference-signifying ampersand to the type
as is preferred in the OPM code base.

Suggested by: [at] atgeirr
2014-08-07 18:50:07 +02:00
Bård Skaflestad c047a6c9dc swatInitScaling(): Remove EOL whitespace
This commit removes several instances of EOL whitespace in function
'swatInitScaling()'.  Aesthetic only.  No functional changes.

Suggested by: [at] atgeirr
2014-08-07 18:50:07 +02:00
Bård Skaflestad f8492aeb64 swatInitScaling(): Name magic constant
The constant 1.0e-8 was used as a threshold to distinguish "low"
from "high" capillary pressure values.  Introduce acutual constant
"pc_low_threshold" to clarify that role.

Suggested by: [at] atgeirr
2014-08-07 18:50:07 +02:00
Bård Skaflestad e8901775cd swatInitScaling(): Rename array size parameter
This commit renames the 'np' parameter used to allocate small arrays
for saturations and capillary pressures to 'max_np' to better
reflect its purpose.

Suggested by: [at] atgeirr
2014-08-07 18:50:06 +02:00
Bård Skaflestad 4da2c5862d Initialise saturation points for Pc scaling
This gives predictable failure modes although the actual behaviour
is (probably) unchanged.
2014-08-07 18:50:06 +02:00
Bård Skaflestad 6f75afc62b Consistently refer to BlackoilPhases::Aqua
This avoids confusion.
2014-08-07 18:50:06 +02:00
Bård Skaflestad 62f654b52c Don't use variable-length arrays
We only support up to 'BlackoilPhases::MaxNumPhases' different
phases (and components), so there's no need to pretend otherwise.
2014-08-07 18:50:06 +02:00
Atgeirr Flø Rasmussen f32198a040 Properly handle defaulted well reference depths. 2014-08-07 12:57:05 +02:00
Andreas Lauser 493650d2b1 EclipseWriter: Don't use the deck directly anymore
instead, use Opm::EclipseState. This requires to pass the PhaseUsage
object to the EclipseWriter, as this one cannot be recovered from
EclipseState (yet?).
2014-07-18 11:20:28 +02:00
Andreas Lauser 597735b7d0 output the cells which the simulator classes consider active
copying the EclipseGrid object is required as the final set of active
cells requires knowledge of the grid used by the simulator which is
not available in opm-parser. In turn, this requires to call
EclipseGrid::resetACTNUM() which is non-const.
2014-07-17 21:47:11 +02:00
Andreas Lauser dc5fc64e98 EclipseWriter: pass an EclipseState to it and use it where possible 2014-07-16 14:34:24 +02:00
Andreas Lauser 65a1bd6722 EclipseWriter: Use opm-parser's Opm::EclipseGrid class to write the EGRID file
this simplifies things quite a bit and allows us to get rid of the
Opm::EclipseWriterDetails::Grid class...
2014-07-16 12:35:31 +02:00
Andreas Lauser bbd05ec67f EclipseWriter: some minor white space changes 2014-07-16 10:41:25 +02:00
Andreas Lauser c6d3994722 EclipseWriter: make it not crash if no wells are present 2014-07-16 10:41:25 +02:00
Andreas Lauser 89cbfac621 EclipseWriter: Store the Cartesian sizes internally
because it this array can be deleted after calling the
constructor. TODO (?): Do the same for the compressed-to-Cartesian
cell index map.
2014-07-16 10:41:25 +02:00
Andreas Lauser 1a1920e5a4 EclipseWriter: remove some unused functions and refactor the code for Cartesian sizes 2014-07-16 10:41:25 +02:00
Andreas Lauser 8579a971da EclipseWriter: get rid of the EclipseHandle monster
instead, the wrapper classes now call ERT directly, so it's easy to
see what a given class does. interestingly the amount of additional
code required is neglectible (or even negative).
2014-07-16 10:41:25 +02:00
Andreas Lauser 044244c4b0 EclipseWriter: rename some variables and functions to make the naming scheme consistent 2014-07-16 10:41:25 +02:00
Andreas Lauser 750af9bf73 EclipseWriter: avoid "using namespace Foo" in compile-unit scope 2014-07-16 10:41:25 +02:00
Andreas Lauser 26dbfb78c2 EclipseWriter: Remove the non-ERT codepaths
ERT has been a requirement for opm-parser for a while now and
opm-parser is a prerequisite of opm-core, so ERT is always
available. Thus remove the stub code to avoid bitrot...
2014-07-16 10:41:25 +02:00
Andreas Lauser e142094443 remove the "Eclipse" prefix from all classes in namespace "EclipseWriterDetails"
this have become become superfluous by the namespace...
2014-07-14 13:58:53 +02:00
Andreas Lauser d71c2a0fa6 EclipseWriter: introduce namespace EclipseWriterDetails
it is for -- well -- the implementation details of EclipseWriter...
2014-07-14 13:58:53 +02:00
Andreas Lauser 15ff31f307 EclipseWriter: stop making UnstructuredGrid think it is special
instead, the same interface as for Dune::CpGrid is now
used. (i.e. pass all relevant information as separate arguments.)
2014-07-14 13:58:50 +02:00
Andreas Lauser 6ac1196859 EclipseWriter: use opm-parser's EclipseGrid class
this unifies the grid creation code paths with the one used by the
simulators and simplfies things.
2014-07-14 13:58:35 +02:00
Atgeirr Flø Rasmussen 6947423b97 Merge pull request #613 from andlaus/PvtLiveOil_fix_argument_ordering
PvtLiveOil: fix ordering of arguments
2014-07-07 14:23:54 +02:00
Atgeirr Flø Rasmussen ace1e3306a Merge pull request #607 from osae/swatinit
Scaling of capillary pressure / initialisation from kw SWATINIT.
2014-07-07 14:10:02 +02:00
Andreas Lauser db3a616a2f PvtLiveOil: fix ordering of arguments
the strange thing is that this worked as-is. The only explaination
which I have for this is that these code paths are unused...
2014-07-07 11:58:54 +02:00
Bård Skaflestad 24524e0137 Reimplement clone_wells() in terms of well_controls_clone() 2014-07-03 16:09:56 +02:00
Bård Skaflestad 841192c605 wells.h: Document several function
This commit adds Doxygen-style documentation to functions

  - clear_well_controls()
  - set_current_control()
  - wells_equal()

No functional changes.
2014-07-03 16:09:56 +02:00
Bård Skaflestad 83b1cc7438 well_controls: Add deep-copy (clone) support
New function well_controls_clone(), implemented in terms of the
public API only, mirrors the objective of function clone_wells(),
only for well control sets.  Add a basic test to demonstrate the
function too.
2014-07-03 16:09:56 +02:00
Bård Skaflestad 001834ccab clone_wells(): Assert result equal to input
This adds a debug-mode safety belt that cloning wells produces a
comparable set of wells to the input.
2014-07-03 16:09:56 +02:00
Bård Skaflestad 7f5ee5abf3 well_controls_equal(): Don't compare set capacities
The 'cpty' field is for internal memory management purposes only.
No client can know of its existence, let alone inspect or directly
change the value, so it should not be used to adjudicate control set
equality.  This was useful during the refactoring work to introduce
the opm-parser support, but its utility has since ceased.

Okay'ed by: [at] atgeirr and [at] joakim-hove
2014-07-03 16:09:56 +02:00
osae 80463a2e40 Included inititalisation of surface volumes. 2014-06-26 15:06:47 +02:00
osae 89137e8cd0 Make use of EclipseState for EQLNUM and SWATINIT. 2014-06-26 14:46:57 +02:00
osae e3b06569e9 Adjustments for vanishing oil phase. 2014-06-25 18:03:17 +02:00
osae d3ee5dc20a SWATINIT: Initialisation and capillary pressure scaling. 2014-06-25 18:03:17 +02:00
osae 6e00befef6 Scaling of capillary pressure. 2014-06-25 18:03:17 +02:00
Atgeirr Flø Rasmussen e8db63dfb0 Fix initialization of tracer heads, and output ordering. 2014-06-25 09:56:37 +02:00
Atgeirr Flø Rasmussen 59d0ae185f Refactor tracer computations.
Current version executes reordered solve once for each tracer. The benefit
is a simpler code and the ability to use MDU with tracers. The cost is
potentially higher runtime, compared to doing a single sweep for all
tracers (and tof).
2014-06-24 09:43:26 +02:00
Atgeirr Flø Rasmussen 11bea99bef Remove unused data member. 2014-06-23 14:18:01 +02:00
Atgeirr Flø Rasmussen 4d2043a3ba Clean up dead code for MDU, update comment. 2014-06-23 14:05:51 +02:00
Atgeirr Flø Rasmussen cf36cbe6d1 Add tracers_ensure_unity parameter.
When this boolean parameter is true (the default), tracer solutions
will be normalized so that the tracer averages will sum to one in each cell.
This behaviour is the same as before, the change is that it can now be
turned off.
2014-06-23 14:03:49 +02:00
Atgeirr Flø Rasmussen 8dceb4b08c Activate MDU option, making SMU method its default. 2014-06-23 11:29:14 +02:00
Atgeirr Flø Rasmussen b3454a03b8 Fix bugs in MDU. 2014-06-23 11:23:16 +02:00
Atgeirr Flø Rasmussen d498143488 Add computation of face tofs parts.
This must be done after the cell tof has been computed since they
depend on it.
2014-06-23 11:22:14 +02:00