Commit Graph
458 Commits
Author SHA1 Message Date
Joakim Hove 2950faece0 Extract the Summary::eval() call from the output call 2019-06-19 09:51:46 +02:00
Joakim Hove 24e3afc544 Merge pull request #1887 from joakim-hove/remove-unused-args
Remove unused arguments from write task
2019-06-14 16:05:56 +02:00
Joakim Hove e5d2d70ee5 Remove unused arguments from write task 2019-06-14 14:44:06 +02:00
Tor Harald Sandve ba3598a6ae Let the output writer determine what to write in ebos 2019-06-14 13:57:41 +02:00
Tor Harald Sandve edbc28f46c Merge pull request #1879 from andlaus/mebos
add `mebos`, a multiplexed ebos variant
2019-06-13 11:03:38 +02:00
Andreas Lauser ca8ea76818 add mebos, a multiplexed ebos variant
`mebos` works similarly as `flow`, but in contrast to `flow`, `mebos`
only creates the deck in the common code path whilst the
'EclipseState' and the other higher-level parser objects are always
created internally by the vanguard. this approach avoids code
duplication and the worst effects of parser API creep.

to avoid having to compile non-trivial compile units multiple times,
the actual code of the variants is moved into `ebos_$VARIANT.{hh,cc}`
files and the respective compile units are each put into a small
static library whilst the main function of said libraries are invoked
by either the multiplexed or the respective specialized simulator's
`main()`. This is also somewhat similar of how `flow` works, with the
difference that `mebos` uses the blackoil variant to determine the
parameters it needs to know for parsing the deck instead of
introducing a "fake" type tag for this. The rationale is to reduce
compile time compared to the "fake type tag" approach and -- to a
lesser extend -- avoid unnecessary copy-and-pasting of code. In
particular, this means that for the vast majority of cases, only one
place needs changed in the code for all `ebos` variants if, for
example, the parser API requires further objects in the future.
2019-06-11 10:27:47 +02:00
Joakim Hove 1790910269 Call Summary::eval() and ::add_timestep separately 2019-06-06 12:14:46 +02:00
Joakim Hove 47f4e750d2 Merge pull request #1865 from joakim-hove/use-shared-summarystate
Use shared summarystate
2019-06-04 09:49:56 +02:00
Tor Harald Sandve 9d6f20b172 Merge pull request #1870 from andlaus/ebos_cleanups
Ebos cleanups
2019-06-03 14:32:17 +02:00
Tor Harald Sandve 2df734f00e output .INIT and .GRID also on restart 2019-06-03 12:21:34 +02:00
Andreas Lauser f5e26df6af ebos: tell the parser not to bail out if it encounters superfluous records
this makes slightly incorrect decks usable with `ebos`. since the
common `flow` variants use a different code path to parse the deck,
they are unaffected. (as far as I can see, the only variant which
might be affected is `flow_ebos_oilwater_polymer_injectivity` and even
for it `flow`'s multiplexing code will abort the run before the
vanguard is even called.)
2019-06-03 11:20:41 +02:00
Andreas Lauser c315a9a473 ebos: make it possible to disable aquifiers
for now, disabling aquifers is an experimental feature...
2019-06-03 11:20:41 +02:00
Andreas Lauser ef74025523 ebos: tone down the warning in the startup message slightly
The intend is to make the purpose of `ebos` clearer: while it can be
used in production, the stability guarantees are somewhat lower than
for `flow` and testing is a bit less rigorous (most of the time).
2019-06-03 11:11:41 +02:00
Andreas Lauser c86470e768 tracer model: fix a few output messages
fixes some typos, adds better wording and fixes some duplication
issues on parallel runs.
2019-06-03 11:11:41 +02:00
Andreas Lauser b699f40cee fix "checking conservativeness" debug message for parallel runs 2019-06-03 11:11:41 +02:00
Andreas Lauser c0a2fdf5c6 fix a few harmless compiler warnings 2019-06-03 11:11:41 +02:00
Andreas Lauser 18d989c394 ebos: replace tabs with spaces and remove trailing white space
for some reason this keeps creping back in...
2019-06-03 11:11:41 +02:00
Tor Harald Sandve 8f60a5f9fc Merge pull request #1841 from andlaus/remove_isSubstep
EclProblem: remove the isSubstep parameter from writeOutput()
2019-06-03 10:41:12 +02:00
Andreas Lauser 80238d9940 Merge pull request #1863 from totto82/fix_init
Make it possible to restart without computing initial conditions
2019-05-29 12:23:40 +02:00
Atgeirr Flø Rasmussen f3b21f8ead Merge pull request #1861 from totto82/fixFPRP
Fix FPRP output
2019-05-29 09:59:46 +02:00
Joakim Hove 6edba5d94e Use shared SummaryState in eclwellmanager 2019-05-29 07:45:58 +02:00
Joakim Hove dc4f57f7eb Merge pull request #1831 from joakim-hove/use-wells2-controls
Use wells2 controls
2019-05-29 06:46:58 +02:00
Tor Harald Sandve ae78cb86df Make it possible to restart without computing initial conditions 2019-05-28 13:04:28 +02:00
Tor Harald Sandve e8db16554f Fix FPRP output 2019-05-27 11:24:55 +02:00
Joakim Hove 511645d12c Use InjectionControls and ProductionControls data classes 2019-05-23 16:27:17 +02:00
Bård Skaflestad a618a1a777 Merge pull request #1857 from totto82/fix_fip_seg_fault
fix typo in fip output
2019-05-23 10:38:07 +02:00
Joakim Hove b6840db604 Use new well implementation Well2 from opm-common 2019-05-22 21:47:45 +02:00
Tor Harald Sandve dbf7efa6cb fix typo in fip output 2019-05-22 15:39:57 +02:00
Markus Blatt 337c637fa0 Write transmissibility between direct vertical neighbors into TRANZ.
In the case where two were direct vertical neighbors in the grid
but not in the underlying cartesian grid (e.g. because of MINPV or
pinch outs), we treated them as NNCs and wrote the transmissibilty
to TRANNC.

