Commit Graph

288 Commits

Author SHA1 Message Date
Tor Harald Sandve
6c859836f3 Hack to make the intial output of rs and rv Ecl compatible.
For cells with swat == 1 Ecl outputs; rs = rsSat and rv=rvSat, in all
but the initial step where it outputs rs and rv values calculated by the
initialization. To be compatible we overwrite rs and rv with the values
passed by the localState. Volume factors and densities needs to be
recalculated with the updated rs and rv values.
2017-03-16 10:22:27 +01:00
Robert Kloefkorn
4c118c6455 Merge remote-tracking branch 'upstream/master' into PR/cleanup-output-writers 2017-02-13 21:28:54 +01:00
Atgeirr Flø Rasmussen
27c0430932 Change include paths for moved headers. 2017-02-10 16:07:25 +01:00
Robert Kloefkorn
82658c92d0 Removal of SimulatorFullyImplicitBlackoilOutputEbos.{h,c}pp.
All simulators now use SimulationDataContainer to store intermediate data that
is passed to the output Solution container. This is in cases not the most
efficient way, but it's unified to avoid errors from code duplication.
2017-02-09 16:57:45 +01:00
Joakim Hove
270e5f9c0e Passing keys to the restart load function.
- Renamed EclipseWriter -> EclipseIO.
 - Loading from restart file is a method on the EclipseIO class.
2017-01-25 23:16:08 +01:00
Andreas Lauser
ef731672c9 remove the BlackoilPropsAdInterface abstraction layer
instead, directly use BlackoilPropsAdFromDeck.
2017-01-02 13:19:23 +01:00
Atgeirr Flø Rasmussen
edf883e747 Merge pull request #996 from andlaus/no_eigen_in_VFP_and_FIP
mostly eliminate Eigen in the FIP and VFP code
2017-01-02 12:56:30 +01:00
Andreas Lauser
c880efae5b mostly eliminate Eigen in the FIP and VFP code
this code mostly used the Eigen vectors as arrays anyway, so let's use
`std::vector`.

also, this patch only "mostly eliminates" Eigen from from these parts
of the code because the source files of the VFP code still use
AutoDiffBlock; Unfortunately this cannot easily be changed because
`flow_legacy` depends on these methods. (`flow_ebos` does not use the
incriminating methods.)
2016-12-30 11:46:27 +01:00
Andreas Lauser
ac4dcba7e0 BlackoilModelEnums: don't use high-level classes
I consider the blackoil model enums to be pretty low level while the
"FluidProperties" code is IMO quite high level. this, using the latter
to define the former constitutes a layering violation IMO. note that
the fix is to simply use the enums from opm-core directly.
2016-12-29 18:03:05 +01:00
babrodtk
5923f64322 Removed unused variable (which gave me compilation errors) 2016-12-22 13:00:51 +01:00
Kai Bao
b8e0cda83a putting update of water injection mobility to a separate function
computeInjectionMobility() in BlackoilPolymerModel
2016-12-16 08:56:35 +01:00
Kai Bao
4f3ce37b8e correcting one not helpful comments.
which results from the re-organization of the code.
2016-12-16 08:56:35 +01:00
Kai Bao
894bffd1b3 handling the injection mobility when mixing paramter not 1
The treatment with shear-thinning is not well tested yet.
2016-12-16 08:56:35 +01:00
Kai Bao
4f8ae4be73 putting the re-calculating wellflux inside if plyshlog
it only happens when shear effect calculation is needed. No point to
re-calculate the well flux when no shear thinning needed.
2016-12-16 08:56:35 +01:00
Kai Bao
9307a41fd5 using the polymer concentration in the polymer transport
since we already introduce the polymer viscosity there, we should apply
the water and polymer viscosity ratio again.
2016-12-16 08:56:35 +01:00
Atgeirr Flø Rasmussen
508da6689f Change include path for writeVtkData.hpp, or remove include. 2016-12-06 09:48:03 +01:00
Andreas Lauser
8c5f92dbc4 extend and clean up the SimulatorReport 2016-11-25 21:19:57 +01:00
Atgeirr Flø Rasmussen
54ad92ff40 Merge pull request #931 from atgeirr/fix-deck-error
Do not assign to dereferenced null pointers.
2016-11-18 11:59:40 +01:00
Atgeirr Flø Rasmussen
71bd419c03 Do not assign to dereferenced null pointers. 2016-11-17 13:18:02 +01:00
Kai Bao
8474ff2895 fixing all the simulators that call solveWellEq.
Not all the group control functionalities working for allt the
simulators. Some need to be fixed later.
2016-11-16 13:25:35 +01:00
Jørgen Kvalsvik
1c6a4b34da Update to shared_ptr-less parser interface. 2016-10-20 14:08:04 +02:00
Andreas Lauser
d76bf11902 adapt to the removal of the unit system of opm-core
the one which is in opm-parser is now a drop-in replacement.
2016-10-10 17:00:09 +02:00
babrodtk
8ff349253c Fixed uninitialized bug, and added logging/comment 2016-10-07 15:11:59 +02:00
babrodtk
b774982878 Initial version of summary data 2016-10-07 15:06:53 +02:00
Atgeirr Flø Rasmussen
06e41bdaca Merge pull request #819 from blattms/use-defunct-wells-from-loadbalancer-for-wellsmanager
Use names of defunct wells from loadbalancer for wellsmanager
2016-09-19 13:42:42 +02:00
babrodtk
5b75649a07 Simplified arguments to computeWaterShearVelocityFaces 2016-09-15 15:56:06 +02:00
babrodtk
537c5d71b8 Added missing code for polymer model for output 2016-09-15 11:40:36 +02:00
babrodtk
f7e3185546 Fixed bug where rsSat/rvSat were never set 2016-09-14 15:41:47 +02:00
Markus Blatt
33edf62a78 Use set of names of defunct wells from load balancer for parallel WellManager.
Instead of the WellsManager guessing which wells are handled by other
processes we now use tha ouput of the load balancer to compute wells
that are handled by other processes.

