Commit Graph

65 Commits

Author SHA1 Message Date
Joakim Hove
566f4fbb02 Use Schedule constructor. 2017-11-06 14:20:41 +01:00
Andreas Lauser
cede806bd5 flow: refactor the specializations
The motivation for this PR is that currently the build fails on my
Ubuntu 17.10 laptop with two processes because that machine "only" has
8 GB of RAM (granted, the optimization options may have been a bit too
excessive). under the new scheme, each specialization of the simulator
is put into a separate compile unit which is part of
libopmsimulators. this has the advantages that the specialized
simulators and the main binary automatically stay consistent, the
compilation is faster (2m25s vs 4m16s on my machine) because all
compile units can be built in parallel and that compilation takes up
less RAM because there is no need to instantiate all specializations
in a single compile unit.

on the minus side, all specializations must now always be compiled,
the approach means slightly more work for the maintainers and the
flow_* startup code gets even more complicated.
2017-10-06 15:35:00 +02:00
Andreas Lauser
0c92c24dcb flow_ebos*: make it build and (the sequential part) work if dune-fem is available
in particular, this implied some changes to the MPI initialization
code. since dune-fem's GridPart class currently has issues with
CpGrid's implementation of loadBalance(), parallel computations still
do not work if dune-fem is around, but at least sequential ones now
do even if MPI is enabled.
2017-10-06 15:35:00 +02:00
Tor Harald Sandve
69c608829f Include RESV in the scaling factor
- solvent + RESV is not correct. Make the simulator throw until this is
sorted out.

- remove unused parameter
2017-09-18 11:28:13 +02:00
Tor Harald Sandve
352dccd5e9 Make 2p gas oil compile and runs
-- use mapping from canonicalToActiveCompIdx from Ebos
-- add guards againts non-existing components
2017-09-18 11:28:13 +02:00
Robert Kloefkorn
4266f89397 [cleanup] remove logFile line since it does not make sense. 2017-08-25 12:57:25 +02:00
Robert Kloefkorn
36c2133783 [cleanup] improvement of output message. 2017-08-24 11:39:46 +02:00
Robert Kloefkorn
07e0d71906 [feature][flow] Add a common executable for all flow variants, i.e.
flow_ebos, flow_ebos_polymer, flow_ebos_solvent, flow_ebos_2p.
2017-08-23 16:21:15 +02:00
Andreas Lauser
511a9039ab rename the 'flow' binary to 'flow_legacy' and set a symbolic link
this is a precursor of merging flow_ebos into the master
branch. hopefully, this won't break any existing setups...
2016-11-04 16:19:15 +01:00
Atgeirr Flø Rasmussen
e3ceac44a6 Renamed flowMain.hpp -> FlowMain.hpp. 2015-12-18 13:58:12 +01:00
Atgeirr Flø Rasmussen
abf5443f33 Replace flowMain() function with FlowMain class. 2015-12-18 13:58:12 +01:00
Atgeirr Flø Rasmussen
460f0cb451 Use the new flowMain() function.
Also add it to the CMake file list.
2015-12-14 16:11:06 +01:00
Atgeirr Flø Rasmussen
be9b6a3cd2 Unconditionally instantiate the (possibly fake) MPI helper.
This reduces the difference between flow and flow_mpi. For builds
without MPI, the fake helper from Dune is instantiated, which has
the same interface.
2015-12-14 16:07:47 +01:00
Atgeirr Flø Rasmussen
7c5256031c Use GridInit in flow.cpp. 2015-12-14 16:07:47 +01:00
Tor Harald Sandve
e3393c5ee9 Handle combination of threshold_pressure and nnc
The nncs threshold pressures are calculated and appended to the face
threshold pressures
2015-12-08 11:03:05 +01:00
Atgeirr Flø Rasmussen
ffc91bc35e Remove unnecessary EclipseState argument from run(). 2015-12-07 13:40:06 +01:00
Andreas Lauser
976d38bf37 implement abililty to change the geology during the simulation run
i.e. it now supports stuff like MULTFLT in the schedule
section. Possibly, the MPI-parallel code paths need some fixes. (but
if the geology is not changed during the simulation, the parallel code
will do the same as before.)

the most fundamental change of this patch is that the
reference/pointer to the DerivedGeology object is made
non-constant. IMO that's okay, though, becase the geology can no
longer assumed to be constant over the whole simulation run.
2015-11-26 13:35:33 +01:00
Atgeirr Flø Rasmussen
9bf79f6974 Merge pull request #506 from andlaus/thpress_from_initial
adapt to the threshold pressure related API changes
2015-11-17 09:03:08 +01:00
Andreas Lauser
4f23ef92e3 adapt to the threshold pressure related API changes
to be able to determine the threshold pressure from the initial
condition it needs to be able to access the initial condition, i.e.,
the initial simulator state, material properties object and gravity
constant need to be passed to the thresholdPressure() function.
2015-11-13 15:38:28 +01:00
Markus Blatt
4526cce41b Setup a distributed material law manager and copy values.
Since the refactoring to using opm-material a material law  manager for
the global grid was used. This meant that the properties used for
elements of the local grid were wrong. With this commit we set up a
manager that is based on the local grid only.
2015-10-28 16:39:47 +01:00
Atgeirr Flø Rasmussen
bb7530edc3 Add and use moduleVersion() utility. 2015-10-23 11:25:06 +02:00
Joakim Hove
0a7c778c36 Changes to solver approach configuration:
1. Added new parameter group string: "solver_approach" which can take
    the values {direct, cpr, interleaved}.

 2. Hierarchy:

    i   If a value is set in the parameter group that takes absolute
        presedence.

    ii  If the Eclipse input deck asks for CPR - you get CPR.

    iii You get the flow default - currently interleaved.
