Commit Graph

481 Commits

Author SHA1 Message Date
Markus Blatt
a2be89d586 bugfix: Use a typedef that is actually defined.
Fixes `error: ‘LinearSolverScalar’ was not declared in this scope`.
2018-12-07 12:06:29 +01:00
Markus Blatt
7c2f6d9275 Refactored loop which applies the EDITNCC. 2018-12-05 10:15:42 +01:00
Markus Blatt
7a4b817010 Add spaces where requested by coding standard 2018-12-03 16:46:03 +01:00
Tor Harald Sandve
f9af2c5084 remove transmissibilities less then 1e-6 in the given unit system 2018-11-30 10:28:17 +01:00
Markus Blatt
cfac47ddbc Apply multiplicators from EDITNNC from the Deck. 2018-11-20 14:00:45 +01:00
Trine S Mykkeltvedt
ac931d1713 Add ecl tracer model
reads tracer input from deck, solves tracer equation fully implicit as a post processing step in endTimeStep

tested on a simple modified SPE1CASE1 deck and compared with eclipse

TODO: restart and parallel
2018-11-19 13:46:10 +01:00
Andreas Lauser
781825121d some cleanups 2018-11-12 12:48:33 +01:00
Robert Kloefkorn
cfcf04ed00 add an abstraction layer for the matrix between the linearizer and linear solver
this allows to assemble the Jacobian matrices directly into the native
format expected by linear solver. So far, only backends using
Dune::BCRSMatrix are provided, but there are work-in-progress patches
for dune-fem, vienna-CL and PETSc backends.
2018-11-12 12:48:22 +01:00
Andreas Lauser
a5493919da ecl base vanguard: make the schedule and summaryConfig objects user-replaceable
thanks to [at]atgeirr for the suggestion.
2018-11-08 11:32:56 +01:00
Andreas Lauser
868c4b1cc5 ebos: clean up the mess that is the schedule and summaryConfig objects a bit
IMO the simulator should not be in the business of managing low-level
parser objects in the first place, because that's what EclipseState is
supposed to do?!

anyway, since these objects are not needed to decide which simulator
to use, they are now always managed internally by the vanguard, i.e.,
setExternalDeck() does not take them anymore.
2018-11-07 12:31:20 +01:00
Tor Harald Sandve
38dd81ba7e Avoid output of trivial fipnum regions 2018-11-06 09:02:30 +01:00
Tor Harald Sandve
513b0b462f Add support for drsdtr and drvdtr
This PR also adds possibility for schedule dependent drsdt values
2018-11-05 13:50:44 +01:00
Tor Harald Sandve
fad7c68446 Add support for region DR[SV]DTR 2018-11-05 13:40:23 +01:00
Tor Harald Sandve
3185e8662b Merge pull request #408 from andlaus/aquifer_api_v2
extend the aquifer model so that it can initialize itself
2018-10-31 12:47:54 +01:00
Andreas Lauser
1f28aba47e Merge pull request #404 from totto82/speedup2p
Blackoil: Prepare for 2p conditional storage of fluidstate
2018-10-30 12:39:05 +01:00
Andreas Lauser
ec898fa8c2 extend the aquifer model so that it can initialize itself
nothing is perfect on first try...
2018-10-30 11:22:26 +01:00
Andreas Lauser
7fd640bb9e make all header files includeable on their own right again
some property definitions and includes were missing.
2018-10-29 10:05:46 +01:00
Andreas Lauser
1d16dfc3fa fix some warnings produced by clang 6
they are all harmless.
2018-10-29 10:05:46 +01:00
Andreas Lauser
f03711aff6 replace tabs by spaces
for whatever reason a few tabulator characters crept in...
2018-10-29 10:05:46 +01:00
Andreas Lauser
3c94807b85 Merge pull request #405 from andlaus/aquifier_api
ebos: add an API for aquifiers
2018-10-25 16:45:57 +02:00
Joakim Hove
709723d7ca Merge pull request #402 from totto82/minpvv
add support for minpvv
2018-10-25 09:04:54 +02:00
Joakim Hove
4929108b6a Merge pull request #400 from totto82/supportEditMult
Support modifying trans from deck
2018-10-24 10:37:01 +02:00
Andreas Lauser
23670c6797 ebos: add an API for aquifiers
this is similar to the mechanism for well models: the API is defined
here, but can be overloaded by downstream modules. In contrast to the
well model where the default class follows a simplistic approach the
default class for aquifiers does nothing, i.e., the actual
implemenentation must be provided by downstream.
2018-10-23 17:47:38 +02:00
Tor Harald Sandve
656f055992 Blackoil: Prepare for 2p conditional storage of fluidstate
Also fix pseudo 2p case for ebos
2018-10-18 12:55:49 +02:00
Tor Harald Sandve
3a408619da add support for minpvv 2018-10-15 13:35:45 +02:00
Tor Harald Sandve
7ad5a4d29b Support modifying trans from deck 2018-10-15 12:36:22 +02:00
Joakim Hove
cee74bb2b5 Add commandline parameter --ignore-keywords= 2018-10-08 23:41:18 +02:00
Andreas Lauser
d5328fe69c EclProblem: only create the eclWriter_ object once
thanks to [at]bska for catching this.
2018-09-29 10:59:42 +02:00
Joakim Hove
0ca788f2f7 Set default value of EnableOpmRstFile to true 2018-09-24 14:18:02 +02:00
Andreas Lauser
1a8f3e72ee move registration of the EnableOpmRstFile parameter to EclBaseVanguard
before this patch, the parameter was registered by the problem but not
used there. Since this is quite confusing, let's move registration to
where the parameter is actually used, i.e., the vanguard.
2018-09-17 11:25:35 +02:00
Joakim Hove
b766260db7 Add --opm-rst-file parameter 2018-09-13 17:03:11 +02:00
Andreas Lauser
49442af4cc Merge pull request #382 from totto82/ppcw
Output PPCW when SWATINIT is enabled
2018-09-12 12:38:53 +02:00
Tor Harald Sandve
dcb1e96606 Output and read PPCW when SWATINIT is enabled 2018-09-11 14:57:32 +02:00
Joakim Hove
67d4439cce Merge pull request #361 from joakim-hove/wellconnection-updates
Wellconnection updates
2018-09-11 13:18:52 +02:00
Andreas Lauser
403ad6ee56 Merge pull request #381 from totto82/fix_nofill_minpv
Return modified ntg's only when minpv mode is OPMFIL
2018-09-10 16:21:07 +02:00
Tor Harald Sandve
dbcfb7af24 Return modified ntg's only when minpv mode is OPMFIL 2018-09-07 09:09:03 +02:00
Joakim Hove
f2992099d5 Merge pull request #380 from joakim-hove/thpres-fixup
Fixup THPRESPR -> THPRESPR
2018-09-05 21:11:07 +02:00
Joakim Hove
400f505a2c Fixup THPRESPR -> THPESHPR 2018-09-05 14:59:02 +02:00
Joakim Hove
621028f6e6 Store capillary pressure in SOLUTION section 2018-09-04 14:14:48 +02:00
Joakim Hove
bdbf417887 Change string used for THPRES in restartfile 2018-09-03 16:59:23 +02:00
Joakim Hove
59238803bb Get connection CF and Kh directly from parser Connecton object 2018-08-31 08:47:15 +02:00
Andreas Lauser
e5ab52b773 ebos: avoid sign-comparison warning
seems like I didn't compile #364 with pedantic warning flags enabled.
2018-08-20 13:13:57 +02:00
Andreas Lauser
fe5ccc2194 ebos: complain about old-style parameter specification explicitly
i.e., complain when detecting foo=bar positional parameters. this is
not a bullet-proof solution because it will not work if the deck file
name contains an equals character. Anyway, it's better than before
IMO.
2018-08-17 13:51:11 +02:00
Andreas Lauser
095a529f28 add some quotes to the user output
this makes it clearer that no deck has been specified.
2018-08-17 13:08:23 +02:00
Andreas Lauser
ed7d4d47c1 implement line breaks in the usage message
i.e. for `--help`. this is surprisingly complicated...
2018-08-16 15:55:51 +02:00
Andreas Lauser
6e7be50610 make the "OutputDir" parameter apply universally
all disc output, i.e. VTK, restart files, ECL and -- in the future --
logfiles, goes to that directory. before this, only the ECL output
could be directed to a different than the current working directory
and the parameter for this was called "EclOutputDir".