With the previous approach it was not possible to calculate this information
correctly. Wells with only one completion next to the border of the
processes' partition were represented on multiple processes. In additition
wells that the eclipse schedule section defined with completions on non-active
cells in sequential runs were not at all calculated in parallel runs.

With the new approach the CpGrid::loaBalance routine returns the set names of
wells that are not handled by this process when setting up the simulation. This
information is then used throughout the simulation.
2016-09-13 10:58:26 +02:00
babrodtk
739976535f Added rs and rv output capabilities 2016-09-07 14:55:53 +02:00
babrodtk
40b2b95d87 Extended the support for keywords for restart file output 2016-09-07 14:55:53 +02:00
babrodtk
35bed24465 Initial version for outputting cell data 2016-09-07 14:55:53 +02:00
Liu Ming
4b88d4edd1 use PV weighted pressure when HCPV is zero. 2016-09-07 14:00:30 +08:00
Liu Ming
1943978dbd update PAV formulation. 2016-09-05 10:38:57 +08:00
Atgeirr Flø Rasmussen
b5e986df5f Remove well state argument from computeFluidInPlace(). 2016-08-30 13:34:18 +02:00
Liu Ming
a492a60a64 document computeFluidInPlace function. 2016-08-30 10:30:26 +02:00
Liu Ming
056708574c compute fluid in place by regions. 2016-08-30 10:30:25 +02:00
Liu Ming
28583e4237 Add computeFluidInPlace function. 2016-08-30 10:30:25 +02:00
Liu Ming
635c6b3986 well iterations should start from 0. 2016-08-04 10:54:31 +08:00
Andreas Lauser
bec3ce31fd distinguish between the number of non linear iterations and the number of linearizations
while the printed number of "Non linear iterations" was correct in a
strict sense, it was very confusing if one was working on the
linearization code because the last Newton iteration of each time step
was linearized but not solved for (and the solution was thus not
updated hence it does not count as a "non linear iteration"). This
makes sense for large problems were the total runtime is completely
dominated by the performance of the linear solver, but smaller
problems exhibit the opposite behavior (i.e., for them, runtime is
typically dominated by the linearization proceedure), so one is more
interested in the number of linearizations, not the number of linear
solves.
2016-08-02 12:14:10 +02:00
Andreas Lauser
5410d97701 pass the simulation timer object instead of the time step size
models may need a more detailed picture of where they are in the
simulation. Note that since the timer objects are available at every
call site, this is also not a very deep change.
2016-07-12 15:55:12 +02:00
Kai Bao
b2524a7dc3 making a forwarded updateListEconLimited in SimulatorBase.
and some changes to make the code compile for all the simulators.
2016-07-05 13:02:28 +02:00
Kai Bao
98a6495abc makeing wellModel public for flow_polymer and flow_solvent. 2016-07-05 13:02:27 +02:00
Liu Ming
d3e6a657cd Initial well iterations as a special number, output it if it is valid. 2016-06-30 09:04:44 +08:00
Liu Ming
136839bd20 fix warnings. 2016-06-29 16:42:43 +08:00
Kai Bao
a1cc880ad7 only calculating repesentative radius when having PLYSHLOG. 2016-06-28 15:50:50 +08:00
Markus Blatt
4c9d359638 Print all well switching in parallel.
As for each well only one process is responsible, the output process
does not see all wells. Ergo some well switching information was never
printed in a parallel run.

Therefore with this commit the well switching
message is printed regardless on which process it appears.
2016-06-28 15:50:50 +08:00
Liu Ming
ad01934670 initial IterationReport. 2016-06-28 15:48:20 +08:00
Liu Ming
ed09cfa7e4 fix indentation. 2016-06-28 14:38:20 +08:00
Liu Ming
c6586d36c8 return IterationReport for assemble and solver well eq methods. 2016-06-28 14:37:48 +08:00