Commit Graph

622 Commits

Author SHA1 Message Date
Andreas Lauser
935b5a5a9d adapt to the fluid system naming convention change in opm-material 2018-07-27 12:56:19 +02:00
Andreas Lauser
29e113f1fd ebos: get rid of HAVE_ECL_{IN,OUT}PUT
there are about a trillion places within ebos where the availability
of the ECL I/O routines is hardcoded, so it does not make sense to
pretent that the EclWriter can be useful without them.

(in fact, ebos is deactivated at build system level if the ECL I/O
routines have not been detected.)
2018-07-12 13:47:01 +02:00
Andreas Lauser
b5ac85b5d0 ebos: simplify the output writing code if the default timeloop is used
`flow` doesn't, so it is unaffected.
2018-07-12 13:47:01 +02:00
Andreas Lauser
24fc04a102 collecttoiorank.hh: use camelCase consistently 2018-07-12 11:15:37 +02:00
Andreas Lauser
b92aee90b5 CollectToIORank: remove unnecessary whitespace, braces 2018-07-12 11:15:24 +02:00
Andreas Lauser
4342210b5e CollectToIORank: fix formatting of function declarations reduce unnecessary usage of whitespace 2018-07-12 11:00:56 +02:00
Andreas Lauser
88135e9f7c CollectToIORank: minor fixes to the boiler plate 2018-07-12 11:00:31 +02:00
Andreas Lauser
d9b3b5c2e5 CollectToIORank: reindent code 2018-07-12 11:00:26 +02:00
Andreas Lauser
4b2d114f90 properly handle exceptions in auxiliary modules and the problems pre- and postprocessing routines
so far, exceptions thrown there caused MPI to desynchronize.
2018-07-11 13:59:29 +02:00
Andreas Lauser
ed0542b53b ebos: make it work in parallel 2018-07-11 13:59:29 +02:00
Andreas Lauser
2c97fa302f auxiliary modules: add a callback that is called after the linear solver but before the solution update
amongst others, this allows to properly implement Schur complements.
2018-07-09 12:13:58 +02:00
Andreas Lauser
a395a6d6ce switch auxiliary modules from std::shared_ptr to raw pointers
lifetime management of these objects by shared pointers is not always
feasible; at least it is not always doable without awful hacks.
2018-07-09 12:13:58 +02:00
Andreas Lauser
cd725aeb8a ebos ECL output: move the parameter extraction code for the well data to the well model
this is supposed to be an implementation detail of the well model.
2018-07-09 12:13:58 +02:00
Andreas Lauser
8319a67862 ebos: make the well model user definable
this introduces a new property `EclWellModel` and uses the class which
it specifies instead of `EclWellManager` directly.
2018-07-09 12:13:57 +02:00
Atgeirr Flø Rasmussen
ad6645b8d3 Merge pull request #336 from andlaus/fix_extra_warnings
fix extra compiler warnings
2018-07-05 14:29:59 +02:00
Andreas Lauser
be881c6b00 Merge pull request #335 from totto82/fix_thpress_init
WIP Fix thpress restart
2018-07-05 09:08:12 +02:00
Andreas Lauser
864fc12469 fix extra compiler warnings
this is only relevant people who are masochistic enough to go beyond
`-Wall`. (note that at this warning level, there is plenty of noise from
Dune and other upstream dependencies.)
2018-07-02 09:17:56 +02:00
Tor Harald Sandve
95578a5d79 Fix thpress restart
THPRES is read from the restart file
We no longer need to compute it from the initial conditions if
defaulted.
2018-06-29 15:26:08 +02:00
Tor Harald Sandve
22d144c3cd rename completion to connection 2018-06-28 15:49:45 +02:00
Joakim Hove
edbeb4538e Merge pull request #328 from joakim-hove/rename-connection-set
Rename ConnectionSet -> WellConnections
2018-06-21 08:15:19 +02:00
Andreas Lauser
57f98d1612 ebos: allow to specify the ECL case name
... instead of just the full file name of the deck. this mirrors
flow's behavior.
2018-06-20 09:24:29 +02:00
Joakim Hove
7d972ab223 Rename ConnectionSet -> WellConnections 2018-06-17 14:39:23 +02:00
Andreas Lauser
c402ae4854 implement an "ECL output interval"
i.e., the ECL restart files are not necessarily updated after each
report step, but only each N-th (where N is the number specified by
the EclOutputInterval parameter). if this value is set to something
smaller than zero, the value which is computed by the EclipseState
object is used.
2018-06-15 20:27:42 +02:00
Andreas Lauser
26e6d56930 do explicit put properties into the the Ewoms::Properties namespace anymore
instead, do it implicitly by using the BEGIN_PROPERTIES and
END_PROPERTIES macros.
2018-06-15 20:22:07 +02:00
Andreas Lauser
739a0ef0d0 parameter system: add support for positional parameters
further, this cleans up the code of the parameter system and the
startup routines a bit and finally, it adds positional parameters
support to ebos as well as brief descriptions to ebos and the lens
problem.
2018-06-14 11:13:30 +02:00
Andreas Lauser
91c209eb09 some stylistic cleanups of the ECL writer 2018-06-14 11:13:30 +02:00
Joakim Hove
2bd9c0ea78 Rename Completions -> Connections 2018-06-11 14:11:32 +02:00
Joakim Hove
3b5e746702 Load the THPRES values from the restart file 2018-05-31 11:58:27 +02:00
Robert Kloefkorn
3a9b7dc7b5 [bgufix][femcompat] remove operator << and operator >> for __float128
that accidentally came into the code again.
2018-05-23 14:50:16 +02:00
Andreas Lauser
1d573e02d5 Merge pull request #322 from dr-robertk/PR/fix-fieldtraits-issue
[bugfix][PrimaryVariables] Implement FieldTraits for PrimaryVariables
2018-05-23 11:28:52 +02:00
Robert Kloefkorn
5c19ead909 [bugfix][Ewoms] make compile with dune-fem 2.5 2018-05-22 22:17:04 +02:00
Joakim Hove
a58e7a19d9 Merge pull request #316 from joakim-hove/use-restart-value
Use RestartValue when calling Ecl writeTimeStep
2018-05-18 08:57:33 +02:00
Joakim Hove
324a4ad307 Save THPRES values to restart file 2018-05-14 16:13:53 +02:00
Tor Harald Sandve
98c2b03667 change ecl output name from SSOL to SSOLVENT 2018-05-09 14:52:43 +02:00
Andreas Lauser
a53ef08699 ecloutputblackoilmodule.hh: adapt coding style to the rest of eWoms
the style was mostly fine, but there were a few leftovers from the
pre-eWoms epoch of that code.
2018-04-30 19:06:07 +02:00
Tor Harald Sandve
91139efa27 Merge pull request #311 from andlaus/fixes
ebos fix and compiler workaround
2018-04-13 13:53:43 +02:00
Tor Harald Sandve
a697b523a3 Merge pull request #310 from andlaus/update_changelog
Update changelog
2018-04-13 10:46:26 +02:00
Andreas Lauser
f96d553d8e ebos: salvage temperature from the initial fluid states for isothermal simulations
this is required because temperature needs to be always specified. in
the case of isothermal simulations, the temperature is assumed to be
the initial one, i.e., freeing up the initial fluid states also makes
the temperature undefined.

