Loading...
Searching...
No Matches
Opm::FvBaseLocalResidual< TypeTag > Class Template Reference

Element-wise caculation of the residual matrix for models based on a finite volume spatial discretization. More...

`#include <fvbaselocalresidual.hh>`

## Public Types

using | LocalEvalBlockVector = Dune::BlockVector<EvalVector, aligned_allocator<EvalVector, alignof(EvalVector)>>

## Public Member Functions

| FvBaseLocalResidual (const FvBaseLocalResidual &)=delete
const LocalEvalBlockVector & | residual () const
| Return the result of the eval() call using internal storage.
const EvalVector & | residual (unsigned dofIdx) const
| Return the result of the eval() call using internal storage.
void | eval (const Problem &problem, const Element &element)
| Compute the local residual, i.e.
void | eval (ElementContext &elemCtx)
| Compute the local residual, i.e.
void | eval (LocalEvalBlockVector &residual, ElementContext &elemCtx) const
| Compute the local residual, i.e.
void | evalStorage (LocalEvalBlockVector &storage, const ElementContext &elemCtx, unsigned timeIdx) const
| Calculate the amount of all conservation quantities stored in all element's sub-control volumes for a given history index.
void | evalFluxes (LocalEvalBlockVector &residual, const ElementContext &elemCtx, unsigned timeIdx) const
| Add the flux term to a local residual.
void | computeStorage (EqVector &, const ElementContext &, unsigned, unsigned) const
| Evaluate the amount all conservation quantities (e.g.
void | computeFlux (RateVector &, const ElementContext &, unsigned, unsigned) const
| Evaluates the total mass flux of all conservation quantities over a face of a sub-control volume.
void | computeSource (RateVector &, const ElementContext &, unsigned, unsigned) const
| Calculate the source term of the equation.

## Static Public Member Functions

static void | registerParameters ()
| Register all run-time parameters for the local residual.

## Protected Member Functions

void | evalBoundary_ (LocalEvalBlockVector &residual, const ElementContext &elemCtx, unsigned timeIdx) const
| Evaluate the boundary conditions of an element.
void | evalBoundarySegment_ (LocalEvalBlockVector &residual, const BoundaryContext &boundaryCtx, unsigned boundaryFaceIdx, unsigned timeIdx) const
| Evaluate all boundary conditions for a single sub-control volume face to the local residual.
void | evalVolumeTerms_ (LocalEvalBlockVector &residual, ElementContext &elemCtx) const
| Add the change in the storage terms and the source term to the local residual of all sub-control volumes of the current element.

## Detailed Description

template<class TypeTag>
class Opm::FvBaseLocalResidual< TypeTag >

Element-wise caculation of the residual matrix for models based on a finite volume spatial discretization.

## Member Function Documentation

## computeFlux()

template<class TypeTag>

void Opm::FvBaseLocalResidual< TypeTag >::computeFlux | ( | RateVector & | ,
|  | const ElementContext & | ,
|  | unsigned | ,
|  | unsigned | ) const

inline

Evaluates the total mass flux of all conservation quantities over a face of a sub-control volume.

## computeSource()

template<class TypeTag>

void Opm::FvBaseLocalResidual< TypeTag >::computeSource | ( | RateVector & | ,
|  | const ElementContext & | ,
|  | unsigned | ,
|  | unsigned | ) const

inline

Calculate the source term of the equation.

## computeStorage()

template<class TypeTag>

void Opm::FvBaseLocalResidual< TypeTag >::computeStorage | ( | EqVector & | ,
|  | const ElementContext & | ,
|  | unsigned | ,
|  | unsigned | ) const

inline

Evaluate the amount all conservation quantities (e.g.

phase mass) within a finite sub-control volume.

## eval() [1/3]

template<class TypeTag>

void Opm::FvBaseLocalResidual< TypeTag >::eval | ( | const Problem & | problem,
|  | const Element & | element )

inline

Compute the local residual, i.e.

the deviation of the conservation equations from zero and store the results internally.

The results can be requested afterwards using the residual() method.

## eval() [2/3]

template<class TypeTag>

void Opm::FvBaseLocalResidual< TypeTag >::eval | ( | ElementContext & | elemCtx | ) |

inline

Compute the local residual, i.e.

the deviation of the conservation equations from zero and store the results internally.

The results can be requested afterwards using the residual() method.

## eval() [3/3]

template<class TypeTag>

void Opm::FvBaseLocalResidual< TypeTag >::eval | ( | LocalEvalBlockVector & | residual,
|  | ElementContext & | elemCtx ) const

inline

Compute the local residual, i.e.

the deviation of the conservation equations from zero.

## evalFluxes()

template<class TypeTag>

void Opm::FvBaseLocalResidual< TypeTag >::evalFluxes | ( | LocalEvalBlockVector & | residual,
|  | const ElementContext & | elemCtx,
|  | unsigned | timeIdx ) const

inline

Add the flux term to a local residual.

## evalStorage()

template<class TypeTag>

void Opm::FvBaseLocalResidual< TypeTag >::evalStorage | ( | LocalEvalBlockVector & | storage,
|  | const ElementContext & | elemCtx,
|  | unsigned | timeIdx ) const

inline

Calculate the amount of all conservation quantities stored in all element's sub-control volumes for a given history index.

This is used to figure out how much of each conservation quantity is inside the element.

## residual()

template<class TypeTag>

const EvalVector & Opm::FvBaseLocalResidual< TypeTag >::residual | ( | unsigned | dofIdx | ) | const

inline

Return the result of the eval() call using internal storage.

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

- opm/models/discretization/common/fvbaselocalresidual.hh