StandardWellConnections: remove unnecessary Scalar template parameter

use the Scalar type from the FluidSystem
This commit is contained in:
Arne Morten Kvarving 2024-02-22 15:17:09 +01:00
parent 9ab6ab27a0
commit 2fb05a4996
3 changed files with 33 additions and 32 deletions

View File

@ -43,8 +43,8 @@
namespace Opm namespace Opm
{ {
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
StandardWellConnections<FluidSystem,Indices,Scalar>:: StandardWellConnections<FluidSystem,Indices>::
StandardWellConnections(const WellInterfaceIndices<FluidSystem,Indices,Scalar>& well) StandardWellConnections(const WellInterfaceIndices<FluidSystem,Indices,Scalar>& well)
: well_(well) : well_(well)
, perf_densities_(well.numPerfs()) , perf_densities_(well.numPerfs())
@ -52,8 +52,8 @@ StandardWellConnections(const WellInterfaceIndices<FluidSystem,Indices,Scalar>&
{ {
} }
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
void StandardWellConnections<FluidSystem,Indices,Scalar>:: void StandardWellConnections<FluidSystem,Indices>::
computePressureDelta() computePressureDelta()
{ {
// Algorithm: // Algorithm:
@ -88,8 +88,8 @@ computePressureDelta()
well_.parallelWellInfo().partialSumPerfValues(beg, end); well_.parallelWellInfo().partialSumPerfValues(beg, end);
} }
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
void StandardWellConnections<FluidSystem,Indices,Scalar>:: void StandardWellConnections<FluidSystem,Indices>::
computeDensities(const std::vector<Scalar>& perfComponentRates, computeDensities(const std::vector<Scalar>& perfComponentRates,
const Properties& props, const Properties& props,
DeferredLogger& deferred_logger) DeferredLogger& deferred_logger)
@ -285,8 +285,8 @@ computeDensities(const std::vector<Scalar>& perfComponentRates,
} }
} }
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
void StandardWellConnections<FluidSystem,Indices,Scalar>:: void StandardWellConnections<FluidSystem,Indices>::
computePropertiesForPressures(const WellState& well_state, computePropertiesForPressures(const WellState& well_state,
const std::function<Scalar(int,int)>& getTemperature, const std::function<Scalar(int,int)>& getTemperature,
const std::function<Scalar(int)>& getSaltConcentration, const std::function<Scalar(int)>& getSaltConcentration,
@ -419,8 +419,8 @@ computePropertiesForPressures(const WellState& well_state,
} }
} }
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
void StandardWellConnections<FluidSystem,Indices,Scalar>:: void StandardWellConnections<FluidSystem,Indices>::
computeProperties(const WellState& well_state, computeProperties(const WellState& well_state,
const std::function<Scalar(int,int)>& invB, const std::function<Scalar(int,int)>& invB,
const std::function<Scalar(int,int)>& mobility, const std::function<Scalar(int,int)>& mobility,
@ -514,9 +514,9 @@ computeProperties(const WellState& well_state,
this->computePressureDelta(); this->computePressureDelta();
} }
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
typename StandardWellConnections<FluidSystem,Indices,Scalar>::Eval typename StandardWellConnections<FluidSystem,Indices>::Eval
StandardWellConnections<FluidSystem,Indices,Scalar>:: StandardWellConnections<FluidSystem,Indices>::
connectionRateBrine(double& rate, connectionRateBrine(double& rate,
const double vap_wat_rate, const double vap_wat_rate,
const std::vector<EvalWell>& cq_s, const std::vector<EvalWell>& cq_s,
@ -539,9 +539,9 @@ connectionRateBrine(double& rate,
return well_.restrictEval(cq_s_sm); return well_.restrictEval(cq_s_sm);
} }
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
typename StandardWellConnections<FluidSystem,Indices,Scalar>::Eval typename StandardWellConnections<FluidSystem,Indices>::Eval
StandardWellConnections<FluidSystem,Indices,Scalar>:: StandardWellConnections<FluidSystem,Indices>::
connectionRateFoam(const std::vector<EvalWell>& cq_s, connectionRateFoam(const std::vector<EvalWell>& cq_s,
const std::variant<Scalar,EvalWell>& foamConcentration, const std::variant<Scalar,EvalWell>& foamConcentration,
const Phase transportPhase, const Phase transportPhase,
@ -578,11 +578,11 @@ connectionRateFoam(const std::vector<EvalWell>& cq_s,
return well_.restrictEval(cq_s_foam); return well_.restrictEval(cq_s_foam);
} }
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
std::tuple<typename StandardWellConnections<FluidSystem,Indices,Scalar>::Eval, std::tuple<typename StandardWellConnections<FluidSystem,Indices>::Eval,
typename StandardWellConnections<FluidSystem,Indices,Scalar>::Eval, typename StandardWellConnections<FluidSystem,Indices>::Eval,
typename StandardWellConnections<FluidSystem,Indices,Scalar>::Eval> typename StandardWellConnections<FluidSystem,Indices>::Eval>
StandardWellConnections<FluidSystem,Indices,Scalar>:: StandardWellConnections<FluidSystem,Indices>::
connectionRatesMICP(const std::vector<EvalWell>& cq_s, connectionRatesMICP(const std::vector<EvalWell>& cq_s,
const std::variant<Scalar,EvalWell>& microbialConcentration, const std::variant<Scalar,EvalWell>& microbialConcentration,
const std::variant<Scalar,EvalWell>& oxygenConcentration, const std::variant<Scalar,EvalWell>& oxygenConcentration,
@ -615,10 +615,10 @@ connectionRatesMICP(const std::vector<EvalWell>& cq_s,
well_.restrictEval(cq_s_urea)}; well_.restrictEval(cq_s_urea)};
} }
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
std::tuple<typename StandardWellConnections<FluidSystem,Indices,Scalar>::Eval, std::tuple<typename StandardWellConnections<FluidSystem,Indices>::Eval,
typename StandardWellConnections<FluidSystem,Indices,Scalar>::EvalWell> typename StandardWellConnections<FluidSystem,Indices>::EvalWell>
StandardWellConnections<FluidSystem,Indices,Scalar>:: StandardWellConnections<FluidSystem,Indices>::
connectionRatePolymer(double& rate, connectionRatePolymer(double& rate,
const std::vector<EvalWell>& cq_s, const std::vector<EvalWell>& cq_s,
const std::variant<Scalar,EvalWell>& polymerConcentration) const const std::variant<Scalar,EvalWell>& polymerConcentration) const
@ -639,10 +639,10 @@ connectionRatePolymer(double& rate,
return {well_.restrictEval(cq_s_poly), cq_s_poly}; return {well_.restrictEval(cq_s_poly), cq_s_poly};
} }
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
std::tuple<typename StandardWellConnections<FluidSystem,Indices,Scalar>::Eval, std::tuple<typename StandardWellConnections<FluidSystem,Indices>::Eval,
typename StandardWellConnections<FluidSystem,Indices,Scalar>::EvalWell> typename StandardWellConnections<FluidSystem,Indices>::EvalWell>
StandardWellConnections<FluidSystem,Indices,Scalar>:: StandardWellConnections<FluidSystem,Indices>::
connectionRatezFraction(double& rate, connectionRatezFraction(double& rate,
const double dis_gas_rate, const double dis_gas_rate,
const std::vector<EvalWell>& cq_s, const std::vector<EvalWell>& cq_s,
@ -667,7 +667,7 @@ connectionRatezFraction(double& rate,
#define INSTANCE(...) \ #define INSTANCE(...) \
template class StandardWellConnections<BlackOilFluidSystem<double,BlackOilDefaultIndexTraits>, \ template class StandardWellConnections<BlackOilFluidSystem<double,BlackOilDefaultIndexTraits>, \
__VA_ARGS__,double>; __VA_ARGS__>;
// One phase // One phase
INSTANCE(BlackOilOnePhaseIndices<0u,0u,0u,0u,false,false,0u,1u,0u>) INSTANCE(BlackOilOnePhaseIndices<0u,0u,0u,0u,false,false,0u,1u,0u>)

View File

@ -37,10 +37,11 @@ enum class Phase;
template<class FluidSystem, class Indices, class Scalar> class WellInterfaceIndices; template<class FluidSystem, class Indices, class Scalar> class WellInterfaceIndices;
class WellState; class WellState;
template<class FluidSystem, class Indices, class Scalar> template<class FluidSystem, class Indices>
class StandardWellConnections class StandardWellConnections
{ {
public: public:
using Scalar = typename FluidSystem::Scalar;
StandardWellConnections(const WellInterfaceIndices<FluidSystem,Indices,Scalar>& well); StandardWellConnections(const WellInterfaceIndices<FluidSystem,Indices,Scalar>& well);
struct Properties struct Properties

View File

@ -48,7 +48,7 @@ class StandardWellEval
{ {
protected: protected:
using PrimaryVariables = StandardWellPrimaryVariables<FluidSystem,Indices,Scalar>; using PrimaryVariables = StandardWellPrimaryVariables<FluidSystem,Indices,Scalar>;
using StdWellConnections = StandardWellConnections<FluidSystem,Indices,Scalar>; using StdWellConnections = StandardWellConnections<FluidSystem,Indices>;
static constexpr int Bhp = PrimaryVariables::Bhp; static constexpr int Bhp = PrimaryVariables::Bhp;
static constexpr int WQTotal= PrimaryVariables::WQTotal; static constexpr int WQTotal= PrimaryVariables::WQTotal;
static constexpr int numWellConservationEq = PrimaryVariables::numWellConservationEq; static constexpr int numWellConservationEq = PrimaryVariables::numWellConservationEq;