Commit Graph

11457 Commits

Author SHA1 Message Date
Kai Bao
7803c55a88 avoiding exception from std::stoi("")
when not setting OMP_NUM_THREADS in the environment.
2024-08-05 11:48:54 +02:00
Tobias Meyer Andersen
62ee7bf495 fix indendation and needless conversions 2024-08-05 11:47:18 +02:00
Arne Morten Kvarving
22a116728c changed: LinearSolverVerbosity parameter moved to Opm::Parameters namespace 2024-08-02 09:04:08 +02:00
Arne Morten Kvarving
f251370a52 changed: EnableGravity parameter moved to Opm::Parameters namespace 2024-08-02 09:04:08 +02:00
Tor Harald Sandve
5d19739c8c
Merge pull request #5490 from totto82/useCellTempRESV
Use cell temperature in perforated cell to compute reservoir rates
2024-08-02 08:34:22 +02:00
Tobias Meyer Andersen
e8ac31da16 add CuBuffer and CuView to cuISTL 2024-08-01 16:38:16 +02:00
Atgeirr Flø Rasmussen
c26271f774
Merge pull request #5493 from akva2/move_vtk_params_to_params
Move vtk parameters to Opm::Parameters namespace
2024-08-01 13:01:51 +02:00
Tor Harald Sandve
f678c082de Adapt to inj prefix and cleanup 2024-08-01 11:23:00 +02:00
Tor Harald Sandve
5f8916c0c3 Use cell temperature in perforated cell to compute reservoir rates 2024-08-01 11:14:29 +02:00
Markus Blatt
03dc006b88
Merge pull request #5488 from lisajulia/fix/ACTIONX-COMPDAT
Fix/actionx compdat
2024-07-30 17:18:04 +02:00
Arne Morten Kvarving
c8a3729199 changed: VtkWriteTemperature parameter moved to Opm::Parameters namespace 2024-07-30 13:29:31 +02:00
Arne Morten Kvarving
ec01d7694b changed: VtkPrimaryVarsModule parameters moved to Opm::Parameters namespace 2024-07-30 13:12:54 +02:00
Arne Morten Kvarving
825540691c changed: VtkCompositionModule parameters moved to Opm::Parameters namespace 2024-07-30 13:12:54 +02:00
Arne Morten Kvarving
1759d37f89 changed: VtkBlackoilModule parameters moved to Opm::Parameters namespace 2024-07-30 13:12:54 +02:00
Arne Morten Kvarving
22794f83d1 changed: VtkDiffusionModule parameters moved to Opm::Parameters namespace 2024-07-30 13:12:54 +02:00
Arne Morten Kvarving
58bb7da544 changed: VtkMultiPhaseModule parameters moved to Opm::Parameters namespace 2024-07-30 13:12:54 +02:00
Arne Morten Kvarving
24c60e256f openclSolverBackend: fix shadowing type alias 2024-07-30 11:05:48 +02:00
Arne Morten Kvarving
405a907d63 anonymize unused parameters to quell compiler warnings 2024-07-30 10:55:53 +02:00
Arne Morten Kvarving
2a9077a45c fix macro formatting 2024-07-30 10:55:40 +02:00
Lisa Julia Nebel
efb18d0027 Add possible future connections to the grid methods that handle the well connections 2024-07-29 09:59:52 +02:00
David Landa Marban
8320a9abdf Output support for RSWSAT and RVWSAT 2024-07-17 13:00:38 +02:00
Markus Blatt
6e74fea547
Merge pull request #5477 from lisajulia/feature/metis-support
Add the metis partitioner as a command line option as well
2024-07-17 07:32:39 +02:00
Markus Blatt
ca2ef490aa
Merge pull request #5408 from BigDataAccelerate/cpr_rocsparse
rocsparse CPR initial version
2024-07-16 18:57:40 +02:00
Lisa Julia Nebel
371fbdfc03 Include <boost/version.hpp> before the macro BOOST_VERSION is checked 2024-07-16 17:39:32 +02:00
Lisa Julia Nebel
653cb28bc2 Add the metis partitioner as a command line option as well 2024-07-16 17:39:28 +02:00
Lisa Julia Nebel
e2126ae817 Use the failure flag of the tasklet runner to detect a failure while writing output and throw an error if that happens 2024-07-15 08:51:25 +02:00
Razvan Nane
a79d4aff5a fix rocalutionSolver 2024-07-12 13:31:17 +02:00
Vegard Kippe
a078eaacd3 Removing trailing 'p' 2024-07-11 18:15:16 +02:00
Vegard Kippe
dd08952967 Update after move of ThreadsPerProcess from Properties to Parameters 2024-07-11 15:55:34 +02:00
Vegard Kippe
14818028f0 Handle empty or invalied OMP_NUM_THREADS by Flow default and warn if a valid value overrides --threads-per-process 2024-07-11 15:52:20 +02:00
Markus Blatt
93e06d2187
Merge pull request #5473 from vkip/avoid_mpi_int_overflow
Avoid buffers exceeding intmax in MPI calls
2024-07-10 17:24:05 +02:00
Vegard Kippe
fae49636cc Addressing review comments (changed assert to throw, put chunked broadcast in private method) 2024-07-09 19:15:50 +02:00
Vegard Kippe
99d5a147b1 Fix broadcast and initialize int_pos properly.. 2024-07-09 15:02:15 +02:00
Vegard Kippe
c10695c5d5 Switch to using size_t instead of int for buffer position, and properly account for MPI using int 2024-07-09 13:48:04 +02:00
Kjetil Olsen Lye
f3b5e0d14d
Merge pull request #5433 from multitalentloes/useRecomendedBlockSize
Autotune thread block size
2024-07-08 14:17:39 +02:00
Tobias Meyer Andersen
844c7d9f67 use std::numerics for long max values 2024-07-05 11:07:58 +02:00
Bård Skaflestad
758a5f0dfd
Merge pull request #5450 from blattms/feature/remove-axisCentroid-copy
[refactor] Remove unnecessary copy in axisCentroid and simply code.
2024-07-04 23:04:21 +02:00
Markus Blatt
0caf92c6a6
Merge pull request #5448 from atgeirr/ensure-initialized-members-bdystate
Ensure all members are initialized in FlowProblem::boundaryFluidState().
2024-07-04 16:43:05 +02:00
Markus Blatt
3ee2830d28 Change distanceVector_ to take the element index instead of centroid 2024-07-04 14:40:28 +02:00
Bård Skaflestad
0406d199ab
Merge pull request #5465 from akva2/fix_damaris
add missing include and damaris reference file update support
2024-07-04 09:04:14 +02:00
Kai Bao
706fa281a1
Merge pull request #4935 from plgbrts/auto-choke
WIP: Enabling automatic choke to model a sub-sea manifold in an extended network
2024-07-03 21:29:50 +02:00
Paul
f9d82c6042 adressing several reviewers comments 2024-07-03 16:55:00 +02:00
Paul
6e76602e8f changed assessing safe THP range 2024-07-03 16:54:24 +02:00
Paul
393c70a83e clean up and improvements according reviewer comments 2024-07-03 16:54:05 +02:00
Paul
1ddf675cfd moved common thp calculation to updateWellControls 2024-07-03 16:53:51 +02:00
Paul
6ddf5dd01b allow individual well constraints 2024-07-03 16:53:29 +02:00
Paul
36dcf233c5 simplyfying code as some logic is moved to the parser 2024-07-03 16:52:11 +02:00
Bård Skaflestad
efa0895fcd
Merge pull request #5462 from GitPaean/handle_group_well_action_local
make sure a well exists in the process before closing it due to group action
2024-07-03 11:33:29 +02:00
Arne Morten Kvarving
d26ec065f3 add missing include 2024-07-03 11:02:16 +02:00
Arne Morten Kvarving
74cd10b1f2 avoid using deprecated type 2024-07-03 07:58:07 +02:00
Arne Morten Kvarving
48344facd4 add virtual destructor to class with virtual members 2024-07-02 22:41:48 +02:00
Paul
b2258dcf90 autochoke producers control mode set to THP 2024-07-02 12:13:56 +02:00
Paul
30e1f5178c Automatic choke 2024-07-02 12:13:52 +02:00
Kai Bao
ce05406483 make sure a well exists in the process
before closing it due to group action
2024-07-01 22:00:39 +02:00
Arne Morten Kvarving
fb6286d795 changed: PredeterminedTimeStepsFile parameter moved to Opm::Parameters namespace 2024-07-01 17:52:10 +02:00
Arne Morten Kvarving
dfcf2358fe changed: RestartTime parameter moved to Opm::Parameters namespace 2024-07-01 17:52:10 +02:00
Arne Morten Kvarving
b4c6a1a240 changed: InitialTimeStepSize parameter moved to Opm::Parameters namespace 2024-07-01 17:52:10 +02:00
Arne Morten Kvarving
1f967940f1 changed: EndTime parameter moved to Opm::Parameters namespace 2024-07-01 17:52:10 +02:00
Arne Morten Kvarving
1e0f2b61b6 changed: PrintParameters parameter moved to Opm::Parameters namespace 2024-07-01 17:52:10 +02:00
Arne Morten Kvarving
0db393fc07 changed: PrintProperties parameter moved to Opm::Parameters namespace 2024-07-01 17:52:10 +02:00
Arne Morten Kvarving
82cd3a2e01 changed: NewtonMaxIterations parameter moved to Opm::Parameters namespace 2024-07-01 14:13:48 +02:00
Arne Morten Kvarving
8def6b722b changed: NewtonTargetIterations parameter moved to Opm::Parameters namespace 2024-07-01 14:13:48 +02:00
Arne Morten Kvarving
0342566fd6 changed: NewtonMaxError parameter moved to Opm::Parameters namespace 2024-07-01 14:13:48 +02:00
Arne Morten Kvarving
514eddc950 changed: NewtonTolerance parameter moved to Opm::Parameters namespace 2024-07-01 14:13:48 +02:00
Arne Morten Kvarving
389ea1ef8b changed: NewtonWriteConvergence parameter moved to Opm::Parameters namespace 2024-07-01 14:13:48 +02:00
Arne Morten Kvarving
1a63dcdf8b changed: NewtonVerbose parameter moved to Opm::Parameters namespace 2024-07-01 14:13:48 +02:00
Bård Skaflestad
9f8075e8a0
Merge pull request #5455 from akva2/fvbasediscretization_param_split
Adjust to to changes in fvbaseproperties.hh (moving of parameters to Opm::Parmeters namespace)
2024-07-01 13:22:26 +02:00
Arne Morten Kvarving
d4422742a2 AquiferAnalytical: add missing include 2024-07-01 12:06:47 +02:00
Arne Morten Kvarving
5514ebf4e0 AquiferNumerical: add missing include 2024-07-01 11:20:57 +02:00
Arne Morten Kvarving
74a4ab7823 changed: EnableThermodynamicHints parameter moved to Opm::Parameters namespace 2024-06-28 15:26:30 +02:00
Arne Morten Kvarving
1f6ddb052d changed: EnableStorageCache parameter moved to Opm::Parameters namespace 2024-06-28 15:13:13 +02:00
Arne Morten Kvarving
02f1c6c230 changed: EnableIntensiveQuantitiesCache parameter moved to Opm::Parameters namespace 2024-06-28 14:59:38 +02:00
Arne Morten Kvarving
f95ec4daa1 changed: MaxTimeStepDivisions parameter moved to Opm::Parameters namespace 2024-06-28 14:43:11 +02:00
Arne Morten Kvarving
325b841771 changed: MinTimeStepSize parameter moved to Opm::Parameters namespace 2024-06-28 14:43:11 +02:00
Arne Morten Kvarving
e08b6b1163 changed: MaxTimeStepSize parameter moved to Opm::Parameters namespace 2024-06-28 14:43:11 +02:00
Arne Morten Kvarving
6a03394d5b changed: EnableVtkOutput parameter moved to Opm::Parameters namespace 2024-06-28 14:43:11 +02:00
Arne Morten Kvarving
b3fae7f0f9 changed: OutputDir parameter moved to Opm::Parameters namespace 2024-06-28 14:43:11 +02:00
Arne Morten Kvarving
da4471acfa changed: EnableGridAdaptation parameter moved to Opm::Parameters namespace 2024-06-28 14:43:11 +02:00
Arne Morten Kvarving
afa62ee428 changed: ThreadsPerProcess parameter moved to Opm::Parameters namespace 2024-06-28 14:43:11 +02:00
Tobias Meyer Andersen
0d8bf905d8 remove dead code 2024-06-28 14:38:25 +02:00
Tobias Meyer Andersen
3cb8298e3a Pick blocksize automatically for CUDA cards.
Calibrate the best size for AMD cards.
This will be improved in a following PR
2024-06-28 14:36:00 +02:00
Bård Skaflestad
0c71d0701c Add MPI Support to Saturation Function Consistency Checks
This commit adds a new public member function

    SatfuncConsistencyChecks<>::collectFailures(root, comm)

