Joakim Hove
ec647bcc16
Merge pull request #2574 from joakim-hove/serialize-optional
...
Add support for serializing std::optional
2020-04-29 10:48:43 +02:00
Markus Blatt
ca744231b1
Removes unused member istlSolver_ and method to get it from BlackoilModelEbos
...
It is not used since quite some time and tends to confuse me.
2020-04-28 16:46:17 +02:00
Joakim Hove
40d7cd4381
Add support for serializing std::optional
2020-04-28 16:25:17 +02:00
OPMUSER
163ce3b613
Update Missing Features with PERMFACT
2020-04-28 13:39:40 +02:00
Bård Skaflestad
9756edce50
Remove Unused 'currentControl' Variable
2020-04-27 21:29:10 +02:00
Atgeirr Flø Rasmussen
14bde098ce
Merge pull request #2570 from blattms/fix-prec-factory-dune-master
...
Complete future-proofing ILU usage in the preconditioner factory.
2020-04-27 16:37:27 +02:00
Atgeirr Flø Rasmussen
06e5e6b6ac
Merge pull request #2565 from totto82/avoidOscNupcol
...
use nupcol to avoid oscillation between group controls
2020-04-27 16:02:32 +02:00
Atgeirr Flø Rasmussen
6684cd7cb3
Merge pull request #2564 from totto82/fixGCONSALE
...
Fix GCONSALE
2020-04-27 15:59:29 +02:00
Markus Blatt
f03b56c261
Complete future-proofing ILU usage in the preconditioner factory.
...
SeqILU0/SeqILU0 are removed in master and one should use SeqILU
2020-04-27 15:52:43 +02:00
Joakim Hove
750070fbd7
Remove VISCREF from MissingFeatures
2020-04-27 10:30:50 +02:00
Tor Harald Sandve
33afb332fa
use nupcol to avoid oscilation between group controls
2020-04-27 10:29:00 +02:00
OPMUSER
c62318387d
Update Missing Features with HMMULTSG
...
HMMULTSG
2020-04-25 18:19:31 +02:00
OPMUSER
04295871f4
Update MissingFeatures.cpp
...
Missing features fixed typo SCPDIMS to SCDPDIMS, and added RWGSALT.
2020-04-25 18:19:31 +02:00
Tor Harald Sandve
a046977946
Fix GCONSALE
...
1) Only check GCONSALE limits at the end of a timestep. NB. The simulator still throws if some of the limits are violated
2) BUGFIX: don't remove gas consumption twice
2020-04-24 16:10:07 +02:00
Atgeirr Flø Rasmussen
a720bf9942
Add logging of linear solver parameter tree.
2020-04-24 14:52:04 +02:00
Joakim Hove
0773d07df5
Missing features ( #2562 )
...
Updates to the list of missing features
2020-04-24 13:08:55 +02:00
Atgeirr Flø Rasmussen
c4e020c179
Merge pull request #2556 from totto82/test_atg
...
Fix how the group reduction works
2020-04-24 11:13:22 +02:00
Tor Harald Sandve
e9476e116e
make sure the current_rate is added at the right level
2020-04-23 20:54:59 +02:00
Tor Harald Sandve
3b479af9c4
Fix the fix on how the group reduction works
2020-04-23 09:45:16 +02:00
Atgeirr Flø Rasmussen
0df3a96fa6
Fix how group rate reductions work.
2020-04-23 09:39:03 +02:00
OPMUSER
9d32980821
Added the Water Vaporization keywords to Missing-Features
...
Added the following Water Vaporization keywords to Missing-Features: PRESALT, PVTGW, PVTGWO, SALTPVD, SALTSOL, and VAPWAT
2020-04-21 16:39:51 +08:00
OPMUSER
4906a3e69e
Added ADSORP and CPR to Missing-Features
...
Added ADSORP and CPR to Missing-Features
2020-04-21 16:30:54 +08:00
OPMUSER
048d21fdab
Update MissingFeatures.cpp
...
Changed DIFFMTHT- to DIFFMTH-
2020-04-21 14:29:03 +08:00
OPMUSER
a8dba1a726
Update Missing-Features keywords
...
Added GECONT, changed RIVRDIM to RIVRDIMS, added RPTSOL, RSSPEC, changed SCPDIMS to SCDPDIMS,
2020-04-21 14:05:46 +08:00
Cintia Goncalves Machado
2ac17103f8
Remove BDENSITY
2020-04-20 17:44:40 +02:00
Bård Skaflestad
9625d0b48c
Merge pull request #2531 from GitPaean/msw_keywords
...
adding the summary output for several pressure drop values for MSW
2020-04-17 20:54:49 +02:00
Kai Bao
954e5e769a
addressing comments from OPM/opm-common#1695
2020-04-17 14:34:48 +02:00
Joakim Hove
6260bb7851
Update api for checking availability for group control
2020-04-17 13:03:56 +02:00
Joakim Hove
11d65f41d2
Add keywords to the list of missing features
2020-04-17 08:56:10 +02:00
Kai Bao
251c09a288
adding the several pressure drop values to WellState for MSW
...
segpress_ and segrates_ are renamed to help the name style.
2020-04-17 00:38:38 +02:00
Atgeirr Flø Rasmussen
a1091bd718
Stop simulating if the schedule has set an exit condition.
...
The program will return the value set in the EXIT keyword.
2020-04-16 15:42:17 +02:00
Atgeirr Flø Rasmussen
88525f7c39
Merge pull request #2516 from hakonhagland/refactor_flow_run
...
Refactor main() in flow.cpp.
2020-04-16 13:28:03 +02:00
Atgeirr Flø Rasmussen
07d9ec135b
Make Main a non-template class again, simplify.
2020-04-16 11:35:01 +02:00
Håkon Hægland
1932e42cbb
Fixed minor typo.
2020-04-16 01:22:07 +02:00
Håkon Hægland
954d32c3ab
Refactor main_() into initialize_() and dispatch_().
...
For the Python interface's usage (as opposed to the usage by e.g.
flow.cpp), we do not neccessarily want to run the whole simulation by
calling run(), it is also useful to just run one report step at a time.
According to these different usage scenarios, main_() is refactored into
initialize_() and dispatch_() as a preparatory step for implementing the
Python interface (to be presented in a later PR).
2020-04-16 00:21:10 +02:00
Håkon Hægland
3f97561380
Fixup Deck, EclipseState, Schedule, ....
...
Fixup usage of Deck, EclipseState, Schedule, and SummaryConfig to take
into account the class variables deck_, eclipseState_, schedule_, and
summaryConfig_. These variables might initially be empty (nullptr) when
the object is constructed by calling Main(argc, argv) from flow.cpp,
flow_blackoil_dunecpr.cpp, flow_onephase.cpp, or
flow_onephase_energy.cpp. However, when Opm::Main is constructed from the
Python interface code (to be implemented in a later PR) by using the
constructor Main(argc, argv, deck, eclispeState, schedule, summaryConfig)
the variables will not be intially empty.
2020-04-15 23:49:44 +02:00
Markus Blatt
057a0ceeeb
Removes stale CPR headers that have been superseeded.
...
No need to drag them along and confuse people.
2020-04-15 21:38:28 +02:00
Håkon Hægland
09230808e0
Adapting Main.hpp to the Python interface.
...
Adapting Main.hpp to be called from Python interface, Part 1.
Building on PR #2521 and PR #2535 , we gradually adapt Main.hpp for
being called from the Python interface (to be committed in a later PR)
to the flow executable. This PR introduces a new constructor for class
Opm::Main that takes a Deck, EclipseState, Schedule, and SummaryConfig
as arguments. It also introduces some new class variables that will be
useful when the main_() method is split up (in a later commit).
2020-04-15 20:45:20 +02:00
Atgeirr Flø Rasmussen
302474ade6
Merge pull request #2535 from hakonhagland/flow_tag_new_try
...
Merge flow_tag.hpp into Main.hpp (new try)
2020-04-15 13:29:59 +02:00
Håkon Hægland
de53c98605
Always print banner.
...
Remove the #ifdef OPM_FLOW_MAIN guard on printBanner() as it makes sense
to print the banner in either case.
2020-04-14 14:53:48 +02:00
Håkon Hægland
efa6c54096
Avoid a preprocessor directives.
...
Some of the functions in Main.hpp do not need to be guarded by a
\#ifndef OPM_FLOW_MAIN
Since they are template functions, they will not be included in the
code unless explicitly instantiated.
2020-04-14 14:53:48 +02:00
Håkon Hægland
3624725885
Merge flow_tag.hpp into Main.hpp.
...
Addresses the comments in PR #2521 regarding code duplication in
Main.hpp and flow_tag.hpp. This PR merges the code in flow_tag.hpp
into Main.hpp such that flow_tag.hpp can be eliminated (will be done
in the next PR).
2020-04-14 14:53:48 +02:00
Arne Morten Kvarving
ca697acc60
remove unused lambda parameter
...
quells a compiler warning
2020-04-14 14:17:41 +02:00
Joakim Hove
fcdca0f9e5
The "default" Schedule constructor has Python argument
2020-04-10 07:53:45 +02:00
Tor Harald Sandve
60bb9e4eaa
Merge pull request #2505 from atgeirr/group-controls-at-wells-cleaned
...
Group controls at wells (cleaned)
2020-04-08 12:29:30 +02:00
Atgeirr Flø Rasmussen
e7e4cf6f20
Silence warnings and fix whitespace.
2020-04-08 10:41:20 +02:00
Joakim Hove
fc5875d981
Remove keywords SEPARATE, RUNSUM and DATES from MissingKeywords list
2020-04-07 08:31:22 +02:00
Joakim Hove
76111897a6
MOve String utility in opm-common
2020-04-04 16:28:16 +02:00
Håkon Hægland
8c1a951e09
First PR in a splitting up of PR #2516 .
...
According to private discussion with @joakim-hove PR #2516 is splitted into
smaller parts to facilitate review and a quicker merge into master.
As mentioned in PR #2516 , main() in flow.cpp is refactored to address
the comments on PR #2127 and as preparation for implementing the Python
bindings described in PR #2403 .
2020-04-03 14:53:45 +02:00
Tor Harald Sandve
97876530e3
include wells under individual control when accumulating guiderates
2020-04-03 10:03:05 +02:00
Markus Blatt
20f26bffbf
fixup! [FlexibleSolver] Added missing headers determine IsComm.
2020-04-02 17:16:17 +02:00
Markus Blatt
9ce008ef7d
[FlexibleSolver] Added missing headers determine IsComm.
...
Seems needed for some compilers
2020-04-02 17:10:43 +02:00
Atgeirr Flø Rasmussen
0c8ce54b71
Merge pull request #2498 from blattms/cherry-pick-hnil-flexible-clean-interface-rebased
...
Cleaned up flexible solver improvements.
2020-04-02 15:28:10 +02:00
Tor Harald Sandve
70b7bed057
dont check if group has converged in solveWellEq
2020-04-02 13:57:38 +02:00
Atgeirr Flø Rasmussen
f30ddffdb7
Split WellGroupHelpers to cpp/hpp.
...
Also changed namespace name.
2020-04-02 13:57:38 +02:00
Tor Harald Sandve
21b98b5573
Avoid negative targets and currentWellRates
2020-04-02 13:57:38 +02:00
Atgeirr Flø Rasmussen
d2dac6c19c
Bugfix: rates in assembleControlEqProd() are by canonical phases, not active.
2020-04-02 13:57:38 +02:00
Atgeirr Flø Rasmussen
a8107afc11
Fix handling of FIELD for injector groups.
2020-04-02 13:57:38 +02:00
Tor Harald Sandve
66931b9cb7
Various fixes and refactoring.
...
- Communicate all well rates.
- When changing controls, modify rates to satisfy failed constraint.
- Ensure targets are positive.
- Always solve for potentials for MSW (temporary fix).
2020-04-02 13:57:05 +02:00
Atgeirr Flø Rasmussen
3a5a8c23df
Use generic control equation implementation.
2020-04-02 13:54:58 +02:00
Atgeirr Flø Rasmussen
d703699e62
Avoid recursion above the FIELD group.
2020-04-02 13:54:58 +02:00
Atgeirr Flø Rasmussen
766d02cacc
Unify group control equation codes.
2020-04-02 13:54:58 +02:00
Tor Harald Sandve
92ee56c3b3
scale guiderate by current well rate
2020-04-02 13:54:47 +02:00
Atgeirr Flø Rasmussen
27f62399f5
Handle guide-rate based well constraints from groups.
2020-04-02 10:41:57 +02:00
Tor Harald Sandve
202235abe0
Merge pull request #2510 from dr-robertk/PR/bugfix-gridview-mixup
...
[bugfix][ISTLSolverEbos] fix compilation when dune-fem is used in
2020-04-01 10:05:51 +02:00
Joakim Hove
58717905ee
Use only wconnection transmissibility without WellPI scaling
2020-03-31 18:12:29 +02:00
Markus Blatt
2c432e09af
Error when json file is requested for insufficient boost version.
2020-03-31 16:49:37 +02:00
Markus Blatt
589b70ff26
Correct errror message when json file is not specified.
2020-03-31 16:49:37 +02:00
Markus Blatt
910ecdb78d
Addedmissing space.
2020-03-31 16:49:37 +02:00
Markus Blatt
b16f635b90
Deleted commented out code.
2020-03-31 16:49:37 +02:00
Markus Blatt
a72ab9d283
Fixed typo and reworded.
2020-03-31 16:49:37 +02:00
Markus Blatt
2fc2703aba
Use special default for LinearSolverMaxIter for CPR and honor CprMaxEllIter
2020-03-31 16:49:37 +02:00
Markus Blatt
2c1df912fe
honor ilulevel for ParallelOverlappingILU0
2020-03-31 16:49:37 +02:00
Markus Blatt
9019a52937
Use enable_if on comm constructor parameter.
...
As this is the one we want to check.
2020-03-31 16:49:37 +02:00
Markus Blatt
b016a1a714
[FlexibleSolver] active CPR if UseCpr is true and adjust maxIter.
...
If no LinearSolverConfiguration is specified but UseCpr is true we
use cpr_quasiimpess. If the user does not specify the maximum
iteration number we use 20 for cpr.
2020-03-31 16:49:37 +02:00
Markus Blatt
74b958c258
Improves exceptions and message and resort to OPM_THROW for flexible solvers.
2020-03-31 16:49:37 +02:00
Markus Blatt
ff0d54d4ea
Add sensible defaults for flexible solver properties...
...
to prevent throwing. The get methods will throw if called without a
default value. This quite unfortunate and not very user friendly, as
there are many properties and the throwing will happen during the
linear solve and result in time step chopping.
This commit should prevent such throws and allow users to provide
jsdon files omitting some options.
2020-03-31 16:49:37 +02:00
hnil
fce9f5e57c
Manual cherrypicked improvements from f2ed2b6dc3
and 8aad027
...
These were a bit hidden, but found. They add a few more customization
options and kamg as a sequential solver. The latter will be broken if
we use update, though.
2020-03-31 16:49:37 +02:00
Markus Blatt
dcb316f442
Make update method of preconditioners parameter-less again.
...
Previously, it got passed the weights only needed for CPR.
Additionally those were passed with the parameter tree to the
update method and constructor.
Now the CPR constructor gets a function to use for recalculating
the weights and the property is not changed. Unfortunately this
means that the preconditioner creators of the factory get another
parameter.
2020-03-31 16:49:37 +02:00
Markus Blatt
95a1e1ca0e
Remove property tree parameter from PreconditionerWithUpdate::update
...
It is not used, needed parameters can stored in the constructor, and
it made de design a bit suboptimal.
2020-03-31 16:49:37 +02:00
Markus Blatt
70cff4b342
Refactor to a single function that calculates true impes weights.
...
Two identical versions seemed like a lot of maintenance for no gain.
2020-03-31 16:49:37 +02:00
hnil
2388a9b551
Added simple defaults for flexible solver: current options added ilu0, cpr_quasiimpes, cpr_trueimpes, file (genneal configuration)
...
This commit 0c62c8442
cherry-picked and slightly cleaned up and
adapted to recent changes.
2020-03-31 16:49:37 +02:00
hnil
90b22d8713
changed interface to only have minimal overhead using true impes.
...
It gives overhead in constructor when linear system is created. No overhead if reuse is used.
This commit 141903a26
cherry-picked, cleaned and made compilable with
recent changes
2020-03-31 16:49:37 +02:00
hnil
bfa859c099
changes to make true impes work with flexible solver
...
Cherry-picked commit 7da5ce4fec33. Which got cleaned up
(deleted trailing whitespace, tabs) and made compilable with recent changes.
2020-03-31 16:49:37 +02:00
Robert Kloefkorn
8afe8c3f96
[bugfix][ISTLSolverEbos] fix compilation when dune-fem is used in
...
conjunction with opm-simulators.
2020-03-31 14:22:11 +02:00
Joakim Hove
c8524a139e
Add build time to flow startup banner
2020-03-31 08:42:24 +02:00
Bård Skaflestad
d95eb32510
Save and Restore Well's Current Control Target Mode
...
This commit uses the new restart file support for active well
control target modes to save and restore the run's active targets.
2020-03-26 14:20:12 +01:00
Atgeirr Flø Rasmussen
8ef508cc08
Merge pull request #2491 from blattms/flexible-fixes
...
Fixes ILU0 when using flexible solvers.
2020-03-24 17:39:27 +01:00
Bård Skaflestad
7e6d283665
Merge pull request #2495 from akva2/use_aquifer_config
...
changed: use AquiferConfig when setting up aquifers
2020-03-24 14:31:52 +01:00
Arne Morten Kvarving
9906cc47f7
changed: use AquiferConfig when setting up aquifers
2020-03-24 13:36:39 +01:00
Arne Morten Kvarving
5fd85c1446
Merge pull request #2497 from akva2/deck_avoid
...
Avoid deck usage in simulator
2020-03-24 08:28:21 +01:00
Arne Morten Kvarving
30eb7256bc
remove call to checkMissingFeatures
...
once is enough. as a bonus avoids deck usage in simulator
2020-03-23 15:54:48 +01:00
Atgeirr Flø Rasmussen
1e84624ea7
Add override spec to silence warnings.
2020-03-23 11:57:59 +01:00
Markus Blatt
03b2c44dce
Prevent some unnecessary copies.
2020-03-23 09:40:14 +01:00
Markus Blatt
b41b449c7d
Removed suplicated code for calculating quasi impes weights.
...
Maintaining two versions is just to error prone.
2020-03-23 09:40:14 +01:00
Markus Blatt
c14bf078a1
Make ParallelOverlappingILU0 updateable & use it to construct ILU0/n
...
This should force the flexible solver approach to recalculate the
decomposition during update.
Closes #2490
2020-03-23 09:39:51 +01:00
Markus Blatt
c0a82ff335
Merge pull request #2475 from Tongdongq/separate_wellcontributions_for_gpu
...
Separate wellcontributions for gpu
2020-03-20 12:14:06 +01:00
T.D. (Tongdong) Qiu
ab2d9a8c76
Changed int idx to indicate which matrix is added to WellContributions to an enum
2020-03-20 10:04:58 +01:00
Bård Skaflestad
fda4a29c7e
Merge pull request #2459 from jalvestad/group_constraints_summary
...
Make available current Production/Injection Group Control parameters for use in Restart
2020-03-19 16:54:34 +01:00
T.D. (Tongdong) Qiu
75268f1166
Changed ISTLSolverEbos-BdaBridge usage. BdaBridge->solve_system() is not called when GPU is not selected or disabled
2020-03-19 16:08:29 +01:00