note that the Dune VTK writing infrastructure makes it harder than it
needs to be: suddenly Dune::VTKWriter::write() does not work in
parallel anymore, but Dune::VTKWriter::pwrite() must be called with
the right arguments.
2018-08-14 12:04:51 +02:00
Andreas Lauser
0d864f8e71 ebos: handle positional parameters more robustly
previously, the exact behaviour was dependent on wheter the
--ecl-deck-file-name parameter was defined or not. now the positional
parameter is hopefully an exact alias for the value of --ecl-deck-file-name.
2018-08-10 18:21:16 +02:00
Andreas Lauser
e7606d2afd ebos: complain more explicitly about the input deck being unspecified
the previous error message was a bit confusing.
2018-08-07 11:37:12 +02:00
Andreas Lauser
2f1f14483b ebos: change the brief description slightly
the purpose is to make it exceedingly clear that ebos is not developed
by the ECL group who started ECLIPSE which is an backcronym for
"ECL's Implicit Program for Simulation Engineering" and ECL stands for
"Exploration Consultants Limited" which is now a division of
Schlumberger Limited.

thanks to [at]atgeirr for pushing this.
2018-08-07 10:48:43 +02:00
Andreas Lauser
0a8a791c49 ebos: make the brief description settable from the exterior
this allows `flow` to print something else than plain-`ebos`.
2018-08-06 10:46:28 +02:00
Atgeirr Flø Rasmussen
118e3f6dac Restore const-ness accidentally lost. 2018-07-31 15:35:15 +02:00
Atgeirr Flø Rasmussen
a63aac0491 Merge pull request #352 from andlaus/ebos_allow_no_fip
ebos: add possibility to disable the FIP output even if requested in the deck
2018-07-31 11:32:15 +02:00
Andreas Lauser
935b5a5a9d adapt to the fluid system naming convention change in opm-material 2018-07-27 12:56:19 +02:00
Andreas Lauser
ef845bb4f4 ebos: add possibility to disable the FIP output even if requested in the deck
this significantly reduces the noise level of debug files if the FIP
values are not of interest.
2018-07-26 12:31:32 +02:00
Andreas Lauser
29e113f1fd ebos: get rid of HAVE_ECL_{IN,OUT}PUT
there are about a trillion places within ebos where the availability
of the ECL I/O routines is hardcoded, so it does not make sense to
pretent that the EclWriter can be useful without them.