2015-10-21 13:01:44 +02:00
Atgeirr Flø Rasmussen
9cbae76d06 Merge pull request #503 from babrodtk/openpm_experiment
Added/fixed comments
2015-10-20 09:32:30 +02:00
André R. Brodtkorb
d43b88af76 Added/fixed comments 2015-10-20 09:30:06 +02:00
Atgeirr Flø Rasmussen
98a3d1675a Merge pull request #454 from babrodtk/openpm_experiment
Parallel assembly (partial)
2015-10-19 15:32:50 +02:00
André R. Brodtkorb
40d2262f8e Fixed typo 2015-10-19 14:25:45 +02:00
Andreas Lauser
72b0cb2c3e use the error macros from opm-common 2015-10-08 12:08:28 +02:00
Joakim Hove
76f674b16b Updated path to warning suppression header. 2015-10-06 12:11:49 +02:00
babrodtk
57c95ecf00 Added missing endline to printout 2015-10-02 10:37:08 +02:00
babrodtk
c991ba8188 Added default setting for number of threads 2015-10-02 10:37:08 +02:00
Robert Kloefkorn
299b0aa3cf ParallelDebugOutput: fix initialization of wells for the I/O rank. 2015-09-21 14:05:35 +02:00
Robert Kloefkorn
326faa99d7 ParallelDebugOutput: make the output in ecl format work in parallel by communicating
to an io rank and then proceed with serial output.
2015-09-16 09:48:22 +02:00
Atgeirr Flø Rasmussen
23c28201a5 Update for changes in SaturationPropsFromDeck. 2015-09-14 15:05:32 +02:00
Atgeirr Flø Rasmussen
62d633a8ff Update for removed constructor args. 2015-09-14 10:32:07 +02:00
Tor Harald Sandve
18d429ebff Use CPR as fall back if use_interleaved=false 2015-09-07 06:08:13 +02:00
Tor Harald Sandve
fd48a6e004 Change defaults
Use the more stable interleaved solver instead of CPR as default
Solve well equation initially as default
2015-09-03 12:38:03 +02:00
Andreas Lauser
73710a01d2 move the code which creates a compressed to cartesian cell index map to a separate free function 2015-09-02 14:50:41 +02:00
Andreas Lauser
0e5d8da66b adapt to the change of the API due to using compressed instead of cartesian indices 2015-09-02 12:32:41 +02:00
Andreas Lauser
a394af6734 flow: initialize the parameters for the material law only once
this saves some memory and some time at initialization.
2015-09-02 12:32:41 +02:00
Fredrik Gundersen
6c85751d91 Added suport for new Threshold Pressure behavior 2015-08-24 15:41:32 +02:00
Joakim Hove
6680279815 Using new string based ParseMode api. 2015-08-09 22:18:36 +02:00
Joakim Hove
7bd36a6b65 Addde ParseMode argument to parse and EclipseState 2015-08-05 14:18:05 +02:00
Atgeirr Flø Rasmussen
6494dee820 Pass parallel info to NewtonIteration... classes. 2015-07-16 14:32:36 +02:00
Robert Kloefkorn
bdb30ec023 GeoProps: fix the use_local_perm implementation for flow_cp. The problem that the
faceNormals are scaled differently remains.
2015-07-08 13:15:00 +02:00
Robert Kloefkorn
34429b60f1 [bugfix] CpGrid does not yet work with use_local_perm. 2015-06-30 14:28:01 +02:00
Robert Kloefkorn
5b51a5b7b1 Merge remote-tracking branch 'upstream/master' into PR/merge-flow-and-flow_cp 2015-06-30 13:39:03 +02:00
Atgeirr Flø Rasmussen
5d0f654443 Add class NewtonIterationBlackoilInterleaved.
Initially it is just a copy of the NewtonIterationBlackoilCPR class.
Also, add use_interleaved parameter to use the class.
2015-06-19 10:53:32 +02:00
Robert Kloefkorn
2d7045b9cd remove shared_ptr. 2015-06-18 13:29:17 +02:00
Robert Kloefkorn
ee47f2887b define preprocessor variables to 1. 2015-06-17 16:34:48 +02:00
Robert Kloefkorn
10725c0b70 Merged main program for flow and flow_cp to avoid code duplication. 2015-06-17 13:00:37 +02:00