Commit Graph

3159 Commits

Author SHA1 Message Date
Kai Bao
a9ad791d2b changing init function of WellStateMultiSegment to use ConstPtr
the compilation is fixed.
2015-12-01 00:06:42 +01:00
Kai Bao
ac0fdda48b A WIP version BlackoilMultiSegmentModel
and also a Simulator Class and example for multisegment wells.
2015-12-01 00:06:42 +01:00
Kai Bao
76be27a64c recovering BlackoilModelBase BlackoilModelBase_impl
to be the same with the master branch.
The multisegment part should be in a new model.
2015-12-01 00:06:42 +01:00
Kai Bao
b49d06f35c changing naming in WellStateMultiSegment
to be more consistent with WellState.
2015-12-01 00:06:42 +01:00
Kai Bao
d2728fbfc6 chaning the naming of the member functions of WellStateMultiSegment
segPressures   -> segPress
perfPressures  -> perPress
to keep consist with the WellState
2015-12-01 00:06:42 +01:00
Kai Bao
1788f5c1b3 changing ADB::M to be Eigen::SparseMatrix<double> 2015-12-01 00:06:42 +01:00
Kai Bao
07709c52c6 a wIP version. 2015-12-01 00:06:42 +01:00
Kai Bao
62bdd301d3 one version of the class WellMultiSegment. 2015-12-01 00:06:42 +01:00
Kai Bao
60dd7743c3 WIP of the WellMultiSegment and WellStateMultiSegment 2015-12-01 00:06:42 +01:00
Atgeirr Flø Rasmussen
c91e144a1d Merge pull request #548 from atgeirr/silence-warning
Move boost include inside warning-suppressed block.
2015-11-30 14:17:15 +01:00
Atgeirr Flø Rasmussen
88280c1207 Move boost include inside warning-suppressed block. 2015-11-30 14:15:19 +01:00
Atgeirr Flø Rasmussen
d31857a165 Merge pull request #161 from andlaus/implement_MULTFLT_in_SCHEDULE_section
adapt to the "mutable geology" changes from opm-autodiff
2015-11-27 14:11:50 +01:00
Atgeirr Flø Rasmussen
226e414380 Merge pull request #542 from andlaus/implement_MULTFLT_in_SCHEDULE_section
implement abililty to change the geology during the simulation run
2015-11-27 13:39:32 +01:00
Atgeirr Flø Rasmussen
315862ddd4 Merge pull request #545 from atgeirr/fix-min-iter
Honor the min_iter parameter.
2015-11-27 10:19:26 +01:00
Atgeirr Flø Rasmussen
979107ac4b Merge pull request #543 from totto82/new_trans
Use cell centers based on cell corners
2015-11-27 10:18:00 +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
Andreas Lauser
e0a1abba09 adapt to the "mutable geology" changes from opm-autodiff 2015-11-26 12:20:15 +01:00
Tor Harald Sandve
67eadc30e5 Adapt to changes in EclipseGrids
getCellCenter() in EclipseGrid no longer returns
tuble<double,double,double> but array<double,3>
This simplifies its usage.