(in fact, ebos is deactivated at build system level if the ECL I/O
routines have not been detected.)
2018-07-12 13:47:01 +02:00
Andreas Lauser
b5ac85b5d0 ebos: simplify the output writing code if the default timeloop is used
`flow` doesn't, so it is unaffected.
2018-07-12 13:47:01 +02:00
Andreas Lauser
24fc04a102 collecttoiorank.hh: use camelCase consistently 2018-07-12 11:15:37 +02:00
Andreas Lauser
b92aee90b5 CollectToIORank: remove unnecessary whitespace, braces 2018-07-12 11:15:24 +02:00
Andreas Lauser
4342210b5e CollectToIORank: fix formatting of function declarations reduce unnecessary usage of whitespace 2018-07-12 11:00:56 +02:00
Andreas Lauser
88135e9f7c CollectToIORank: minor fixes to the boiler plate 2018-07-12 11:00:31 +02:00
Andreas Lauser
d9b3b5c2e5 CollectToIORank: reindent code 2018-07-12 11:00:26 +02:00
Andreas Lauser
4b2d114f90 properly handle exceptions in auxiliary modules and the problems pre- and postprocessing routines
so far, exceptions thrown there caused MPI to desynchronize.
2018-07-11 13:59:29 +02:00
Andreas Lauser
ed0542b53b ebos: make it work in parallel 2018-07-11 13:59:29 +02:00
Andreas Lauser
2c97fa302f auxiliary modules: add a callback that is called after the linear solver but before the solution update
amongst others, this allows to properly implement Schur complements.
2018-07-09 12:13:58 +02:00
Andreas Lauser
a395a6d6ce switch auxiliary modules from std::shared_ptr to raw pointers
lifetime management of these objects by shared pointers is not always
feasible; at least it is not always doable without awful hacks.
2018-07-09 12:13:58 +02:00
Andreas Lauser
cd725aeb8a ebos ECL output: move the parameter extraction code for the well data to the well model
this is supposed to be an implementation detail of the well model.
2018-07-09 12:13:58 +02:00
Andreas Lauser
8319a67862 ebos: make the well model user definable
this introduces a new property `EclWellModel` and uses the class which
it specifies instead of `EclWellManager` directly.
2018-07-09 12:13:57 +02:00
Andreas Lauser
be881c6b00 Merge pull request #335 from totto82/fix_thpress_init
WIP Fix thpress restart
2018-07-05 09:08:12 +02:00
Tor Harald Sandve
95578a5d79 Fix thpress restart
THPRES is read from the restart file
We no longer need to compute it from the initial conditions if
defaulted.
2018-06-29 15:26:08 +02:00
Tor Harald Sandve
22d144c3cd rename completion to connection 2018-06-28 15:49:45 +02:00
Joakim Hove
edbeb4538e Merge pull request #328 from joakim-hove/rename-connection-set
Rename ConnectionSet -> WellConnections
2018-06-21 08:15:19 +02:00
Andreas Lauser
57f98d1612 ebos: allow to specify the ECL case name
... instead of just the full file name of the deck. this mirrors
flow's behavior.
2018-06-20 09:24:29 +02:00
Joakim Hove
7d972ab223 Rename ConnectionSet -> WellConnections 2018-06-17 14:39:23 +02:00
Andreas Lauser
c402ae4854 implement an "ECL output interval"
i.e., the ECL restart files are not necessarily updated after each
report step, but only each N-th (where N is the number specified by
the EclOutputInterval parameter). if this value is set to something
smaller than zero, the value which is computed by the EclipseState
object is used.
2018-06-15 20:27:42 +02:00
Andreas Lauser
26e6d56930 do explicit put properties into the the Ewoms::Properties namespace anymore
instead, do it implicitly by using the BEGIN_PROPERTIES and
END_PROPERTIES macros.
2018-06-15 20:22:07 +02:00
Andreas Lauser
739a0ef0d0 parameter system: add support for positional parameters
further, this cleans up the code of the parameter system and the
startup routines a bit and finally, it adds positional parameters
support to ebos as well as brief descriptions to ebos and the lens
problem.
2018-06-14 11:13:30 +02:00
Andreas Lauser
91c209eb09 some stylistic cleanups of the ECL writer 2018-06-14 11:13:30 +02:00
Joakim Hove
2bd9c0ea78 Rename Completions -> Connections 2018-06-11 14:11:32 +02:00
Joakim Hove
3b5e746702 Load the THPRES values from the restart file 2018-05-31 11:58:27 +02:00
Robert Kloefkorn
3a9b7dc7b5 [bgufix][femcompat] remove operator << and operator >> for __float128
that accidentally came into the code again.
2018-05-23 14:50:16 +02:00
Andreas Lauser
1d573e02d5 Merge pull request #322 from dr-robertk/PR/fix-fieldtraits-issue
[bugfix][PrimaryVariables] Implement FieldTraits for PrimaryVariables
2018-05-23 11:28:52 +02:00
Robert Kloefkorn
5c19ead909 [bugfix][Ewoms] make compile with dune-fem 2.5 2018-05-22 22:17:04 +02:00
Joakim Hove
a58e7a19d9 Merge pull request #316 from joakim-hove/use-restart-value
Use RestartValue when calling Ecl writeTimeStep
2018-05-18 08:57:33 +02:00
Joakim Hove
324a4ad307 Save THPRES values to restart file 2018-05-14 16:13:53 +02:00
Tor Harald Sandve
98c2b03667 change ecl output name from SSOL to SSOLVENT 2018-05-09 14:52:43 +02:00
Andreas Lauser
a53ef08699 ecloutputblackoilmodule.hh: adapt coding style to the rest of eWoms
the style was mostly fine, but there were a few leftovers from the
pre-eWoms epoch of that code.
2018-04-30 19:06:07 +02:00
Tor Harald Sandve
91139efa27 Merge pull request #311 from andlaus/fixes
ebos fix and compiler workaround
2018-04-13 13:53:43 +02:00
Tor Harald Sandve
a697b523a3 Merge pull request #310 from andlaus/update_changelog
Update changelog
2018-04-13 10:46:26 +02:00
Andreas Lauser
f96d553d8e ebos: salvage temperature from the initial fluid states for isothermal simulations
this is required because temperature needs to be always specified. in
the case of isothermal simulations, the temperature is assumed to be
the initial one, i.e., freeing up the initial fluid states also makes
the temperature undefined.

I suspect that the reason why this did not lead to crashes is that for
isothermal `BlackOilFluidState` objects, the temperature is stored in
a static member variable.

thanks to at [at]bska for catching this issue.
2018-04-12 14:22:10 +02:00
Andreas Lauser
ae779f2132 make all headers autonomous again 2018-04-11 13:06:56 +02:00
Andreas Lauser
b64ca374c3 make ebos compile with dune-fem being around for dune 2.6
dune 2.6 seems to expect a referenceElement(geo) free function.
2018-04-10 13:31:04 +02:00
Andreas Lauser
ede2ef35af rename compatibility.hh to ebos/femcpgridcompat.hh
the purpose of this seems to be to make 'Opm::CpGrid' usable with
'dune-fem'. This is quite a fringe case, and the code should better go
to opm-grid.
2018-04-10 13:31:04 +02:00
Andreas Lauser
1af2996b2a move the base class for auxiliary modules to ewoms/disc/common
that's where it belonged in the first place.
2018-04-10 10:05:18 +02:00
Andreas Lauser
ffe3914ddd thermal blackoil: fix a few issues with thermal conductivity 2018-04-05 19:31:55 +02:00
Andreas Lauser
26228ec5f3 fix the issues that emerged in the context of [at]totto82's review 2018-04-05 19:31:55 +02:00
Andreas Lauser
54c96aa1c2 blackoil, ebos: implement non-trivial boundary conditions
with this, it is possible do define fluxes of conservation quantities
over the domain boundaries by specifying the thermodynamic state on
the boundary when using the black-oil model. The main motivation is
are thermal fluxes which are required to maintain geothermal
temperature gradients over time.
2018-04-05 19:31:55 +02:00
Andreas Lauser
815be1451b implement the ebos part of energy conservation
I.e. everything which is ECL specific.
2018-04-05 19:31:55 +02:00
Andreas Lauser
4241986e94 equil initializer: use TEMPI to specify the initial temperature
this also implicitly takes care of RTEMPVD, RTEMP and all the other
ways of specifying the initial reservoir temperature.
2018-04-05 19:31:12 +02:00
Andreas Lauser
ddb6ef2acb generalize the tasklet mechanism to an arbitrary number of worker threads
this has been quite a bit more complicated than I initially thought.
2018-03-15 11:05:10 +01:00
Andreas Lauser
b39b60109d cosmetic changes to EclWriter
this commit does not do any logic changes, just identation, variable
names, etc.
2018-03-12 16:51:30 +01:00
Andreas Lauser
8f61fe03fa switch the EclWriter to the new tasklet infrastructure 2018-03-12 16:51:30 +01:00
Andreas Lauser
7b56e9e9df clean up the determination of the directory for output
this should be done by the vanguard, not by the problem!
2018-03-12 16:51:30 +01:00
Andreas Lauser
5f8fdb2324 make all headers fully autonomous again 2018-03-12 14:31:37 +01:00
Arne Morten Kvarving
397c69dded Merge pull request #293 from akva2/adjust_ecl
adjustments for eclipse support in opm-common
2018-03-06 15:34:52 +01:00
Arne Morten Kvarving
a1601afd21 adjustments for eclipse support in opm-common 2018-03-06 09:09:17 +01:00
Tor Harald Sandve
6a1f7c8006 BUGfix enableEclOutput false 2018-03-05 14:56:48 +01:00
Andreas Lauser
21cce7514e fix a few "unused variable" warnings that occur on more uncommon compilers
i.e. on ICC. the compiler is right in producing warnings here, though.
2018-03-03 13:27:48 +01:00
Tor Harald Sandve
d15a86b039 clean up 2018-02-21 10:41:27 +01:00
Tor Harald Sandve
9372f9d2ca Make sure the updateMaxOilSaturation_ is called
The order of operation is left-to-right.
2018-02-21 10:38:52 +01:00
Tor Harald Sandve
44ab370fae Make the restart code more robust.
Don't assume all needed data is given in the restart file.
i.e. make it possible to run a solvent restart run from a standard
blackoil run.
2018-02-21 10:38:52 +01:00
Tor Harald Sandve
f90e074947 Demand the hystereris values if enalbed. 2018-02-21 10:38:52 +01:00
Tor Harald Sandve
b89a960a50 Fix bug in setting the max oil saturation after restart 2018-02-21 10:38:52 +01:00
Atgeirr Flø Rasmussen
875aafe0f9 Merge pull request #289 from totto82/fix_default_output_dir
Fix default output directory
2018-02-19 17:04:41 +01:00
Tor Harald Sandve
afe26e8f12 Split the PackUnPack class
into PackUnPackBlockData, PackUnPackCellData and PackUnPackWellData
2018-02-19 13:18:56 +01:00
Tor Harald Sandve
3ede6ecc69 Rename ThreadHandle.hpp -> threadHandle.hh
Also adding some comments.
2018-02-19 13:18:56 +01:00
Tor Harald Sandve
76edfa7789 clean up after rebase 2018-02-19 13:18:56 +01:00
Tor Harald Sandve
932527d772 Pass RFT output via data::well
With this no cell data is used by the output code in opm-output
2018-02-19 13:18:56 +01:00
Tor Harald Sandve
bbe2ae4a7b fix rebase failure 2018-02-19 13:18:56 +01:00
Tor Harald Sandve
56bcb419fb Add async output 2018-02-19 13:18:56 +01:00
Tor Harald Sandve
27beb2faec Fix default output directory
Get default ecl output directory from IOConfig.
2018-02-19 13:16:49 +01:00
Atgeirr Flø Rasmussen
39793ec932 Adapt to moved opm-grid headers. 2018-02-12 10:20:09 +01:00
Andreas Lauser
436c9f8791 rename the "grid manager" to "vanguard"
IMO the term "vanguard" expresses better what these classes are
supposed to do: level the ground for the cavalry. Normally this simply
means to create and distribute a grid object, but it can become quite
a bit more complicated, as exemplified by the vanguard classes of
ebos..
2018-02-08 16:26:58 +01:00
Andreas Lauser
61461dd61c Merge pull request #282 from andlaus/separate_opm-common_concerns
adapt to the move of code from opm-common to opm-material
2018-02-08 16:25:10 +01:00
Kai Bao
2c298b2b99 removing the completions after createGrid in eclbasegridmanager 2018-02-08 14:28:20 +01:00
Andreas Lauser
260d62c2b8 adapt to the move of code from opm-common to opm-material 2018-02-08 12:11:20 +01:00
Tor Harald Sandve
d3cb81a7ba Minor clean-up based on review 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
154e4fd97a Obey the input given by the deck.
Don't try to make the initial condition consistent for explicitly given
initial values.
2018-02-05 14:24:11 +01:00
Tor Harald Sandve
fb27ebd4eb Add output of temperature 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
d771810562 Some more minor clean-up 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
7ed66f0cf2 pass the mcmg element layout as a parameter for dune 2.6 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
af7d031875 Minor clean-up after review 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
51c1201fa6 Fix bug in pv output
Output current not orignal pore volumes
2018-02-05 14:24:11 +01:00
Tor Harald Sandve
eca5d8aff5 Fix slow code
Avoid checking summaryConfig at every cell
Add temporary fix around issue with RPTSCHED in restartConfig
2018-02-05 14:24:11 +01:00
Tor Harald Sandve
5fa7b130dc Output double precision restart output if asked for 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
b021ee54ca Some clean-up
Dont' output rs, rv, somax and hysteresis if they are not enabled.
We no longer output the same as legacy.
2018-02-05 14:24:11 +01:00
Tor Harald Sandve
85ed4bffbf Pass block values to OPM-output 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
2264b44f38 Pass region and field FIP to opm-output 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
5d5c6bad75 Fix parallel restart and pav in water zone 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
de3df0d81d Clean up PR review 2018-02-05 14:24:11 +01:00
Tor Harald Sandve
f62498440d Add FIP, INIT and EGRID output
Writes INIT and EGRID files initially
Adds Fip to summary output if required.
Output Fip to log (.PRT) if Opm-logger is set
2018-02-05 14:24:11 +01:00
Andreas Lauser
9e7857ec1c allow to specify the ECL output directory
by default, it is the current directory.
2018-02-05 14:24:11 +01:00
Andreas Lauser
8b7c14c4db adapt to the reordering template arguments of get*_(fluidState) in opm-material 2018-01-19 11:49:06 +01:00
Andreas Lauser
49289c272d use a named constant for the value of saturation that determines the presence of free gas 2018-01-10 15:06:24 +01:00
Andreas Lauser
7c2c0052b2 use infinity as the value for the last Rs
hopefully this does not screw anything up.
2018-01-10 15:06:24 +01:00
Andreas Lauser
3b30134a29 adress [at]atgeirr's review comments 2018-01-10 15:06:24 +01:00
Andreas Lauser
5a1413476a implement support for the 'FREE' option of DRSDT
funnily enough, DRVDT does not exhibit such a flag...
2018-01-10 15:06:23 +01:00
Andreas Lauser
9a5a8c53dc move the maximum oil saturation stuff into the problem
this also simplifies creating a more proper selection logic for the
DR[SV]DT keywords or VAPPARS.
2018-01-10 15:06:23 +01:00
Andreas Lauser
853d64c12c deactivate DR[SV]DT if VAPPARS is present
actually, it depends on the ordering of these keywords, but this
requires some probably rather extensive changes in opm-parser.
2018-01-10 15:01:43 +01:00
Andreas Lauser
404b8d38b9 implement the ebos part of DRSDT 2018-01-10 15:01:43 +01:00
Andreas Lauser
ab11d2cf27 Merge pull request #262 from totto82/useOPM-output
Add ecl output from opm-output
2018-01-10 15:01:02 +01:00
Tor Harald Sandve
f0ee6df136 Only compute auxiliary values if asked for
Ask the restartConfig if restart files are written. Solution variables are
always written since they may be needed by the summary files

