version 3.9.0
Loading...
Searching...
No Matches
Dumux::SolDependentPointSource< TypeTag > Class Template Reference

A point source class for time dependent point sources.

#include <dumux/common/pointsource.hh>

Inheritance diagram for Dumux::SolDependentPointSource< TypeTag >:

Public Types

using Values
 Export the value type.
 

Public Member Functions

 SolDependentPointSource (GlobalPosition pos, ValueFunction valueFunction)
 Constructor for sol dependent point sources, when there is no.
 
void update (const Problem &problem, const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolume &scv)
 an update function called before adding the value
 
SolDependentPointSourceoperator= (const SourceValues &values)
 Convenience = operator overload modifying only the values.
 
SolDependentPointSourceoperator= (Scalar s)
 Convenience = operator overload modifying only the values.
 
PointSourceoperator+= (Scalar s)
 Convenience += operator overload modifying only the values.
 
PointSourceoperator-= (Scalar s)
 Convenience -= operator overload modifying only the values.
 
PointSourceoperator*= (Scalar s)
 Convenience *= operator overload modifying only the values.
 
PointSourceoperator/= (Scalar s)
 Convenience /= operator overload modifying only the values.
 
Values values () const
 return the source values
 
const GlobalPosition & position () const
 return the source position
 
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
 
void setEmbeddings (std::size_t embeddings)
 set the number of embeddings for this point source
 
std::size_t embeddings () const
 get the number of embeddings for this point source
 

Protected Attributes

Values values_
 value of the point source for each equation
 

Member Typedef Documentation

◆ Values

using Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::Values
inherited

Constructor & Destructor Documentation

◆ SolDependentPointSource()

template<class TypeTag >
Dumux::SolDependentPointSource< TypeTag >::SolDependentPointSource ( GlobalPosition pos,
ValueFunction valueFunction )
inline

Member Function Documentation

◆ embeddings()

std::size_t Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::embeddings ( ) const
inlineinherited
Note
A point source might be located on the intersection between several scvs. If so, there are point sources for every neighboring scv with the same position. 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.
This division is done in the problem.scvPointSources() if this behaviour is not explicitly changed by e.g. overloading this function in the problem implementation.

◆ operator*=()

PointSource & Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::operator*= ( Scalar s)
inlineinherited

◆ operator+=()

PointSource & Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::operator+= ( Scalar s)
inlineinherited

◆ operator-=()

PointSource & Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::operator-= ( Scalar s)
inlineinherited

◆ operator/=()

PointSource & Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::operator/= ( Scalar s)
inlineinherited

◆ operator=() [1/2]

template<class TypeTag >
SolDependentPointSource & Dumux::SolDependentPointSource< TypeTag >::operator= ( const SourceValues & values)
inline

◆ operator=() [2/2]

template<class TypeTag >
SolDependentPointSource & Dumux::SolDependentPointSource< TypeTag >::operator= ( Scalar s)
inline

◆ position()

const GlobalPosition & Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::position ( ) const
inlineinherited

◆ setEmbeddings()

void Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::setEmbeddings ( std::size_t embeddings)
inlineinherited

◆ update() [1/2]

void Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::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 )
inlineinherited

◆ update() [2/2]

template<class TypeTag >
void Dumux::SolDependentPointSource< TypeTag >::update ( const Problem & problem,
const Element & element,
const FVElementGeometry & fvGeometry,
const ElementVolumeVariables & elemVolVars,
const SubControlVolume & scv )
inline

◆ values()

Values Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::values ( ) const
inlineinherited

Member Data Documentation

◆ values_

Values Dumux::PointSource< Dune::FieldVector< GetPropType< TypeTag, Properties::GridGeometry >::GridView::ctype, GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimensionworld >, Dumux::NumEqVector< GetPropType< TypeTag, Properties::PrimaryVariables > > >::values_
protectedinherited

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