Commit Graph

3672 Commits

Author SHA1 Message Date
Tor Harald Sandve
d035881a0a Adds has_disgas and has_vapoil flags to hydrocarbonstate initialization
Gas saturation must be used as primalvariable if DISGAS and VAPOIL is
not used.
2016-06-07 08:23:47 +02:00
Andreas Lauser
87c7b2c720 Merge pull request #704 from andlaus/localad_to_densead
rename "local AD" to "dense AD"
2016-06-06 14:03:09 +02:00
Andreas Lauser
d45ba7732e rename "local AD" to "dense AD" 2016-06-02 20:20:04 +02:00
Atgeirr Flø Rasmussen
8a76adb658 Merge pull request #700 from dr-robertk/PR/flag-to-ignore-solverconv
Ignore linear solver convergence failure.
2016-05-27 13:21:01 +02:00
Robert Kloefkorn
93386b44ed Merge remote-tracking branch 'upstream/master' into PR/flag-to-ignore-solverconv 2016-05-27 12:56:20 +02:00
Robert Kloefkorn
7dd76cc967 NewtonIterationBlackoilInterleaved: added flag to allow to ignore solver convergence
failure.
2016-05-27 12:55:46 +02:00
Atgeirr Flø Rasmussen
0659ae9356 Merge pull request #699 from blattms/add-missing-fstream-include
Fix incomplete type error for std::ofstream in examples
2016-05-27 11:15:47 +02:00
Markus Blatt
9bd2f7c1dc Fix incomplete type error for std::ofstream in examples
On my system I got
```c++
error: variable ‘std::ofstream file’ has initializer but incomplete type
         std::ofstream file(fname.str().c_str());
```
This is fixed with this commit by including fstream. Previously, this include might have happened implicitely.
2016-05-27 09:10:00 +00:00
Atgeirr Flø Rasmussen
decdd3185f Merge pull request #698 from blattms/prevent-dereferencing-null-point-during-paralle-IO
Prevent dereferencing a null pointer during parallel output.
2016-05-26 07:53:28 +02:00
Atgeirr Flø Rasmussen
ab0df10354 Merge pull request #696 from blattms/distribute-hydrocarbonstate
Correctly distribute the hydro carbon state for parallel runs.
2016-05-26 07:49:10 +02:00
Markus Blatt
ecf4ab91c8 Fixes size in assrtion of BlackoilStateDatahandle::scatter 2016-05-25 14:36:33 +00:00
Markus Blatt
e9b8721d2a Prevent dereferencing a null pointer during parallel output.
ParallelDebugOutput will always dereference its member variable
globalReservoirState_ even if it will not be used for any output.
In g++ this throws when using -D_GLIBCXX_DEBUG -DDEBUG -DGLIBCXX_FORCE_NEW.
I any case we will have a dangling reference into Nirvana in
PackUnPackSimulationDataContainer. This commit fixes this by always
initializing the pointer globalReservoirState_. In the case where the rank
does not perform any output its size will be zero.
2016-05-25 13:49:33 +00:00
Markus Blatt
8dd3794562 Fixes copy&paste bugs from resize code movement 2016-05-25 13:07:29 +00:00
Markus Blatt
c247652188 Moved resizing of BlackoilState members to the data handle.
Seems much less messy.
2016-05-25 12:47:24 +00:00
Markus Blatt
509cd6f0b1 Use correct size when resizing hydroCarbonState.
The size is the number of cells and not dependent on the number of phases.
This was a typical copy&paste mistake that wasted space.
Kudos to atgeirr for catching this.
2016-05-25 12:43:12 +00:00
Atgeirr Flø Rasmussen
69469bf537 Merge pull request #694 from atgeirr/fix-nnc-vs-noncartesian
Separate non-neighbour and non-cartesian connections.
2016-05-25 13:38:15 +02:00
Markus Blatt
22e71dff08 Correctly distribute the hydro carbon state for parallel runs.
This is needed since hydro carbon state is used to get the
primal variables since PR #687, commit 9c771ab6. Therefore we
now distribute the state along with rest of the black oil state
variable at the start of a parallel simulation.

