|
Geophysical Inversion and Modelling Library v1.5.4
|
Tetrahedral shape. More...
#include <shape.h>
Inheritance diagram for GIMLI::TetrahedronShape:
Collaboration diagram for GIMLI::TetrahedronShape:Public Member Functions | |
| TetrahedronShape (MeshEntity *ent) | |
| virtual int | rtti () const |
| virtual int | dim () const |
| virtual std::string | name () const |
| virtual RVector3 | rst (Index i) const |
| void | xyz2rst (const RVector3 &pos, RVector3 &rst) const |
| double | volume () const |
Public Member Functions inherited from GIMLI::Shape | |
| Shape (MeshEntity *ent) | |
| virtual | ~Shape () |
| Index | nodeCount () const |
| Node & | node (Index i) const |
| void | setNodesPtr (const std::vector< Node * > &n) |
| const std::vector< Node * > & | nodes () const |
| virtual std::vector< PolynomialFunction< double > > | createShapeFunctions () const |
| void | createJacobian (RMatrix3 &J) const |
| RMatrix3 | createJacobian () const |
| const RMatrix3 & | invJacobian () const |
| virtual RVector | N (const RVector3 &L) const |
| virtual void | N (const RVector3 &L, RVector &ret) const |
| virtual void | dNdrst (const RVector3 &rst, RMatrix &MdNdrst) const |
| virtual RMatrix | dNdrst (const RVector3 &L) const |
| virtual void | rst2xyz (const RVector3 &rst, RVector3 &xyz) const |
| virtual RVector3 | xyz (const RVector3 &rst) const |
| virtual RVector3 | rst (const RVector3 &xyz) const |
| double | drstdxyz (uint rstI, uint xyzJ) const |
| virtual bool | isInside (const RVector3 &xyz, bool verbose=false) const |
| virtual bool | isInside (const RVector3 &xyz, RVector &sf, bool verbose=false) const |
| virtual bool | touch (const RVector3 &pos, double tol=1e-6, bool verbose=false) const |
| virtual bool | intersectRay (const RVector3 &start, const RVector3 &dir, RVector3 &pos) |
| double | domainSize () const |
| RVector3 | center () const |
| virtual RVector3 | norm () const |
| double | h () const |
| virtual Plane | plane () const |
| void | changed () |
| double | jacobianDeterminant () const |
| void | resizeNodeSize_ (Index n) |
Protected Member Functions | |
| virtual double | domainSize_ () const |
Additional Inherited Members | |
Protected Attributes inherited from GIMLI::Shape | |
| Index | nodeCount_ |
| double | domSize_ |
| bool | hasDomSize_ |
| double | _h |
| RMatrix3 | invJacobian_ |
| const std::vector< Node * > * | nodeVector_ |
Tetrahedral shape.
Tetrahedral shape.
|
inlinevirtual |
Implements GIMLI::Shape.
|
inlineprotectedvirtual |
Virtual method to calculate the domain size i.e length, area, volume of the shapes
Reimplemented from GIMLI::Shape.
References volume().
|
inlinevirtual |
Return an identification name for the shape.
Reimplemented from GIMLI::Shape.
|
virtual |
See Shape::rst
Reimplemented from GIMLI::Shape.
References GIMLI::Shape::nodeCount().
Referenced by xyz2rst().
|
inlinevirtual |
Pure virtual methode for runtime identification.
Implements GIMLI::Shape.
| double GIMLI::TetrahedronShape::volume | ( | ) | const |
See Shape::N.
See Shape::dNdrst.
References GIMLI::Shape::node(), and GIMLI::tetVolume().
Referenced by domainSize_().
See Shape::xyz2rst. Specialization for speedup
Reimplemented from GIMLI::Shape.
References GIMLI::Shape::node(), and rst().