Atgeirr Flø Rasmussen
b0b42d7dc7
Add missing initializer for 'singlePrecision'.
2016-02-29 11:17:54 +01:00
Atgeirr Flø Rasmussen
95c645cc72
Merge pull request #598 from andlaus/allow_temperature_to_default
...
BlackoilPropsAdFromDeck: allow the AutoDiffBlock which represents temperature to be empty
2016-02-22 17:09:06 +01:00
Atgeirr Flø Rasmussen
af2455fdbe
Merge pull request #590 from dr-robertk/PR/bugfix-in-backup-restore
...
Bugfix in backup/restore.
2016-02-19 11:37:57 +01:00
Atgeirr Flø Rasmussen
319960dbda
Merge pull request #592 from blattms/distribute_threshold_pressure
...
Fixes the exception for models with threshold pressures.
2016-02-19 08:49:37 +01:00
Atgeirr Flø Rasmussen
569df33ab2
Merge pull request #583 from totto82/solventSupportRegions
...
Support regions in the solvent model
2016-02-18 15:43:27 +01:00
Atgeirr Flø Rasmussen
8dfc8d82fc
Merge pull request #582 from dr-robertk/PR/fast-sparse-add
...
Fast sparse add.
2016-02-17 19:55:15 +01:00
Atgeirr Flø Rasmussen
8bc9789556
Merge pull request #585 from blattms/fix-opm-matrix-dune-2.4
...
Account for variable change in 2.4.1
2016-02-16 21:09:23 +01:00
Atgeirr Flø Rasmussen
a6c8db34e0
Merge pull request #584 from jepebe/travis
...
Added Travis support
2016-02-16 11:05:54 +01:00
Atgeirr Flø Rasmussen
704603e2b2
Merge pull request #578 from dr-robertk/PR/amg-for-interleaved
...
AMG for Interleaved solver and other goodies.
2016-02-16 10:15:55 +01:00
Atgeirr Flø Rasmussen
eb228835c2
Merge pull request #577 from totto82/solventMiscible
...
Add miscible effects to the solvent model
2016-02-12 11:21:56 +01:00
Atgeirr Flø Rasmussen
3b294beb51
Merge pull request #575 from dr-robertk/PR/make-compile-with-current-master
...
DuneMatrix: adjust to changes in dune 3.0
2016-02-12 10:23:40 +01:00
Atgeirr Flø Rasmussen
885e3aa561
Merge pull request #576 from andlaus/opm-material_PVT
...
use the blackoil PVT classes from opm-material instead of the opm-core ones
2016-02-11 22:39:38 +01:00
Atgeirr Flø Rasmussen
2d7b9f7663
Merge pull request #580 from atgeirr/master
...
Fix minor issue with const POD requirements.
2016-02-11 16:21:49 +01:00
Atgeirr Flø Rasmussen
a356a100f7
Fix minor issue with const POD requirements.
...
A user-defined default constructor is required in this situation
unless explicitly using the empty-brace-init syntax.
See discussion here:
http://stackoverflow.com/questions/7411515/why-does-c-require-a-user-provided-default-constructor-to-default-construct-a
2016-02-11 16:17:17 +01:00
Atgeirr Flø Rasmussen
19c168caca
Merge pull request #570 from atgeirr/fix-api-change
...
Fix change in signature of extractPvtTableIndex() in solvent props.
2016-01-08 14:49:50 +01:00
Atgeirr Flø Rasmussen
7e1af01ad7
Fix change in signature of extractPvtTableIndex() in solvent props.
2016-01-08 14:47:41 +01:00
Atgeirr Flø Rasmussen
d47202b676
Merge pull request #569 from chflo/OPM-163
...
OPM-163: Changed signature for method extractPvtTableIndex
2016-01-08 13:36:22 +01:00
Atgeirr Flø Rasmussen
2505183887
Improve threshold pressure mismatch error message.
2015-12-28 09:22:53 +01:00
Atgeirr Flø Rasmussen
5315a0dfba
Merge pull request #561 from atgeirr/refactor-extended-mains
...
Refactor main functions of all Flow variants.
2015-12-22 15:20:59 +01:00
Atgeirr Flø Rasmussen
6839b811f2
Make polymer solver use direct solver only.
...
The interleaved solver should work for this case, but does not currently.
2015-12-21 15:05:32 +01:00
Atgeirr Flø Rasmussen
8507427d83
Use correct syntax for logical not.
2015-12-21 14:55:33 +01:00
Atgeirr Flø Rasmussen
dc4274f4a2
Include nncs in threshold pressures.
...
This was left out when rebasing (it had been introduced in the flow etc. mains).
This also fixes a bug: the nnc thresholds should be inserted at the end of the
vector to be consistent with the operators, not at the beginning.
2015-12-21 11:12:55 +01:00
Atgeirr Flø Rasmussen
78dbb79ea4
Fix compile error for in-class member init.
...
Reported by Kai Bao.
2015-12-21 11:12:01 +01:00
Atgeirr Flø Rasmussen
bfcbd09488
Create and use FlowMainPolymer class.
2015-12-18 13:58:13 +01:00
Atgeirr Flø Rasmussen
b420cccfc3
Add warning about simulating without WPOLYMER.
...
Warning was in the main() of flow_polymer.cpp,
but will disappear from there after refactoring.
2015-12-18 13:58:13 +01:00
Atgeirr Flø Rasmussen
b156ce0b55
Create and use FlowMainSolvent class.
2015-12-18 13:58:13 +01:00
Atgeirr Flø Rasmussen
39900761a8
Transform FlowMain to use CRTP.
...
Main content is now in FlowMainBase, which takes Implementation as
a template parameter. FlowMain inherits from FlowMainBase with itself
as Implementation template parameter. Only the createSimulator() method
is implemented in FlowMain (as opposed to in FlowMainBase). All subclasses
must implement createSimulator().
2015-12-18 13:58:13 +01:00
Atgeirr Flø Rasmussen
bb49ddbfc4
Improve comments.
2015-12-18 13:58:13 +01:00
Atgeirr Flø Rasmussen
4d31a99f5b
Moved content of warnIfUnusedParams() into runSimulator().
2015-12-18 13:58:13 +01:00
Atgeirr Flø Rasmussen
4711fd3dfe
Complete refactoring of FlowMain.
2015-12-18 13:58:13 +01:00
Atgeirr Flø Rasmussen
7a536570dc
Split out readDeckInput() method.
2015-12-18 13:58:13 +01:00
Atgeirr Flø Rasmussen
4fae28f3d3
Split out setupOutput() method.
2015-12-18 13:58:13 +01:00
Atgeirr Flø Rasmussen
64eef0609a
Split out setupParameters() method.
2015-12-18 13:58:12 +01:00
Atgeirr Flø Rasmussen
966ace2c53
Split out printStartupMessage() method.
2015-12-18 13:58:12 +01:00
Atgeirr Flø Rasmussen
c1bd7670c6
Refine OpenMP number-of-threads output.
...
Now each MPI rank will report, making it easier to see how
MPI and OpenMP interacts w.r.t. processes and threads.
2015-12-18 13:58:12 +01:00
Atgeirr Flø Rasmussen
f7c96b4fc5
Split out function setupParallelism().
2015-12-18 13:58:12 +01:00
Atgeirr Flø Rasmussen
e3ceac44a6
Renamed flowMain.hpp -> FlowMain.hpp.
2015-12-18 13:58:12 +01:00
Atgeirr Flø Rasmussen
abf5443f33
Replace flowMain() function with FlowMain class.
2015-12-18 13:58:12 +01:00
Atgeirr Flø Rasmussen
8e2cb4161a
Merge pull request #553 from atgeirr/refactor-flow-main
...
Minor refactoring in flow.cpp
2015-12-18 13:47:24 +01:00
Atgeirr Flø Rasmussen
b10b028aa1
Documented flowMain().
2015-12-14 16:11:35 +01:00
Atgeirr Flø Rasmussen
29d18261c6
Make multisegment flow variants use flowMain().
2015-12-14 16:11:35 +01:00
Atgeirr Flø Rasmussen
f02fd71404
Use Simulator::ReservoirState in flowMain().
2015-12-14 16:11:06 +01:00
Atgeirr Flø Rasmussen
460f0cb451
Use the new flowMain() function.
...
Also add it to the CMake file list.
2015-12-14 16:11:06 +01:00
Atgeirr Flø Rasmussen
51a03e6212
Extract content of flow main() to separate template function.
...
The function is templated on grid and simulator class, so this allows
flow and flow_mpi to be implemented without any macro tricks, instead
simply including and using different grid types.
2015-12-14 16:07:47 +01:00
Atgeirr Flø Rasmussen
be9b6a3cd2
Unconditionally instantiate the (possibly fake) MPI helper.
...
This reduces the difference between flow and flow_mpi. For builds
without MPI, the fake helper from Dune is instantiated, which has
the same interface.
2015-12-14 16:07:47 +01:00
Atgeirr Flø Rasmussen
7c5256031c
Use GridInit in flow.cpp.
2015-12-14 16:07:47 +01:00
Atgeirr Flø Rasmussen
af980ed93c
Creates GridInit template class.
2015-12-14 16:07:46 +01:00
Atgeirr Flø Rasmussen
dc3a290327
Merge pull request #560 from atgeirr/silence-warning
...
Silence int vs. size_t warnings.
2015-12-14 15:56:21 +01:00
Atgeirr Flø Rasmussen
e74a36d939
Silence int vs. size_t warnings.
2015-12-14 15:55:30 +01:00
Atgeirr Flø Rasmussen
bd82e5ade9
Merge pull request #554 from totto82/nnc_thpress
...
NNC and threshold pressure
2015-12-14 11:33:30 +01:00
Atgeirr Flø Rasmussen
d30147abfd
Merge pull request #555 from totto82/residualSaturations
...
Add methods for critial gas and gas in oil saturations
2015-12-11 13:08:54 +01:00
Atgeirr Flø Rasmussen
73a26fb8dd
Merge pull request #558 from totto82/powerAD
...
Add power operator to AutoDiffBlock
2015-12-11 09:49:25 +01:00
Atgeirr Flø Rasmussen
630454691e
Merge pull request #557 from blattms/fix-pr541-for-parallel
...
Guard access of well variable with asImpl().localWellsActive()
2015-12-11 09:40:47 +01:00
Atgeirr Flø Rasmussen
ef07b8daef
Update run() calls in polymer fully implicit sims.
2015-12-07 13:45:07 +01:00
Atgeirr Flø Rasmussen
ffc91bc35e
Remove unnecessary EclipseState argument from run().
2015-12-07 13:40:06 +01:00
Atgeirr Flø Rasmussen
e54f7ed2d7
Use warning suppression headers.
2015-12-07 13:40:06 +01:00
Atgeirr Flø Rasmussen
eb3cff97da
Merge pull request #552 from akva2/import_polymer2
...
Import opm-polymer into opm-autodiff
2015-12-07 12:41:44 +01:00
Atgeirr Flø Rasmussen
241da90531
Merge pull request #547 from blattms/parallel-ilu
...
Parallel overlapping ILU0
2015-12-02 11:47:13 +01:00
Atgeirr Flø Rasmussen
fe4f99a94e
Minimise differences between flow.cpp and flow_multisegment.cpp.
2015-12-01 00:06:46 +01:00
Atgeirr Flø Rasmussen
57511641e2
Remove unused data members.
2015-12-01 00:06:46 +01:00
Atgeirr Flø Rasmussen
a40d93a170
Comment out changes to residual output.
2015-12-01 00:06:46 +01:00
Atgeirr Flø Rasmussen
c825b599e5
Remove unused include.
2015-12-01 00:06:46 +01:00
Atgeirr Flø Rasmussen
61cccfebf8
Refactor updatState() to use numWellVars().
...
This allows us to use the base version of updateState().
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
233a275191
Made the solveWellEq() method return if it converged.
...
Also use this to avoid updating if not converged in the
multi-segment version.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
2055c94269
Implement solveWellEq() for multisegment model.
...
Note that this initial version has only been tested on regular wells!
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
693f5c791b
Refactor computeWellFlux().
...
Now much faster, avoiding repeated use of subset() etc. by
vectorization of code.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
5b43018862
Fix ms well ops implementation.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
bbf86dcd4a
Add wops_ms_ member.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
b9e80c1950
Update flow_multisegment to match thresholdPressure() API change.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
9dea3c6b57
Fix typo in variable name.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
81e9c25b10
Made methods const in multi-segment model as well.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
e82828527c
Make some methods const.
...
The methods are: computeWellFlux(), updatePerfPhaseRatesAndPressures()
and extractWellPerfProperties().
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
ba7b3e728c
Minor improvements in computeSegmentDensities().
...
Mainly improving comments, deleting unused code and moving some variable
definitions closer to where they are used.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
702cd3170a
Remove unused code and fix a few warnings.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
4dd8536afa
Make multi-segment model use Base::addWellContribution...() method.
...
Also make assemble() more similar to base version, using the
extractWellPerfProperties() member from Base.
To do this it was necessary to change the well_cells member of the
WellOps to be correct for the multi-segment wells (since they may
have different perforation order for some wells).
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
44f36c45cf
Add well_cells to WellOps to avoid recreating.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
b2787e24e7
Use value() in argument to make Selector constructor compile.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
920eeed3b2
Improve assemble() with new method extractWellPerfProperties().
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
653e55d7db
Make assemble() more similar to base version.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
e6a81fca83
Make convergence methods work for multi-segment wells.
...
The convergenceReduction() method no longer takes a number-of-wells argument,
instead it infers the number of well fluxes to check from the size of the
well_flux_eq member of the residual.
After this, a custom getConvergence() method is no longer required for the
multi-segment well model.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
1c4f4c646d
Add asImpl() to some method calls.
...
This enables those methods (mostly well related) to be used polymorphically.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
ae512d5c83
Update location of ErrorMacros.hpp header in includes.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
9e664abe6e
Add a TODO comment to updateWellControls().
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
fce7247da5
Update the SolutionState's qs and bhp members.
...
This way they can be used instead of repeatedly extracting the top segment data,
which also could make it possible to use more of the existing implementation.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
9c1c87a040
Remember to initialize the data members.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
f2c812fb3a
Made WellStateMultiSegment use inheritance properly.
...
Use base class' data members (via public methods),
also change method names to match existing ones.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
7aa2672a14
Add TODO comment.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
5d5ae7d271
Further silencing of warnings.
2015-12-01 00:06:44 +01:00
Atgeirr Flø Rasmussen
15fd5dad47
Suppress warnings in the multisegment well code.
2015-12-01 00:06:44 +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
Atgeirr Flø Rasmussen
99fd5e977f
Remove assert() that is now wrong due to minIter() treatment.
2015-11-25 11:08:10 +01: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
Atgeirr Flø Rasmussen
a06892a070
Add asImpl() to method calls.
...
This is needed by derived models.
2015-11-19 14:39:49 +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