Remove output of saturated data to align with legacy code.
2018-01-09 14:01:30 +01:00
Tor Harald Sandve
abd3271f1c Only collect to globalData for mpi 2018-01-09 13:08:05 +01:00
Atgeirr Flø Rasmussen
2d9285dbab Merge pull request #269 from totto82/addPBDVandPDDV
Add support for PBDV and PDDV in initstateequil.hh
2018-01-09 11:40:34 +01:00
Tor Harald Sandve
1969c3711d Move instead of copy data to solution vector 2018-01-09 11:28:20 +01:00
Tor Harald Sandve
0132c3326e Add ecl output from opm-output
The new eclwriter output and restart using the eclIO from opm-output

All tests in opm-simulator pass and
MPI restart works.

Standard initialization is done prior to restart in order
to compute correct initial thpressure values. This is not
necessary if thpressures are written to the restart file

TODO: Some trivial fields are written out in order mimic legacy code,
this should be cleaned up

TODO: Output of wells, FIP, NNC is still done in opm-simulators.
This should be moved later.
2018-01-09 11:05:50 +01:00
Tor Harald Sandve
9192380308 Add support for PBDV and PDDV in initstateequil.hh 2018-01-09 10:42:04 +01:00
Andreas Lauser
4957a301f1 fix all Dune 2.6 related compiler warnings in ebos 2018-01-08 12:23:58 +01:00
Andreas Lauser
c8d7be3848 make all headers autonomous again 2018-01-03 19:03:22 +01:00
Andreas Lauser
4e37c53038 restore the hydrostatic equilibration test from opm-core
This involved quite a bit of kicking and screaming. The result
certainly is not pretty, but it works.
2018-01-03 12:28:12 +01:00
Andreas Lauser
f65e9fbb69 remove the runtime parameter system from all time critical code paths
it was not supposed to be used there in the first place, but it crept
into the discretization code.
2018-01-02 14:28:52 +01:00
Andreas Lauser
794fc3f588 equil init: reduce the tolerance of the regula falsi solvers to 1e-10 2018-01-02 14:28:06 +01:00
Andreas Lauser
2f00e7804a equil init: rename the files according to the eWoms standard convention
the eWoms file naming convention should probably be changed to the one
of the remaining OPM modules, but this is quite a bit of work and IMO
it is more important to be consistent within the module.
2018-01-02 14:28:06 +01:00
Andreas Lauser
69b1a5ca5a equil init: formating fixes to make it more consistent with the rest of ewoms
in particular, this removes excessive whitespace usage.
2018-01-02 14:28:06 +01:00
Andreas Lauser
79856b3b0a equil init: change all variables to camelCase
this makes it more integrated with the rest of eWoms.
2018-01-02 14:28:06 +01:00
Andreas Lauser
01c2a2da97 equil init: re-indent
this makes the indentation style of the equil init code consistent
with the rest of eWoms.
2018-01-02 14:28:06 +01:00
Andreas Lauser
0690cad957 equil init: get rid of boost::iterator_range
this class is rather simple and it was the only thing from Boost used
by the hydrostatic equilibrium code...
2018-01-02 14:28:06 +01:00
Andreas Lauser
d142060386 equil init: replace opm-core's linear interpolation function by Tabulated1DFunction 2018-01-02 14:28:06 +01:00
Andreas Lauser
3f875fb8f2 equel init: pass the type tag to the InitialStateComputer
also, get rid of Opm::extractPvtTableIndex()
2018-01-02 14:28:06 +01:00
Andreas Lauser
028a8c808b equil init: get rid of opm-core's "root finders"
instead, let's bit the bullet and add the few lines required for
regula-falsi-Pegasus method whenever the old RegulaFalsi class was
used. note that this leads to slightly different results for the
SPE5CASE1 flow test. I suspect that the old solvers behave in
unexpected ways, though...

Note that because the inverted functions are usually piecewise linear,
inversion can be done in a much smarter way.
2018-01-02 14:28:06 +01:00
Andreas Lauser
db9e26761f equil init: get rid of some UgGridHelpers usage
this only deals with the easy things, i.e. UgGridHelpers::numCells()
and UgGridHelpers::dimensions(). a more thorough cleanup is needed in
the future to make ebos work with grids other than Dune::CpGrid again.
2018-01-02 14:28:06 +01:00
Andreas Lauser
669d3fcd2a equil init: re-indent EquilibrationHelpers.hpp 2018-01-02 14:28:06 +01:00
Andreas Lauser
6f07f38fb1 equil init: get rid of initStateEquil_impl.hpp
now, all the beauty of that part of the code can be admired in
initStateEquil.hpp.