With this patch we detect this situation (two neighbor cells with identical
i and i and no active cells between them) and do not create an NNC
in the eclipse output files but write the transmissibility to TRANZ.
2019-05-21 11:24:17 +02:00
Bård Skaflestad 4a5dcdca75 Merge pull request #1793 from jalvestad/cell-summary-props
Changes to provide Summary data output of additional block variables
2019-05-14 18:29:12 +02:00
Andreas Lauser 2bbfb583d4 Merge pull request #1839 from totto82/fix_restart
Fix episode index for restart
2019-05-14 15:28:45 +02:00
Jostein Alvestad 38265ead52 Have rerwritten the code in a more compact and logical form 2019-05-14 09:31:18 +02:00
Jostein Alvestad 9d5e55180a Added corrections to cancel unintended changes to code 2019-05-14 09:31:17 +02:00
Jostein Alvestad 45e0773edd changes to provide Summary data output of additional block variables
Provide output data for:
    BOSAT
    BWKR
    BOKR
    BKRO
    BGKR
    BKRG
    BKRW
    BWPC
    BGPC
    BVWAT
    BWVIS
    BVGAS
    BGVIS
    BVOIL
    BOVIS
2019-05-14 09:31:16 +02:00
Atgeirr Flø Rasmussen 3ac8e0a736 Merge pull request #1837 from totto82/summaryState
add a summary state member in eclproblem
2019-05-14 09:25:51 +02:00
Andreas Lauser 8657f18075 EclProblem: remove the isSubstep parameter from writeOutput()
Now that the book keeping for time stepping is correct even in `flow`,
this parameter has become redundant.
2019-05-13 13:05:39 +02:00
Tor Harald Sandve a9b72ab45b Fix episode index for restart 2019-05-13 12:49:08 +02:00
Tor Harald Sandve 6887f3bc73 Merge pull request #1821 from andlaus/tickling_the_dragon
flow: provide the correct episode size
2019-05-13 12:40:35 +02:00
Tor Harald Sandve 8afdf2cdb5 add a summary state member in eclBaseVanguard 2019-05-13 12:35:06 +02:00
Arne Morten Kvarving 3327e69c7f fixed: use of restartTimeStep() before it has been read
it is read in the beginRestart() method, reorder code accordingly
2019-05-09 14:33:48 +02:00
Andreas Lauser 9b0be0f8ad flow: provide the correct episode size 2019-05-09 13:28:56 +02:00
Markus Blatt 781fb46e61 [bugfix] Search all NNCs when applying EDITNNC.
The latter is not sorted. Therefore we either need to search the whole
range or sort it before processing it. Io pted for the former.
2019-05-08 13:50:51 +02:00
Markus Blatt d2efdcfaa5 Implement correct ignore thresholds for NNC with/without EDITNNC.
It seems like eclipse ignores NNCs with small transmissibility.
Small means less than 1e-6 for Eclipse (Even if it says that it
is ignoring values below 1e-5 and/or zero values)!.
This commit now implements the same threshold during IO.

Also fixes a bug when applying EDITNNC, it needs to have cell1<=cell2 to work.
2019-05-08 13:50:51 +02:00
Markus Blatt 7849ce690d Make sortNncAndApplyEditnnc return vector of NNCData ready to be processed.
Previously the vector of NNCData was passed in as a reference and sorted.
Unfortunately, it needed to be transformed later to meet all prerequisites.
With this commit we do this transformations in sortNncAndApplyEditnnc.
Furthermore EDITNNC data is passed by value as it is not needed
outside and should usually not be to big. It was copied outside anyway!
2019-05-08 13:50:50 +02:00
Markus Blatt f02c2d4114 Factor out sorting of NNC and application of EDITNNC for reuse. 2019-05-08 13:50:50 +02:00
Markus Blatt 583741d5b1 Ignore NNCs with zero transmissibility during output. 2019-05-08 13:50:26 +02:00
Markus Blatt 5aa0399c67 Write NNCs once and honor them when writing fault transmissibility
We first add all NNCs specified in the deck to the ouput
and then determine additional NNCs by iterating over all faces that
connect cells that are not connected in the underlying cartesian grid.
Therefore we need to make sure that we do not output NNCs twice
and for faults that also have a specified NNC we need to substract
the transmissibility specified via NNC.
2019-05-08 13:50:26 +02:00
Atgeirr Flø Rasmussen c17adf788f Moved files to opm/simulators/ subdirs. 2019-05-08 12:58:19 +02:00
Tor Harald Sandve 890d34a9e1 Add support for water induced compaction using
ROCKCOMP, ROCK2D, ROCK2DTR, ROCKWNOD and OVERBURD
2019-05-07 13:17:29 +02:00
Andreas Lauser dd74fe1027 document all methods of EclThresholdPressure 2019-05-03 14:07:15 +02:00