changed: make MultisegmentWellEquations data members private

use a friend declaration for MultisegmentWellEquationAccess to
give the assembler access to the matrices/vectors.
This commit is contained in:
Arne Morten Kvarving 2022-11-18 13:00:01 +01:00
parent 2d154b50bb
commit b102103e26

View File

@ -36,6 +36,7 @@ template<class M> class UMFPack;
namespace Opm
{
template<class Scalar, int numWellEq, int numEq> class MultisegmentWellEquationAccess;
template<class Scalar> class MultisegmentWellGeneric;
class WellContributions;
class WellInterfaceGeneric;
@ -116,6 +117,8 @@ public:
return resWell_;
}
private:
friend class MultisegmentWellEquationAccess<Scalar,numWellEq,numEq>;
// two off-diagonal matrices
OffDiagMatWell duneB_;
OffDiagMatWell duneC_;
@ -125,12 +128,11 @@ public:
/// \brief solver for diagonal matrix
///
/// This is a shared_ptr as MultisegmentWell is copied in computeWellPotentials...
mutable std::shared_ptr<Dune::UMFPack<DiagMatWell> > duneDSolver_;
mutable std::shared_ptr<Dune::UMFPack<DiagMatWell>> duneDSolver_;
// residuals of the well equations
BVectorWell resWell_;
private:
const MultisegmentWellGeneric<Scalar>& well_; //!< Reference to well
};