Commit Graph

499 Commits

Author SHA1 Message Date
Tong Dong Qiu
11ea024fbe Add test_rocsparseSolver 2023-04-06 13:14:19 +02:00
Tong Dong Qiu
91a3e238ce Add rocsparseSolver 2023-04-06 13:14:19 +02:00
Arne Morten Kvarving
7672e14890 RateConvert: introduce compile unit
move global rate reductions into it
2023-03-08 15:40:15 +01:00
Arne Morten Kvarving
64c4694bab NonlinearSolverEbos: put detectOscillations in compile unit 2023-03-01 10:46:51 +01:00
Arne Morten Kvarving
143139c6ee FlowMainEbos: move parallel file merge code to separate compile unit
avoid some headers in simulator objects
2023-02-28 14:05:51 +01:00
Kai Bao
248f6b73d9 WIP of supporting AQUFLUX from simulator side 2023-02-21 13:20:36 +01:00
Arne Morten Kvarving
6c9e887669 add simple inspection tool for .OPMRST files 2023-02-16 13:47:54 +01:00
Arne Morten Kvarving
4b07f6d010 added: HDF5Serializer
this takes the serialization data and stores it in a hdf5 file,
alternatively reads the data and deserializes.

will be used for restarting purposes
2023-02-14 13:15:43 +01:00
Arne Morten Kvarving
f2a14b2d07 SimulatorTimer: add serialization support 2023-02-13 18:01:16 +01:00
Arne Morten Kvarving
c6632d5b83 added: file for extra serialization packers
for now, it holds a packer for boost::gregorian::date
2023-02-13 17:53:05 +01:00
Arne Morten Kvarving
d73d52e162 added: simple HDF5File class
bare minimum to enable reading and writing byte arrays
2023-02-06 09:44:50 +01:00
Arne Morten Kvarving
e5dc2996e2 changed: move banner printing to separate compile unit 2023-02-01 22:54:55 +01:00
Arne Morten Kvarving
1729c1a414 Main: move some code to separate compile unit 2023-01-18 12:26:10 +01:00
Tor Harald Sandve
8d37ded703 Suppot EQUIL + WATER + GAS 2023-01-13 10:16:48 +01:00
Arne Morten Kvarving
c707d91684 WellConnectionAuxiliaryModule: add a typetag independent base class
and put its code in a compile unit. allows embedding WellConnections.hpp
2023-01-12 13:06:25 +01:00
Bård Skaflestad
858ca8fa49 Output Non-Linear Convergence to Separate File if Requested
This commit enables outputting non-linear convergence metrics, i.e.,
the MB and CNV values, per phase, for each non-linear iteration in
each timestep.  If the user passes the option value "iterations" to
the --extra-convergence-output command line option, this commit will
create a new output file, CASE.INFOITER, that holds

    * report step
    * time step within that report step
    * elapsed time
    * MB and CNV values per phase
    * well convergence status

for each non-linear iteration.

We use an asynchronous file writing procedure and confer ownership
of the report step's unprocessed convergence reports to this
procedure just before the end of

    SimulatorFullyImplicitBlackoilEbos::runStep()

At that point, the convergence reports are about to go out of scope.
The asynchronous protocol uses a dedicated queue of output requests,
class ConvergenceReportQueue, into which the producer-i.e., member
function runStep()-inserts new convergence reports and from which
the output thread, ConvergenceOutputThread::writeASynchronous(),
retrieves those requests before writing the file data.
2022-12-20 10:14:13 +01:00
Arne Morten Kvarving
aa684a10b8 added: MultisegmentWellSegments
this is a container class for per-segment properties in MultisegmentWell
2022-12-19 15:55:20 +01:00
Arne Morten Kvarving
e1fccd47dc added: MultisegmentWellPrimaryVariables
this is a container class for the primary variables in
multisegment well
2022-12-19 13:05:39 +01:00
Bård Skaflestad
63654a73fc Don't Output INFOSTEP File by Default
This commit introduces a new helper class,

    ConvergenceOutputConfiguration

which parses comma separated option strings into a runtime
configuration object for whether to output additional convergence
information and, if so, what information to output.

Supported option string values are

  * "none"       -- Dont want any additional convergence output.

  * "steps"      -- Want additional convergence output pertaining to the
                    converged solution at the end of each timestep.

  * "iterations" -- Want additional convergence output pertaining to each
                    non-linar ieration in each timestep.

Option value "none" overrides all other options.  In other words, if the
user requests "none", then there will be no additional convergence
output, even if there are other options in the option string.

