Commit Graph

12510 Commits

Author SHA1 Message Date
Vegard Kippe
0b6dd93903 Avoid negative time step size after restart (trouble for DRSDT init) 2024-08-28 15:04:15 +02:00
Vegard Kippe
0485bfb47f Set correct episode before initial call to invalidateAndUpdateIntensiveQuantities 2024-08-28 15:04:15 +02:00
Vegard Kippe
8f45cbe4c4 Properly initialize mixing controls after restart. 2024-08-28 15:04:15 +02:00
Vegard Kippe
cc08df226e Update after merging #5527 2024-08-28 15:04:15 +02:00
Bård Skaflestad
9dca8256f3 Split Request Writing Into Stages
This commit introduces helper functions for each individual part of
a convergence report record in the INFOITER file.  In particular, we
create helpers for

  - Time related columns (report step, time step, time &c)
  - CNV pore-volume histogram columns
  - Reservoir convergence metrics (CNV and MB values per phase)
  - Well convergence metrics

This makes the body of the main loop in writeConvergenceRequest()
slightly easier to read and means that we can apply some additional
logic to the CNV pore-volume histograms if the number of values does
not match the expected 3 per type.  In that case we output sentinel
values (e.g., NaN and -1) to signify that the corresponding pieces
of information are unavailable.
2024-08-27 10:50:06 +02:00
Bård Skaflestad
0b40277e01 Revise Convergence Report Collection Procedure
This commit switches the parallel implemenation of function
Opm::gatherConvergenceReport() into using the general serialisation
framework (classes Opm::Serializer<> and Opm::Mpi::Packer).  In
particular, we add serializeOp() functions to each of the types

  - ConvergenceReport
  - ConvergenceReport::ReservoirFailure
  - ConvergenceReport::ReservoirConvergenceMetric
  - ConvergenceReport::WellFailure

and defer the job of converting the objects between in-memory and
byte stream representations to Opm::Serializer<>.  The new special
purpose class CollectConvReports inherits from the latter and uses
its pack() and unpack() member functions, along with its internal
m_buffer data member, to distribute each rank's convergence report
object to all ranks.  We add this feature here, in a very narrowly
scoped use case, to enable testing and experimentation before we
consider adding this distribution mechanism as a general feature in
Opm::MpiSerializer.
2024-08-27 10:50:06 +02:00
Bård Skaflestad
68cc5d917e Output CNV Histogram to INFOITER File
This commit tracks the number of cells and their associate fraction
of the model's "eligible" pore volume (total pore volume in
numerical aquifers subtracted from the model's total pore volume) in
three distinct categories as a function of the non-linear iteration
number:

  - 0: MAX_p { CNV_p } <= strict CNV tolerance
  - 1: MAX_p { CNV_p } \in (strict, relaxed]
  - 2: MAX_p { CNV_p } > relaxed CNV tolerance

We then output these cell counts and pore volume fractions as new
items in the INFOITER file to enable more targeted analysis of the
non-linear convergence behaviour.

To this end, introduce a type alias CnvPvSplit in the
ConvergenceReport and aggregate these across the MPI ranks before we
collect them in the ConvergenceReport objects.

