Arne Morten Kvarving
99e5dab134
BlackoilWellModelGeneric: avoid use of sstream
2023-01-02 15:24:16 +01:00
Arne Morten Kvarving
17d54c1416
setupZoltanParams: avoid use of sstream
2023-01-02 15:24:03 +01:00
Arne Morten Kvarving
4abf4e6d38
TimeStepControl: avoid use of sstream
2023-01-02 15:23:48 +01:00
Arne Morten Kvarving
527280ab28
AdaptiveTimeSteppingEbos: avoid use of sstream
2023-01-02 15:23:34 +01:00
Arne Morten Kvarving
f00ebc8b1c
setupPropertyTree: avoid use of sstream
2023-01-02 15:23:14 +01:00
Arne Morten Kvarving
48bdf6f14c
add missing sstream includes
2023-01-02 15:21:42 +01:00
Arne Morten Kvarving
e25d77f705
WellContributions: avoid use of sstream
2023-01-02 15:19:40 +01:00
Arne Morten Kvarving
bcf64b4be8
PreconditionerFactory: avoid use of sstream
2023-01-02 15:19:26 +01:00
Arne Morten Kvarving
ccce1cfe86
OwningTwoLevelPreconditioner: avoid use of sstream
2023-01-02 15:19:08 +01:00
Arne Morten Kvarving
6d033fcf56
MILU: avoid use of sstream
2023-01-02 15:18:50 +01:00
Arne Morten Kvarving
4a0bdc38e1
ISTLSolverEbos: avoid use of sstream
2023-01-02 15:18:34 +01:00
Arne Morten Kvarving
52d871f998
FlexibleSolver: avoid use of sstream
2023-01-02 15:18:10 +01:00
Arne Morten Kvarving
b148b454c6
NonlinearSolverEbos: avoid use of sstream
2023-01-02 15:17:49 +01:00
Arne Morten Kvarving
1c2e186017
always include Evaluation.hpp
...
even if we are using the dynamic specialization
2022-12-23 13:34:35 +01:00
Arne Morten Kvarving
be7f94b731
include Math.hpp where required
2022-12-23 13:34:35 +01:00
Arne Morten Kvarving
254f9c0388
DeferredLoggingHelpers: avoid using stringstream
2022-12-23 09:40:10 +01:00
Arne Morten Kvarving
a020a993b5
WellInterface: use {fmt} to format error messages
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
a25479e5c2
WellInterfaceGeneric: use {fmt} to format error messages
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
8d81588ea4
WellConvergence: avoid use of stringstream to format error messages
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
5c22d2f50c
WellAssemble: avoid use of stringstream to format error messages
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
a82b5aa474
StandardWell: pull fmt in impl file
...
it is not used in the interface.
no real change to the code as such, but it better reflects the use.
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
2dbfeb6038
StandardWell: use {fmt} to format error messages
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
59e5642678
StandardWellPrimaryVariables: use {fmt} to format error messages
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
4c3d933835
MultisegmentWell: use {fmt} to format error messages
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
dd9e2ad66a
MultisegmentWellSegments: use {fmt} to format error messages
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
3083525e8e
MultisegmentWellEval: use {fmt} to format error messages
2022-12-22 08:35:27 +01:00
Arne Morten Kvarving
9e789fc144
MultisegmentWellEval: remove unused headers
2022-12-22 08:35:27 +01:00
Arne Morten Kvarving
a631762d17
GasLiftSingleWell: pull fmt in impl file
...
it is not used in the interface.
no real change to the code as such, but it better reflects the use.
2022-12-22 08:35:27 +01:00
Arne Morten Kvarving
a8d2bbeb4a
GasLiftCommon: avoid pulling fmt in header
2022-12-22 08:35:27 +01:00
Arne Morten Kvarving
e7f921825c
BlackoilWellModel: use {fmt} to format error message
2022-12-22 08:35:27 +01:00
Arne Morten Kvarving
5a839e8f93
MultisegmentWellSegments: store properties as Scalar
...
instead of literal double
2022-12-19 16:03:54 +01:00
Arne Morten Kvarving
c1e05fae18
MultisegmentWellSegments: make members private
...
and add various read-only accessors
2022-12-19 16:03:54 +01:00
Arne Morten Kvarving
12b15b5038
move updateUpwindingSegments to MultisegmentWellSegments
2022-12-19 16:03:54 +01:00
Arne Morten Kvarving
4b3a6f37d5
move calculation part of handleAccelerationPressureLoss to MultisegmentwellSegments
2022-12-19 16:03:54 +01:00
Arne Morten Kvarving
70702738cc
move pressureDropValve to MultisegmentWellSegments
2022-12-19 16:03:54 +01:00
Arne Morten Kvarving
fb0ec18aba
move pressureDropAutoICD to MultisegmentWellSegments
2022-12-19 16:03:54 +01:00
Arne Morten Kvarving
133f2a92bb
move pressureDropSpiralICD to MultisegmentWellSegments
2022-12-19 16:03:54 +01:00
Arne Morten Kvarving
4acfec9d1d
move getFrictionPressureLoss to MultisegmentWellSegments
2022-12-19 16:03:54 +01:00
Arne Morten Kvarving
ef7b2aca4e
move computeSegmentFluidProperties to MultisegmentWellSegments
2022-12-19 16:03:54 +01:00
Arne Morten Kvarving
4a9cedf452
move getSegmentSurfaceVolume to MultisegmentWellSegments
2022-12-19 16:03:53 +01:00
Arne Morten Kvarving
9c19120855
move getHydroPressureLoss to MultisegmentWellSegments
2022-12-19 16:03:27 +01:00
Arne Morten Kvarving
40adc0ddbd
move segment_depth_diffs_ to MultisegmentWellSegments
2022-12-19 16:03:27 +01:00
Arne Morten Kvarving
5755c94256
move segment_inlets_ to MultisegmentWellSegments
2022-12-19 16:03:27 +01:00
Arne Morten Kvarving
2766427df0
move segment_perforations_ and perforation_segment_depth_diffs_ to MultisegmentWellSegments
2022-12-19 16:03:26 +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
bc0610171d
MultisegmentWellEval: use symbols from primary variables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
654c252bb8
MultisegmentWellAssemble: simplify assembleControlEq
...
by passing primary variables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
3b80b913da
MultisegmentWellPrimaryVariables: make data members private
...
and add generic read-only accessor to evaluations
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
e1cd54b267
MultisegmentWell: move updateUpwindingSegments to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
37607c570a
MultisegmentWell: move updateWellStateFromPrimaryVariables to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
dbdcb2d5ce
MultisegmentWell: move getWQTotal to MultisegmentWellPrimaryVariables
...
also drop otherwise unused getSegmentWQTotal
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
6b47f9bf1a
MultisegmentWell: move getQs to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
62297b2a63
MultisegmentWell: move getSegmentRate to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
99020fe33b
MultisegmentWell: move getBhp to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
bb377c0a47
MultisegmentWell: move getSegmentPressure to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
f99ecd15ac
MultisegmentWell: move getSegmentRateUpwinding to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
8e9b004cfc
MultisegmentWell: move surfaceVolumeFraction to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
2e2a49b935
MultisegmentWell: move volumeFractionScaled to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
e539614fff
MultisegmentWell: move volumeFraction to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
b112a793c5
MultisegmentWell: move updatePrimaryVariablesNewton to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
6404d69201
MultisegmentWell: move processFractions to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +01:00
Arne Morten Kvarving
5212e9c100
MultisegmentWell: move updatePrimaryVariables to MultisegmentWellPrimaryVariables
2022-12-19 13:05:39 +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
Arne Morten Kvarving
f4c2aa3a35
MultisegmentWell: primary variables no longer needs to be marked mutable
2022-12-16 15:07:46 +01:00
Arne Morten Kvarving
f782673b2d
MultisegmentWell: make updatePrimaryVariables non-const
...
this will obviously update state
2022-12-16 15:07:35 +01:00
Arne Morten Kvarving
ef992080cf
MultisegmentWell: make updatePrimaryVariablesNewton non-const
...
this will obviously update state
2022-12-16 15:07:12 +01:00
Arne Morten Kvarving
ac91db281a
MultisegmentWell: make processFractions non-const
...
this updates state
2022-12-16 15:06:36 +01:00
Arne Morten Kvarving
6b61af21b3
MultisegmentWell: make initPrimaryVariablesEvaluation non-const
...
this will obviously update state
2022-12-16 15:06:03 +01:00
Arne Morten Kvarving
10a671e88c
MultisegmentWell: make updateWellState non-const
...
this will obviously update state
2022-12-16 15:05:06 +01:00
Arne Morten Kvarving
ee8b4cac02
add missing include after upstream header removal
2022-12-13 15:38:10 +01:00
Arne Morten Kvarving
f17a90170d
use exception classes from opm-common
2022-12-13 12:56:13 +01:00
Arne Morten Kvarving
dc7cddab64
adjust to upstream GasPvtApproach enum changes
2022-12-12 19:17:51 +01:00
Arne Morten Kvarving
9a9dfd2e1d
adjust to upstream OilPvtApproach enum changes
2022-12-12 19:09:37 +01:00
Arne Morten Kvarving
e390ce5149
adjust to upstream WaterPvtApproach enum changes
2022-12-12 19:00:19 +01:00
Arne Morten Kvarving
e4233daf72
add missing include
...
after upstream header removals
2022-12-10 01:58:32 +01:00
Arne Morten Kvarving
134cb205e2
RelpermDiagnostics: add more forwards
...
adjust to upstream header-in-header removals
2022-12-09 22:17:09 +01:00
Arne Morten Kvarving
b102103e26
changed: make MultisegmentWellEquations data members private
...
use a friend declaration for MultisegmentWellEquationAccess to
give the assembler access to the matrices/vectors.
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
2d154b50bb
added: MultisegmentWellEquations::residual()
...
this returns a const reference to the residual vector.
use this in MultisegmentWellEval
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
4545761374
added: MultisegmentWellEquationAccess
...
this is a proxy class for accessing the equation system
in MultisegmentWellAssemble.
use the new class for vector/matrix access in MultisegmentWellAssemble.
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
6011a42246
added: MultisegmentWellAssemble::assemblePerforationEq
...
extracted from MultisegmentWell::assembleWellEqWithoutIteration
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
b1d1e47e28
added: MultisegmentWellAssemble::assembleInflowTerm
...
extracted from MultisegmentWell::assembleWellEqWithoutIteration
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
d5bbccde65
added: MultisegmentWellAssemble::assembleOutflowTerm
...
extracted from MultisegmentWell::assembleWellEqWithoutIteration
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
517dd49771
added: MultisegmentWellAssemble::assembleAccumulationTerm
...
extracted from MultisegmentWell::assembleWellEqWithoutIteration
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
1952ca1e5c
use MultisegmentWellAssemble::assemblePressureEq in assembleICDPressureEq
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
32dce644d3
added: MultisegmentWellAssemble::assembleTrivialEq
...
extracted from MultisegmentWellEval::assembleICDPressureEq
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
05a4ca85a7
added: MultisegmentWellAssemble::assemblePressureEq
...
extracted from MultisegmentWellEval::assembleDefaultPressureEq
2022-12-05 11:07:09 +01:00
Arne Morten Kvarving
d64508f3b8
added: MultisegmentWellAssemble::assemblePressureLoss
...
extracted from MultisegmentWellEval::handleAccelerationPressureLoss
2022-12-05 11:07: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
97e1cdb662
added: MultisegmentWellEquations::extractCPRPressureMatrix()
...
this adds the cpr pressure matrix to a matrix.
this is the core of MultisegmentWell::addWellPressureEquations
use the new method in the implementation.
2022-12-05 10:13:55 +01:00
Arne Morten Kvarving
de8eedb9a6
added: MultisegmentWellEquations::extract(SparseMatrixAdapter)
...
this adds the well matrices to a sparse matrix adapter.
this is the core of MultisegmentWell::addWellContributions.
use the new method in the implementation.
2022-12-05 10:13:55 +01:00
Arne Morten Kvarving
4a2fcd5f09
added: MultisegmentWellEquations::extract(WellContributions&)
...
this adds the well matrices to a WellContributions object.
use the new method in the implementation.
2022-12-05 10:13:55 +01:00
Arne Morten Kvarving
d50aaf8ed4
added: MultisegmentWellEquations::recoverSolutionWell()
...
this recovers the well solution from a solution vector.
use the new method in the well implementation.
2022-12-05 10:13:55 +01:00
Arne Morten Kvarving
bc312d1117
added: MultisegmentWellEquations::solve()
...
this applies the inverted D matrix to the residual vector.
use the new method in the well implementation.
2022-12-05 10:13:55 +01:00
Arne Morten Kvarving
a7cb444328
MSWellHelpers: simplify interfaces
...
- avoid passing the matrix, only pass the solver. possible
since setting up the solver is not done in here any more.
- avoid passing shared_ptr's
2022-12-05 10:13:55 +01:00
Arne Morten Kvarving
e67e58d0c8
added: MultisegmentWellEquations::createSolver
...
this applies compute the LU decomposition of the D matrix
2022-12-05 10:13:53 +01:00
Arne Morten Kvarving
4b67b9e0de
adjust jenkins script and buildsystem
...
remove opm-material from upstreams / dependencies
2022-12-01 14:10:43 +01:00
Arne Morten Kvarving
abf5f94561
added: MultisegmentWellEquations::apply(r)
...
this applies the equation system to a vector.
use the new method in the well implementation.
2022-12-01 10:36:40 +01:00
Arne Morten Kvarving
f2acbccc1a
added: MultisegmentWellEquations::apply(x,Ax)
...
this applies the equation system to a vector.
use the new method in the well implementation.
2022-12-01 10:36:40 +01:00
Arne Morten Kvarving
8fe6b3968e
added: MultisegmentWellEquations::init
...
this initializes the equation system.
use the new method in the well implementation.
2022-12-01 10:36:40 +01:00
Arne Morten Kvarving
ade6d99289
add two accessors in MultisegmentWellGeneric
...
for segment inlets and segment perforations
2022-12-01 10:25:59 +01:00