Arne Morten Kvarving
ed88fa583c
add missing include
2024-02-06 10:41:36 +01:00
Bård Skaflestad
97bef564da
Merge pull request #5152 from akva2/simulatorfullyimplicit_janitoring
...
SimulatorFullyImplicitBlackoil.hpp: Some janitoring
2024-02-06 10:08:05 +01:00
Tor Harald Sandve
2ed3f924f2
Ignore Coordsys and print a warning
2024-02-06 09:29:10 +01:00
Arne Morten Kvarving
a30ed77094
quell rocsparse warnings
2024-02-02 22:50:40 +01:00
Arne Morten Kvarving
d25d4432eb
EclInterRegFlows: rename to InterRegFlows
2024-02-02 12:53:11 +01:00
Arne Morten Kvarving
e0c114c1d2
SimulatorFullyImplicitBlackoil: replace typedef with using
2024-02-02 10:30:57 +01:00
Arne Morten Kvarving
c82c3753f2
SimulatorFullyImplicitBlackoil.hpp: header cleanup
2024-02-02 10:30:57 +01:00
Bård Skaflestad
f6c5397af2
Merge pull request #5139 from GitPaean/shutwell_noxflow_zerorate
...
shutting wells zero rate constraint and not allowing crossflow
2024-02-02 09:59:05 +01:00
Bård Skaflestad
0f5c638947
Merge pull request #5148 from akva2/simulatorfullyimplicit_drop_ebos
...
SimulatorFullyImplicitBlackoilEbos: rename to SimulatorFullyImplicitBlackoil
2024-02-02 09:49:42 +01:00
Arne Morten Kvarving
e741063306
SimulatorFullyImplicitBlackoilEbos: rename to SimulatorFullyImplicitBlackoil
2024-02-02 08:48:47 +01:00
Arne Morten Kvarving
cb14fff22a
rename SimulatorFullyImplicitBlackoilEbos.cpp to SimulatorReportBanners
...
and add a header
2024-02-02 08:41:35 +01:00
Arne Morten Kvarving
2d70acb8eb
remove unused method
2024-02-02 08:30:22 +01:00
Tor Harald Sandve
6afee54ec0
Merge pull request #5140 from svenn-t/fix_grat_solvent
...
Fix WCONPROD GRAT control mode with solvent
2024-02-02 08:21:39 +01:00
Kai Bao
e5e9143a2a
shutting wells zero rate constraint and not allowing crossflow
2024-02-01 23:09:53 +01:00
Bård Skaflestad
a6eb7b65a1
Merge pull request #5149 from akva2/adaptivetimestepping_drop_ebos
...
AdaptiveTimeSteppingEbos: rename to AdaptiveTimeStepping
2024-02-01 18:36:36 +01:00
Arne Morten Kvarving
cbb8cb29f5
AdaptiveTimeSteppingEbos: rename to AdaptiveTimeStepping
2024-02-01 17:57:59 +01:00
Bård Skaflestad
ba3c64443c
Merge pull request #5150 from akva2/istlsolver_drop_ebos
...
ISTLSolverEbos: rename to ISTLSolver
2024-02-01 17:43:34 +01:00
Bård Skaflestad
a6054e729f
Merge pull request #5147 from akva2/nonlinearsolver_drop_ebos
...
NonlinearSolverEbos: rename to NonlinearSolver
2024-02-01 16:49:26 +01:00
Arne Morten Kvarving
b6e47ab1e7
ISTLSolverEbos: rename to ISTLSolver
2024-02-01 15:49:40 +01:00
Arne Morten Kvarving
5bca6c2703
ISTLSolverEbosBda: rename to ISTLSolverBda
2024-02-01 15:49:40 +01:00
Arne Morten Kvarving
0898f525aa
NonlinearSolverEbos: rename to NonlinearSolver
2024-02-01 15:14:47 +01:00
Arne Morten Kvarving
d6f59c1d4b
Merge pull request #5134 from lisajulia/feature/NONNC
...
Feature/NONNC
2024-02-01 15:13:58 +01:00
Bård Skaflestad
71b383d8e7
Merge pull request #5142 from akva2/blackoilmodel_remove_ebos
...
BlackoilModel: remove Ebos from class names
2024-02-01 12:34:12 +01:00
Arne Morten Kvarving
e13c77ae95
BlackoilModelEbos: rename to BlackoilModel
2024-02-01 09:05:40 +01:00
Arne Morten Kvarving
80d32b105b
BlackoilModelEbosNldd: rename to BlackoilModelNldd
2024-02-01 09:05:40 +01:00
Arne Morten Kvarving
dd92a7446c
BlackoilModelParametersEbos: rename to BlackoilModelParameters
2024-02-01 09:05:40 +01:00
Arne Morten Kvarving
ce4f138a92
header cleanups
2024-02-01 09:04:21 +01:00
Svenn Tveit
b65f85a6c4
Add solvent rate in GRAT control mode
2024-01-31 18:18:19 +01:00
Arne Morten Kvarving
89880bfe2f
damariswriter: properly encapsulate Damaris
2024-01-30 14:19:20 +01:00
Arne Morten Kvarving
aa37225ad1
GridDataOutput: use implicit std::string constructor
2024-01-30 13:19:13 +01:00
Arne Morten Kvarving
a588d4196d
GridDataOutput: avoid stringstream member
2024-01-30 13:19:12 +01:00
Arne Morten Kvarving
54c386ae2c
GridDataOutput: add const correctness
2024-01-30 13:19:00 +01:00
Arne Morten Kvarving
26d3802ea6
GridDataOutput: remove parantheses in return statements
2024-01-30 13:19:00 +01:00
Arne Morten Kvarving
02fbadb809
GridDataOutput: add translation unit
2024-01-30 13:18:59 +01:00
Bård Skaflestad
472199f63d
Merge pull request #5132 from blattms/fix-shared-linking
...
Fix linking errors when using shared libraries.
2024-01-30 11:02:51 +01:00
Bård Skaflestad
008e1c93c3
Merge pull request #5133 from akva2/damarisvar_cleanup
...
DamarisVar: Some cleanup
2024-01-30 11:01:07 +01:00
Bård Skaflestad
7a4a060594
Merge pull request #5130 from akva2/hdf5serializer_move
...
HDF5Serializer: move out of ebos folder
2024-01-30 10:50:22 +01:00
Arne Morten Kvarving
498f1b6b50
DamarisVar: remove unused base class DamarisVarBase
...
no reason to pay the price of virtual dispatch when nothing
use the base class
2024-01-30 09:58:37 +01:00
Arne Morten Kvarving
bee1555d25
DamarisVar::TestType: simplify using a lambda
2024-01-30 09:54:31 +01:00
Arne Morten Kvarving
bdc0790eb8
DamarisVar::returnXMLForVariable: simplify using fmt
2024-01-30 09:36:31 +01:00
Arne Morten Kvarving
033943e42e
DamarisXMLAttributes::ReturnXMLForVariable
...
simplify using lambda and for_each
2024-01-30 09:34:00 +01:00
Arne Morten Kvarving
cfd5af89b0
DamarisVar: avoid stringstream member
2024-01-30 09:25:18 +01:00
Arne Morten Kvarving
3f842cd67f
DamarisVar: add translation unit
2024-01-30 09:02:20 +01:00
Arne Morten Kvarving
4f76bd0972
DamarisVar: make TestType private
2024-01-30 09:01:25 +01:00
Arne Morten Kvarving
125431f326
DamarisVar: remove paranthesis is return statements
...
not consistent with code style
2024-01-30 09:01:25 +01:00
Arne Morten Kvarving
aa2af11016
DamarisVar: make accessors const
2024-01-30 08:58:32 +01:00
Arne Morten Kvarving
8ad5e3a974
DamarisVar: mark virtual method overrides as such
2024-01-30 08:32:23 +01:00
Arne Morten Kvarving
3024379bed
DamarisVar: remove void in parameter lists
...
not consistent with the code style
2024-01-30 08:26:20 +01:00
Arne Morten Kvarving
3849febe99
DamarisVar: pass parameters by reference
2024-01-30 08:20:04 +01:00
Arne Morten Kvarving
3d1b4796fd
DamarisVar: remove empty string assignment
...
strings are properly empty initialized
2024-01-30 08:15:32 +01:00
Kai Bao
2ddba5b339
Merge pull request #5128 from steink/fix_network_convergence_issues
...
Fix network convergence issues
2024-01-30 00:17:09 +01:00
Lisa Julia Nebel
e346315fa2
Remove NONNC from the UnsopportedFlowKeywordList
2024-01-29 18:46:59 +01:00
Bård Skaflestad
d94ae5dad6
Merge pull request #5131 from akva2/damaris_janitoring
...
Damaris: avoid signed/unsigned comparison warnings
2024-01-29 17:05:18 +01:00
Markus Blatt
819842d7cf
Fix linking errors when using shared libraries.
...
We accomplish that by passing the module version as a string to the
constructors of LogOutputHelper and EclGenericOutputBlackoilModel
instead of calling moduleVersionName() in LogOutputHelper. That way
moduleVersionName is not needed by libopmsimulators anymore and
compilation works again for people requesting shared libraries via
CMake's BUILD_SHARED_LIBS variable.
2024-01-29 16:37:38 +01:00
Arne Morten Kvarving
99b4aae148
Damaris: avoid signed/unsigned comparison warnings
...
while at it use std::size_t
2024-01-29 14:34:31 +01:00
Bård Skaflestad
859db850c0
Merge pull request #5111 from lisajulia/feature/deterministic-indicesSyncer
...
Construct the matrices in the AMG hierarchy with deterministic indices.
2024-01-29 13:37:54 +01:00
Kai Bao
f0fab97bb6
Merge pull request #5124 from vkip/revert_always_open_history_wells
...
Revert always open history wells
2024-01-29 10:10:55 +01:00
Arne Morten Kvarving
800422bd17
HDF5Serializer: add translation unit
2024-01-29 10:00:48 +01:00
Arne Morten Kvarving
96a3a6d45a
changed: move hdf5serializer to opm/simulators/utils/HDF5Serializer.hpp
...
does not interact with typetag system
2024-01-29 09:42:49 +01:00
Stein Krogstad
97477ea593
avoid re-opening previously stopped wells
2024-01-26 16:24:09 +01:00
Stein Krogstad
24c4f75ecb
Use stricter tolerance when dynamic thp
2024-01-26 15:02:14 +01:00
Stein Krogstad
a9ab62e6b8
Don't set lower bound on network update
2024-01-26 14:58:06 +01:00
Lisa Julia Nebel
6dfa9b1b76
Add comment on trailing return type with decltype that is used for detecting the signature of the coarsen function of the Dune::Amg::IndicesCoarsener
2024-01-26 14:29:19 +01:00
Lisa Julia Nebel
74608147c0
Add comment on trailing return type with decltype that is used for detecting the existence of setUseFixedOrder member function
2024-01-26 14:29:15 +01:00
Lisa Julia Nebel
5b50a4801f
Construct the matrices in the AMG hierarchy (created in the twolevelmethod) with deterministic indices if possible.
...
The function 'coarsen' for the coarser level is called with the respective flag if it is defined. Then the matrices in the AMG hierarchy are constructed with deterministic indices.
If it is not defined yet, it is called without the flag and the matrices in the AMG hierarchy are constructed with non-deterministic indices.
2024-01-26 13:51:41 +01:00
Vegard Kippe
31b46b4829
Revert the choice to open history wells at every step, since this may cause some models to be stuck at very short time steps.
2024-01-26 12:05:26 +01:00
Tor Harald Sandve
de05c84b1d
Add co2 mass in place summary vectors
2024-01-26 09:15:43 +01:00
Atgeirr Flø Rasmussen
2626fbb84b
Merge pull request #5002 from multitalentloes/add_cudilu
...
Add cudilu
2024-01-25 15:43:39 +01:00
Bård Skaflestad
d2af824b27
Merge pull request #5120 from atgeirr/avoid-nldd-crash
...
Avoid illegal combination of options.
2024-01-25 15:38:36 +01:00
Tobias Meyer Andersen
4b0dd54f15
Add CUDA implementation of the DILU
...
preconditioner. Uses graph coloring to exploit
parallelism in upper and triangular solves when
computing a diagonal approximate inverse of a
sparse matrix. Supports blocksizes up to 3.
2024-01-25 14:26:38 +01:00
Lisa Julia Nebel
60b0a33bd4
Construct the matrices in the AMG hierarchy (created in the PreconditionerFactory) with deterministic indices if possible.
...
The function 'setUseFixedOrder' is called if it is defined and the matrices in the AMG hierarchy are constructed with deterministic indices.
If it is not defined yet, it is not called and the matrices in the AMG hierarchy are constructed with non-deterministic indices.
2024-01-25 11:32:09 +01:00
Bård Skaflestad
6dd043446e
Communicate Dynamic Transmissibility Multiplier to Output Layer
...
This commit captures the rock compaction transmissibility multiplier
in the 'PerfData' during the non-lienear iterations and communicates
the converged value back to the output layer through the new data
member to the data::Connection structure,
double data::Connection::compact_mult
2024-01-25 09:35:08 +01:00
Bård Skaflestad
8a8af09e7a
Defer More Static D-Factor Calculation to Connection Class
...
In particular, we don't need the porosity value anymore now that the
"getDFactor()" function takes only the component density of gas at
surface conditions, the current dynamic gas viscosity at reservoir
conditions and a Connection object.
While here, split a few long lines and make more objects 'const' for
better maintainability.
2024-01-24 18:03:09 +01:00
Atgeirr Flø Rasmussen
3c4dd1f3b7
Avoid illegal combination of options.
...
NLDD requires --matrix-add-well-contributions=true for now.
Also: minor improvement to well rank and subdomain output clutter.
2024-01-24 14:19:07 +01:00
Atgeirr Flø Rasmussen
7c2f01996a
Add cpr_trueimpesanalytic option for LinearSolver parameter.
2024-01-24 13:03:18 +01:00
Bård Skaflestad
eb9ead5577
Support at Least NTFIP Distinict Regions for Inter-Region Flow
...
This commit ensures that we have backing support for region IDs up
to and including NTFIP (TABDIMS(5), REGDIMS(1)). The existing setup
would fail (segmentation violation) in the case of a summary vector
of the form
ROFT
36 31 /
/
when the maximum FIPNUM value was 30. We nevertheless support
maximum FIPNUM values exceeding NTFIP.
We add a new optional parameter to the EclInterRegionFlowMap
constructor. The parameter allows client code to specifiy a
"minimum maximum" region ID that all ranks must support. This value
will be enforced during parallel aggregation.
2024-01-24 09:54:44 +01:00
Bård Skaflestad
24ebb77257
Merge pull request #5116 from atgeirr/parallel-well-domain-output
...
Parallel well domain and error logging for NLDD
2024-01-23 15:41:11 +01:00
Atgeirr Flø Rasmussen
9102b2a352
Use to_string() for WellFailure.
...
New functionality added is local well failure logging for NLDD.
2024-01-23 11:52:22 +01:00
Atgeirr Flø Rasmussen
04492413ff
Move formatting utilities for convergence failures.
...
This makes them available for use in other places. The function
std::string to_string(const ConvergenceReport::WellFailure& wf) is new,
but uses the format already established.
2024-01-23 11:16:57 +01:00
Arne Morten Kvarving
98c704c1c3
changed: move ebos/eclmpiserializer.hh to opm/simulators/utils/MPISerializer.hpp
...
it does not use the typetag system
2024-01-23 10:51:32 +01:00
Arne Morten Kvarving
873102e9ea
added: RST CONV support for polymer, solvent and brine
2024-01-22 09:58:06 +01:00
Atgeirr Flø Rasmussen
1842df7cfd
Output well subdomain info properly in the parallel case.
2024-01-19 16:15:53 +01:00
Atgeirr Flø Rasmussen
ae838d0b84
Merge pull request #5103 from hnil/trueimpesanalytic
...
add analytic true impes
2024-01-18 22:51:57 +01:00
hnil
bec5a233eb
removed more warings and a bug for strange index settings
2024-01-18 18:25:50 +01:00
hnil
cced62edc0
fixed warning
2024-01-18 18:18:42 +01:00
hnil
be27e2388d
fixed name in cpp file
2024-01-18 11:40:59 +01:00
hnil
1900379343
changes to adjust to review comments
2024-01-18 10:37:48 +01:00
Atgeirr Flø Rasmussen
a52bcf51b1
Initialize the communication object in initialize().
2024-01-17 12:39:52 +01:00
Arne Morten Kvarving
be84969338
added: hook up RPTRST CONV output to restart file if requested
2024-01-16 12:58:02 +01:00
Bård Skaflestad
ceffbd2fc5
Chase Constructor API Change for Opm::Connection Class
2024-01-15 11:05:02 +01:00
Bård Skaflestad
534465d212
Merge pull request #5104 from atgeirr/nldd-improved-reporting
...
Nldd improved reporting
2024-01-15 11:00:58 +01:00
Atgeirr Flø Rasmussen
6eb670b5c7
Improve parallel logging in NLDD solver.
2024-01-15 09:08:52 +01:00
hnil
61329532a7
-- add true impes
...
-- moved code to hpp to avoid unnesseary logic
2024-01-12 15:33:09 +01:00
Tor Harald Sandve
d72ea5fcb0
add option for explicit pressure for rock compaction (only transmissibility)
2024-01-11 16:09:08 +01:00
Atgeirr Flø Rasmussen
b9b42a01cc
Catch exceptions from local solves.
2024-01-11 14:14:00 +01:00
Tor Harald Sandve
20fb8fa699
Fix minimum newton iteration
...
We also change the default to 2 to keep the same results
2024-01-11 09:17:50 +01:00
Arne Morten Kvarving
ec9c704def
cosmetics and header cleanups in damaris classes
2024-01-10 14:16:02 +01:00
Arne Morten Kvarving
ed28d7c9ef
changed: move damaris command line properties to separate file
...
to avoid pulling in the whole writer in DamarisKeywords.hpp
2024-01-10 14:16:02 +01:00
Arne Morten Kvarving
240e0dd04f
fixed: add header guard to DamarisOutputModule.hpp
2024-01-10 14:16:02 +01:00
Arne Morten Kvarving
e686fabb39
added: class for calculating RPTRST CONV
2024-01-10 13:07:34 +01:00
Stein Krogstad
cdb43d917b
Include all derivatives for acceleration term in MS wells
2024-01-09 11:59:07 +01:00
Tor Harald Sandve
3cb5b48d60
Merge pull request #5066 from vkip/wdfac_cqmult
...
Use connection rates satisfying the connection IPR when evaluating flow-dependent skin
2024-01-09 09:04:02 +01:00
Bård Skaflestad
60c7c79f58
Output Well Flow Sheets for All Wells
...
There is no need to restrict PRT file flow reports to those wells
which are active on the current rank since the SummaryState object
holds information for all wells active at the current report step.
2024-01-08 08:58:51 +01:00
Bård Skaflestad
5e9bdfd342
Merge pull request #5085 from blattms/mark-skip-endskip-supported
...
Mark keywords SKIP, SKIP100, SKIP300, and ENDSKIP as supported.
2024-01-04 11:42:07 +01:00
Torbjørn Skille
72892f0c4b
PRT file updates
...
* Arrays genarated from RPTSOL + FIP is now strictly following Eclipse format
* Adding reservoir volume array also for custom FIP regions
2024-01-03 21:47:54 +01:00
Markus Blatt
0c01a3ac50
Mark keywords SKIP, SKIP100, SKIP300, and ENDSKIP as supported.
...
Follow up to OPM/opm-common#3817 which implements the support for
these keywords.
2024-01-02 11:06:33 +01:00
Arne Morten Kvarving
165b57c66a
Aquifer***: clean up includes
2024-01-02 10:39:59 +01:00
Arne Morten Kvarving
6f4ecd13d8
AdaptiveTimeSteppingEbos: remove unnecessary ScheduleState.hpp include
2024-01-02 10:18:36 +01:00
Tor Harald Sandve
f508f3d4e8
add output of dissolved solvent rswsol
2023-12-21 10:48:58 +01:00
Vegard Kippe
b7b99a2445
Fixed var names
2023-12-20 15:06:01 +01:00
Vegard Kippe
32634f47d1
Properly check both positive and negative solutions to the connection IPR with flow-dependent skin
2023-12-20 14:20:50 +01:00
Vegard Kippe
ab690980de
Pick valid rate or use zero flow-dependent skin
2023-12-20 14:20:50 +01:00
Vegard Kippe
d252f069e4
Test using rate consistent D-factor transmissibility multipliers
2023-12-20 14:20:50 +01:00
Bård Skaflestad
b30bfb5b1b
Merge pull request #5073 from atgeirr/fix-output-dir
...
Avoid modifying outputDir, leave empty if defaulted.
2023-12-19 16:50:27 +01:00
Arne Morten Kvarving
de9c3ddfda
added: test for outputdir
2023-12-19 15:21:58 +01:00
Arne Morten Kvarving
c95cd5b147
added: bool param to flag that Main.hpp should not initialize/finalize MPI
...
needed for tests
2023-12-19 15:12:44 +01:00
Atgeirr Flø Rasmussen
093b346426
Avoid modifying outputDir, leave empty if defaulted.
...
Handle this case for Damaris, which needs to be told the output dir
before this is available from the IOConfig.
2023-12-19 15:12:44 +01:00
Stein Krogstad
e908c95ca2
Avoid call to saturationPressure
2023-12-19 09:54:52 +01:00
Atgeirr Flø Rasmussen
01b76e2658
Order variables the same as in constructor init list.
2023-12-15 14:23:55 +01:00
Atgeirr Flø Rasmussen
1dbd971710
Merge pull request #4889 from jcbowden/damariswriter-for-sim-fields-v5
...
Geometric mesh data added for Damaris in-situ visualisation
2023-12-15 10:18:00 +01:00
Josh Bowden
4db49a3785
Reformat using clag-format with default OPM format guide
2023-12-14 17:30:21 +01:00
Josh Bowden
8094504018
Jenkins build error issue fix for unused typedefs
2023-12-14 12:39:18 +01:00
Josh Bowden
55dc80725f
Improved in-line help comments; output MPI cell values to HDF5 only when saving mesh to HDF5; removed timing data
2023-12-14 10:27:05 +01:00
Bård Skaflestad
fc73a51310
Merge pull request #4873 from vkip/wsegvalv_uda_item4
...
Allow UDA for WSEGVALV item 4
2023-12-13 21:19:27 +01:00
Josh Bowden
e16cd9a3b3
finalise the PR 4889 modifications - added command line option to specifiy the shared memory file name in the <buffer> XML element --damaris-shared-memory-name which will be a randomised string opm-damaris-<random-string> for better multi-simulation behaviour when running more than one simulation on a single node.
2023-12-13 18:14:45 +01:00
Josh Bowden
757a96941a
final review changes from PR 4889 and added extra command line argument to output mesh data --damaris-save-mesh-to-hdf
2023-12-13 18:14:37 +01:00
Josh Bowden
9309f5a1bd
overhaul of GridDataOutput class to accept a vector type so that raw pointers are not overrun, this has lead to finding a good way to get the size of the data area that is alloacted by the DamarisVar wrapper class for damaris_alloc()
2023-12-13 18:14:06 +01:00
Josh Bowden
54d6db6f35
Update 1 for code after code review of PR 4889
2023-12-13 18:13:55 +01:00
Markus Blatt
4f619f8f38
Also print information about parallel run to PRT file.
...
Up to now this information is only output to standard out.
To help with debugging and replicating (e.g. in case of crashes)
without saved standard putput, we now also print the imformation about
MPI processes and OMP threads to the PRT file.
2023-12-13 16:42:02 +01:00
Vegard Kippe
fcc3a19a42
Explicit cast to avoid narrowing warning.
2023-12-13 14:34:36 +01:00
Arne Morten Kvarving
6e21bdb35b
GroupEconomicLimitsChecker: use std::array
2023-12-12 15:56:08 +01:00
Arne Morten Kvarving
d9cd6b51c3
GroupEconomicLimitsChecker::closeWellsRecursive: pass group as const ref
2023-12-12 15:53:37 +01:00
Arne Morten Kvarving
825b4b6677
GroupEconomicLimitsChecker: cleanup includes
2023-12-12 15:51:37 +01:00
Vegard Kippe
62de832e8b
Post review update
2023-12-12 09:52:01 +01:00
Vegard Kippe
62ac4dc663
Take default UDQ value from UDQPARAM
2023-12-12 09:52:01 +01:00
Vegard Kippe
15305e467d
Allow UDA for WSEGVALV item 4
2023-12-12 09:51:50 +01:00
Bård Skaflestad
5c9e86666c
Publish Short Region Set Names Only
...
That way, in-place quantities will go through the short-to-canonical
name translation in FieldProps regardless of their origin--e.g.,
RPTSOL/RPTSCHED or explicit SUMMARY section vectors.
2023-12-11 17:01:40 +01:00
Bård Skaflestad
922cd86d59
Merge pull request #5056 from akva2/janitoring
...
GasLiftXXX: clean up includes
2023-12-11 16:57:21 +01:00
Arne Morten Kvarving
035bd3a725
GasLiftXXX: clean up includes
...
in particular avoid including GasLiftStage2.hpp in BlackoilWellModel
2023-12-11 15:55:05 +01:00
Bård Skaflestad
c03f794f9c
Remove Dashed Lines Between Records in PRT File Reports
...
This commit splits the production, injection, and cumulative
*Report_() functions into three logically distinct parts, one for
outputting the report header (begin*Report_()), one for outputting a
single report record (output*ReportRecord_()), and one for ending
the report (end*Report_()). This simplifies the logic of the
*Record_() member functions since they no longer need to infer the
context which is already available in the caller and can perform a
more narrow task than before.
With this separation we're also able to remove the dashed lines
which would previously separate each report record, thereby creating
PRT file report sheets which have a more expected layout.
Moreover, as an aid to future maintenance, we also factor out common
code for the well and group cases in each *Record_() function.
Finally, fix a unit conversion problem in the report values for
cumulative gas quantities. The sheet header states that we should
be outputting values in 'MM' prefixed units, but we were only
scaling the gas values by a factor of 1000 instead of 1000*1000. In
other words, the injection and production gas values in the
cumulative sheet were off by a factor of 1000.
2023-12-11 10:01:22 +01:00
Arne Morten Kvarving
7841f6abcb
remove dead store
2023-12-08 18:42:41 +01:00
Arne Morten Kvarving
3534c6d1fa
mark overriden virtual method as such
2023-12-08 18:42:21 +01:00
Arne Morten Kvarving
269d1877f7
SerializableSim: add virtual dtor
2023-12-08 18:42:07 +01:00
Atgeirr Flø Rasmussen
a52877081e
Merge pull request #5046 from blattms/comm-exception-wetgaspvt-sat-pressure
...
[fix,MPI] Handle exception during assembleWellEqWithoutIteration correctly
2023-12-08 13:02:42 +01:00
Josh Bowden
0f1d31c88a
sets the SHMEM buffer name to be the same as the simulation name, usefull if running multiple simulations on the same machine, so that buffers are not removed by other simulations
2023-12-08 11:00:22 +01:00
Josh Bowden
89fabf132e
adding command line option to specify the dask file being used --damaris-dask-file= that will add the file name to the Daamris XML configuration file
2023-12-08 10:59:51 +01:00
Bård Skaflestad
ec549df37b
Remove Spurious Blank Lines in PRT File Reports
...
The StreamLog::addMessageUnconditionally() member function will end
each message with a newline (std::endl) so we should not add such
newlines ourselves. The extra newline characters produce spurious
blank lines in the report sheets, e.g., for the "PRODUCTION REPORT".
This commit removes the last newline character from each report
request, thus deferring that responsibility to OpmLog::note()
instead. Doing so, however, means we have take a little more care
with the first line of each report lest we create report sheets
which are smushed together.
2023-12-08 10:22:43 +01:00
Stein Krogstad
051f4d4eab
Remove early-return functionality due to unintended consequences
2023-12-08 00:36:39 +01:00
Markus Blatt
50e1d09a8c
Add semicolon to help with indentation.
2023-12-07 16:41:16 +01:00
Markus Blatt
260dac77a5
[MPI] Handle exception during assembleWellEqWithoutIteration correctly
...
For this particular model WetGasPVT::saturationPressure did throw
because convergence in the newton solver is not reached in 20
iterations. Unfortunately, the exception was only seen on one MPI rank
and the others continued.
With this commit we communicate the problem and throw on all MPI
processes. Time step will be cut as a result.
2023-12-07 15:41:35 +01:00
Stein Krogstad
7c91c015cf
updates according to Atgeirrs comments
2023-12-07 13:09:00 +01:00
Stein Krogstad
1fd1c5afc6
Updates according to Atgeirr's comments
2023-12-07 13:09:00 +01:00
Stein Krogstad
00bd006eb4
Fix bugs
2023-12-07 13:09:00 +01:00
Stein Krogstad
94cde80235
always set wells operable to avoid skipping linear solve/updating
2023-12-07 13:09:00 +01:00
Stein Krogstad
2121373e4f
clean-up
2023-12-07 13:09:00 +01:00
Stein Krogstad
5083052a3f
clean-up, fixing and add debug info
2023-12-07 13:09:00 +01:00
Stein Krogstad
743c7bd120
add argument to get proper conv for well-copies
2023-12-07 13:09:00 +01:00
Stein Krogstad
9a5aef6e5e
move function for proper access to well_state
2023-12-07 13:09:00 +01:00
Stein Krogstad
88ede7b7fc
revert to original
2023-12-07 13:09:00 +01:00
Stein Krogstad
ee16e90ba2
fix well-convergence for well-copies
2023-12-07 13:09:00 +01:00
Stein Krogstad
73ec44d9c4
include use-implicit-ipr as paramaeter
2023-12-07 13:09:00 +01:00
Stein Krogstad
03366b92eb
include thp-solve for potentials
2023-12-07 13:09:00 +01:00
Stein Krogstad
44e17fa615
cleanup thp-solve
2023-12-07 13:09:00 +01:00
Stein Krogstad
3e6732a67b
rename to implicit_ipr
2023-12-07 13:09:00 +01:00
Stein Krogstad
746e05db5d
Include implicit ipr for ms-wells
2023-12-07 13:09:00 +01:00
Stein Krogstad
b287981e5e
testing
2023-12-07 13:09:00 +01:00
Stein Krogstad
7aa50f149f
updates
2023-12-07 13:09:00 +01:00
Stein Krogstad
2470b20d13
final revert
2023-12-07 13:09:00 +01:00
Stein Krogstad
94c0b49cf7
revert changes
2023-12-07 13:09:00 +01:00
Atgeirr Flø Rasmussen
446670943a
Merge pull request #5042 from akva2/serializer_throw_early_no_hdf5
...
changed: throw early in simulator serializer
2023-12-07 10:42:01 +01:00
Bård Skaflestad
d2ee47de7f
Merge pull request #5041 from steink/prevent_nans_for_valve_models
...
Guard against nans from certain expressions in the valve models
2023-12-06 19:42:32 +01:00
Stein Krogstad
4355a94511
make reference to parameter
2023-12-06 14:45:18 +01:00
Arne Morten Kvarving
4eeefabedd
changed: throw early in simulator serializer
...
if HDF5 input/output is requested but no support is available
we throw early instead of just logging an error when save/load
is to be performed
2023-12-06 10:03:29 +01:00
Markus Blatt
faad3a6ee5
Merge pull request #4811 from akva2/simulator_serializer_class
...
Move simulator serialization to separate class
2023-12-06 10:02:26 +01:00
Markus Blatt
abd387abba
Merge pull request #5036 from blattms/comm-sigular-mat-exception
...
Communicate exceptions during WellModel::updateAndCommunicate
2023-12-06 09:54:00 +01:00
Stein Krogstad
a483839caa
return zero for powers with negative base
2023-12-05 21:28:54 +01:00
Arne Morten Kvarving
f46b6c5a01
changed: move simulator serialization to separate class
...
more separation of concerns
2023-12-05 11:20:22 +01:00
Arne Morten Kvarving
eb599af058
add missing header
2023-12-05 11:00:56 +01:00
Markus Blatt
3a9c586d19
Make sure that problems with singular matrices are logged.
...
Previously, if the problem occured on an MPI process with rank other
than zero the the logging would not seen (at least in the output
files). Now together with the previous commit the problem should be
logged together with the well name and calling method.
2023-12-04 23:15:08 +01:00
Markus Blatt
779dd74923
Communicate exceptions during WellModel::updateAndCommunicate
...
For multi segment well the underlying call to
MultisegmentWell::updateWellStateWithTarget (at least if
updateWellStateWithTHPTargetProd is called for a producer under thp
control) might throw as there might be a singular matrix during the
solve needed in MultisegmentWell::iterateWellEqWithControl.
Previously, if that happened then the MPI process where it happened would
stop the nonlinear iteration as failed and try with a chopped time
step. The others might go one with the current time step and we would
see MPI errors about truncated messages.
Now we communicate any exception happening during this part of
WellModel::updateAndCommunicate and all processes will stop the
nonlinear iteration as failed and chop the time step.
2023-12-04 22:26:55 +01:00
Bård Skaflestad
338c210985
Merge pull request #5034 from akva2/fix_fip_no_summary_kw
...
fixed: grab list of FIP regions from FieldPropsManager
2023-12-04 17:46:00 +01:00
Arne Morten Kvarving
d120fe1ebc
fixed: grab list of FIP regions from FieldPropsManager
...
not from SummaryConfig. the latter only holds regions with
summary keywords
2023-12-04 13:24:32 +01:00
Vegard Kippe
55067636f4
Ensuring that the UDA is updated every time step, not just only report step.
2023-12-01 19:44:09 +01:00
Vegard Kippe
fa6697a5fa
Capture reference in lambda
2023-12-01 13:30:48 +01:00
Vegard Kippe
69f82f1104
Allow using UDQ for WCONPROD item 12 (ALQ)
2023-12-01 13:21:34 +01:00
Vegard Kippe
17452e0fc6
Adding const
2023-12-01 09:34:42 +01:00
Vegard Kippe
0acb148ba7
Using std::exception
2023-11-30 16:13:40 +01:00
Vegard Kippe
2294983759
Catch exceptions from well testing (often: inf/nan in MSW matrices).
2023-11-29 09:17:53 +01:00
Antonella Ritorto
8017ff9a02
add cartesianCoordianteLevel in ALUCartIdxMapp, used in RelperDiag
2023-11-28 15:47:00 +01:00
Bård Skaflestad
5fe1eafb34
Merge pull request #5026 from totto82/fix_gpmaint2
...
Bugfix sign of gpmaint prod
2023-11-28 11:16:03 +01:00
Tor Harald Sandve
f7323bd679
fix sign of gpmaint prod
2023-11-27 15:10:11 +01:00
Atgeirr Flø Rasmussen
cb3ab14a71
Merge pull request #5025 from blattms/expect-singular-matrices-upate-WellControl
...
[bugfix] Expect singular matrices, terminate updateWellControls/nonlinear and cut timestep
2023-11-27 08:42:11 +01:00
Markus Blatt
31ab752ae6
[fix] Parallel try-catch also added for updateWellControls for groups.
...
Not sure whether this is needed, but better safe than sorry.
2023-11-25 21:04:13 +01:00
Markus Blatt
50c25ead52
[bugfix] Expect singular matrices and terminate updateWellControls.
...
We are experiencing singular matrices when solving mulisegment wells
sometimes. In that case (here during
BlackoilModelEbos::assembleReservoir <-
BlackoilModelEbos::initialLinerization <-
BlackoilModelEbos:::nonlinearIterationNewton ) an exception is thrown
when updating the controls of a well.
The problem here is that this exception only happens on one
process. That one goes to the catch block in
NonLinearSolverEbos::step, marks the nonlinear solve as failed and
cuts the time step. The others move to the collective communication
below. Somehow and somewhen all end up in a non-matching collective
communication with different data types and we get an MPI Error that
the message was truncated.
Now all processes will throw, terminate the nonlinear solver and cut
the timestep as it should be.
2023-11-25 19:32:11 +01:00
Bård Skaflestad
a6d583b9d0
Merge pull request #5024 from blattms/not-warn-loadStep-OutputDir
...
Do not warn about OutputDir when combined with LoadStep.
2023-11-24 19:03:52 +01:00
Bård Skaflestad
6b78dd4ad4
Merge pull request #5021 from atgeirr/nldd-refinements
...
Nldd refinements
2023-11-24 16:40:39 +01:00
Atgeirr Flø Rasmussen
6945b927ec
Minor refactoring of domain ordering for NLDD.
2023-11-24 14:57:45 +01:00
Markus Blatt
fa10546c0a
Do not warn about OutputDir when combined with LoadStep.
...
Both can safely be used together.
2023-11-24 13:28:20 +01:00
Markus Blatt
24408862ff
Merge pull request #5008 from aritorto/compressedLevelZero
...
compressedLevelZero used to read relative permeability
2023-11-24 13:21:23 +01:00
Bård Skaflestad
cd94ac3a7c
Merge pull request #5023 from totto82/wpimult
...
Adapt wdfac to wpimult
2023-11-23 16:28:32 +01:00