Public Types | |
enum | { dim = GridInterface::Dimension } |
The number of space dimensions. More... | |
typedef GridInterface::CellIterator | CellIter |
The iterator type for iterating over grid cells. More... | |
typedef CellIter::Scalar | Scalar |
The element type of the matrix representation of the mimetic inner product. More... | |
Public Member Functions | |
MimeticIPAnisoRelpermEvaluator () | |
Default constructor. | |
MimeticIPAnisoRelpermEvaluator (const int max_nf) | |
Constructor. More... | |
void | init (const int max_nf) |
Initialization routine. More... | |
template<class Vector > | |
void | reserveMatrices (const Vector &sz) |
Reserve internal space for storing values of (static) IP contributions for given set of cells. More... | |
void | buildStaticContrib (const CellIter &c, const RockInterface &r, const typename CellIter::Vector &grav, const int nf) |
Main evaluation routine. More... | |
template<class FluidInterface , class Sat > | |
void | computeDynamicParams (const CellIter &c, const FluidInterface &fl, const std::vector< Sat > &s) |
Evaluate dynamic (saturation dependent) properties in single cell. More... | |
template<template< typename > class SP> | |
void | getInverseMatrix (const CellIter &c, FullMatrix< Scalar, SP, FortranOrdering > &Binv) const |
Retrieve the dynamic (mobility updated) inverse mimetic inner product matrix for specific cell. More... | |
template<class Vector > | |
void | gravityFlux (const CellIter &c, Vector &gflux) const |
Compute gravity flux for all faces of single cell. More... | |
typedef GridInterface::CellIterator Opm::MimeticIPAnisoRelpermEvaluator< GridInterface, RockInterface >::CellIter |
The iterator type for iterating over grid cells.
typedef CellIter::Scalar Opm::MimeticIPAnisoRelpermEvaluator< GridInterface, RockInterface >::Scalar |
The element type of the matrix representation of the mimetic inner product.
Assumed to be a floating point type, and usually,
is an alias for
.
anonymous enum |
The number of space dimensions.
|
inline |
Constructor.
[in] | max_nf | Maximum number of faces/connections of any single cell in the model. Used to set the size of certain internal working std::arrays. A cell with ![]() ![]() |
|
inline |
Main evaluation routine.
Computes the inverse of the matrix representation of the mimetic inner product in a single cell with kown permeability . Adds a regularization term in order to guarantee a positive definite matrix.
RockInterface | Type representing rock properties. Assumed to expose a method permeability(i) i operator()(int i, int j) K(i,j) ![]() ![]() |
[in] | c | Cell for which to evaluate the inverse of the mimetic inner product. |
[in] | r | Specific reservoir properties. Only the permeability is used in method buildMatrix() |
[in] | nf | Number of faces (i.e., number of neighbours) of cell *c |
|
inline |
Evaluate dynamic (saturation dependent) properties in single cell.
FluidInterface | Type representing fluid properties. Assumed to expose methods phaseDensities() phaseMobilities() |
Sat | Type representing single-cell saturation values. Typically, Sat double |
[in] | c | Cell for which to evaluate the dynamic properties. |
[in] | fl | Specific reservoir properties. |
[in] | s | Vector of current fluid saturations. |
|
inline |
Retrieve the dynamic (mobility updated) inverse mimetic inner product matrix for specific cell.
SP | Type representing the FullMatrix<T,SP,OP> |
[in] | c | Cell for which to evaluate the dynamic inverse mimetic inner product. |
[in] | r | Specific reservoir properties. Only the phase mobilities is used in method. |
[in] | s | Fluid saturations. |
[out] | Binv | Inverse of matrix representation of the mimetic inner product for cell *c *c |
|
inline |
Compute gravity flux for all faces of single cell.
Vector | Type representing a vector (or a linear std::array) for which (a constant time) operator[] |
[in] | c | Cell for which to evaluate the gravity flux. |
[out] | gflux | Gravity fluxes on all faces/intersections of cell c in the order of the face iterator of the cell. |
|
inline |
Initialization routine.
[in] | max_nf | Maximum number of faces/connections of any single cell in the model. Used to set the size of certain internal working std::arrays. A cell with ![]() ![]() |
|
inline |
Reserve internal space for storing values of (static) IP contributions for given set of cells.
Vector | Vector type, often std::vector<int> |
[in] | sz | Set of sizes. Assumed to contain ![]() sz[i] i |