![]() |
OpenLB 1.8.1
|
implements a smooth particle cylinder in 3D with an _epsilon sector. More...
#include <smoothIndicatorF3D.h>
Inheritance diagram for olb::SmoothIndicatorCylinder3D< T, S, PARTICLE >:
Collaboration diagram for olb::SmoothIndicatorCylinder3D< T, S, PARTICLE >:Public Member Functions | |
| SmoothIndicatorCylinder3D (IndicatorCylinder3D< S > &ind, S epsilon, Vector< S, 3 > theta=Vector< S, 3 >(0., 0., 0.)) | |
| SmoothIndicatorCylinder3D (Vector< S, 3 > center1, Vector< S, 3 > center2, S radius, S epsilon, Vector< S, 3 > theta=Vector< S, 3 >(0., 0., 0.)) | |
| SmoothIndicatorCylinder3D (Vector< S, 3 > center, Vector< S, 3 > normal, S radius, S height, S epsilon, Vector< S, 3 > theta=Vector< S, 3 >(0., 0., 0.)) | |
| IndicatorCylinder3D< 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 |
Public Member Functions inherited from olb::SmoothIndicatorF3D< T, S, false > | |
| 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) |
| virtual bool | operator() (T output[], const S input[]) |
| has to be implemented for 'every' derived class | |
| bool | isInsideCircumRadius (const PhysR< S, 3 > &input) |
| SmoothIndicatorF3D< T, S, false > & | operator+ (SmoothIndicatorF3D< T, S, false > &rhs) |
Public Member Functions inherited from olb::AnalyticalF< D, T, S > | |
| 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) |
Public Member Functions inherited from olb::GenericF< T, S > | |
| 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 | |
Public Types inherited from olb::AnalyticalF< D, T, S > | |
| using | identity_functor_type = AnalyticalIdentity<D,T,S> |
Public Types inherited from olb::GenericF< T, S > | |
| using | targetType = T |
| using | sourceType = S |
Public Attributes inherited from olb::GenericF< T, S > | |
| std::shared_ptr< GenericF< T, S > > | _ptrCalcC |
| memory management, frees resouces (calcClass) | |
Static Public Attributes inherited from olb::AnalyticalF< D, T, S > | |
| static constexpr unsigned | dim = D |
Protected Member Functions inherited from olb::SmoothIndicatorF3D< T, S, false > | |
| SmoothIndicatorF3D () | |
Protected Member Functions inherited from olb::AnalyticalF< D, T, S > | |
| AnalyticalF (int n) | |
Protected Member Functions inherited from olb::GenericF< T, S > | |
| GenericF (int targetDim, int sourceDim) | |
Protected Attributes inherited from olb::SmoothIndicatorF3D< T, S, false > | |
| 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 cylinder in 3D with an _epsilon sector.
Definition at line 112 of file smoothIndicatorF3D.h.
| olb::SmoothIndicatorCylinder3D< T, S, PARTICLE >::SmoothIndicatorCylinder3D | ( | IndicatorCylinder3D< S > & | ind, |
| S | epsilon, | ||
| Vector< S, 3 > | theta = Vector<S,3> (0.,0.,0.) ) |
Definition at line 489 of file smoothIndicatorF3D.hh.
| olb::SmoothIndicatorCylinder3D< T, S, PARTICLE >::SmoothIndicatorCylinder3D | ( | Vector< S, 3 > | center1, |
| Vector< S, 3 > | center2, | ||
| S | radius, | ||
| S | epsilon, | ||
| Vector< S, 3 > | theta = Vector<S,3> (0.,0.,0.) ) |
Definition at line 494 of file smoothIndicatorF3D.hh.
References olb::SmoothIndicatorF3D< T, S, false >::_epsilon, olb::SmoothIndicatorF3D< T, S, false >::_pos, olb::SmoothIndicatorF3D< T, S, false >::_theta, olb::util::degreeToRadian(), and olb::norm().
Here is the call graph for this function:| olb::SmoothIndicatorCylinder3D< T, S, PARTICLE >::SmoothIndicatorCylinder3D | ( | Vector< S, 3 > | center, |
| Vector< S, 3 > | normal, | ||
| S | radius, | ||
| S | height, | ||
| S | epsilon, | ||
| Vector< S, 3 > | theta = Vector<S,3> (0.,0.,0.) ) |
Definition at line 514 of file smoothIndicatorF3D.hh.
|
overridevirtual |
Reimplemented from olb::SmoothIndicatorF3D< T, S, false >.
Definition at line 527 of file smoothIndicatorF3D.hh.
References olb::norm().
Here is the call graph for this function:| IndicatorCylinder3D< S > & olb::SmoothIndicatorCylinder3D< T, S, PARTICLE >::getIndicator | ( | ) |
Definition at line 484 of file smoothIndicatorF3D.hh.
|
overridevirtual |
Reimplemented from olb::SmoothIndicatorF3D< T, S, false >.
Definition at line 519 of file smoothIndicatorF3D.hh.
References M_PI, and olb::norm().
Here is the call graph for this function:
|
override |
Definition at line 547 of file smoothIndicatorF3D.hh.
References olb::util::executeRotation().
Here is the call graph for this function:
|
overridevirtual |
Reimplemented from olb::SmoothIndicatorF3D< T, S, false >.
Definition at line 541 of file smoothIndicatorF3D.hh.