which aggregates consistency check violations from all ranks in the
MPI communication object 'comm' onto rank 'root' of 'comm'.  This
amounts to summing the total number of violations from all ranks and
potentially resampling the failure points for reporting purposes.

To this end, extract the body of function processViolation() into a
general helper which performs reservoir sampling and records point
IDs and which uses a call-back function to populate the check values
associated to a single failed check.  Re-implement the original
function in terms of this helper by wrapping exportCheckValues() in
a lambda function.  Extract similar helpers for numPoints() and
anyFailedChecks(), and add a new helper function

    SatfuncConsistencyChecks<>::incorporateRankViolations()

which brings sampled points from an MPI rank into the 'root's
internal data structures.

One caveat applies here.  Our current approach to collecting check
failures implies that calling member function reportFailures() is
safe only on the 'root' process in a parallel run.  On the other
hand functions anyFailedChecks() and anyFailedCriticalChecks() are
safe, and guaranteed to return the same answer, on all MPI ranks.

On a final note, the internal helper functions are at present mostly
implemented in terms of non-owning pointers.  I intend to switch to
using 'std::span<>' once we enable C++20 mode.
2024-06-28 11:04:53 +02:00
Bård Skaflestad
ce7d415e4d
Merge pull request #5447 from blattms/feature/hide-comp-by-dune
[refactor] Use DUNE's dot product to hide code complexity.
2024-06-27 15:28:55 +02:00
Bård Skaflestad
0267a3612f
Merge pull request #5446 from atgeirr/fix-uninitialized-member
Initialize member for WellState serialization test constructor.
2024-06-27 15:28:31 +02:00
Markus Blatt
d7c869d01a [refactor] Remove unnecessary copy in axisCentroid and simply code.
We stored 3 copies of each cell centroid in axisCentroid. This seemed
to be a waste of memory and also made the function distanceVector_ hard
to understand.