This closes issue #695
2016-05-24 20:02:24 +00:00
Atgeirr Flø Rasmussen
0f290e3f6e Separate non-neighbour and non-cartesian connections.
The non-cartesian connections are required by the output facilities,
while the truly non-neighbour connections (meaning those not in the grid)
should be used by all other code.
2016-05-24 11:54:17 +02:00
Atgeirr Flø Rasmussen
ad604bca89 Merge pull request #685 from GitPaean/well_refactoring_interface_refactoring
Well interface refactoring
2016-05-24 10:58:57 +02:00
Kai Bao
0ebd25f66a fixing the compilation error due to rebasing. 2016-05-23 15:42:05 +02:00
Kai Bao
d2d9bd8a80 moving depth difference calcualtion to init() for MultisegmentWells
instead of recalculating them for each iterations.
2016-05-23 15:11:52 +02:00
Kai Bao
c2bdaa1b92 fixing the calculation of volumeRatio.
due to the wrong use of parenthesis.
2016-05-23 15:11:52 +02:00
Kai Bao
879f127ae8 moving variableStateExtractWellsVars() from models to Well Models. 2016-05-23 15:11:52 +02:00
Kai Bao
fbe7143f54 using WellModel functions in BlackoilPolymerModel.
reducing some repeated code.
2016-05-23 15:11:52 +02:00
Kai Bao
846ff890de refactoring the interface of computeWellPotentials()
to reduce the cost of makeConstantState when not calculating the
potentials.
2016-05-23 15:11:52 +02:00
Kai Bao
19a256dce0 some pure cleaning up. 2016-05-23 15:11:52 +02:00
Kai Bao
f2b7f2a56c moving numWellVars from models to Wells. 2016-05-23 15:11:52 +02:00
Kai Bao
b3d1c0eabc initializing the pointers to be nullptr in the Wells classes 2016-05-23 15:11:52 +02:00
Kai Bao
4527034f29 removing variableStateInitials() from BlackoilMultiSegmentModel
which is not helpful anymore.
2016-05-23 15:11:52 +02:00
Kai Bao
a102e934ac removing baseSolveWellEq from BlackoilMultiSegmentModel
to solve the different interfaces of computeWellConnectionPressures for
StandardWells and MultisegmentWells, a function
computeWellConnectionPressures was introduced for the models.
2016-05-23 15:11:52 +02:00
Kai Bao
01328559e2 removing the updateWellState from the models. 2016-05-23 15:11:52 +02:00
Kai Bao
4e8099057e small cleaning up for BlackoilMultiSegmentModel_impl 2016-05-23 15:11:51 +02:00
Kai Bao
fcd541a1c1 removing the rebundant ms_wells_ in BlackoilMultiSegmentModel 2016-05-23 15:11:51 +02:00
Kai Bao
184bff95ba using well_model_ to represent the WellModel member 2016-05-23 15:11:51 +02:00
Kai Bao
06775ee02c Make BlackoilMultisegmentModel constructured from MultisegmentWells
Instead of being coustructed based StandardWells and having a
MultisegmentWells member.
2016-05-23 15:11:51 +02:00
Kai Bao
4254b48b57 unifying interface of a few functions of Wells classes
updateWellControls()
updateWellState()
addWellControlEq()

The change of function computeWellConnectionPressures() is not done
completely. Should find a solution later.
2016-05-23 15:11:51 +02:00
Kai Bao
be165a26e0 adding a few more members to the Wells classes.
gravity, vfp_properties_ and depth_.

to further simplify the interfaces.
2016-05-23 15:11:51 +02:00
Kai Bao
50385013fe adding variableWellStateInitials to MultisegmentWells 2016-05-23 15:11:51 +02:00
Kai Bao
7886e4b9d2 adding computeWellConnectionPressures to MultisegmentWells 2016-05-23 15:11:51 +02:00
Kai Bao
b4f4878901 fixing the errors from rebasing. 2016-05-23 15:11:51 +02:00
Kai Bao
60fb868727 adding updatePerfPhaseRatesAndPressures to MultisegmentWells 2016-05-23 15:11:51 +02:00
Kai Bao
508de4dc37 adding extractWellPerfProperties to MultisegmentWells
removing extractWellPerfProperties in all the model classes.
2016-05-23 15:11:51 +02:00
Kai Bao
718ba5470b adding const Wells* wells_ for MultisegmentWells
for interface refactoring.
At the moment, both wells_ and wells_multisegment_ contain all the
wells.
2016-05-23 15:11:51 +02:00
Kai Bao
4180fea951 refactoring the construcor of MultisegmentWells
MultisegmentWells is initialized with Wells structure.
2016-05-23 15:11:51 +02:00
Kai Bao
7d0d50eb53 changing reservoir related members to pointers for MultisegmentWells 2016-05-23 15:11:51 +02:00
Kai Bao
66cd66e61b change reservoir related members to be pointers in StandardWells
to fullfil the requirement of interface design.
2016-05-23 15:11:51 +02:00
Kai Bao
89a8f133fd adding variableWellStateIndices to MultisegmentWells
to remove the using of stdWells() in BlackoilMultiSegmentModel
The code is copied from StandardWells, better solution need to be
exploited.
2016-05-23 15:11:50 +02:00
Kai Bao
a8742a9348 introduce perforation densities and pressdiffs to MultisegmentWells
to reduce dependence on StandardWells.
2016-05-23 15:11:50 +02:00
Kai Bao
25fbd20acf adding a few member variables for MultisegmentWells
and reduce the number of parameters of the related functions by using
the new introduced member variables.
2016-05-23 15:11:50 +02:00
Kai Bao
bd03eff5a5 making two functions in StandardWells protected.
computePropertiesForWellConnectionPressures
computeWellConnectionDensitesPressures
2016-05-23 15:11:50 +02:00