Joakim Hove
6c2db2488d
Merge pull request #1999 from joakim-hove/keywordsW
...
Update missing features with W keywords
2019-09-10 09:59:17 +02:00
Joakim Hove
c14d8f69e7
Update missing features with W keywords
2019-09-10 07:42:58 +02:00
Arne Morten Kvarving
d71f704532
changed: ewoms/linear -> opm/simulators/linalg
2019-09-09 09:21:42 +02:00
Atgeirr Flø Rasmussen
b8b3599ac5
Merge pull request #1993 from akva2/namespace_change
...
changed: namespace Ewoms -> namespace Opm
2019-09-09 09:05:19 +02:00
Joakim Hove
96025d224e
Unsupported W keywords
2019-09-06 11:22:25 +02:00
Arne Morten Kvarving
5599bb6d8c
changed: namespace Ewoms -> namespace Opm
2019-09-05 17:14:38 +02:00
Steinar Foss
748f09c3e0
added more kw starting w/ D.
2019-09-05 14:55:06 +02:00
Joakim Hove
3d36565db7
Adapt to enum changes
2019-09-03 22:18:34 +02:00
Joakim Hove
c804e85bc7
Setup logging before the simulator is initialized ( #1980 )
...
Setup logging before the simulator is initialized
2019-08-27 22:41:48 +02:00
Joakim Hove
5b857dd43e
Merge pull request #1982 from stefoss23/add_keywords_D
...
added keywords beginning w/ D.
2019-08-24 05:31:52 +02:00
Steinar Foss
caea91002a
added keywords beginning w/ D.
2019-08-23 09:38:32 +02:00
Joakim Hove
9df2a6f0c9
List W keywords as missing features
2019-08-23 08:02:14 +02:00
Joakim Hove
ad82f1aef3
Remove COMPDAT from list of unsupported keywords
2019-08-21 22:52:07 +02:00
Atgeirr Flø Rasmussen
fdcfa8f0ff
Merge pull request #1955 from GitPaean/well_potential_improvements
...
using self-copying when calculating well potentials
2019-08-21 15:31:09 +02:00
Joakim Hove
21f2448034
Merge pull request #1977 from stefoss23/add_keywords_c
...
added keywords beginning w/C.
2019-08-16 17:45:34 +02:00
Joakim Hove
d09b7e88ae
Add some W keywords to list of missing features
2019-08-16 16:34:15 +02:00
Steinar Foss
f6bf7bec6d
added keywords beginning w/C.
2019-08-16 15:14:28 +02:00
Joakim Hove
17e7fc8928
Merge pull request #1974 from joakim-hove/missing-features-Z
...
Some missing features on Z and W
2019-08-15 14:30:15 +02:00
Kai Bao
f40c1cc12f
throw when calling addWellContributions() for MSW
2019-08-15 11:29:30 +02:00
Joakim Hove
c989874b26
Some missing features on Z and W
2019-08-15 08:04:41 +02:00
Joakim Hove
e2547a9602
Merge pull request #1973 from stefoss23/add_keywords_b
...
added keywords beginning with B.
2019-08-13 19:31:11 +02:00
Steinar Foss
8aa4af836a
added keywords beginning with B.
2019-08-13 13:41:50 +02:00
Atgeirr Flø Rasmussen
63364dc983
Bugfix: use proper method to access injected phase.
2019-08-13 11:57:06 +02:00
Atgeirr Flø Rasmussen
b32290d65a
Remove unused variable.
...
Also move variable to scope where used.
2019-08-13 10:51:16 +02:00
Atgeirr Flø Rasmussen
f5070c6ba9
Avoid getting distr when current control index is -1.
2019-08-13 10:14:37 +02:00
Atgeirr Flø Rasmussen
ffeb1529e8
Throw if calling well_controls_current_distr() with -1 current index.
2019-08-13 10:14:10 +02:00
Atgeirr Flø Rasmussen
8438e84db1
Handle two possible cases where current control is -1.
2019-08-12 14:49:52 +02:00
Joakim Hove
9f1e3465db
Throw std::logic_error if trying to access invalid current control
2019-08-12 10:46:11 +02:00
Joakim Hove
af1bf9a193
Compile well_controls as C++
2019-08-12 10:46:11 +02:00
Joakim Hove
1bc571535e
Merge pull request #1963 from stefoss23/add_keywords_A
...
added keywords beginning w/ A.
2019-08-09 10:35:18 +02:00
Kai Bao
fec9d1feee
recovering the interface of function createWellContainer
...
in BlackoilWellModel, which makes its usage easier.
2019-08-09 10:02:28 +02:00
Kai Bao
4d8afb8539
using self-copying when calculating well potentials
...
in order to re-use the existing well model in stead of re-creating new
ones. The latter way really complicates the function createWellContainer
in BlackWellModel.
2019-08-09 10:02:28 +02:00
Atgeirr Flø Rasmussen
b7a36a6a72
Merge pull request #1938 from atgeirr/use-foam-module
...
Use foam module
2019-08-09 09:54:33 +02:00
Joakim Hove
3e15ec4ba3
Merge pull request #1959 from joakim-hove/group-uda
...
Group uda
2019-08-09 08:50:33 +02:00
Steinar Foss
d3399015d7
MissingFeatures: AQUNNC spell error.
2019-08-08 15:17:29 +02:00
Steinar Foss
f377e1dd39
added keywords beginning w/ A.
2019-08-08 12:02:59 +02:00
Markus Blatt
777a7acb5b
Merge pull request #1962 from atgeirr/fix-nullptr-dereference
...
Use a dummy SequentialInformation object for the serial case.
2019-08-08 11:54:38 +02:00
Atgeirr Flø Rasmussen
c6d31376b5
Use a dummy Communication object for the serial case.
2019-08-08 09:27:14 +02:00
Joakim Hove
95f2d82f22
Enable UDA evaluation for groups
2019-08-08 07:54:17 +02:00
Joakim Hove
63e55bfa8f
Remove use of GroupTree from opm-common
2019-08-07 21:00:53 +02:00
Atgeirr Flø Rasmussen
b9e7881878
Finalize integration of foam module.
2019-08-07 10:39:16 +02:00
Franz G. Fuchs
7fb90bff47
Use foam module.
2019-08-07 10:39:16 +02:00
Joakim Hove
2a1d42edcb
Use class Group2 from opm-common
2019-08-07 07:30:01 +02:00
Atgeirr Flø Rasmussen
0e309fc254
Merge pull request #1954 from GitPaean/wrong_thp_result
...
Not extrapolating towards negative in VFP tables
2019-08-06 10:40:17 +02:00
Joakim Hove
9f655d13bd
Calculate well potentials: check if restart file output is requestd
2019-08-05 13:48:15 +02:00
Kai Bao
a772d1ef03
not extrapolating towards negative in VFP tables
2019-07-31 09:16:44 +02:00
Bård Skaflestad
d08af810ef
Remove FILLEPS from MissingFeatures
...
Pull request OPM/opm-common#849 added support for this keyword.
2019-07-28 17:58:30 +02:00
Steinar Foss
9b01b6b478
MISSING_FEATURES: added keywords ALPOLADS, ALSURFADM ALSURFST.
2019-07-26 18:07:52 +02:00
Steinar Foss
546dd676ad
MISSING_FEATURES: added keywords beginning w/ a.
2019-07-26 17:26:29 +02:00
Steinar Foss
72a005e8b9
MISSING_FEATURES: added ACTIONG.
2019-07-26 12:41:35 +02:00
Arne Morten Kvarving
b464896cc8
quell shadowing warnings
2019-07-10 10:08:39 +02:00
Arne Morten Kvarving
4d893c35e8
changed: remove unused method BlackoilWellModel::extractLegacyPressure_
2019-07-08 11:23:55 +02:00
Joakim Hove
c1574a23d0
Merge pull request #1937 from joakim-hove/group2
...
Header file Group.hpp moved to Group/Group.hpp
2019-07-06 07:30:09 +02:00
Kai Bao
450f87551e
adding GOR checking for WECON
2019-07-05 14:57:16 +02:00
Atgeirr Flø Rasmussen
70683b662b
Merge pull request #1933 from GitPaean/refactoring_wtest_further
...
refactoring the ration economic limit checking
2019-07-05 14:44:52 +02:00
Kai Bao
30e5a20f86
WELOPEN and WCON* interacting with WTEST and WECON
...
WELOPEN and WCON* can open well closed due to various reasons, physical
or economic.
If a well is shut with WELOPEN and WCON*, we do not try to re-open it
through WTEST
2019-07-05 08:50:58 +02:00
Joakim Hove
fd276843f2
Header file Group.hpp moved to Group/Group.hpp
2019-07-05 07:29:26 +02:00
Kai Bao
cbbd75164e
refactoring the ration economic limit checking
2019-07-02 12:44:56 +02:00
Joakim Hove
a5eaf914e2
Fix error message for COMPORD partially support keyword
2019-07-02 06:10:50 +02:00
Kai Bao
327cf30c31
improving the WTEST results by initializing the explicit quantities
2019-07-01 12:39:09 +02:00
Bård Skaflestad
273e6a4dbc
Merge pull request #1924 from akva2/suppress_no_mpi
...
suppress some unused variables warnings without mpi
2019-06-29 16:06:25 +02:00
Arne Morten Kvarving
4dbf2428f7
suppress some unused variables warnings without mpi
2019-06-28 14:20:51 +02:00
Kai Bao
dfe22cb1a4
Merge pull request #1901 from totto82/fixMSWThrow
...
Make sure rvmax and rsmax is non-negtive in the getSurfaceVolume for MSW
2019-06-27 15:41:45 +02:00
Tor Harald Sandve
e2420a4361
Merge pull request #1916 from andlaus/abort_on_unknown_parameters
...
mebos, flow: adapt to the eWoms changes in handling unknown parameters
2019-06-27 14:59:35 +02:00
Andreas Lauser
2a2b183679
add comments to describe flag arguments
2019-06-27 14:27:18 +02:00
Tor Harald Sandve
fd26b61599
Merge pull request #1907 from andlaus/improve_time_integration
...
Improve time integration
2019-06-27 14:08:07 +02:00
Andreas Lauser
1bbf18d7c8
mebos, flow: adapt to the eWoms changes in handling unknown parameters
...
for `flow`, there's no change compared to the current behavior, `ebos`
and its variants will complain when it encounters unused parameters.
2019-06-27 11:51:28 +02:00
Bård Skaflestad
a98caf1d2a
Format Specifier '%p' Requires Pointers to Void
...
While here, also print both 'ctrls1' and 'ctrls2' instead of
printing 'ctrls2' twice.
2019-06-26 14:39:14 +02:00
Atgeirr Flø Rasmussen
766afa4602
Merge pull request #1917 from GitPaean/fixing_warnings_
...
more fixing for the tests
2019-06-26 14:35:00 +02:00
Bård Skaflestad
402320267a
Merge pull request #1912 from akva2/janitoring
...
Some janitoring
2019-06-26 14:04:03 +02:00
Kai Bao
c2d472cd96
considering FOAM in the switch
2019-06-26 13:21:03 +02:00
Kai Bao
9a2fcdbfd5
fixing warnings in other folder under opm-simulators
2019-06-26 10:48:41 +02:00
Kai Bao
53b15527c2
fixing warnings under simulator/wells
2019-06-26 09:52:38 +02:00
Atgeirr Flø Rasmussen
aa06942695
Merge pull request #1911 from GitPaean/refactoring_wtest_for_wellcut_completions_continue
...
adapting to the upstream change
2019-06-26 09:34:19 +02:00
Kai Bao
1d5d883e99
adapting to the upstream change
2019-06-25 22:13:34 +02:00
Andreas Lauser
c2aebbb5da
EclProblem: use the generic time integration mechanism
...
i.e., the EclProblem does no longer need to implement the
`timeIntegration()` method itself. since `flow` does not use this code
path, it is unaffected.
2019-06-25 12:39:00 +02:00
Atgeirr Flø Rasmussen
bc07b688c5
Fix typo, indentation and return in unknown-parameter situation.
2019-06-25 10:10:58 +02:00
Atgeirr Flø Rasmussen
43503cf7c6
Merge pull request #1904 from blattms/abort-with-notification
...
Notify user that we are aborting because of unused keywords.
2019-06-25 09:45:27 +02:00
Arne Morten Kvarving
4aec900699
reduce scope of variables
...
quells sca warnings
2019-06-25 09:29:07 +02:00
Arne Morten Kvarving
a21b81d5d9
fixed: check pointers before dereference
...
quells a sca warning
2019-06-25 09:28:51 +02:00
Arne Morten Kvarving
c826a709b1
fixed: reassignment before use of value
...
quells a sca warning
2019-06-25 09:27:26 +02:00
Arne Morten Kvarving
66394c870a
fixed: check pointer before dereference
...
quells a sca warning
2019-06-25 09:26:41 +02:00
Kai Bao
e15a8f62e8
considering not OPEN connection when updateCompletions
...
in WellInterface.
2019-06-24 21:20:37 +02:00
Kai Bao
e0bd33db43
using template instead of pointer to function
...
for functions checkMaxRatioLimitWell and checkMaxRatioLimitCompletions
2019-06-24 14:03:20 +02:00
Kai Bao
b27a646b98
adding function checkMaxRatioLimitCompletions in WellInterface
...
and use it in checkMaxWaterCutLimit()
2019-06-21 14:11:12 +02:00
Kai Bao
7bb06e1c3c
adding function checkMaxRatioLimitWell to WellInterface
...
and use it in function checkMaxWaterCutLimit
2019-06-21 14:11:12 +02:00
Kai Bao
01c9935b02
fixing the function checkMaxWaterCutLimit
...
when looking for the worst offending completion
2019-06-21 14:11:12 +02:00
Kai Bao
8be28e8448
adding function initCompletions() to WellInterface
2019-06-21 14:11:12 +02:00
Markus Blatt
35ad7a60e2
Notify user that we are aborting because of unused keywords.
2019-06-21 13:11:21 +02:00
Atgeirr Flø Rasmussen
a598734e71
Merge pull request #1890 from akva2/janitoring
...
remove unused variables
2019-06-21 08:33:03 +02:00
Tor Harald Sandve
337ad8a046
Make sure rvmax and rsmax is non-negtive in the getSurfaceVoluem for MSW
...
Negative values can happen if the pressure is outside the table range
2019-06-21 08:15:30 +02:00
Atgeirr Flø Rasmussen
5749a7150c
Move files out of opm/core/simulator.
2019-06-20 11:00:52 +02:00
Atgeirr Flø Rasmussen
fa016a6008
Moved all remaining files out of opm/autodiff.
2019-06-20 11:00:51 +02:00
Atgeirr Flø Rasmussen
a33cfbf0bc
Moved Flow-related classes and files to opm/simulators/flow.
2019-06-20 11:00:51 +02:00
Andreas Thune
c4e0bc2385
Moving findOverlapRowsAndColumns() to a separate file.
2019-06-20 11:00:51 +02:00
Kai Bao
1593d431ce
Merge pull request #1897 from alfbr/well-logging
...
Moved well test messages from debug to log and prt
2019-06-20 10:47:04 +02:00
Atgeirr Flø Rasmussen
841f92afc7
Merge pull request #1896 from alfbr/time-reports
...
Adding time and date to time step report
2019-06-20 10:31:48 +02:00
Alf Birger Rustad
671b2d9a47
Moved well test messages from debug to log and prt
2019-06-20 09:57:24 +02:00
Kai Bao
f4efd464f4
Merge pull request #1883 from totto82/fix_inj
...
Upwinding for MSW
2019-06-19 12:50:16 +02:00
Arne Morten Kvarving
34bcccef9c
remove unused variables
...
quells warnings
2019-06-19 11:59:43 +02:00
Tor Harald Sandve
a7f718a368
Some clean-up adressing PR comments
2019-06-19 09:13:38 +02:00
Alf Birger Rustad
d8b4bbb0be
Adding time and date to time step report
2019-06-18 14:01:08 +02:00
Arne Morten Kvarving
181d3cea6b
fixed: build with dune 2.6 without MPI
2019-06-18 13:39:13 +02:00
Tor Harald Sandve
5c7cfd8c21
fix scaling of gas injector
2019-06-17 08:40:44 +02:00
Tor Harald Sandve
22af6e563c
fix upwinding for injector
2019-06-17 08:40:44 +02:00
Tor Harald Sandve
c39cec55fe
fix control eq inj
2019-06-17 08:40:44 +02:00
Joakim Hove
7f1970af3c
Use the shared SummaryState instance when initializing well rates
2019-06-17 07:49:55 +02:00
Kai Bao
ab839896b6
using createConstantZero instead of createBlank
...
the content for createBlank is not initialized, which causes undefined
behavoir.
2019-06-13 15:05:12 +02:00
Kai Bao
4c105d7672
copying invertMatrix for DynamicMatrix
...
the reason is to make sure for blackoil cases, the same algorithm will
be used to invert the D matrix for the well model. As a result, it will
reduce the burden to test the PR.
Whether we will keep this algorithm for 4 X 4 matrix will be addressed
as a separate issue.
2019-06-13 14:49:04 +02:00
Kai Bao
310741a54f
fixing a small bug related to EvalWell
2019-06-13 14:49:04 +02:00
Kai Bao
4449f0c172
adding updateConnectionRatePolyMW to StandardWell
2019-06-13 14:49:04 +02:00
Kai Bao
2256395957
adding updateExtraPrimaryVariables to StandardWell
2019-06-13 14:49:04 +02:00
Kai Bao
94057a53f9
adding checkConvergenceExtraEqs to StandardWell
2019-06-13 14:49:04 +02:00
Kai Bao
4f7b899290
fixing the compilation problem due to rebasing
...
and also some small cleaning up
2019-06-13 14:49:04 +02:00
Kai Bao
3dcec6a436
removing StandardWellV
2019-06-13 14:49:04 +02:00
Kai Bao
33de77e595
incorporate the staticSize template parameter for DynamicEvaluation
2019-06-13 14:49:04 +02:00
Kai Bao
ad0e294e52
using StandardWellV as the default StandardWell model
2019-06-13 14:49:04 +02:00
Markus Blatt
2f28bb3758
Merge pull request #1878 from atgeirr/flexible-solver-revision
...
Small fixes for the FlexibleSolver system.
2019-06-13 11:21:54 +02:00
Atgeirr Flø Rasmussen
078678206a
Changes to support latest Dune version.
2019-06-12 10:40:55 +02:00
Joakim Hove
8eea015870
Merge pull request #1874 from joakim-hove/summary-eval
...
Call Summary::eval() and ::add_timestep separately
2019-06-11 21:31:54 +02:00
Atgeirr Flø Rasmussen
b837dd71b4
Small fixes for the FlexibleSolver system.
2019-06-11 09:55:05 +02:00
Atgeirr Flø Rasmussen
2c5ef367dd
Merge pull request #1852 from atgeirr/flexible-linear-solver
...
Flexible linear solver
2019-06-06 14:21:51 +02:00
Joakim Hove
1790910269
Call Summary::eval() and ::add_timestep separately
2019-06-06 12:14:46 +02:00
Atgeirr Flø Rasmussen
d5c3c93c7d
Use overloading instead of template specialization.
...
This seems to be necessary for older compilers.
2019-06-06 10:36:17 +02:00
Atgeirr Flø Rasmussen
72ae444566
Fixes for Dune < 2.6.
...
The PreconditionerFactory requires 2.6, so this is addressed by
simply not using that code at all for Dune < 2.6. No FlexibleSolver
etc.
2019-06-06 09:10:43 +02:00
Atgeirr Flø Rasmussen
8ae671eb86
Merge pull request #1871 from totto82/fix_segfault
...
fix segfault when no well report is registred
2019-06-06 08:57:56 +02:00
Atgeirr Flø Rasmussen
38a61fa0c0
Add <config.h> include, clean up comments.
2019-06-05 15:57:45 +02:00
Atgeirr Flø Rasmussen
c21fd6f26d
Add and use PreconditionerFactory class.
...
This replaces the makePreconditoner() function. The main advantage
is that it is extensible, making it easy to for example add new
preconditioners to the factory at runtime. It supports both parallel
and serial preconditioners.
2019-06-05 15:12:52 +02:00
Atgeirr Flø Rasmussen
d44b974dc8
Bugfix: ensure the matrix passed to parallel preconditioner is ok.
...
Done with the makeOverlapRowsInvalid() approach.
2019-06-05 15:12:33 +02:00
Bård Skaflestad
123b578bdd
Prune Additional Supported Keywords
...
Support for
AQUCT, AQUTAB, COMPLUMP
was introduced quite some time ago.
2019-06-05 13:41:31 +02:00
Bård Skaflestad
0760442ac1
Remove FIPNUM From List of Unsupported Keywords
...
We've supported the keyword--both in the deck reader (parser) and in
the simulator--for a long time.
2019-06-05 12:42:26 +02:00
Atgeirr Flø Rasmussen
d42c5426b2
Merge pull request #1872 from totto82/eval_friction2
...
Make calculateFrictionFactor evalution + critical bugfix in MSW friction model
2019-06-05 11:19:28 +02:00
Joakim Hove
47f4e750d2
Merge pull request #1865 from joakim-hove/use-shared-summarystate
...
Use shared summarystate
2019-06-04 09:49:56 +02:00
Atgeirr Flø Rasmussen
08cec09293
Merge pull request #1845 from blattms/abort-on-unknown-keywords-v2
...
Abort if flow is run with unknown keywords.
2019-06-03 15:42:02 +02:00
Atgeirr Flø Rasmussen
84a8143bad
Improved parameter hierarchy and const-correctness.
2019-06-03 11:42:30 +02:00
Atgeirr Flø Rasmussen
a76b19d95a
Make FlexibleSolver feature-complete.
...
In particular:
- Add parallel solvers and preconditioners.
- Add the update() interface to preconditioners, and use it with CPR.
2019-06-03 11:42:30 +02:00
Halvor Møll Nilsen
ec498086a6
Add flexible solver and preconditioner infrastructure.
...
Also use it in flow_blackoil_dunecpr.cpp. Adds new command-line parameter,
--linear-solver-configuration-json-file, to read linear solver config from
JSON-format file at runtime.
2019-06-03 11:42:30 +02:00
Tor Harald Sandve
0d28dfff17
fix cutoff value bug in haalandFormula
2019-06-03 11:28:15 +02:00
Tor Harald Sandve
779dbd39dd
make calculateFrictionFactor Evaluation
2019-06-03 11:24:56 +02:00
Tor Harald Sandve
8f60a5f9fc
Merge pull request #1841 from andlaus/remove_isSubstep
...
EclProblem: remove the isSubstep parameter from writeOutput()
2019-06-03 10:41:12 +02:00
Tor Harald Sandve
4c4921c6b2
fix segfault when no well report is registred
2019-06-03 09:22:04 +02:00
Atgeirr Flø Rasmussen
2cc22f99cb
Merge pull request #1868 from andlaus/sparse_matrix_adapter_from_linear_solver
...
set the SparseMatrixAdapter property in the linear solver type tag
2019-05-31 20:40:10 +02:00
Kai Bao
8fd1a8b7da
assert pressure derivative in getSegmentRateUpwinding is zero
2019-05-31 12:51:50 +02:00
Kai Bao
5aacda1880
adding some comments about getSegmentRateUpwinding()
2019-05-31 11:22:35 +02:00
Andreas Lauser
e36ae88ab9
set the SparseMatrixAdapter property in the linear solver type tag
...
this is necessary because after OPM/ewoms#513 , the
`SparseMatrixAdapter` property will be "owned" by the linear solver
and because ISTLSolverEbos does not build on top of
`Ewoms::ParallelBaseBackend`.
2019-05-31 10:55:13 +02:00
Kai Bao
c5983eeec5
not trying to update RESV target for prediction producers
2019-05-30 11:58:23 +02:00
Andreas Lauser
80238d9940
Merge pull request #1863 from totto82/fix_init
...
Make it possible to restart without computing initial conditions
2019-05-29 12:23:40 +02:00
Atgeirr Flø Rasmussen
ff2965e346
Merge pull request #1862 from GitPaean/fixing_multisegment_wells_cleaning_up_restarting_test_1
...
adding function updateUpwindingSegments() for MSW
2019-05-29 10:09:08 +02:00
Joakim Hove
b129a10362
Use shared SummaryState in BlackoilWellModel
2019-05-29 07:52:17 +02:00
Joakim Hove
a0aa7fcc2b
Use shared SummaryState when instantiating WellsManager
2019-05-29 07:44:23 +02:00
Joakim Hove
c6af5f11b6
Fixup: Use ProductionControls and InjectionControls
2019-05-29 07:12:15 +02:00
Joakim Hove
dc4f57f7eb
Merge pull request #1831 from joakim-hove/use-wells2-controls
...
Use wells2 controls
2019-05-29 06:46:58 +02:00
Tor Harald Sandve
ae78cb86df
Make it possible to restart without computing initial conditions
2019-05-28 13:04:28 +02:00
Kai Bao
236e4d7e33
adding function updateUpwindingSegments() for MSW
...
to update the upwinding segment for each segment based on flow direction
2019-05-28 12:35:59 +02:00
Tor Harald Sandve
613473082f
Address PR comments
2019-05-24 16:45:27 +02:00
Joakim Hove
511645d12c
Use InjectionControls and ProductionControls data classes
2019-05-23 16:27:17 +02:00
Tor Harald Sandve
821794b0ad
Add well potential output to MSW
...
The common part is moved to the well interface class
This commit also adds iterations to the standardWells
well potential calculations to improve the results
2019-05-23 15:32:48 +02:00
Joakim Hove
b6840db604
Use new well implementation Well2 from opm-common
2019-05-22 21:47:45 +02:00
Joakim Hove
a3361794cf
Merge pull request #1853 from joakim-hove/unsupported
...
Add keywords to the list of unsupported keywords
2019-05-22 11:53:06 +02:00
Atgeirr Flø Rasmussen
025b828e80
Merge pull request #1855 from totto82/fix_throw
...
throw runtime_error instead of logic_error
2019-05-22 11:39:09 +02:00
Tor Harald Sandve
a33c967ad0
throw runtime_error instead of logical_error
2019-05-22 10:08:55 +02:00
Joakim Hove
4a4a8bb3e7
Add keywords to the list of unsupported keywords
2019-05-22 06:54:05 +02:00
Kai Bao
080e840f2f
using tolerance_wells_ for BHP control tolerance for MSW
2019-05-16 12:20:35 +02:00
Kai Bao
28f0274fb5
fixing bugs spotted in the review comments
2019-05-15 16:28:18 +02:00
Kai Bao
4593453d10
adding function checkConvergenceControlEq to refactor getWellConvergence
...
only functional change is that rate control or BHP control has different
tolerance for MSW now.
2019-05-15 16:28:18 +02:00
Markus Blatt
9b0e86a172
Abort if flow is run with unknown keywords.
...
This change will print the encountered unknown keywords to std::cerr
(albeit in the format ThisKeyword and not --this-keyword) and abort
before running the simulator.
2019-05-15 10:03:07 +02:00
Andreas Lauser
8657f18075
EclProblem: remove the isSubstep parameter from writeOutput()
...
Now that the book keeping for time stepping is correct even in `flow`,
this parameter has become redundant.
2019-05-13 13:05:39 +02:00
Atgeirr Flø Rasmussen
8197bcfc54
Merge pull request #1832 from GitPaean/upding_well_control_inner_msw
...
updating well control during iterateWellEquations in MSW
2019-05-13 12:47:10 +02:00
Tor Harald Sandve
6887f3bc73
Merge pull request #1821 from andlaus/tickling_the_dragon
...
flow: provide the correct episode size
2019-05-13 12:40:35 +02:00
Atgeirr Flø Rasmussen
c2db2042ea
Merge pull request #1825 from dr-robertk/PR/fix-istl-shared-ptr
...
Adjust to shared_ptr change in dune-istl >= 2.7.
2019-05-13 09:01:29 +02:00
Kai Bao
ba106602e1
moving the output of the Report step
information earlier
...
a lot of things have happened before the printing out the `Report step`
information. When some error messages get thrown, it is easy to make
people confused to look a the wrong report step.
2019-05-11 14:13:26 +02:00
Kai Bao
8c96aeebbe
updating well control during iterateWellEquations in MSW
2019-05-10 14:56:20 +02:00
Andreas Lauser
9b0be0f8ad
flow: provide the correct episode size
2019-05-09 13:28:56 +02:00
Robert Kloefkorn
6c77fae891
[cleanup][istl] Adjust to shared_ptr change in dune-istl >= 2.7.
2019-05-09 11:28:52 +02:00
Atgeirr Flø Rasmussen
c17adf788f
Moved files to opm/simulators/ subdirs.
2019-05-08 12:58:19 +02:00
Tor Harald Sandve
890d34a9e1
Add support for water induced compaction using
...
ROCKCOMP, ROCK2D, ROCK2DTR, ROCKWNOD and OVERBURD
2019-05-07 13:17:29 +02:00
Andreas Lauser
d329547463
EclProblem: clean up the time management code
...
- when an episode/report step is over, the next is started by endEpisode()
- the problem does not deal with updating the simulation time anymore
- rename `episodeIdx` in to `reportStepIdx` the 'EclWriter' because
this variable is -- and always has been -- the report step number
used by some parts of `opm-output`'s ECL writing code (the report
step number is equivalent to the episode index plus 1). IMO, the
output and parser code should be made more consistent in regard of
whether it expects 0-based or 1-based indices, but this is a story
for another day.
2019-05-03 14:07:15 +02:00
Andreas Lauser
b9995f697f
well models: remove superfluous arguments
...
concretely this means the `eclState` and `schedule` arguments to the
`init()` and `beginTimeStep()` methods.
2019-05-03 14:07:15 +02:00
Bård Skaflestad
4d76ea5000
Merge pull request #1809 from atgeirr/log-messages-only-once
...
Clear DeferredLogger's message container after logging.
2019-04-30 15:47:40 +02:00
Atgeirr Flø Rasmussen
32572ac2ab
Clear DeferredLogger's message container after logging.
...
This keeps from logging the same messages again. Also add clearMessages()
method, which is useful to clear the local container after gathering into
a global container (which leaves the local containers untouched).
2019-04-30 12:24:31 +02:00
Kai Bao
6c2a806e61
correcting an assertion mistake introduced in PR#1803
2019-04-30 10:25:17 +02:00
Atgeirr Flø Rasmussen
9bbb0ef679
Merge pull request #1807 from atgeirr/enable-msw-by-default
...
Enable multi-segment wells by default.
2019-04-28 23:13:16 +02:00
Atgeirr Flø Rasmussen
d2f8f07337
Enable multi-segment wells by default.
2019-04-27 07:16:36 +02:00
Bård Skaflestad
75e8508e3b
Merge pull request #1803 from blattms/remove-warnings
...
Remove warnings experienced with g++-8
2019-04-26 17:41:55 +02:00
Tor Harald Sandve
8a4117441c
Make sure that the convergece report is stored before throw
2019-04-25 10:33:39 +02:00
Markus Blatt
b847f36ec8
Removes warning about unused variable.
2019-04-25 10:00:59 +02:00
Markus Blatt
66ef71e67a
Removes warning about ignored return type qualifier on function.
2019-04-25 10:00:59 +02:00
Markus Blatt
3aa60433ad
Removes unsigned-signed integer comparison warnings.
2019-04-25 10:00:59 +02:00
Markus Blatt
48c3802bf3
Removes unused function parameter warnings.
2019-04-25 10:00:59 +02:00
Joakim Hove
ed91356a90
Add 'FLUXTYPE' to list of not supported keywords
2019-04-19 11:02:18 +02:00
Joakim Hove
58f541cd93
Add missing "," in set literal
2019-04-17 06:43:08 +02:00
Kai Bao
8e5bfa0c67
Merge pull request #1751 from GitPaean/fixing_multisegment_wells_cleaning_up
...
various improvements/corrections to the multisegment well model
2019-04-12 14:28:12 +02:00
Kai Bao
5a34922d11
silencing some compilation warnings.
2019-04-12 12:27:02 +02:00
Kai Bao
88fb158067
upwinding segment for top segment is itself
2019-04-12 11:25:19 +02:00
Kai Bao
1d7089fca8
some minor cleaning up
2019-04-12 10:43:30 +02:00
Kai Bao
af9a500b98
setting UseMultisegmentWell to be false by default
2019-04-12 10:30:50 +02:00
Kai Bao
683c097ecd
adding residual of control equation to getWellResiduals() for MSW
...
then it is consistent that when it is converged, we do not need to enter
this function anymore.
2019-04-12 10:30:03 +02:00
Atgeirr Flø Rasmussen
d03465b00d
Merge pull request #1783 from GitPaean/not_throw_for_potential_failure
...
not throw for failure when failing in calculating well potentials
2019-04-12 09:45:34 +02:00
Markus Blatt
a270994ad0
Support compiling Cpr without any MPI support.
...
There is a problem compiling upstream
Hierarchy::recalculateGalerkin() without MPI. Therefore we
reimplement that method in our AMG version. Fixes will travel
upstream.
Apart from that we made sure that all types have a meaning even
if there is no MPI found and that we at least have redistribute method
to call even if using SequentialInformation. In that case the method
does nothing but prevents compilation errors complaining about missing
parallel functionality.
2019-04-11 18:43:07 +02:00
Markus Blatt
26e1a9a94d
Support DUNE 2.4 with CPR.
...
This version does not support the DirectsolverSelector struct and we
therefore implemented a fallback.
2019-04-11 14:15:04 +02:00
Markus Blatt
81b7af1d8a
Support DUNE 2.5 with CPR reusing hierarchy
2019-04-10 15:01:35 +02:00
Markus Blatt
29e893dc8e
Make sure the the OwnerOverlopCommunication object stays alive.
...
As the AMG hierarchy is kept and uses the initial OwnerOverlopCommunication object
we need to make sure that this object lives as long as the hierarchy. We assure
this by storing a shared_ptr to it in ISTLSolverEbosCpr and reuse it to construct
the WellModelMatrixAdapter.
2019-04-10 14:40:46 +02:00
Markus Blatt
8057c2ba83
Use a shared pointer to the OwnerOverlapCommunication in WellModelMatrixAdapter.
...
Previously the OwnerOverlapCommunication object was owned by the adapter as a
unique_ptr was used. The change to shared_ptr makes it possible to to extract
it and reuse even if OwnerOverlapCommunication is thrown away.
2019-04-10 14:40:46 +02:00
Markus Blatt
6538b59d9e
Added parallel CPR that reuses the matrix hierarchy.
...
Currently this just compiles but still segfaults in parallel.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
07e495c9da
More minor cleanup.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
7664d27849
Clean up formatting and get most types from superclass.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
be86b90bac
Make typed protected rather than private, enabling inheritance.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
2cf990e404
Do not store copy of weights inside BlackoilAmgCpr class.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
416cc93f96
Remove code that is no longer needed.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
0e5a5c5266
Minor cleanup.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
3d9c776384
Disable most of the file, as the base version is sufficient.
...
All features have been added to BlackoilAmg.hpp.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
6d18c2849d
Allow updating the AMG preconditioner.
...
This adds the significant modifications from the BlackoilAmgCpr
experimental class to BlackoilAmg.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
032701ffc9
Silence unused argument warnings.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
0e1db0c6bd
Reindent, remove unused function (after refactoring).
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
5d68a308b5
Fix memory bug by refactoring.
...
Moving out of a matrix in the same function argument list as the matrix is passed
to another function is wrong. Simplified by avoiding the unwieldy tuple.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
c92d84432c
Replace tabs with spaces.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
5f4f8b71a8
Silence override and member order warnings.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
29837be2e3
Changes to minimize differences to original istl versions.
...
Also added note pointing to original istl files.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
13c6463f89
Refactor to be closer to the original amg.hh.
...
Should minimize the diff when comparing.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
b39815edb5
Minor formatting and removing unused code.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
28dfef1ecf
Compile fix: do not use undefined member.
2019-04-10 14:40:46 +02:00
hnil
4f1603407d
Added timing of prepare call for linear solvers
2019-04-10 14:40:46 +02:00
hnil
ed24b3fcad
changed code to use direct solver on coarses scale for amg. This should runtime stettings for this..
2019-04-10 14:40:46 +02:00
hnil
f05a9fdb25
Version of cpr amg which can reuse setup and also change smoothers of fine and coarse system by changing tags
2019-04-10 14:40:46 +02:00
Kai Bao
1faf4de904
not throw for failure when failing in calculating well potentials
...
it is just a temporary approach to recover the prediction case. In the
case, there is no group control, while there is some requirements of
well potential output
2019-04-09 14:28:44 +02:00
Kai Bao
e73fc4ebe4
first version of using upwinding to handle mass balance for MSW
...
some details to come to make it complete.
We are not handling it for injectors and also we are not considering the
upwinding when handle the frictional pressure loss and acceleration
pressure loss.
2019-04-08 14:23:21 +02:00
Kai Bao
2c69556fad
correcting of the sign when calculating perforation pressure
...
the sign of the perforation and cell pressure difference was wrong.
2019-04-08 14:23:05 +02:00
Kai Bao
dadb31f093
fixing some mistakes from rebasing
2019-04-07 14:55:08 +02:00
Kai Bao
e5090a26fb
setting the simulation parameters
2019-04-07 14:55:08 +02:00
Kai Bao
49a8c7bfd1
changing the sign of the mass balance equations for ms wells
...
following the conventions with StandardWell
2019-04-07 14:55:08 +02:00
Kai Bao
23d2097d44
various improvements to the inner iteration of ms wells
2019-04-07 14:54:05 +02:00
Kai Bao
031c19fc78
fixing mistakes due to rebasing.
2019-04-07 14:54:05 +02:00
Kai Bao
e9c0bdba06
using B_avg for the inner iteration for multisegment wells
2019-04-07 14:54:05 +02:00
Kai Bao
1df65913d7
updating the primary variables before calculating accumulation term
2019-04-07 14:54:05 +02:00
Kai Bao
79e51ab724
handling the situation that not all the connections are open
...
Then Wells struct and well from parser hold different numbers of
connections.
The current approach is a temporary solution. The final approach should
be done through parser side.
Things can be difficult is because that connections can be removed due
to multiple different causes after parsing. How to keep information
always updated is not trivial.
2019-04-07 14:53:38 +02:00
Kai Bao
c78a59eb1f
considering the pressure dependence of the segment volume
...
segment volume is fixed, while duo to composition and pressure change,
within the fixed segment volume, different amounts of fluids can be
contained.
2019-04-07 14:53:38 +02:00
Kai Bao
972fed602e
using a small value drawdown for connection
...
when crossflow is banned from the well, while the crossflow is happening
for this connection for mutlisegment well.
2019-04-07 14:53:38 +02:00
Kai Bao
04c35c8916
UseMultisegmentWell is defaulted to be true
...
to make the testing of the multisegment well model easier.
2019-04-07 14:52:18 +02:00
Kai Bao
f8767e09ec
cleaning up and fixing the compilation error from rebasing
2019-04-07 14:52:18 +02:00
Kai Bao
9d83affb1b
first version of restarting for multisegment well
2019-04-07 14:52:18 +02:00
Kai Bao
0d99686e97
fixing the segment treatment in the init of WellStateFullyImplicitBlackoil
2019-04-07 14:52:18 +02:00
Bård Skaflestad
2932531572
Merge pull request #1782 from GitPaean/upadting_perforation_solution_msw
...
updating perforation pressure and rates for MSW well
2019-04-05 16:41:43 +02:00
Kai Bao
e2b8edd968
updating perforation pressure and rates for MSW well
2019-04-05 10:38:01 +02:00
Kai Bao
b62dc0b5f2
addressing review comments
2019-04-04 16:22:19 +02:00
Kai Bao
ca69e2334a
recovering well restart data for multisegment well
...
When multisegment wells are involved for RESTART, based on the recovered
segment-related quantities as Opm::data::Segment objects, the segment
phase rates and segment pressure are recovered as part of the
WellStateFullyImplicitBlackoil.
2019-04-04 16:22:19 +02:00
Bård Skaflestad
7523ffe15f
Construct Segment-Related Structures in initLegacy()
...
Forgotten in previous commit. This restores our ability to run
flow-legacy with the new WellStateFullyImplicitBlackoil::report().
Thanks to Kai Bao for alerting me to the issue.
2019-04-04 16:22:19 +02:00
Bård Skaflestad
55e452c605
Well State FIBO: Report() Segment Results by Seg-Numbers
...
This commit adds a new data member, seg_number_, that maps a linear
segment index (0 .. #segments - 1) to the appropriate segment number
(segment ID). This ensures that member function report() is able to
produce segment results in terms of user-assigned segment numbers
rather than linear indices internal to the simulator and its state
variables. This, in turn, decouples the well state object from the
output (summary/restart) code and makes the restart facility more
self contained.
Rewrite the unit test for WellStateFullyImplicitBlackoil to account
for the new indexing scheme when assigning the synthetic segment
results.
While here, also abide by the file's naming convention for data
members and locals.
2019-04-04 16:22:19 +02:00
Bård Skaflestad
e958ee1139
WellState FIBO: Initialize 'nseg_' in init()
...
Needed to guarantee that numSegments(wellID) returns sensible values
for wellID = numWells()-1 in the case of no multi-segment wells.
2019-04-04 16:22:19 +02:00
Bård Skaflestad
2418df701f
WellState FIBO: Return Segment Vectors from report()
...
This commit extends class WellStateFullyImplictBlackoil to report
segment-related quantities as Opm::data::Segment objects (included
in Opm::data::WellRates objects). All wells have at least a top
segment in the context of WellState FIBO, so there is a meaningful
value to report for each well.
We put the extraction of segment-related quantities into a new
helper function
WellStateFullyImplicitBlackoil::reportSegmentResults()
to avoid cluttering up the body of report() more than absolutely
needed.
The primary use-case for this is assigning appropriate values to
items 8 through 11 of restart vector RSEG. In turn, this will
enable restoring these quantities from a restart file.
2019-04-04 16:22:19 +02:00
Bård Skaflestad
519e6ad174
Make WellStateFIBO Header Self Contained
...
In particular, include Schedule.hpp since commit 222241b
made the
init() member function depend on Schedule but failed to add the
requisite header.
2019-04-04 16:22:19 +02:00