With this change we omit this copy of information and simplify distanceVector_
2024-06-27 15:15:33 +02:00
Kjetil Olsen Lye
9b414419e7
Merge pull request #5404 from multitalentloes/add_dilu_LU_splitting
Add cudilu lu splitting
2024-06-27 14:30:45 +02:00
Razvan Nane
f063f6776e remove dependency of std::thread on openmp 2024-06-27 14:06:22 +02:00
Atgeirr Flø Rasmussen
a3839aaeb8 Ensure all members are initialized in boundaryFluidState().
Also restructure to loop over active phases instead of all
canonical phases.
2024-06-27 13:43:46 +02:00
Markus Blatt
f6a4d7b076 [refactor] Use DUNE's do product to hide code complexity.
this removes some explicit loops.
2024-06-27 13:29:55 +02:00
Atgeirr Flø Rasmussen
34d44876fb Initialize member for test constructor. 2024-06-27 11:24:54 +02:00
Tobias Meyer Andersen
65aa334313 formalize new fromMatrix 2024-06-26 15:41:42 +02:00
Tobias Meyer Andersen
605e32c54b use camelCase, remove commented code 2024-06-26 15:34:47 +02:00
Tobias Meyer Andersen
d6f8678617 use unique_ptr consistently for delayed instantiation 2024-06-26 15:31:52 +02:00
Bård Skaflestad
c3939c5444 Add New Platform for Saturation Function Consistency Checks
The intention is that this will ultimately replace the existing
RelpermDiagnostics component which does not really work in parallel
and which does not report enough context to help diagnose underlying
issues.  For now, though, we just add the shell of a new set of
checks and hook that up to the build.