I suspect that the reason why this did not lead to crashes is that for
isothermal `BlackOilFluidState` objects, the temperature is stored in
a static member variable.

thanks to at [at]bska for catching this issue.
2018-04-12 14:22:10 +02:00
Andreas Lauser
ae779f2132 make all headers autonomous again 2018-04-11 13:06:56 +02:00
Andreas Lauser
b64ca374c3 make ebos compile with dune-fem being around for dune 2.6
dune 2.6 seems to expect a referenceElement(geo) free function.
2018-04-10 13:31:04 +02:00
Andreas Lauser
ede2ef35af rename compatibility.hh to ebos/femcpgridcompat.hh
the purpose of this seems to be to make 'Opm::CpGrid' usable with
'dune-fem'. This is quite a fringe case, and the code should better go
to opm-grid.
2018-04-10 13:31:04 +02:00
Andreas Lauser
1af2996b2a move the base class for auxiliary modules to ewoms/disc/common
that's where it belonged in the first place.
2018-04-10 10:05:18 +02:00
Andreas Lauser
ffe3914ddd thermal blackoil: fix a few issues with thermal conductivity 2018-04-05 19:31:55 +02:00
Andreas Lauser
26228ec5f3 fix the issues that emerged in the context of [at]totto82's review 2018-04-05 19:31:55 +02:00
Andreas Lauser
54c96aa1c2 blackoil, ebos: implement non-trivial boundary conditions
with this, it is possible do define fluxes of conservation quantities
over the domain boundaries by specifying the thermodynamic state on
the boundary when using the black-oil model. The main motivation is
are thermal fluxes which are required to maintain geothermal
temperature gradients over time.
2018-04-05 19:31:55 +02:00
Andreas Lauser
815be1451b implement the ebos part of energy conservation
I.e. everything which is ECL specific.
2018-04-05 19:31:55 +02:00
Andreas Lauser
4241986e94 equil initializer: use TEMPI to specify the initial temperature
this also implicitly takes care of RTEMPVD, RTEMP and all the other
ways of specifying the initial reservoir temperature.
2018-04-05 19:31:12 +02:00
Andreas Lauser
3288548c7e disable asynchronous output for the ECL output test
this leads to crashes deeply inside libecl. My cursory hypotheses are
that this test makes the assumption that the output is written
synchronously (it tries to read back the results from disk
immediately) and/or that libecl is not threadsafe.
2018-03-21 10:31:15 +01:00
Andreas Lauser
ddb6ef2acb generalize the tasklet mechanism to an arbitrary number of worker threads
this has been quite a bit more complicated than I initially thought.
2018-03-15 11:05:10 +01:00
Andreas Lauser
b39b60109d cosmetic changes to EclWriter
this commit does not do any logic changes, just identation, variable
names, etc.
2018-03-12 16:51:30 +01:00