23#ifndef OPM_WELLHELPERS_HEADER_INCLUDED
24#define OPM_WELLHELPERS_HEADER_INCLUDED
26#include <dune/istl/bcrsmatrix.hh>
27#include <dune/common/dynmatrix.hh>
33class ParallelWellInfo;
34struct WellProductionControls;
35struct WellInjectionControls;
36enum class WellProducerCMode;
37enum class WellInjectorCMode;
39namespace wellhelpers {
51template<
typename Scalar>
55 using Block = Dune::DynamicMatrix<Scalar>;
56 using Matrix = Dune::BCRSMatrix<Block>;
61 template<
class X,
class Y>
62 void mv (
const X& x, Y&
y)
const;
65 template<
class X,
class Y>
66 void mmv (
const X& x, Y&
y)
const;
75 const double rho,
const double gravity);
79template<
typename Scalar,
typename Comm>
80void sumDistributedWellEntries(Dune::DynamicMatrix<Scalar>& mat,
81 Dune::DynamicVector<Scalar>&
vec,
87template <
class DenseMatrix>
Definition AquiferInterface.hpp:35
Class encapsulating some information about parallel wells.
Definition ParallelWellInfo.hpp:184
A wrapper around the B matrix for distributed wells.
Definition WellHelpers.hpp:53
void mv(const X &x, Y &y) const
y = A x
Definition WellHelpers.cpp:49
void mmv(const X &x, Y &y) const
y = A x
Definition WellHelpers.cpp:106
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition BlackoilPhases.hpp:27