While here, also reduce the amount of repeated logic in
gatherConvergenceReport.cpp through a few local lambdas.
2024-08-27 10:50:06 +02:00
Bård Skaflestad
359e4903d5
Merge pull request #5561 from akva2/janitoring
amgcpr: use override
2024-08-27 09:18:04 +02:00
Arne Morten Kvarving
021d6c2b0c amgcpr: use override 2024-08-27 06:43:00 +02:00
Kjetil Olsen Lye
f97389d1b5
Merge pull request #5554 from multitalentloes/refactor_cuistl
refactor cuistl to gpuistl
2024-08-26 09:55:13 +02:00
Atgeirr Flø Rasmussen
2e15a04db5
Merge pull request #5557 from atgeirr/avoid-cprw-incompatibilities
Intercept CPRW if MICP or polymer injectivity is used.
2024-08-26 09:50:57 +02:00
Markus Blatt
7ebb6e7034
Merge pull request #5547 from lisajulia/feature/action-parsing-strictness
Add action-parsing-strictness command line parameter
2024-08-26 09:06:25 +02:00
Arne Morten Kvarving
4af89f1ced ISTLSolverBda: avoid using deprecated Dune::CollectiveCommunication 2024-08-23 15:10:25 +02:00
Tobias Meyer Andersen
d14fed904a fix typo 2024-08-23 14:42:37 +02:00
Atgeirr Flø Rasmussen
9ccb67ead6 Intercept CPRW if MICP or polymer injectivity is used.
These modeling options are currently incompatible with our CPRW implementation.
2024-08-23 13:08:08 +02:00
Tobias Meyer Andersen
d925d62bf2 refactor cusparsematrixoperations 2024-08-23 11:15:18 +02:00
Arne Morten Kvarving
b5bd290887 BlackoilModel: use appropriate Scalar type 2024-08-23 11:15:03 +02:00
Arne Morten Kvarving
fda7298374 FlowGenericVanguard: optionally instantiate for float 2024-08-23 11:15:03 +02:00
Arne Morten Kvarving
bca05f8f7b ISTLSolverBda: optionally instantiate for float 2024-08-23 11:15:03 +02:00
Arne Morten Kvarving
4d08afd480 BdaBridge: optionally instantiate for float 2024-08-23 11:15:03 +02:00
Arne Morten Kvarving
ecb2cafdd3 rocsparseSolverBackend: optionally instantiate for float 2024-08-23 11:15:03 +02:00
Arne Morten Kvarving
346ba93b66 rocsparsePreconditioner: optionally instantiate for float
rocsparseBILU0: optionally instantiate for float
rocsparseCPR: optionally instantiate for float
2024-08-23 11:15:03 +02:00
Arne Morten Kvarving
3ff678b58a rocsparseCPR: add support for float Scalars 2024-08-23 11:15:03 +02:00
Tobias Meyer Andersen
d2681b26ed refactor opm_cuda_safe_call 2024-08-23 11:12:13 +02:00
Arne Morten Kvarving
61abbc2de9 consistently use Scalar type 2024-08-23 11:04:20 +02:00
Arne Morten Kvarving
43fafc1ada BlackoilMICPModules: fix field prop copy if Scalar is float 2024-08-23 11:04:20 +02:00
Arne Morten Kvarving
6bcdad6ceb rocsparseBILU0: add support for float Scalars 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
644aeb582f rocsparseSolverBackend: add support for float Scalars 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
452a0a0baa rocalutionSolverBackend: optionally instantiate for float 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
c5ddec57d8 rocsparseMatrix: optionally instantiate for float 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
ecc62bbf19 HipKernels: optionally instantiate for float 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
cdad4500c1 amgclSolverBackend: disable for float scalar
for reasons deep down in amgcl, it does not compile. for now
just disable it
2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
7a3a79c11b openclSolverBackend: optionally instantiate for float 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
a0f8cc0aed Preconditioner: optionally instantiate for float
BILU0: optionally instantiate for float
BISAI: optionally instantiate for float
CPR: optionally instantiate for float
CPRCreation: optionally instantiate for float
Misc: optionally instantiate for float
2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
5bab71b8e3 OpenclMatrix: optionally instantiate for float 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
36c544e204 BlockedMatrix: optionally instantiate for float 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
da2a894090 CPR: disable with float Scalars 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
5825612a75 cusparseSolverBackend: optionally instantiate for float 2024-08-23 11:02:23 +02:00
Arne Morten Kvarving
35fb78ea9a cusparseSolverBackend: add float Scalar support 2024-08-23 11:02:23 +02:00
Bård Skaflestad
3dbeed2199
Merge pull request #5550 from akva2/float_support3
Float support in simulators: Batch 3
2024-08-23 10:29:14 +02:00
Tobias Meyer Andersen
85a9ad2b61 refactor cuistl folder names 2024-08-22 15:32:21 +02:00
Tobias Meyer Andersen
5919b417e3 refactor cuview 2024-08-22 15:27:23 +02:00
Tobias Meyer Andersen
fba1858f42 refactor cuvector 2024-08-22 15:20:20 +02:00
Tobias Meyer Andersen
3aa1767548 refactor cusparsematrix 2024-08-22 15:14:33 +02:00
Tobias Meyer Andersen
0c1ea3ee4d refactor cuseqilu0 2024-08-22 15:07:53 +02:00
Bård Skaflestad
93c368cbfa Revise Mixture Density Method for No-Flow Producers
This commit switches the approach introduced in commit eeb1b7e36 (PR
#3169) to using a mobility weighted average of cell level densities
for the connection level mixture densities in no-flow producing
wells.  We also use the recent stoppedOrZeroRateTarget() predicate
to identify those no-flow producing wells instead of inspecting the
connection flow rates.

The mobility weighted average gives a more monotone pressure buildup
for the stopped wells and this is usually what the engineer wants.
This revised approach furthermore needs fewer cell-level dynamic
properties so simplify the computeProperties() signature by
introducing a structure for the property callback functions and
update the callers accordingly.
2024-08-22 14:51:00 +02:00
Bård Skaflestad
586d8e2ddc Generate Property Object Directly
This commit switches computePropertiesForPressures() to return a
Properties object directly instead of populating an object
constructed in the caller.  There is just a single call site for
this function so there's no benefit to using an out parameter here.
While here, also collect the property callbacks into a structure to
simplify the function signature.  This also enables not filling in
the solvent properties unless solvent is active in the run.  Update
caller accordingly.
2024-08-22 14:51:00 +02:00
Bård Skaflestad
6f2ee80e41 Refactor Perforation Pressure Property Helper Function
In particular, split the sections of the main loop out to helper
functions

  - calculatePerforationOutflow() uses the global container factory
    to compute the outflow from each connection
  - initialiseConnectionMixture() computes the 'mix' array depending
    on the local flowing conditions of the connection.  We have
    renamed 'x' and 'mix' arrays to 'currentMixture' and
    'previousMixture' respectively to give more descriptive names in
    the process.

We've also split out the redistribution of the individual phases to
the new private helper functions reapportionGasOilMixture() and
reapportionGasWaterMixture() in order to reduce the cognitive load
of the main loop in computePropertiesForPressures().  While here,
employ pointer arithmetic to expose the underlying structure of the
assignment expressions.
2024-08-22 14:51:00 +02:00
Bård Skaflestad
fa199461b5 Varnish Parts of Well Implementation
In particular

  * Split some long lines
  * Reverse conditions to reduce nesting
  * Mark potentially unused arguments as [[maybe_unused]]
  * Try to remove redundant calculations
  * Mark some objets 'const' where possible
2024-08-22 14:51:00 +02:00
Tobias Meyer Andersen
1721a1071f refactor cuowneroverlapcopy 2024-08-22 14:46:38 +02:00
Tobias Meyer Andersen
158619083e refacor cujac 2024-08-22 14:40:23 +02:00
Tor Harald Sandve
fa610b49a3 Merge pull request #924 from totto82/drsdtcon_pvtnum
support drsdtcon with pvtnum
2024-08-22 14:30:18 +02:00
Tor Harald Sandve
66fd1dfcf3
Merge pull request #5527 from totto82/pvtnum_drdsdtcon
Support deactivation of individual DRSDT/DRVDT/DRSDTCON regions
2024-08-22 14:30:03 +02:00
Tobias Meyer Andersen
d17ee3315b refactor CuDILU 2024-08-22 14:28:33 +02:00
Tobias Meyer Andersen
69897753e8 refactor CuBuffer 2024-08-22 14:12:30 +02:00
Tobias Meyer Andersen
67bc9e8f34 refactor CuBlockPreconditioner 2024-08-22 13:58:35 +02:00
Tobias Meyer Andersen
3f4ae4ddf4 refactor cuistl namespace 2024-08-22 13:52:50 +02:00
Kjetil Olsen Lye
c4f686227b
Merge pull request #5451 from multitalentloes/generalize_thread_block_tuner
Generalize thread block tuner
2024-08-22 12:56:14 +02:00
hnil
ec11bbaac3 Avoid deleting derivative i.e. getting "wrong" matrix in case of zero flux 2024-08-22 11:47:14 +02:00
hnil
23034c0bee Avoid deleting derivatives with zero pressure difference 2024-08-22 11:44:59 +02:00
Tobias Meyer Andersen
8a1dfceeed clang format OpmCuilu0.cpp 2024-08-22 10:24:17 +02:00
Tobias Meyer Andersen
45f6116d5e clang format autotuner 2024-08-22 10:23:36 +02:00
Tobias Meyer Andersen
dcdce71d4b add more explanations 2024-08-22 10:17:53 +02:00
Tobias Meyer Andersen
8b50c90fd1 make use of OpmLog for printing tuning result 2024-08-22 10:07:06 +02:00
Atgeirr Flø Rasmussen
9b4c51de7e
Merge pull request #5553 from jakobtorben/add_support_for_changing_local_solver_in_NLDD
Make local solver in NLDD a runtime specified ISTLSolver
2024-08-22 09:45:32 +02:00
Tor Harald Sandve
b0bfe9f1c1 Adapt to mixControl moving from genericProblem 2024-08-21 16:03:59 +02:00
jakobtorben
1f285ae0d5 Make local solver in NLDD a runtime specified ISTLSolver 2024-08-21 14:24:23 +02:00
Arne Morten Kvarving
267d282d1d NonlinearSolver: optionally instantiate for float 2024-08-21 10:12:25 +02:00
Arne Morten Kvarving
d938d821ad EclGenericWriter: optionally instantiate for float 2024-08-21 10:05:04 +02:00
Arne Morten Kvarving
6a364ea961 GenericOutputBlackoilModule: optionally instantiate for float 2024-08-21 09:56:01 +02:00
Arne Morten Kvarving
aadc5cb69c GenericOutputBlackoilModule: obtain data using appropriate overload 2024-08-21 09:49:22 +02:00
Arne Morten Kvarving
05d37bfbf6 InitStateEquil: optionally instantiate for float 2024-08-21 09:45:11 +02:00
Arne Morten Kvarving
b16fd2f724 EquilibrationHelpers: optionally instantiate for float 2024-08-21 09:43:25 +02:00
Arne Morten Kvarving
bff3dae230 GenericTracerModel: optionally instantiate for float 2024-08-21 09:41:56 +02:00
Arne Morten Kvarving
2245daa0c7 ISTLSolver: optionally instantiate for float 2024-08-21 09:40:24 +02:00
Bård Skaflestad
5914744f7c
Merge pull request #5546 from totto82/fix_no_wells
BUGFIX Fix no wells case
2024-08-21 09:36:16 +02:00
Arne Morten Kvarving
1cc27754d8 FlexibleSolver: optionally instantiate for float
PreconditionerFactory: optionally instantiate for float

these need to go in the same commit due to circular dependencies
2024-08-21 09:34:28 +02:00
Arne Morten Kvarving
d244f49813 FlexibleSolver: throw if umfpack is requested with float Scalar 2024-08-21 09:33:03 +02:00
Arne Morten Kvarving
94e43f6ea9 StandardWellEval: optionally instantiate for float 2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
f6e0c03498 StandardWellEquations: optionally instantiate for float 2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
a7b99651c1 WellContributions: optionally instantiate for float
cuWellContributions: optionally instantiate for float
openclWellContributions: optionally instantiate for float
rocsparseWellContributions: optionally instantiate for float

these need to go in the same commit due to circular dependencies
2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
9f5bad224c openclKernels: optionally instantiate for float 2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
df0a9a4055 MultisegmentWellContribution: optionally instantiate for float 2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
b507c75e75 MultisegmentWellContribution: disable with float Scalars 2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
6f04033142 MultisegmentWellEval: optionally instantiate for float 2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
6f7660905e MultisegmentWellEquations: optionally instantiate for float 2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
fa84eb65c7 MultisegmentWellEquations: throw with float Scalar
UMFPack cannot handle floats
2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
e4e6430644 MultisegmentWellSegments: optionally instantiate for float 2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
39971162a3 MSWellHelpers: optionally instantiate for float 2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
42b8545e51 MSWellhelpers: disable for float Scalar
there is no UMFPack for floats
2024-08-21 09:23:31 +02:00
Arne Morten Kvarving
d28b751742 BlackoilModelParameters: optionally instantiate for float 2024-08-21 09:23:31 +02:00
Bård Skaflestad
5fd5027ebd
Merge pull request #5549 from akva2/actionhandler_float
ActionHandler: instance for float
2024-08-21 09:22:13 +02:00
Tor Harald Sandve
fffa19e757 Only resize drsdt related vectors when needed 2024-08-21 09:17:25 +02:00
Tor Harald Sandve
914f0b8644 Support deactivation of individual DRSDT/DRVDT/DRSDTCON regions 2024-08-21 09:17:25 +02:00
Tor Harald Sandve
e584e05435 Fix shut wells case for output of gas mass injected rates 2024-08-21 08:50:57 +02:00
Atgeirr Flø Rasmussen
908a9b37ff
Merge pull request #5445 from jakobtorben/make_cpr_reuse_option_only_apply_to_cpr
Make CPR reuse setup option only apply to CPR
2024-08-21 08:45:09 +02:00
Bård Skaflestad
e0e60fec8e
Merge pull request #5548 from akva2/float_support2
Support float simulators - batch 2
2024-08-20 18:48:00 +02:00
jakobtorben
5d54c50ba0 Add method for defining if preconditioners should be recreated 2024-08-20 17:57:38 +02:00
Tobias Meyer Andersen
ae4e6a65fc make autotuner use lambda that only depends on blocksize 2024-08-20 15:06:59 +02:00
Tobias Meyer Andersen
14ea44246a add autotuner 2024-08-20 13:35:33 +02:00
Arne Morten Kvarving
d762f2b29c ActionHandler: optionally instantiate for float 2024-08-20 12:31:10 +02:00
Arne Morten Kvarving
bc1fd4f01c BlackoilWellModelGeneric: optionally instantiate for float
BlackoilWellModelRestart: optionally instantiate for float
these need to be in the same commit due to circular dependencies
2024-08-20 12:31:07 +02:00
Arne Morten Kvarving
dcbd1c7baf BlackoilWellModelGeneric: convert input data to appropriate Scalar type 2024-08-20 12:31:07 +02:00
Kai Bao
5866e9af84
Merge pull request #5535 from GitPaean/relocate_mixing_control
relocating mixControls_ form FlowGenericProblem to FlowProblem
2024-08-20 11:50:39 +02:00
Arne Morten Kvarving
62daa16304 ParallelWBPCalculation: optionally instantiate for float 2024-08-20 11:41:12 +02:00
Arne Morten Kvarving
35b93eed14 ParallelPAvgCalculator: optionally instantiate for float 2024-08-20 11:36:24 +02:00
Arne Morten Kvarving
86b3879806 ParallelPAvgDynamicSourceData: optionally instantiate for float 2024-08-20 11:08:34 +02:00
Lisa Julia Nebel
d02f84afb7 Add action-parsing-strictness 2024-08-20 10:50:56 +02:00
Atgeirr Flø Rasmussen
1615719993
Merge pull request #5110 from totto82/fixDrift
Remove check for active wells for drift compensation
2024-08-20 09:53:25 +02:00
Bård Skaflestad
afe34e1868
Merge pull request #5542 from akva2/float_support1
Add float support to simulators: Batch 1
2024-08-20 09:29:40 +02:00
Bård Skaflestad
36494d19f8
Merge pull request #5541 from atgeirr/warn-petgrid
More helpful message for PETGRID.
2024-08-19 17:03:25 +02:00
Arne Morten Kvarving
14bc929fb0 ParallelOverlappingILU0: optionally instantiate for float 2024-08-19 13:51:15 +02:00
Arne Morten Kvarving
f94f1d1012 MILU: optionally instantiate for float 2024-08-19 13:50:08 +02:00
Arne Morten Kvarving
554bb7d8b7 StandardWellConnections: optionally instantiate for float 2024-08-19 13:47:49 +02:00
Arne Morten Kvarving
5c37e497cc StandardWellAssemble: optionally instantiate for float 2024-08-19 13:46:50 +02:00
Arne Morten Kvarving
3e6afbe480 StandardWellPrimaryVariables: optionally instantiate for float 2024-08-19 13:45:34 +02:00
Arne Morten Kvarving
bee3dea736 WellConvergence: optionally instantiate for float 2024-08-19 13:44:35 +02:00
Arne Morten Kvarving
7105fb8601 MultisegmentWellAssemble: optionally instantiate for float 2024-08-19 13:41:17 +02:00
Arne Morten Kvarving
aceadc5e88 WellAssemble: optionally instantiate for float 2024-08-19 13:40:12 +02:00
Arne Morten Kvarving
db3d552fe7 MultisegmentWellPrimaryVariables: optionally instantiate for float 2024-08-19 13:37:59 +02:00
Arne Morten Kvarving
41e93ba730 MultisegmentWellGeneric: optionally instantiate for float 2024-08-19 13:37:14 +02:00
Arne Morten Kvarving
26bb0c3d85 WellInterfaceIndices: optionally instantiate for float 2024-08-19 13:36:30 +02:00
Arne Morten Kvarving
610abd0b6c WellInterfaceFluidSystem: optionally instantiate for float 2024-08-19 13:35:43 +02:00
Arne Morten Kvarving
6fa7f970f0 WellGroupConstraints: optionally instantiate for float 2024-08-19 13:34:57 +02:00
Arne Morten Kvarving
66c445b36e WellConstraints: optionally instantiate for float 2024-08-19 13:34:12 +02:00
Arne Morten Kvarving
9080130d80 WellGroupControls: optionally instantiate for float 2024-08-19 13:33:08 +02:00
Arne Morten Kvarving
a30b0a3cf5 RateConverter: optionally instantiate for float 2024-08-19 13:32:21 +02:00
Arne Morten Kvarving
571053a00f BlackoilWellModelGuideRates: optionally instantiate for float 2024-08-19 13:29:03 +02:00
Arne Morten Kvarving
bdcccf187c GasLiftStage2: optionally instantiate for float 2024-08-19 13:28:13 +02:00
Arne Morten Kvarving
ef1ff30a97 GasLiftSingleWellGeneric: optionally instantiate for float 2024-08-19 13:27:24 +02:00
Arne Morten Kvarving
607160a47a GasLiftGroupInfo: optionally instantiate for float 2024-08-19 13:26:23 +02:00
Arne Morten Kvarving
0b5a5e754c GasLiftCommon: optionally instantiate for float 2024-08-19 13:25:24 +02:00
Arne Morten Kvarving
4264e21135 WellProdIndexCalculator: optionally instantiate for float 2024-08-19 13:23:59 +02:00
Arne Morten Kvarving
f1621e1a2b WellFilterCake: optionally instantiate for float 2024-08-19 13:23:12 +02:00
Arne Morten Kvarving
cd9e8c8c6c GroupEconomicLimitsChecker: optionally instantiate for float 2024-08-19 13:22:22 +02:00
Arne Morten Kvarving
1514b466d8 WGState: optionally instantiate for float 2024-08-19 13:21:18 +02:00
Arne Morten Kvarving
781f978b31 BlackoilWellModelConstraints: optionally instantiate for float 2024-08-19 13:20:29 +02:00
Arne Morten Kvarving
352beaf2ae FlowUtils: optionally instantiate for float 2024-08-19 13:19:39 +02:00
Arne Morten Kvarving
05b997dc0f EclTimeSteppingParams: optionally instantiate for float 2024-08-19 13:18:55 +02:00
Atgeirr Flø Rasmussen
7795640bb6 More helpful message for PETGRID. 2024-08-19 13:18:50 +02:00
Arne Morten Kvarving
e0f9fefbc7 FlowProblemParameters: optionally instantiate for float 2024-08-19 13:18:03 +02:00
Arne Morten Kvarving
9d0670a62d WellTest: optionally instantiate for float
WellInterfaceGeneric: optionally instantiate for float
WellBhpThpCalculator: optionally instantiate for float
WellHelpers: optionally instantiate for float

these need to go together due to circular dependencies
2024-08-19 13:15:24 +02:00
Arne Morten Kvarving
6a71f139b9 VFPInjProperties: optionally instantiate for float 2024-08-19 13:09:42 +02:00
Arne Morten Kvarving
aaf0e81027 FractionCalculator: optionally instantiate for float
WellGroupHelpers: optionally instantiate for float

circular dependencies so these need to go in the same commit
2024-08-19 13:09:42 +02:00
Arne Morten Kvarving
951475f69d VFPProdProperties: optionally instantiate for float 2024-08-19 13:09:42 +02:00
Arne Morten Kvarving
b3ce375c79 VFPHelpers: optionally instantiate for float 2024-08-19 13:09:42 +02:00
Arne Morten Kvarving
11158a219a WellState: optionally instantiate for float 2024-08-19 13:09:42 +02:00
Arne Morten Kvarving
5b4c40c922 SingleWellState: optionally instantiate for float 2024-08-19 13:09:42 +02:00
Arne Morten Kvarving
8ddd898666 TargetCalculator: optionally instantiate for float 2024-08-19 13:09:42 +02:00
Arne Morten Kvarving
836436ccdc GroupState: optionally instantiate for float 2024-08-19 13:09:42 +02:00