Atgeirr Flø Rasmussen
9e7ab6d1d2
Renamed class {FullyImplicit->Linearised}BlackoilResidual.
2014-04-08 15:56:08 +02:00
Atgeirr Flø Rasmussen
a19344efa9
Changed docs/comments after review suggestions.
...
Suggestions from B. Skaflestad and A. Lauser.
2014-04-08 15:28:10 +02:00
Atgeirr Flø Rasmussen
f1956f05f9
Merge branch 'cpr-preconditioning' into cpr-preconditioning-again
...
Conflicts:
examples/sim_fibo_ad.cpp
examples/test_implicit_ad.cpp
opm/autodiff/FullyImplicitBlackoilSolver.cpp
opm/autodiff/SimulatorFullyImplicitBlackoil.cpp
opm/autodiff/SimulatorFullyImplicitBlackoil.hpp
2014-04-08 15:06:01 +02:00
Atgeirr Flø Rasmussen
e699f9e135
Remove unnecessary argument, and minor formatting corrections.
2014-04-05 00:12:03 +02:00
Tor Harald Sandve
a905eade7a
Use preferred phase to compute wellbore mix for dead wells
...
The wellmore mix is set to preferred phase for dead wells, where the
total volumetric rates are zero. This sets the phase of the flow out of
perforations in dead wells and thus avoids zero volumerats for injecting
preforations in dead wells.
2014-04-04 11:36:02 +02:00
Atgeirr Flø Rasmussen
6c4114ea69
Add more options for Selector class.
...
You can now choose which comparison to do for the indicator vector
to find when to choose the left argument. Only >= before (still default).
2014-04-01 15:49:01 +02:00
Atgeirr Flø Rasmussen
4b53f88685
Fix timer usage.
...
This makes the simulator produce proper summary output again.
2014-03-28 14:31:30 +01:00
Atgeirr Flø Rasmussen
faba01f917
Merge pull request #112 from GitPaean/fix_using_new_timer
...
A small fix to make sim_fibo_ad use the new SimulatorTimer.
2014-03-28 13:51:22 +01:00
Atgeirr Flø Rasmussen
9d9576c955
Merge pull request #110 from atgeirr/new_well_formulation
...
New well formulation
2014-03-28 12:47:29 +01:00
Kai Bao
0914841823
A small fixing to make the sim_fibo_ad using the new timer.
2014-03-27 11:15:55 +01:00
Atgeirr Flø Rasmussen
d4f1a89370
Merge pull request #111 from andlaus/FullyImplicitBlackoilSolver_throw_exception_uppon_non-finite_residual
...
FullyImplicitBlackoilSolver: Throw an exception uppon encountering a non-finite residual
2014-03-26 15:29:34 +01:00
Andreas Lauser
8cd93bf70a
FullyImplicitBlackoilSolver: cleanup the residualNorm() method
2014-03-26 15:16:43 +01:00
Atgeirr Flø Rasmussen
2db726268b
Merge pull request #108 from andlaus/FullyImplicitBlackoilSolver_unify_state_conversion
...
FullyImplicitBlackoilSolver: unify the state conversion routines
2014-03-26 14:29:08 +01:00
Atgeirr Flø Rasmussen
8663c5b604
Merge branch 'FullyImplicitBlackoilSolver_unify_state_conversion' of https://github.com/andlaus/opm-autodiff into test_andlaus
...
Conflicts:
opm/autodiff/FullyImplicitBlackoilSolver.cpp
Resolved by using the new, reduced version of constantState().
2014-03-26 14:21:23 +01:00
Andreas Lauser
2f84156b91
FullyImplicitBlackoilSolver: Throw an exception uppon encountering a non-finite residual
2014-03-26 12:54:46 +01:00
Atgeirr Flø Rasmussen
3bc57780aa
Fix bug in -= operator.
2014-03-26 11:44:49 +01:00
Atgeirr Flø Rasmussen
5e4dff401c
Merge branch 'master' into new_well_formulation
...
Needed to avoid compile errors with updated opm-core.
2014-03-26 11:02:52 +01:00
Atgeirr Flø Rasmussen
41fd953ba2
Fix bugs relating to wells versus perforations.
...
Two kinds of bugs: correct usage of wops_.w2p vs. wops_.p2w, and
correct sizes for some variables (nw vs. nperf).
2014-03-25 18:44:37 +01:00
Atgeirr Flø Rasmussen
dcb59a2fab
Fix bug in access order for state.qs.
...
State.qs is called well_phase_flow_rate in this function.
It is stored with wells running fastest, not phases.
2014-03-25 17:42:14 +01:00
Atgeirr Flø Rasmussen
cb50728ac2
Add end-of-line to switching message.
2014-03-25 17:41:41 +01:00
Atgeirr Flø Rasmussen
4a22c560c7
Implemented updateWellControls().
2014-03-25 14:31:06 +01:00
Andreas Lauser
168b4379d5
don't pass the eclipsewriter to the simulator anymore
...
i.e., the simulator does not deal with any output operations
anymore. This makes sense because report steps are handled by
Opm::TimeMap and the constructor for the simulator already needs more
arguments than appropriate even without this...
2014-03-25 13:17:30 +01:00
Andreas Lauser
9237aa2443
FullyImplicitBlackoilSolver: make constantState() and variableState() consistent
...
With this, constantState() just calls variableState() and throws away
the derivatives. This might be a bit slower than necessary, but it
makes these two methods automatically consistent and constantState()
is only called once per timestep anyway...
thanks to @atgeirr for the suggestion!
2014-03-25 11:55:13 +01:00
Atgeirr Flø Rasmussen
20ecd37709
Use currentControls() field of well state class.
...
Now the well state is consulted for the controls to use when assembling
the well control equations, instead of the (immutable) wells_ struct.
Also, added dummy implementation of updateWellControls().
2014-03-25 11:14:11 +01:00
Atgeirr Flø Rasmussen
bad64de4f2
Add currentControls() field to well state class.
...
This is done since the solver will need to be able to switch well controls
during Newton iterations. The current control specified in the Wells struct
will be used as default and initial value for currentControls().
2014-03-25 11:11:19 +01:00
Atgeirr Flø Rasmussen
33d58792de
Fix sign bug in well contribution to mass balance.
2014-03-24 15:28:46 +01:00
Atgeirr Flø Rasmussen
fd4f5f5a26
Merge branch 'master' into new_well_formulation
...
Conflicts:
opm/autodiff/FullyImplicitBlackoilSolver.cpp
To resolve conflicts, WellState was changed to WellStateFullyImplicitBlackoil
in multiple places, and perfRate() changed to perfPhaseRate() in
WellDensitySegmented.
2014-03-20 10:04:45 +01:00
Atgeirr Flø Rasmussen
f99b9b90a4
Merge pull request #101 from andlaus/sim_fibo_ad_use_new_wellmanager
...
sim_fibo_ad: convert to the new-style wells manager
2014-03-20 09:07:03 +01:00
Atgeirr Flø Rasmussen
d21e310d01
Merge pull request #98 from andlaus/reverse_increment_write_order_again
...
go back to incrementing the current simulation time first, then calling EclipseWriter::writeSolution()
2014-03-20 09:04:10 +01:00
Andreas Lauser
49a5b67137
sim_fibo_ad: fix writing
...
the initial condition was written multiple times. We now fix this by
not writing anything in the simulator and moving this logic to the
main loop..
2014-03-19 17:40:51 +01:00
Atgeirr Flø Rasmussen
295677c8c1
Use WellStateFullyImplicitBlackoil class instead of WellState.
2014-03-18 11:27:40 +01:00
Atgeirr Flø Rasmussen
e7f4637461
Add WellStateFullyImplicitBlackoil class.
...
This is intended to be used instead of the WellState class in the fully
implicit blackoil simulator. It contains a WellState to reuse the init()
method and to enable users to call functions requiring a WellState.
This is done with containment and an access member function,
basicWellState(), instead of with inheritance to minimize surprises.
2014-03-18 11:23:05 +01:00
Atgeirr Flø Rasmussen
e8ee805717
Work in progress: use WellDensitySegmented class.
...
This is work in progress since it is non-working: phaseRates() is
not used correctly, and changes must be made to WellState or equivalent.
2014-03-18 08:48:34 +01:00
Atgeirr Flø Rasmussen
737affb077
Minor whitespace adjustments.
2014-03-17 10:23:40 +01:00
Atgeirr Flø Rasmussen
d821afe11f
Whitespace fix.
2014-03-17 10:14:45 +01:00
Andreas Lauser
0ce6093b69
go back to incrementing the current simulation time first, then calling EclipseWriter::writeSolution()
...
for this not to trigger an assertation after the last time step, the
changes of OPM/opm-parser#141 are required.
2014-03-11 16:05:00 +01:00
Andreas Lauser
1383eadf8f
fix the fallout of the SimulatorTimer::currentTime() -> SimulatorTimer::simulationTimeElapsed() rename
2014-03-11 16:01:59 +01:00
Tor Harald Sandve
a19aff63e7
Adds new well formulation
...
Todo: incorporate WellDensitySegment. Currently values of the pressure
drop is hardcoded to make the rest of the code work
Todo: make it possible to shut perforation with crossflow.
2014-03-11 14:30:54 +01:00
Tor Harald Sandve
9cb7e8635e
Adds -= operator
...
An elementwise -= operator is added to the autodiff class.
2014-03-11 14:30:54 +01:00
Joakim Hove
0c36af631f
Using well_controls_well_is_open() function
2014-03-04 14:49:54 +01:00
Atgeirr Flø Rasmussen
5bcca58d31
Make BlackoilPropsAdInterface pure virtual again.
...
Done by adding (throwing) implementation to BlackoilPropsAd class.
2014-03-04 13:09:23 +01:00
Atgeirr Flø Rasmussen
3de050b19f
Merge pull request #87 from osae/hysteresis
...
Hysteresis.
2014-03-04 10:30:07 +01:00
Atgeirr Flø Rasmussen
3627d9ec02
Make spline interpolation possible.
...
This restores the logic for choosing monotone splines for dead oil/gas pvt
tables, but the option is inactive (samples set to zero at top).
2014-03-03 10:31:21 +01:00
Atgeirr Flø Rasmussen
2cc5f0b421
Bugfix: PVDCO->PVCDO.
2014-03-03 10:30:39 +01:00
Atgeirr Flø Rasmussen
b4fe41249a
Fix error output. Also very minor whitespace issues.
2014-03-03 10:29:13 +01:00
Joakim Hove
3208c61472
Merge pull request #89 from andlaus/parser-integrate_new_simulatortimer
...
Parser integrate new simulatortimer
2014-02-27 14:43:00 +01:00
Andreas Lauser
dd080c4515
first write out the result of a time step, then increment the timer
...
if done the other way round we would make an assertation in TimeMap
false and also the values returned by SimulationTimer would be for the
next time step and not the current one...
2014-02-21 16:06:26 +01:00
osae
305512cc21
Hysteresis.
...
SimulatorFullyImplicitBlackoil reports saturation values at each
completed time-step, allowing detection of hysteris behavior.
2014-02-18 14:50:29 +01:00
Andreas Lauser
f7541aa27a
BlackoilPropsAdFromDeck: Add support for PVTO
2014-02-14 17:56:20 +01:00
Andreas Lauser
198f805c2a
switch to the new parser's table utility classes
2014-02-14 17:56:08 +01:00