Variable name is changed from cellCentroid to cellCenter to emphasize a
difference between the value in the unstructured grid and in EclispeGrid
2015-11-25 15:15:22 +01:00
Atgeirr Flø Rasmussen
99fd5e977f Remove assert() that is now wrong due to minIter() treatment. 2015-11-25 11:08:10 +01:00
Markus Blatt
ea187da888 Honor transmissibilities when loadbalancing 2015-11-25 08:43:46 +00:00
Markus Blatt
dd77556252 Added restricted parallel schwarz and overlapping ILU0 preconditioner 2015-11-25 08:43:46 +00:00
Atgeirr Flø Rasmussen
9275070bad Honor the min_iter parameter.
This also required the minIter() accessor to be made public,
so made all of the remaining accessors public.
2015-11-24 16:09:01 +01:00
Tor Harald Sandve
2a13275943 Use cell depth calculated directly from the corners of the cell 2015-11-24 10:20:12 +01:00
Tor Harald Sandve
aeb8807d89 Use cell centroid from EclipseGrid
The cell center in EclipseGrid is computed based on averaging the
corners of the cells as in Eclipse and not computing the centroid of the
cell as in the unstructured grid in opm.
2015-11-24 10:20:12 +01:00
Bård Skaflestad
c956494402 Merge pull request #540 from atgeirr/remember-asimpl
Add asImpl() to method calls.
2015-11-19 14:47:13 +01:00
Atgeirr Flø Rasmussen
a06892a070 Add asImpl() to method calls.
This is needed by derived models.
2015-11-19 14:39:49 +01:00
Bård Skaflestad
a822151082 Merge pull request #157 from atgeirr/refactor-nonlinear-solver
Adapt to refactored/renamed NonlinearSolver (was NewtonSolver).
2015-11-18 11:50:28 +01:00
Bård Skaflestad
022bd6b8fe Merge pull request #536 from atgeirr/refactor-nonlinear
Refactor nonlinear solver
2015-11-18 11:47:43 +01:00
Atgeirr Flø Rasmussen
e3a5e1682d Adapt to refactored/renamed NonlinearSolver (was NewtonSolver). 2015-11-18 10:19:32 +01:00
Atgeirr Flø Rasmussen
73407f3283 Merge pull request #159 from qilicun/parseMode
use non-strict ParseMode.
2015-11-18 09:12:26 +01:00
Liu Ming
356a35600f use more non-strict ParseMode. 2015-11-18 15:23:12 +08:00
Atgeirr Flø Rasmussen
324cd80cb7 Merge pull request #151 from andlaus/thpress_from_initial
adapt to the threshold pressure related API changes
2015-11-17 09:03:12 +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
Bård Skaflestad
65da8b7e11 Merge pull request #531 from blattms/parallel-RateConverter
Calculate parallel averages in RateConverter.

Closes issue #530
2015-11-13 18:26:36 +01:00
Andreas Lauser
70614e2fd6 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 16:09:20 +01:00
Markus Blatt
5449047682 Splits a very long line. 2015-11-13 15:52:01 +01:00
Markus Blatt
8148c37d57 Improved documentation 2015-11-13 15:46:45 +01:00
Markus Blatt
980928bfa9 Fix boolean in specialization.
The default implementation is the parallel version. Therefore the boolean
in the specialization (sequential run) needs to be false.
2015-11-13 15:46:34 +01:00
Markus Blatt
f8715e31e7 Calculate parallel averages in RateConverter.
Previously, local averages were calculated and used in the
well equations. With this commit we add versions of defineState and
calcAverages that take into account the parallel domain decomposition
and calculate correct averages.

Function  calcAverages has a boolean template parameter
indicating whether this is a parallel run. Additionally we introduce
AverageIncrementCalculator with the same boolean template parameter.
In a parallel run we check whether the cell is owned by the process and
only in this case return an increment bigger than zero. In a sequential run
(no MPI or just one process -> empty boost::any parameter) no overhead is
introduced.
2015-11-13 15:46:34 +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
Atgeirr Flø Rasmussen
88fbe5e9b6 Ensure non-null model in constructor. 2015-11-13 15:08:00 +01:00
Atgeirr Flø Rasmussen
9525265d9a Merge pull request #158 from atgeirr/fix-compile-failures
Fix compile failures from recent updates in core and autodiff
2015-11-13 14:05:14 +01:00
Atgeirr Flø Rasmussen
b918f20771 Add model() and relativeChange() methods. 2015-11-13 13:58:41 +01:00
Atgeirr Flø Rasmussen
bbf1862023 Update for new surfaceDensity() interface. 2015-11-13 13:30:01 +01:00
Atgeirr Flø Rasmussen
b2bf88e689 Silence warning about missing initializer. 2015-11-13 13:29:32 +01:00
Atgeirr Flø Rasmussen
2a0051655c Merge pull request #520 from totto82/surface_dens
Support for non-constant surface densities
2015-11-13 11:40:30 +01:00
Atgeirr Flø Rasmussen
87330984aa Adapt to renaming of class. 2015-11-12 17:55:13 +01:00
Atgeirr Flø Rasmussen
29a1a891d2 Make nonlinearIteration() the only interface to the model.
This means that details such as calling assemble(), solveJacobianSystem(),
updateState() etc. are now left to the model class. This will make it easier
to create new model classes with different behaviour (such as sequential models).
2015-11-12 17:47:18 +01:00
Atgeirr Flø Rasmussen
7c21a630e5 Rename NewtonSolver -> NonlinearSolver. 2015-11-12 17:42:47 +01:00
Atgeirr Flø Rasmussen
9a4bb383df Merge pull request #538 from atgeirr/silence-warning
Silence unused argument warning.
2015-11-12 17:38:49 +01:00