During this exercise, I stumbled over some serious code-quality issues
like a different order of the template arguments for the declaration
and the definition, mismatching argument names and no forward
definition of some functions. besides this, some functions were
already defined in the non-_impl.hpp file and EquilibrationHelpers.hpp
used that approach from the outset.
2018-01-02 14:28:06 +01:00
Andreas Lauser
6871e1cf88 move the hydrostatic equilibrium code to its proper location and make it compile
this just moves the hydrostatic equilibrium code from its historc
location at opm/core to ebos/equil and adds minimal changes to make it
compile. this allows to clean up that code without disturbing the
legacy simulators.
2018-01-02 14:28:06 +01:00
Tor Harald Sandve
321af5ff4d Start using the BlackoilFluidState 2017-12-15 08:20:09 +01:00
Andreas Lauser
ab72522e6c grid managers: update the GridPart / GridView after loadBalance()
depending on the grid implementation, the grid view / grid part object
does not necessarily follow the change. For some reason, the grid part
still does not work in the parallel case (tested with dune-fem 2.4),
but that seems to be an issue on the dune-fem side.
2017-12-11 15:19:09 +01:00
Andreas Lauser
0cad40e420 black-oil: do not write the saturated oil formation factor to VTK anymore
this quantity is pretty useless, and the analogous one for wet gas was
never written...
2017-12-06 15:06:29 +01:00
Atgeirr Flø Rasmussen
6a5c6ea227 Merge pull request #241 from totto82/removeInitDupl
Prepare for using the initial solution from ebos directly
2017-12-05 08:44:29 +01:00
Tor Harald Sandve
8ac306b50a Prepare flow for ebos initialization
Apply swatInit in the initialization
Stop using the equilGrid in the initialization code
Keep The initialFluidState until end of first time step to make it
possible for flow to output it.
2017-11-30 09:30:26 +01:00
Tor Harald Sandve
c979ba1f95 Communicate the default thpress 2017-11-29 16:02:18 +01:00
Tor Harald Sandve
2070247244 Avoid shared pointe for MaterialLawManager 2017-11-21 13:28:53 +01:00
Tor Harald Sandve
5a9123c1b1 Use the Equil initializer directly
Do not relay on opm-core objects like phaseUsage and BlackoilState but
instead use the initializer directly.
2017-11-21 13:28:53 +01:00
Joakim Hove
029de3542e Schedule: explicitly instantiated 2017-10-31 13:14:12 +01:00
Andreas Lauser
6598df59cc Revert "ebos: don't break the downstream build because of the SimulatorParameter mess"
This reverts commit c873e8c92da389bc1d6bc4ed2a5241faddfa7630.

since OPM/opm-simulators#1287 has been merged there are no "in tree"
upstreams which use that mechanism anymore.
2017-10-11 16:12:41 +02:00
Andreas Lauser
d51934ce37 ebos: don't break the downstream build because of the SimulatorParameter mess
this now works with the unmodified master version of flow from
opm-simulators. we take the liberty to emit a deprecation warning,
though. this complicates things quite a bit.
2017-10-10 13:18:09 +02:00
Andreas Lauser
ef2e60e454 ebos: simplify passing of pre-parsed ECL decks
This gets rid of some special-purpose code in generic places (i.e. the
`SimulatorParameter` class) and no special hacks to the property and
parameter system are required anymore.
2017-10-07 21:28:25 +02:00
Andreas Lauser
415fdfd113 EclCpGridManager: remove unused private typedef 2017-10-03 12:48:21 +02:00
Arne Morten Kvarving
fde56c93b2 Merge pull request #209 from andlaus/remove_dune_2_3_support
remove support for dune < 2.4
2017-09-22 11:39:59 +02:00
Robert Kloefkorn
f18b1cdf59 [feature][Simulator] allow parameters to be passed from outside to
simulator. The default behavior is unchanged and the parameters are
empty.
2017-08-23 15:51:51 +02:00
Andreas Lauser
79fc6c68cd add a template class for conditionally storing attributes and use it in ebos 2017-07-21 21:38:13 +02:00
Andreas Lauser
cb24b949a8 make all headers autonomous again
i.e., they can be included without having other files included before them.
2017-07-20 12:08:19 +02:00
Andreas Lauser
96381e3ed7 remove support for dune < 2.4
this allows quite a substantial amount of code decluttering, mainly
because Dune 2.4 renamed mapper.map() to mapper.index().
2017-07-13 14:08:02 +02:00
Robert Kloefkorn
902b2246db [cleanup] avoid buffer write/read when reordering is not necessary. 2017-06-23 22:58:50 +02:00
Robert Kloefkorn
06280c9062 [bugfix] index maps need to be created in any case to account for
possible reordering of element numbering.
2017-06-23 22:58:50 +02:00
Robert Kloefkorn
f1da775f41 [bugfix] dimension was renamed in Geometry, so use from Element to be
consistent with earlier DUNE versions.
2017-06-23 22:58:50 +02:00
Robert Kloefkorn
206523cbec [cleanup] remove shared_ptr from PeacemanWell. 2017-06-23 22:58:50 +02:00
Robert Kloefkorn
7699ed59db [cleanup] make code compile when Scalar is non POD type. 2017-06-23 22:58:50 +02:00
Robert Kloefkorn
2aada96d8c [bugfix] fix build of ebos for Grid != CpGrid. 2017-06-23 22:58:49 +02:00
Robert Kloefkorn
18dd23ff44 [cleanup] make module compile with DUNE 2.5 2017-06-23 22:58:49 +02:00
Tor Harald Sandve
195209982e Add support for PLMIXNUM
also fix some issues with the MISCNUM
2017-06-21 10:27:25 +02:00
Tor Harald Sandve
ecae9d3a78 Address comments frow the review. 2017-06-21 08:03:44 +02:00
Tor Harald Sandve
3dd7fd0b3a Add polymer model to ebos
Adds a conservation equation for polymer.
Polymer concentration in the water phase is used as primary variable
The polymer influences the viscosity of the water, and leaves gas and oil
uneffected.

A shear multiplier is computed if PLYSHLOG and/or SHRATE is specified
based on either velocity or shrate.
The shear multiplier effects the water and polymer viscosity.