Class SatfuncConsistencyChecks<Scalar> manages a configurable set of
consistency checks, the implementations of which must publicly
derive from SatfuncConsistencyChecks<Scalar>::Check.  Client code
will configure a set of checks by first calling

    SatfuncConsistencyChecks<Scalar>::resetCheckSet()

then register individual checks by calling

    SatfuncConsistencyChecks<Scalar>::addCheck()

and finally build requisite internal structures by calling

    SatfuncConsistencyChecks<Scalar>::finaliseCheckSet()

Client code will then run the checks by calling

    SatfuncConsistencyChecks<Scalar>::checkEndpoints()

typically in a loop.  Class SatfuncConsistencyChecks<Scalar> will
count consistency check failures and attribute these to each
individual check as needed.  We also maintain separate counts for
"Standard" and "Critical" failures.  The former will typically
generate warnings while the latter will typically cause the
simulation run to stop.  Individual checks get to decide which check
is "Critical", and client code gets to decide how to respond to
"Critical" failures.

Member function SatfuncConsistencyChecks<Scalar>::reportFailures()
will generate a textual report of the known set of consistency check
failures at a give severity level.

As an internal implementation detail, SatfuncConsistencyChecks uses
"reservoir sampling"
(https://en.wikipedia.org/wiki/Reservoir_sampling) to track details
about individual failed checks.  We maintain at most a fixed number
of individual points (constructor argument).
2024-06-26 12:17:00 +02:00
Bård Skaflestad
ac42250b25
Merge pull request #5402 from totto82/output_wetting_hyst
Output maximum/minimum saturations directly for restart hysteresis
2024-06-26 12:15:20 +02:00
Kai Bao
eb83fff9d5
Merge pull request #5435 from steink/updates_in_preparation_for_5157
Minor updates in preparation for New defaults #5157.
2024-06-26 00:24:29 +02:00
Tor Harald Sandve
230656ec31 updateInitialHystParams 2024-06-25 12:55:02 +02:00
Bård Skaflestad
26cd7ab993 Move opm/core/props to opm/simulators/utils
The opm/core directory is no longer meaningful, and it contains only
components which might collectively be described as simulator
utilities.
2024-06-25 12:22:09 +02:00
Stein Krogstad
fd199d2558 Rewrite to properly loop over components 2024-06-25 11:46:53 +02:00
Stein Krogstad
1efcd2c936 Fix potential for solvent + adjust perforation pressures 2024-06-25 11:46:53 +02:00