Arne Morten Kvarving
100a7b0582
rename computeConnectionDensities to computeDensities
...
that it applies to connections are now implied by class
2022-11-25 12:55:39 +01:00
Arne Morten Kvarving
5d1b5d9426
rename computeConnectionPressureDelta to computePressureDelta
...
that it applies to connections are now implied by class
2022-11-25 12:55:39 +01:00
Arne Morten Kvarving
0d72bba326
move computeConnectionDensities to StandardWellConnections
...
this necessitates expanding the template parameter list
2022-11-25 12:55:36 +01:00
Arne Morten Kvarving
7cadeb5206
changed: move StandardWellConnections out of inheritance hierarchy
...
instead hold a member in StandardWellEval
2022-11-25 12:54:56 +01:00
Arne Morten Kvarving
b08c165384
rename StandardWellGeneric to StandardWellConnections
2022-11-25 12:54:56 +01:00
Arne Morten Kvarving
0389465bbf
StandardWellGeneric: clean includes and forwards
2022-11-25 12:54:53 +01:00
Arne Morten Kvarving
c7016854d9
changed: make the deck an implementation detail in Opm::readDeck
2022-11-24 13:00:38 +01:00
Arne Morten Kvarving
f4f8c033d8
EclGenericVanguard: remove deck member
2022-11-24 12:10:52 +01:00
Arne Morten Kvarving
4f6665076c
StandardWellAssemble: simplify by using primary variables class
...
- pass primary variables as parameter
- use the evaluation type
2022-11-23 21:19:06 +01:00
Arne Morten Kvarving
d294bbabac
EclGenericThresholdPressure: remove deck member
2022-11-23 12:54:40 +01:00
Arne Morten Kvarving
b325fe65aa
make THPRESFT support non-experimental
2022-11-23 12:54:40 +01:00
Arne Morten Kvarving
a7c0661669
changed: use internalized THPRESFT keyword
2022-11-23 12:54:40 +01:00
Arne Morten Kvarving
473598c791
changed: remove EclProblem::checkDeckCompatibility
...
these checks are disabled and do not add anything new,
as the checks of value here are also performed elsewhere
2022-11-23 10:58:33 +01:00
Arne Morten Kvarving
3cd87a8c89
StandardWellPrimaryVariables: store values as Scalar
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
8e3121113c
drop unnecessary wrapper StandardWell::updateExtraPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
f64628f72d
StandardWellPrimaryVariables: make data members private
...
and add generic read-only accessors
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
4bbcdf0646
add checkFinite to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
999d4c6be9
add StandardWellPrimaryVariables::updateNewtonPolyMW
...
extracted from StandardWell::updatePrimaryVariablesNewton
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
23a8aed4e8
move getWQTotal to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
fbf99889b2
move getBhp to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
ff26a9e001
remove StandardWell::updatePrimaryVariables
...
no need for the wrapper any longer as the implementation
is now in StandardWellPrimaryVariables.
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
b5f5a24af6
relaxationFactorFractionsForProducer: no need to pass values any longer
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
bc3680f822
updateNewton: avoid copying
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
e5e6e21122
relaxationFactorRate: no need to pass entire vector
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
2fbc699007
make relaxationFactorRate an anon helper in StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
3f6c4922b0
move updatePrimaryVariablesNewton to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
0cddc4516e
make relaxationFactorFractions an anon helper in StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
7b8e88bdd5
move relaxationFactorFractionsForProducer to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
cd3388f7c0
move processFractions to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
435bd67732
move getQs to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
1aa74a9830
move wellSurfaceVolumeFraction to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
2fb53a4ef6
move wellVolumeFractionScaled to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
d6a6671eb0
move wellVolumeFraction to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
93a151f6e1
move (most of) updatePrimaryVariables to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
f55d4334f1
move (most of) updateWellStateFromPrimaryVariables to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
412e561cd8
move updateWellStateFromPrimaryVariablesPolyMW to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
f964169914
move updatePrimaryVariablesPolyMW to StandardWellPrimaryVariables
2022-11-22 13:11:17 +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
3033f3784b
changed: make StandardWellEquations data members private
...
use a friend declaration for StandardWellEquationAccess to
give the assembler access to the matrices/vectors.
2022-11-22 12:22:18 +01:00
Arne Morten Kvarving
5eac7cae4e
added: StandardWellEquations::residual()
...
this returns a const reference to the residual vector.
use this in StandardWellEval::getWellConvergence
2022-11-22 12:22:18 +01:00
Arne Morten Kvarving
5bab68cb1f
added: StandardWellEquationAccess
...
this is a proxy class for accessing the equation system
in StandardWellAssemble.
use the new class for vector/matrix access in StandardWellAssemble.
2022-11-22 12:22:18 +01:00
Arne Morten Kvarving
68bc90b3be
added: StandardWellAssemble::assembleSourceEq
...
extracted from StandardWell::assembleWellEqWithoutIterationImpl
2022-11-22 12:22:18 +01:00
Arne Morten Kvarving
5bbf205619
added: StandardWellAssemble::asembleZFracEq
...
extracted from StandardWell::assembleWellEqWithoutIterationImpl
2022-11-22 12:22:18 +01:00
Arne Morten Kvarving
f720cc6dde
added: StandardWellAssemble::assemblePerforationEq
...
extracted from StandardWell::assembleWellEqWithoutIterationImpl
2022-11-22 12:22:18 +01:00
Arne Morten Kvarving
57ecd2a5e9
added: StandardWellAssemble::assembleInjectivityEq
...
extracted from StandardWell::handleInjectivityEquations
2022-11-22 12:22:18 +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
d2c028fb74
StandardWell_impl.hpp: remove some unused headers
2022-11-22 10:37:41 +01:00
Arne Morten Kvarving
4b4898d6ec
added: StandardWellEquations::sumDistributed
...
this sums up the global equation system for distributed wells
2022-11-22 10:37:41 +01:00
Arne Morten Kvarving
e9ed80d644
added: StandardWellEquations::extractCPRPressureMatrix()
...
this adds the cpr pressure matrix to a matrix.
this is the core of StandardWellEval::addWellPressureEquations
use the new method in the implementation.
2022-11-22 10:37:41 +01:00
Arne Morten Kvarving
b24f22312e
added: StandardWellEquations::getNumBlocks()
...
this returns the number of blocks in in B/C matrices.
use the new method in the well implementation.
2022-11-22 10:37:40 +01:00
Arne Morten Kvarving
f2d8a073f9
added: StandardWellEquations::extract(SparseMatrixAdapter)
...
this adds the well matrices to a sparse matrix adapter.
this is the core of StandardWellEval::addWellContributions.
use the new method in the implementation.
2022-11-22 10:36:54 +01:00
Arne Morten Kvarving
65efe8e1fc
added: StandardWellEquations::extract(WellContributions&)
...
this adds the well matrices to a WellContributions object.
this is the core of StandardWellEval::addWellContributions.
use the new method in the implementation.
2022-11-22 10:36:54 +01:00
Arne Morten Kvarving
40640e9da6
added: StandardWellEquations::recoverSolutionWell()
...
this recovers the well solution from a solution vector.
use the new method in the well implementation.
2022-11-22 10:36:54 +01:00
Arne Morten Kvarving
daf0f90fe5
added: StandardWellEquations::solve()
...
this applies the inverted D matrix to the residual vector.
use the new method in the well implementation.
2022-11-22 10:36:54 +01:00
Arne Morten Kvarving
83c41e3f9c
added: StandardWellEquations::invert()
...
this inverts the D matrix.
use the new method in the well implementation.
2022-11-22 10:36:54 +01:00
Arne Morten Kvarving
033718f027
added: StandardWellEquations::apply(r)
...
this applies the equation system to a vector.
use the new method in the well implementation.
2022-11-22 10:36:54 +01:00
Arne Morten Kvarving
21bb4dc955
added: StandardWellEquations::apply(x,Ax)
...
this applies the equation system to a vector.
use the new method in the well implementation.
2022-11-22 10:36:54 +01:00
Arne Morten Kvarving
97d158da38
added: StandardWellEquations::init
...
this initializes the equation system.
use the new method in the well implementation.
2022-11-22 10:36:54 +01:00
Arne Morten Kvarving
d05081417e
added: StandardWellEquations::clear
...
this zeros the equation system.
use the new method in the well implementation.
2022-11-22 10:36:54 +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
Arne Morten Kvarving
8a32d6bf33
simplify instantations
...
more readable
2022-11-21 12:48:50 +01:00
Arne Morten Kvarving
3c31b7bafe
Merge pull request #4271 from Tongdongq/remove_fpga
...
Remove fpgaSolver
2022-11-17 10:57:38 +01:00
Arne Morten Kvarving
d7c468575b
disable flow_alugrid in buildsystem if dune-alugrid was not found
2022-11-15 13:52:02 +01:00
Arne Morten Kvarving
d15c2607f5
fixed: eclalugridvanguard did not build in serial
...
while the comm object is implicitly castable to a mpi_comm
with mpi, it is not implicitly castable to a no_comm
without.
2022-11-15 11:25:54 +01:00
Arne Morten Kvarving
f7de591682
EclOutputBlackoilModule: explicitly cast to int to avoid narrowing warning
2022-11-14 15:40:57 +01:00
Arne Morten Kvarving
f9f6fdb3bf
BlackoilAquiferModel: only include alugrid if it is to be used
2022-11-14 15:11:12 +01:00
Arne Morten Kvarving
4bbb9656b0
EclProblem: use of alugrid is known at compile time
...
use the proper define, no need for type gymnastics
2022-11-14 15:10:59 +01:00
Arne Morten Kvarving
73b6c9fdf8
EclTransmissibility: no need to include alugrid in header
2022-11-14 15:07:34 +01:00
Arne Morten Kvarving
e50aec63d8
EclGenericWriter: no need to include alugrid in header
2022-11-14 15:06:27 +01:00
Arne Morten Kvarving
bdb2738034
ISTLSolverEbos: instance for ALUGrid
2022-11-14 14:54:11 +01:00
Arne Morten Kvarving
35b66886a9
changed: pass the actual update value to relaxationFactorRate
...
this to avoid ussage of BVectorWell in interface. in preparation
for moving BVectorWell out of the well hierarchy.
2022-11-04 14:57:11 +01:00
Arne Morten Kvarving
26d9f18687
changed: move isPressureControlled to WellInterfaceGeneric
...
no typetag dependence. also no need for this to be virtual
2022-11-04 14:24:19 +01:00
Arne Morten Kvarving
0e2f7649e2
improve encapsulation
2022-11-03 15:47:38 +01:00
Arne Morten Kvarving
9ce8d1ceca
adjust for ILU reorder removal
2022-11-03 15:47:38 +01:00
Arne Morten Kvarving
b700ec9b53
rename WellInterfaceEval to WellAssemble
2022-11-01 12:55:00 +01:00
Arne Morten Kvarving
411e4d07e7
WellInterfaceEval: separate from inheritance hierarcy
2022-11-01 11:45:15 +01:00
Arne Morten Kvarving
97367a1e95
move checkIndividualConstraints to WellConstraints
2022-11-01 08:57:02 +01:00
Arne Morten Kvarving
e884778e46
move activeInjectionConstraint to WellConstraints
2022-11-01 08:57:01 +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
Arne Morten Kvarving
796aa51e79
changed: move calculateBhpFromThp to WellBhpThpCalculator
2022-10-31 13:16:51 +01:00
Arne Morten Kvarving
0577516cfe
changed: move updateThp to WellBhpThpCalculator
2022-10-31 13:16:16 +01:00
Arne Morten Kvarving
a4df84f785
fixed: guard against invalid dereference in getRho
2022-10-31 13:16:16 +01:00
Arne Morten Kvarving
e8152a1b65
changed: tidy up computeBhpAtThpLimitProdWithAlq interface
...
put deferred_logger at the end of the parameter list.
similar to the rest of this family of methods
2022-10-31 13:16:16 +01:00
Arne Morten Kvarving
42fff132b0
changed: drop wrapper MultisegmentWellGeneric::computeBhpAtThpLimitProdWithAlq
2022-10-31 13:16:16 +01:00
Arne Morten Kvarving
db05f1d73f
changed: drop wrapper StandardWellGeneric::computeBhpAtThpLimitProdWithAlq
2022-10-31 13:16:15 +01:00
Arne Morten Kvarving
f214ccc138
changed: move computeBhpFromThpLimitInj to WellBhpThpCalculator
2022-10-31 13:15:56 +01:00
Arne Morten Kvarving
6e214557e2
changed: move computeBhpFromThpLimitProd to WellBhpThpCalculator
2022-10-31 13:15:18 +01:00
Arne Morten Kvarving
4fcb1e9d37
changed: move calculateThpFromBhp to WellBhpThpCalculator
2022-10-31 13:15:18 +01:00
Arne Morten Kvarving
f7f4352b68
changed: move mostStrictBhpFromBhpLimits to WellBhpThpCalculator
2022-10-31 13:15:18 +01:00
Arne Morten Kvarving
d4e06536a0
changed: move getTHPConstraint to WellBhpThpCalculator
2022-10-31 13:15:18 +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
726e6699da
move checkGroupConstraints into WellGroupConstraints
2022-10-31 13:14:51 +01:00
Arne Morten Kvarving
75dad9f4c4
move checkGroupConstraintsProd into WellGroupConstraints
2022-10-31 13:14:51 +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
7d72af43de
BlackoilWellModelGeneric: use fmt::format
2022-10-31 11:07:20 +01:00
Arne Morten Kvarving
6a69a67f27
Merge pull request #4218 from akva2/use_return_value
...
changed: use return value
2022-10-31 11:06:54 +01:00
Arne Morten Kvarving
de13e5018a
BlackoilWellModelConstraints: use fmt::format
2022-10-31 10:46:50 +01:00
Arne Morten Kvarving
f367e4fb7b
changed: use return value
...
no reason to pass a reference here, just use return
2022-10-31 10:35:52 +01:00
Arne Morten Kvarving
6f49aee719
move getGroupProductionTargetRate into WellGroupControls
2022-10-31 09:08:35 +01:00
Arne Morten Kvarving
2d4c522082
move getGroupInjectionTargetRate into WellGroupControls
2022-10-31 09:08:35 +01:00