Tested and verified on the test cases in polymer_test_suite
2017-06-21 08:00:31 +02:00
Robert Kloefkorn
c8bf519e5e [bugfix] fix propName for ROCKNUM. 2017-06-20 18:08:12 +02:00
Joakim Hove
05bc61e4ba Using std::time_t from TimeMap 2017-06-19 22:13:25 +02:00
Andreas Lauser
bff4c8ade9 ebos: add the raw array of PVT numbers.
this can be used by flow_ebos to be passed to legacy code.
2017-06-16 15:12:27 +02:00
Andreas Lauser
f334bb32b9 ebos: add support for the ROCKOPTS keyword
this becomes important if th region which is supposed to be used by
ROCK is not the same as the region for the PVT properties.
2017-06-16 15:12:26 +02:00
Andreas Lauser
3b37038043 ebos: do not mistake the pressure for the gas saturation anymore
this is a copy-and-pasto that was introduced with #189.
2017-06-16 09:25:56 +02:00
Andreas Lauser
89b21eb641 ebos: fix the compilation
one must use eclProps.getDoubleGridProperty() while the has() method
is called eclProps.hasDeckDoubleGridProperty() (mind the Deck!).
2017-06-14 13:36:37 +02:00
Andreas Lauser
55a5a3a848 ebos: reduce direct deck usage
this reduces the number of direct deck accesses in `EclProblem` in
favour of `EclipseState`-grid properties. as far as i can see,
directly using the deck object cannot fully be avoided because
`EclipseState` does not seem to provide internalized versions of all
these keywords yet.
2017-06-13 16:54:39 +02:00
Andreas Lauser
9d7b226b6e Merge pull request #185 from totto82/miscibility_solvent
Add support for miscible solvent runs
2017-05-24 13:03:27 +02:00
Andreas Lauser
d31ded53e4 ebos: fix the NTG averaging code
the NTG value for active cells in the topmost layer was always
1.0. This resulted in some deviations in the transmissibilities of the
Norne deck which lead the init file comparison unit tests from
opm-simulators to fail.
2017-05-24 11:21:57 +02:00
Tor Harald Sandve
f14ea0e3af Add support for miscible solvent runs
- initialization only via Ecl Deck
- adds modification of relperms and cap-pressures for miscible runs
- adds TL mixing model for effective viscosity and density calculations

Tested on SPE1CASE2_SOLVENT_MISC_TL, SPE9_CP_CO2_MISC_TL, SPE5CASE1-3
and SPE3CASE1_SOLVENT_MISC
2017-05-24 10:52:04 +02:00
Tor Harald Sandve
a5858393c6 Avoid negative indicies in minPvFillNtg_ 2017-05-23 15:48:35 +02:00
Tor Harald Sandve
64feefaf05 Fix minpvProps calculations 2017-05-15 13:49:13 +02:00
Tor Harald Sandve
5fb005d87b Use volume weighted arithmetic average of NTG for cells merged by minpv.
This is a big hack to make the TRAN[X,Y] like flow_legacy and a bit more
like Eclipse.
2017-05-12 13:01:07 +02:00
Andreas Lauser
bcdc4e5e38 blackoil: implement the immiscible solvent extension
Conceptually this is IMO pretty questionable, since it adds a second
"gas phase" that does not mix with "ordinary" gas. I suppose the
reason why this extension was conceived by E100 is that if all you
have is hammer, everything looks like a nail...

Functionality-wise, this patch is still not fully complete because
miscibility of the solvent "phase" is not yet implemented. As far as I
can see, the API changes required by miscibility are quite limited,
though.
2017-05-05 10:46:53 +02:00
Andreas Lauser
cddf643b5a EclFluxModule: add a small fix to the mobility shortcut
let's use zero instead of 10^-18. This can have a small impact on
performance, but the new version is definitely "more" correct, and
also Norne performance seems to improve slightly on my machine.
2017-05-04 16:00:25 +02:00
Andreas Lauser
2f0a32ba63 ECL flux module: make some attributes that are not used elsewhere local 2017-05-04 16:00:25 +02:00
Andreas Lauser
4fd341d98e some fixes for typos in comments 2017-05-04 16:00:25 +02:00
Arne Morten Kvarving
b0ce46f46f adjust for changed ParameterGroup namespacing 2017-04-28 15:35:58 +02:00
Andreas Lauser
5951b2f64c EclCpGridManager: do not delete unintialized pointers
this was found using GCC-7's address sanitizer. I suspect that this
did not surface earlier (i.e., with valgrind), because newly allocated
memory gets initialized to zero by the operating system, so the value
of the pointer was zero and the delete operator did what was right by
coincidence. the new asan seems to initialize memory randomly, though.
2017-04-20 11:05:31 +02:00
Andreas Lauser
96869b6a2f make explicit initialization for twophase cases work
if the initial solution is explicitly given by the deck using the
PRESSURE, SWAT, etc. keywords, the specified state can be
thermodynamically impossible. To avoid inconsistencies, we use a flash
calculation to find a state that is in thermodynamic equilibrium and
exhibits the same masses as the explicitly specified solution. Since
the flash solver needs to compute quantities for all fluid phases, but
two-phase blackoil simulations usually do not specify the properties
of one phase, the flash solver crashed. This patch works around that
issue by simply not using the flash solver in the twophase case, i.e.,
the explicit initial condition must be thermodynamically consistent in
order to produce the stable results for a different choice of primary
variables.
2017-04-18 16:11:44 +02:00
Andreas Lauser
346710c5af ebos: hysteresis needs to be updated for all elements
in the parallel case, this avoids the participating processes from
desyncronizing if the solution is consistent on all processes.
2017-04-15 15:12:15 +02:00
dr-robertk
626db3a0fa Merge pull request #143 from blattms/collecttoiorank-fixes-2
localIndexMaps in CollectToIORank need to be lists of interior element indices.
2017-04-03 16:30:33 +02:00
Joakim Hove
e420e7d30e Policy change: warn when missing well/group. 2017-03-15 15:40:39 +01:00
Andreas Lauser
6dbdd387d6 Merge pull request #140 from blattms/fix-pushing-to-resized-array
Fixes pushing to resized array distributedCartesianIndex.
2017-03-10 11:41:25 +01:00
Atgeirr Flø Rasmussen
30aa70c9b6 Merge pull request #153 from andlaus/improve_EQLDIMS_access
ebos: no longer fail if the EQLDIMS keyword is not explicitly mentioned in the deck
2017-02-14 09:54:52 +01:00
Andreas Lauser
42c49e57ec ebos: sychronize the parse context with the one used by flow_legacy
i.e., add the PARSE_MISSING_DIMS_KEYWORD option. this was a recent
change in flow_legacy.
2017-02-13 19:35:27 +01:00
Andreas Lauser
b429af41b1 ebos: no longer fail if the EQLDIMS keyword is not explicitly mentioned in the deck
we use the "Eqldims" object which is exposed EclipseState.
2017-02-13 19:20:27 +01:00
Robert Kloefkorn
7f81518b0d When EnableEclOutput is false the EclWriter should not be created.
This fixes a problem with collecttoiorank which needs to be investigated
separately.
2017-02-10 13:45:44 +01:00
Andreas Lauser
a284089d73 adapt to the move of the valgrind client requests into the Opm namespace 2017-02-09 18:25:44 +01:00
Robert Kloefkorn
5579caaa66 Avoid ambiguous call of std::abs. 2017-02-07 11:33:57 +01:00
Andreas Lauser
72a9827c8a EclCpGridManager: export the transmissibilities of the sequential grid
This only makes these transmissibilities available for parallel
computations. The reason is that in the sequential case, they do not
need to be computed during grid creation and they are are also
accessible via the problem object.
2017-01-26 15:11:03 +01:00
Andreas Lauser
460c286974 Merge pull request #144 from totto82/newTrans
Start using face geometry computed the Ecl way
2017-01-20 15:24:05 +01:00
Tor Harald Sandve
ef9966b188 Start using face geometry computed the Ecl way
Face centers are computed using the cell corners. With this
implementation the face center seen from a cell may be different from the
face center seen from its neighbour.

