![]() |
OpenLB 1.8.1
|
implements a smooth particle ellipsoid in 3D with an _epsilon sector. More...
#include <smoothIndicatorF3D.h>
Public Member Functions | |
SmoothIndicatorEllipsoid3D (IndicatorEllipsoid3D< S > &ind, S epsilon, Vector< S, 3 > theta=Vector< S, 3 >(0., 0., 0.)) | |
SmoothIndicatorEllipsoid3D (Vector< S, 3 > center, Vector< S, 3 > radius, S epsilon, Vector< S, 3 > theta=Vector< S, 3 >(0., 0., 0.)) | |
IndicatorEllipsoid3D< S > & | getIndicator () |
Vector< S, 3 > | surfaceNormal (const Vector< S, 3 > &pos, const S meshSize) override |
const S | signedDistance (const PhysR< S, 3 > input) override |
S | getVolume () override |
Vector< S, 4 > | calcMofiAndMass (const S density) override |
bool | operator() (T output[], const S input[]) override |
has to be implemented for 'every' derived class | |
![]() | |
void | init () |
const Vector< S, 3 > & | getMin () const |
const Vector< S, 3 > & | getMax () const |
const Vector< S, 3 > & | getPos () const |
const Vector< S, 9 > & | getRotationMatrix () const |
const Vector< S, 3 > & | getTheta () const |
const S & | getCircumRadius () const |
const S & | getEpsilon () const |
std::string | name () |
void | setPos (Vector< S, 3 > pos) |
void | setTheta (Vector< S, 3 > theta) |
void | setEpsilon (S epsilon) |
virtual Vector< S, 3 > | calcCenterOfMass () |
virtual Vector< S, 3 > | surfaceNormal (const Vector< S, 3 > &pos, const S meshSize, std::function< Vector< S, 3 >(const Vector< S, 3 > &)> transformPos) |
virtual const S | signedDistance (const PhysR< T, 3 > input) |
virtual bool | distance (S &distance, const Vector< S, 3 > &origin, const Vector< S, 3 > &direction, S precision, S pitch) |
bool | isInsideCircumRadius (const PhysR< S, 3 > &input) |
SmoothIndicatorF3D< T, S, false > & | operator+ (SmoothIndicatorF3D< T, S, false > &rhs) |
![]() | |
AnalyticalF< D, T, S > & | operator- (AnalyticalF< D, T, S > &rhs) |
AnalyticalF< D, T, S > & | operator+ (AnalyticalF< D, T, S > &rhs) |
AnalyticalF< D, T, S > & | operator* (AnalyticalF< D, T, S > &rhs) |
AnalyticalF< D, T, S > & | operator/ (AnalyticalF< D, T, S > &rhs) |
![]() | |
virtual | ~GenericF ()=default |
int | getSourceDim () const |
read only access to member variable _m | |
int | getTargetDim () const |
read only access to member variable _n | |
std::string & | getName () |
read and write access to name | |
std::string const & | getName () const |
read only access to name | |
bool | operator() (T output[]) |
wrapper that call the pure virtual operator() (T output[], const S input[]) from above | |
bool | operator() (T output[], S input0) |
bool | operator() (T output[], S input0, S input1) |
bool | operator() (T output[], S input0, S input1, S input2) |
bool | operator() (T output[], S input0, S input1, S input2, S input3) |
Additional Inherited Members | |
![]() | |
using | identity_functor_type = AnalyticalIdentity<D,T,S> |
![]() | |
using | targetType = T |
using | sourceType = S |
![]() | |
std::shared_ptr< GenericF< T, S > > | _ptrCalcC |
memory management, frees resouces (calcClass) | |
![]() | |
static constexpr unsigned | dim = D |
![]() | |
SmoothIndicatorF3D () | |
![]() | |
AnalyticalF (int n) | |
![]() | |
GenericF (int targetDim, int sourceDim) | |
![]() | |
Vector< S, 3 > | _myMin |
Vector< S, 3 > | _myMax |
Vector< S, 3 > | _pos |
Vector< S, 9 > | _rotMat |
S | _circumRadius |
Vector< S, 3 > | _theta |
S | _epsilon |
std::string | _name = "smoothIndicator3D" |
implements a smooth particle ellipsoid in 3D with an _epsilon sector.
Definition at line 59 of file smoothIndicatorF3D.h.
olb::SmoothIndicatorEllipsoid3D< T, S, PARTICLE >::SmoothIndicatorEllipsoid3D | ( | IndicatorEllipsoid3D< S > & | ind, |
S | epsilon, | ||
Vector< S, 3 > | theta = Vector<S,3> (0.,0.,0.) ) |
Definition at line 133 of file smoothIndicatorF3D.hh.
olb::SmoothIndicatorEllipsoid3D< T, S, PARTICLE >::SmoothIndicatorEllipsoid3D | ( | Vector< S, 3 > | center, |
Vector< S, 3 > | radius, | ||
S | epsilon, | ||
Vector< S, 3 > | theta = Vector<S,3> (0.,0.,0.) ) |
Definition at line 139 of file smoothIndicatorF3D.hh.
References olb::SmoothIndicatorF3D< T, S, false >::_circumRadius, olb::SmoothIndicatorF3D< T, S, false >::_epsilon, olb::SmoothIndicatorF3D< T, S, false >::_myMax, olb::SmoothIndicatorF3D< T, S, false >::_myMin, olb::SmoothIndicatorF3D< T, S, false >::_pos, olb::SmoothIndicatorF3D< T, S, false >::_theta, olb::util::degreeToRadian(), olb::SmoothIndicatorF3D< T, S, false >::getCircumRadius(), olb::SmoothIndicatorF3D< T, S, false >::init(), and olb::util::max().
|
overridevirtual |
Reimplemented from olb::SmoothIndicatorF3D< T, S, false >.
Definition at line 179 of file smoothIndicatorF3D.hh.
IndicatorEllipsoid3D< S > & olb::SmoothIndicatorEllipsoid3D< T, S, PARTICLE >::getIndicator | ( | ) |
Definition at line 167 of file smoothIndicatorF3D.hh.
|
overridevirtual |
Reimplemented from olb::SmoothIndicatorF3D< T, S, false >.
Definition at line 172 of file smoothIndicatorF3D.hh.
References M_PI.
|
overridevirtual |
has to be implemented for 'every' derived class
Reimplemented from olb::SmoothIndicatorF3D< T, S, false >.
Definition at line 216 of file smoothIndicatorF3D.hh.
|
override |
Definition at line 200 of file smoothIndicatorF3D.hh.
References olb::util::executeRotation().
|
overridevirtual |
Reimplemented from olb::SmoothIndicatorF3D< T, S, false >.
Definition at line 194 of file smoothIndicatorF3D.hh.