We add a new option, ExtraConvergenceOutput (command line option
--extra-convergence-output), which takes a string argument expected
to be a comma separated combination of these options.  The default
value is "none".  Finally, make the INFOSTEP file output conditional
on the user supplying "steps" as an argument to the new option.
2022-12-15 13:02:09 +01:00
Arne Morten Kvarving
4ebde4e003 added: MultisegmentWellAssemble
this handles assembly of the equation system for multisegment well.
start by moving assembleControlEq into the new class
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
57f09050fc add: MultisegmentWellEquations
this is a container for the multisegment well equation system
2022-12-01 10:25:28 +01:00
Arne Morten Kvarving
f9b570ec84 remove test_ecl_output
the tests done here is already done (better) elsewhere
2022-11-30 15:30:49 +01:00
Arne Morten Kvarving
b08c165384 rename StandardWellGeneric to StandardWellConnections 2022-11-25 12:54:56 +01:00
Markus Blatt
42fdc38ae0
Merge pull request #4273 from Tongdongq/add-test
Add test for cusparseSolver
2022-11-22 13:55:11 +01:00
Arne Morten Kvarving
15d49e745e added: StandardWellPrimaryVariables
this is a container class for the primary variables in
standard well
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
10e967653b added: StandardWellAssemble
this handles assembly of the equation system for standardwell.
start by moving assembleControlEq into the new class
2022-11-22 12:22:18 +01:00
Arne Morten Kvarving
a8c912ccfa add: StandardWellEquations
this is a container for the standard well equation system
2022-11-22 10:36:54 +01:00
Tong Dong Qiu
21b23b7aa4 Combine multiple defines into one 2022-11-18 13:09:39 +01:00
Tong Dong Qiu
65128d1616 Removed unused reordering functions, file, header inclusions 2022-11-17 09:38:23 +01:00
Tong Dong Qiu
35287a61ff Remove FPGASolver and references 2022-11-17 09:38:01 +01:00
Markus Blatt
4988f98060
Merge pull request #4178 from Tongdongq/rocalution
Add rocalutionSolver
2022-11-09 16:44:35 +01:00
Tong Dong Qiu
8ef4e23d16 Fix CMake variables 2022-11-03 15:47:38 +01:00
Tong Dong Qiu
7e2a6800de Add test for rocalutionSolver 2022-11-03 15:47:32 +01:00
Tong Dong Qiu
ea73a1bf3c Add rocalutionSolver 2022-11-02 15:55:07 +01:00
Bård Skaflestad
73466da197
Merge pull request #4224 from akva2/wellinterface_eval_rename_assemble
Rename WellinterfaceEval to WellAssemble
2022-11-01 13:51:08 +01:00
Arne Morten Kvarving
b700ec9b53 rename WellInterfaceEval to WellAssemble 2022-11-01 12:55:00 +01:00
Arne Morten Kvarving
06686702ea added: WellConstraints
this will hold the code for well constraints.
start by moving activeProductionConstraint to the new class
2022-11-01 08:56:41 +01:00
Bård Skaflestad
dea582d296
Merge pull request #4197 from akva2/well_group_constraints
Add class for well group constraints
2022-10-31 16:12:17 +01:00
Arne Morten Kvarving
cd734f7a0d added: WellBhpThpCalculator
this will hold the code for THP/BHP calculations.

first method moved there is wellHasThpConstraints
2022-10-31 13:15:18 +01:00
Arne Morten Kvarving
698b748270 added: WellGroupConstraints
this holds the code for well group constraints.
move checkGroupConstraintsInj into the new class
2022-10-31 13:14:50 +01:00
Arne Morten Kvarving
cfd0eda7de added: WellGroupControls
this holds the code for well group controls.
move getGroupInjectionControl into the new class
2022-10-31 08:52:19 +01:00
Bård Skaflestad
7b499c4f0a
Merge pull request #4199 from akva2/well_test
Add class for well tests
2022-10-29 13:49:22 +02:00
Arne Morten Kvarving
dc607ce3ff add BlackoilWellModelGuideRates
start by moving getGuideRateValues
2022-10-28 22:40:38 +02:00
Bård Skaflestad
d1d5ff2831
Merge pull request #4208 from akva2/well_convergence
Add class for checking well convergence
2022-10-28 21:26:17 +02:00
Arne Morten Kvarving
0f8ca0c529 add WellConvergence
move checkConvergenceControlEq into it
2022-10-28 19:47:55 +02:00
Arne Morten Kvarving
2d9d452fff add BlackoilWellModelConstraints
start by moving hasTHPConstraints
2022-10-28 18:21:43 +02:00
Arne Morten Kvarving
0b32c1afd9 add BlackoilWellModelRestart
start by moving loadRestartConnectionData
2022-10-28 15:13:06 +02:00
Arne Morten Kvarving
9367335fe3 added: WellTest
this will hold the code for well tests.
start by moving checkMaxRatioLimitWell to the new class
2022-10-24 10:55:32 +02:00
Markus Blatt
3e680e41f5
Merge pull request #4136 from Tongdongq/remove_reordering
Remove reordering for opencl
2022-10-19 15:30:01 +02:00
Atgeirr Flø Rasmussen
a9c1a0998e Use MPI_FOUND not MPI_Found. 2022-10-19 14:13:39 +02:00