Face normals with area lenghts are calculated using the face corners
directly not using a triangulation point in the center of the face.

This gives transmissibility almost equal to eclipse.
2017-01-19 08:57:44 +01:00
Andreas Lauser
7a7d6d868d ebos: fix the interactions between SWATINIT and threshold pressures
hopefully this makes standalone `ebos` arrive at the same initial
condition as `flow_ebos` if both, SWATINIT and threshold pressures are
enabled. we need to calculate the initial condition twice either
threshold pressures and SWATINIT are enabled. (`ebos` and `flow_ebos`
diverged after OPM/opm-core#1129.)

the proposed patch is a kludge IMO, but in the light that in my
opinion, SWATINIT and threshold pressures are both physically not
justified and given the fact that SWATINIT must not be considered for
the threshold pressues should be considered to be a bug of the
reference simulator, I think the patch is okay.
2017-01-18 16:46:53 +01:00
Markus Blatt
9d7720ef34 Make localIndexMap_ a non-empty list of indices of interior elements.
Judging from ParallelDebugOutput.hh this is what is should be.
Before this commit it was empty as it had space reserved but never
any entries pushed (they were inserted with operator[]).
2017-01-18 16:36:10 +01:00
Markus Blatt
4418685056 Revert "Makes CollectDataToIORank::localIndexMap_ have nonzero size when accessing."
This reverts commit dde79daf4ec2004148a58250c4c8af5390251689.

Judging from ParallelDebugOutput.hh this should not be a map from element
index to interior element index, but an a list of indices of all interior
elements. Therefore we need to reserve and later on push_back.
2017-01-18 16:29:48 +01:00
Markus Blatt
6893c8cbdd Revert "Make CollectDataIORank::localIndexMap_ as map from element to interior element index."
This reverts commit 09db2fd412abe4b8a2f52274bcc0041e4b20a94d.

Judging from ParallelDebugOutput.hh this should not be a map from element
index to interior element index, but an a list of indices of all interior
elements
2017-01-18 16:25:46 +01:00
Markus Blatt
39a0bbc2b3 Fixes pushing to resized array distributedCartesianIndex.
Previously distributedCartesianIndex was resized and afterwards all
entries were added with push_back. Therefore the array was twice as
big as expected and contained wrong values in the front.

With this commit we insert the values using random access. Thus the
size is as expeceted and the index of the entries do not depend on the
order of the grid traversal.
2017-01-18 14:01:23 +01:00
Andreas Lauser
41d258f1c8 Merge pull request #138 from blattms/fix-pr137
Switch of collecting data in non-parallel run.
2017-01-18 13:55:50 +01:00
Andreas Lauser
3d7563902c Merge pull request #134 from andlaus/change-OPM_UNUSED-usage
change the order of OPM_UNUSED and variable name
2017-01-18 13:32:33 +01:00
Markus Blatt
35c13de342 Switch of collecting data in non-parallel run.
Might save some time, space, and suprises.
2017-01-18 12:10:12 +01:00
Markus Blatt
b61ff14eb0 Make CollectDataIORank::localIndexMap_ as map from element to interior element index.
Previously it was an identity map.
2017-01-18 11:16:14 +01:00
Markus Blatt
0aa4b668a9 Makes CollectDataToIORank::localIndexMap_ have nonzero size when accessing.
While it may not produce memory errors it is semantically wrong to insert
entries with random acces into a vector that has reserved enough memory to
hold the values but still has size 0.
2017-01-18 11:10:31 +01:00
Andreas Lauser
61c501a31d change the order of OPM_UNUSED and variable name
it seems like some compilers (GCC 4.9.2?) are picky about this and
require

```c++
TypeName VariableName __attribute__ ((__unused__))
```
2017-01-17 13:28:56 +01:00
Markus Blatt
feb1687e45 Use copy instead of processing eclipse data for duplicating grid.
Due to the nature of CpGrid (manages one shared pointer to the equil grid
and one the distributed grid) this should be faster as it only adjusts one
shared pointer.
2017-01-17 12:38:58 +01:00
Atgeirr Flø Rasmussen
0c8355d2ad Merge pull request #122 from totto82/swatInitFix
Pass enableSwatinit to the OPM initialization
2017-01-06 10:24:11 +01:00
Andreas Lauser
7ee8890e46 Merge pull request #120 from andlaus/implement_bicgstab
Implement a bicgstab linear solver
2017-01-03 11:41:43 +01:00
Tor Harald Sandve
0dbbfbd8a6 Don't include connections with negligible flow in thpress caclulations 2017-01-02 16:03:19 +01:00
Andreas Lauser
ceae9c3754 fix the headercheck
i.e., make all headers autonomous again. (do not depend on the
ordering of includes.)
2017-01-02 15:45:41 +01:00