ug4
|
Base class for line sources and sinks. More...
#include <fv1_sss.h>
Public Member Functions | |
template<typename TElem , typename TAAPos , typename TFVGeom > | |
bool | corresponds_to (TElem *elem, Grid &grid, TAAPos &aaPos, const TFVGeom &geo, size_t co, MathVector< dim > &ls, MathVector< dim > &le) |
test whether a source/sink point corresponds to a given corner of the element More... | |
const MathVector< dim > & | from_position () |
returns the beginning of the line segment More... | |
FVLineSourceOrSink (const MathVector< dim > &_point1, const MathVector< dim > &_point2) | |
class constructor (with the default constructor for data) More... | |
FVLineSourceOrSink (const MathVector< dim > &_point1, const MathVector< dim > &_point2, const TData &_data) | |
class constructor (with the copy constructor for data) More... | |
FVLineSourceOrSink (const std::vector< number > &_point1, const std::vector< number > &_point2) | |
class constructor (with the default constructor for data) More... | |
const MathVector< dim > & | to_position () |
returns the end of the line segment More... | |
Private Attributes | |
MathVector< dim > | point1 |
beginning of the line segment More... | |
MathVector< dim > | point2 |
end of the line segment More... | |
Base class for line sources and sinks.
|
inline |
class constructor (with the default constructor for data)
_point1 | beginning of the line segment |
_point2 | end of the line segment |
|
inline |
class constructor (with the copy constructor for data)
_point1 | beginning of the line segment |
_point2 | end of the line segment |
_data | the data to copy |
|
inline |
class constructor (with the default constructor for data)
_point1 | beginning of the line segment |
_point2 | end of the line segment |
References dim, ug::FVLineSourceOrSink< dim, TData >::point1, ug::FVLineSourceOrSink< dim, TData >::point2, and UG_THROW.
bool ug::FVLineSourceOrSink< dim, TData >::corresponds_to | ( | TElem * | elem, |
Grid & | grid, | ||
TAAPos & | aaPos, | ||
const TFVGeom & | geo, | ||
size_t | co, | ||
MathVector< dim > & | ls, | ||
MathVector< dim > & | le | ||
) |
test whether a source/sink point corresponds to a given corner of the element
Test whether a line source/sink corresponds to a given corner of an element. If yes, the function returns true and sets ls and le to the beginning and the end of the subsegment of the source/sink.
Note that TElem
must specify the dimensionality of the element. Thus, GridObject
is not a proper type for TElem
. It should be at least Edge
, Face
, Volume
or derived classes.
[in] | elem | the element |
[in] | grid | the grid |
[in] | aaPos | position of the vertices |
[in] | geo | FV geometry (initialized for 'elem') |
[in] | co | corner to get the contribution for |
[out] | ls | beginning of the subsegment |
[out] | le | end of the subsegment |
References ug::ContainsPoint(), dim, p, ug::RayElementIntersection(), ug::ReferenceElementDimension(), ug::SMALL, UG_THROW, ug::VecDot(), ug::VecScaleAdd(), and ug::VecSubtract().
Referenced by ug::FVSingularSourcesAndSinks< dim, TPointData, TLineData >::line_iterator< TElem, TAAPos, TFVGeom >::next_sss().
|
inline |
returns the beginning of the line segment
References ug::FVLineSourceOrSink< dim, TData >::point1.
Referenced by ug::FVSingularSourcesAndSinks< dim, TPointData, TLineData >::line_iterator< TElem, TAAPos, TFVGeom >::next_sss().
|
inline |
returns the end of the line segment
References ug::FVLineSourceOrSink< dim, TData >::point2.
Referenced by ug::FVSingularSourcesAndSinks< dim, TPointData, TLineData >::line_iterator< TElem, TAAPos, TFVGeom >::next_sss().
|
private |
beginning of the line segment
Referenced by ug::FVLineSourceOrSink< dim, TData >::from_position(), ug::FVLineSourceOrSink< 1, TData >::from_position(), and ug::FVLineSourceOrSink< dim, TData >::FVLineSourceOrSink().
|
private |
end of the line segment
Referenced by ug::FVLineSourceOrSink< dim, TData >::FVLineSourceOrSink(), ug::FVLineSourceOrSink< dim, TData >::to_position(), and ug::FVLineSourceOrSink< 1, TData >::to_position().