template<class TypeTag>
class Dumux::Experimental::Problem< TypeTag >
- Note
- All quantities (regarding the units) are specified assuming a three-dimensional world. Problems discretized using 2D grids are assumed to be extruded by \(1 m\) and 1D grids are assumed to have a cross section of \(1m \times 1m\).
|
| BoundaryTypes | boundaryTypes (const ElementDiscretization &elemDisc, const typename ElementDiscretization::BoundaryFace &boundaryFace) const |
| | Specifies which kind of boundary condition should be used for which equation on a given boundary face.
|
| BoundaryTypes | boundaryTypesAtPos (const GlobalPosition &globalPos) const |
| | Specifies which kind of boundary condition should be used for which equation on a given boundary segment.
|
| template<class ResidualVector, class ElementVariables, class BoundaryTypes> |
| void | addFEBoundaryFluxIntegral (ResidualVector &residual, const ElementDiscretization &elemDisc, const ElementVariables &elemVars, const typename ElementDiscretization::BoundaryFace &boundaryFace, const BoundaryTypes &bcTypes) const |
| | Evaluates finite-element boundary flux integral contributions for a given boundary face.
|
| template<class ResidualVector, class ElementVariables, class BoundaryTypes> |
| void | addFVBoundaryFluxIntegral (ResidualVector &residual, const ElementDiscretization &elemDisc, const ElementVariables &elemVars, const typename ElementDiscretization::SubControlVolumeFace &scvf, const BoundaryTypes &bcTypes) const |
| | Evaluates finite-volume boundary flux integral contributions for a given scvf.
|
| template<class ElementVariables, class FaceIpData> |
| NumEqVector | boundaryFlux (const ElementDiscretization &elemDisc, const ElementVariables &elemVars, const FaceIpData &faceIpData) const |
| | Evaluate the boundary conditions for a neumann boundary segment.
|
| NumEqVector | boundaryFluxAtPos (const GlobalPosition &globalPos) const |
| | Evaluate the boundary flux at a given position.
|
| template<class ElementVariables, class IpData> |
| NumEqVector | source (const ElementDiscretization &elemDisc, const ElementVariables &elemVars, const IpData &ipData) const |
| | Evaluate the source term at a given interpolation point.
|
| NumEqVector | sourceAtPos (const GlobalPosition &globalPos) const |
| | Evaluate the source term for all phases at a given position.
|
| template<class MatrixBlock, class Variables, class IpData> |
| void | addSourceDerivatives (MatrixBlock &block, const Element &element, const ElementDiscretization &elemDisc, const Variables &volVars, const IpData &ipData) const |
| | Add source term derivative to the Jacobian.
|
| EmptyPointSources | pointSources () const |
| | Return the point sources for this problem.
|
| const GridDiscretization & | gridGeometry () const |
| | The grid discretization.
|
| const GridDiscretization & | gridDiscretization () const |
| | The grid discretization.
|
| const std::string & | paramGroup () const |
| | The parameter group in which to retrieve runtime parameters.
|
| Implementation & | asImp_ () |
| | Returns the implementation of the problem (i.e. static polymorphism).
|
| const Implementation & | asImp_ () const |
| | Returns the implementation of the problem (i.e. static polymorphism).
|
template<class TypeTag>
template<class ElementVariables, class IpData>
| NumEqVector Dumux::Experimental::Problem< TypeTag >::source |
( |
const ElementDiscretization & | elemDisc, |
|
|
const ElementVariables & | elemVars, |
|
|
const IpData & | ipData ) const |
|
inline |
This is the method for the case where the source term is potentially solution dependent and requires some quantities that are specific to the fully-implicit method.
- Parameters
-
| elemDisc | The element discretization |
| elemVars | All variables for the element |
| ipData | Interpolation point data |
For this method, the return parameter stores the conserved quantity rate generated or annihilate per volume unit. Positive values mean that the conserved quantity is created, negative ones mean that it vanishes.
- Parameters
-
| globalPos | The position in global coordinates |
For this method, the values parameter stores the conserved quantity rate generated or annihilate per volume unit. Positive values mean that the conserved quantity is created, negative ones mean that it vanishes. E.g. for the mass balance that would be a mass rate in \( [ kg / (m^3 \cdot s)] \).
As a default, i.e. if the user's problem does not overload any source method return 0.0 (no source terms)