Loading...
Searching...
No Matches
Opm::StandardWellEquations< Scalar, IndexTraits, numEq > Class Template Reference

## Public Types

using | VectorBlockWellType = Dune::DynamicVector<Scalar>
using | BVectorWell = Dune::BlockVector<VectorBlockWellType>
using | DiagMatrixBlockWellType = Dune::DynamicMatrix<Scalar>
using | DiagMatWell = Dune::BCRSMatrix<DiagMatrixBlockWellType>
using | OffDiagMatrixBlockWellType = Dune::DynamicMatrix<Scalar>
using | OffDiagMatWell = Dune::BCRSMatrix<OffDiagMatrixBlockWellType>
using | BVector = Dune::BlockVector<Dune::FieldVector<Scalar,numEq>>

## Public Member Functions

| StandardWellEquations (const ParallelWellInfo< Scalar > &parallel_well_info)
void | init (const int numWellEq, const int numPerfs, const std::vector< int > &cells)
| Setup sparsity pattern for the matrices.
void | clear ()
| Set all coefficients to 0.
void | apply (const BVector &x, BVector &Ax) const
| Apply linear operator to vector.
void | apply (BVector &r) const
| Apply linear operator to vector.
void | solve (BVectorWell &dx_well) const
| Apply inverted D matrix to residual and store in vector.
void | solve (const BVectorWell &rhs_well, BVectorWell &x_well) const
| Apply inverted D matrix to rhs and store in vector.
void | invert ()
| Invert D matrix.
void | recoverSolutionWell (const BVector &x, BVectorWell &xw) const
| Recover well solution.
template<class SparseMatrixAdapter>
void | extract (SparseMatrixAdapter &jacobian) const
| Add the matrices of this well to the sparse matrix adapter.
template<class PressureMatrix>
void | extractCPRPressureMatrix (PressureMatrix &jacobian, const BVector &weights, const int pressureVarIndex, const bool use_well_weights, const WellInterfaceGeneric< Scalar, IndexTraits > &well, const int bhp_var_index, const WellState< Scalar, IndexTraits > &well_state) const
| Extract CPR pressure matrix.
unsigned int | getNumBlocks () const
| Get the number of blocks of the C and B matrices.
void | sumDistributed (Parallel::Communication comm)
| Sum with off-process contribution.
const BVectorWell & | residual () const
| Returns a const reference to the residual.

## Friends

class | StandardWellEquationAccess< Scalar, IndexTraits, numEq >

## Member Function Documentation

## init()

template<typename Scalar, typename IndexTraits, int numEq>

void Opm::StandardWellEquations< Scalar, IndexTraits, numEq >::init | ( | const int | numWellEq,
|  | const int | numPerfs,
|  | const std::vector< int > & | cells )

Setup sparsity pattern for the matrices.

Parameters

  numWellEq | Number of well equations
  numPerfs | Number of perforations
  cells | Cell indices for perforations

## recoverSolutionWell()

template<typename Scalar, typename IndexTraits, int numEq>

void Opm::StandardWellEquations< Scalar, IndexTraits, numEq >::recoverSolutionWell | ( | const BVector & | x,
|  | BVectorWell & | xw ) const

Recover well solution.

xw = inv(D)*(rw - C*x)

The documentation for this class was generated from the following files:

- opm/simulators/wells/StandardWellAssemble.hpp
- opm/simulators/wells/StandardWellEquations.hpp
- opm/simulators/wells/StandardWellEquations.cpp