My Project
|
Linear operator wrapper for well model. More...
#include <WellOperators.hpp>
Public Types | |
using | PressureMatrix = Dune::BCRSMatrix< Opm::MatrixBlock< double, 1, 1 > > |
Public Member Functions | |
virtual void | addWellPressureEquations (PressureMatrix &jacobian, const X &weights, const bool use_well_weights) const =0 |
virtual void | addWellPressureEquationsStruct (PressureMatrix &jacobian) const =0 |
virtual int | getNumberOfExtraEquations () const =0 |
Linear operator wrapper for well model.
This class is intended to hide the actual type of the well model (which depends on a TypeTag) by making a simple linear operator wrapper. That way the WellModelMatrixAdapter template does not need the concrete WellModel type, and we can avoid instantiating WellModelMatrixAdapter separately for each TypeTag, as it will only depend on the matrix and vector types involved, which typically are just one for each block size with block sizes 1-4.