A point source base class. More...
#include <dumux/common/pointsource.hh>
PositionType | the position type |
ValueType | the a vector type storing the source for all equations |
Public Types | |
using | Scalar = std::decay_t< decltype(std::declval< ValueType >()[0])> |
Export the scalar type. More... | |
using | GlobalPosition = PositionType |
Export the position type. More... | |
using | Values = ValueType |
Export the value type. More... | |
Public Member Functions | |
PointSource (GlobalPosition pos, Values values) | |
Constructor for constant point sources. More... | |
PointSource (GlobalPosition pos) | |
Constructor for sol dependent point sources, when there is no. More... | |
PointSource & | operator+= (Scalar s) |
Convenience += operator overload modifying only the values. More... | |
PointSource & | operator-= (Scalar s) |
Convenience -= operator overload modifying only the values. More... | |
PointSource & | operator*= (Scalar s) |
Convenience *= operator overload modifying only the values. More... | |
PointSource & | operator/= (Scalar s) |
Convenience /= operator overload modifying only the values. More... | |
PointSource & | operator= (const Values &values) |
Convenience = operator overload modifying only the values. More... | |
PointSource & | operator= (Scalar s) |
Convenience = operator overload modifying only the values. More... | |
Values | values () const |
return the source values More... | |
const GlobalPosition & | position () const |
return the source position More... | |
template<class Problem , class FVElementGeometry , class ElementVolumeVariables > | |
void | update (const Problem &problem, const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const typename FVElementGeometry::SubControlVolume &scv) |
an update function called before adding the value More... | |
void | setEmbeddings (std::size_t embeddings) |
set the number of embeddings for this point source More... | |
std::size_t | embeddings () const |
get the number of embeddings for this point source More... | |
Protected Attributes | |
Values | values_ |
value of the point source for each equation More... | |
using Dumux::PointSource< PositionType, ValueType >::GlobalPosition = PositionType |
using Dumux::PointSource< PositionType, ValueType >::Scalar = std::decay_t<decltype(std::declval<ValueType>()[0])> |
using Dumux::PointSource< PositionType, ValueType >::Values = ValueType |
|
inline |
|
inline |
|
inline |
embeddings
returns the number of neighboring scvs. Example: If I want to inject 1kg/s at a location that is on the inner face of an scv the point source exists in both scvs. Both have a value of 1kg/s. We then divide the value by the number of embeddings to not inject 2kg/s but 1kg/s.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |