mbsimflexiblebody  4.0.0
MBSim Flexible Body Module
MBSimFlexibleBody::FlexiblePlanarNurbsContour Class Reference

flexible planar nurbs contour More...

#include <flexible_planar_nurbs_contour.h>

Inheritance diagram for MBSimFlexibleBody::FlexiblePlanarNurbsContour:
[legend]

Public Member Functions

 FlexiblePlanarNurbsContour (const std::string &name="")
 constructor More...
 
 ~FlexiblePlanarNurbsContour () override=default
 destructor
 
void init (InitStage stage, const MBSim::InitConfigSet &config) override
 
MBSim::ContourFramecreateContourFrame (const std::string &name="P") override
 
double getCurvature (const fmatvec::Vec2 &zeta)
 
fmatvec::Vec3 evalWs_t (const fmatvec::Vec2 &zeta) override
 
fmatvec::Vec3 evalWu_t (const fmatvec::Vec2 &zeta) override
 
fmatvec::Vec3 evalPosition (const fmatvec::Vec2 &zeta) override
 
fmatvec::Vec3 evalWs (const fmatvec::Vec2 &zeta) override
 
fmatvec::Vec3 evalWt (const fmatvec::Vec2 &zeta) override
 
fmatvec::Vec3 evalParDer1Ws (const fmatvec::Vec2 &zeta)
 
fmatvec::Vec3 evalParDer1Wu (const fmatvec::Vec2 &zeta) override
 
fmatvec::Vec3 evalParWvCParEta (const fmatvec::Vec2 &zeta) override
 
fmatvec::Vec3 evalParWuPart (const fmatvec::Vec2 &zeta) override
 
void updatePositions (MBSim::Frame *frame) override
 
void updateVelocities (MBSim::Frame *frame) override
 
void updateAccelerations (MBSim::Frame *frame) override
 
void updateJacobians (MBSim::Frame *frame, int j=0) override
 
void updateGyroscopicAccelerations (MBSim::Frame *frame) override
 
void setInterpolation (bool interpolation_)
 
void setNodeNumbers (const fmatvec::VecVI &node)
 
void setKnotVector (const fmatvec::VecV &knot_)
 
void setDegree (int degree_)
 
void plot () override
 
 BOOST_PARAMETER_MEMBER_FUNCTION ((void), enableOpenMBV, MBSim::tag,(optional(diffuseColor,(const fmatvec::Vec3 &),"[-1;1;1]")(transparency,(double), 0)(pointSize,(double), 0)(lineWidth,(double), 0)))
 
void initializeUsingXML (xercesc::DOMElement *element) override
 
bool isZetaOutside (const fmatvec::Vec2 &zeta) override
 
void setOpen (bool open_)
 
void resetUpToDate () override
 
void updateCurvePositions ()
 
void updateCurveVelocities ()
 
void updateCurveJacobians ()
 
void updateCurveGyroscopicAccelerations ()
 
- Public Member Functions inherited from MBSimFlexibleBody::FlexibleContour
 FlexibleContour (const std::string &name="")
 constructor More...
 
 ~FlexibleContour () override=default
 destructor
 
virtual fmatvec::Vec3 evalWs_t (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalWt_t (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalWu_t (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalWv_t (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalWn_t (const fmatvec::Vec2 &zeta)
 
MBSim::ContactKinematicsfindContactPairingWith (const std::type_info &type0, const std::type_info &type1) override
 
- Public Member Functions inherited from MBSim::Contour
 Contour (const std::string &name)
 
virtual ContactKinematicsfindContactPairingWith (const std::type_info &type0, const std::type_info &type1)=0
 
virtual fmatvec::Vec3 evalPosition (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalWu (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalWv (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalWn (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalParDer1Wn (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalParDer2Wn (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalParDer1Wu (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalParDer2Wu (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalParDer1Wv (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalParDer2Wv (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalWs (const fmatvec::Vec2 &zeta)
 
virtual fmatvec::Vec3 evalWt (const fmatvec::Vec2 &zeta)
 
void createPlotGroup () override
 
- Public Member Functions inherited from MBSim::Element
 Element (const std::string &name)
 
virtual void setDynamicSystemSolver (DynamicSystemSolver *sys)
 
virtual void plot ()
 
virtual void plotAtSpecialEvent ()
 
const std::string & getName () const
 
void setName (const std::string &str)
 
DynamicSystemSolvergetDynamicSystemSolver ()
 
virtual void init (InitStage stage, const InitConfigSet &config=InitConfigSet())
 
virtual void createPlotGroup ()
 
H5::GroupBasegetPlotGroup ()
 
bool getPlotFeature (const PlotFeatureEnum &pf)
 
virtual void setPlotFeature (const PlotFeatureEnum &pf, bool value)
 
void setPlotFeatureForChildren (const PlotFeatureEnum &pf, bool value)
 
void setPlotFeatureRecursive (const PlotFeatureEnum &pf, bool value)
 
void setPlotAttribute (const std::string &name, const T &value, PlotAttributeStorage storage=PlotAttributeStorage::attribute)
 
T * getByPath (const std::string &path, bool initialCaller=true) const
 
std::string getPath (const Element *relTo=nullptr, std::string sep="/") const
 
virtual ElementgetChildByContainerAndName (const std::string &container, const std::string &name) const
 
std::vector< Element * > getDependencies () const
 
int computeLevel ()
 

Protected Member Functions

double continueEta (double eta_)
 
void updateHessianMatrix (double eta)
 
void updateHessianMatrix_t (double eta)
 
const fmatvec::MatVx4 & evalHessianMatrix (double eta)
 
const fmatvec::MatVx4 & evalHessianMatrix_t (double eta)
 

Protected Attributes

bool interpolation {false}
 
fmatvec::VecVI index
 
fmatvec::VecV knot
 
int degree {3}
 
bool open {false}
 
MBSim::NurbsCurve crvPos
 
MBSim::NurbsCurve crvVel
 
MBSim::NurbsCurve crvGA
 
std::vector< MBSim::NurbsCurvecrvJac
 
double etaOld {-1e10}
 
fmatvec::MatVx4 hess
 
fmatvec::MatVx4 hess_t
 
fmatvec::MatVx4 hessTmp
 
bool updCrvPos {true}
 
bool updCrvVel {true}
 
bool updCrvJac {true}
 
bool updCrvGA {true}
 
std::shared_ptr< OpenMBV::DynamicNurbsCurveopenMBVNurbsCurve
 
- Protected Attributes inherited from MBSim::Contour
int hSize [2]
 
double thickness
 
- Protected Attributes inherited from MBSim::Element
std::string name
 
std::string path
 
MBXMLUtils::DOMEvalException domEvalError
 
DynamicSystemSolverds
 
H5::VectorSerie< double > * plotVectorSerie
 
std::vector< double > plotVector
 
std::vector< std::string > plotColumns
 
H5::GroupBaseplotGroup
 
std::vector< Element * > dependency
 
PlotFeatureMap plotFeature
 

Additional Inherited Members

- Public Types inherited from MBSim::Element
enum  InitStage
 
- Public Attributes inherited from MBSim::Element
 resolveStringRef
 
 preInit
 
 plotting
 
 unknownStage
 

Detailed Description

flexible planar nurbs contour

Author
Martin Foerg

Constructor & Destructor Documentation

◆ FlexiblePlanarNurbsContour()

MBSimFlexibleBody::FlexiblePlanarNurbsContour::FlexiblePlanarNurbsContour ( const std::string &  name = "")
inline

constructor

Parameters
nameof contour

Member Function Documentation

◆ evalParDer1Wu()

Vec3 MBSimFlexibleBody::FlexiblePlanarNurbsContour::evalParDer1Wu ( const fmatvec::Vec2 &  zeta)
overridevirtual

Reimplemented from MBSim::Contour.

◆ evalPosition()

Vec3 MBSimFlexibleBody::FlexiblePlanarNurbsContour::evalPosition ( const fmatvec::Vec2 &  zeta)
overridevirtual

Reimplemented from MBSim::Contour.

◆ evalWs()

Vec3 MBSimFlexibleBody::FlexiblePlanarNurbsContour::evalWs ( const fmatvec::Vec2 &  zeta)
overridevirtual

Reimplemented from MBSim::Contour.

◆ evalWs_t()

Vec3 MBSimFlexibleBody::FlexiblePlanarNurbsContour::evalWs_t ( const fmatvec::Vec2 &  zeta)
overridevirtual

◆ evalWt()

Vec3 MBSimFlexibleBody::FlexiblePlanarNurbsContour::evalWt ( const fmatvec::Vec2 &  zeta)
overridevirtual

Reimplemented from MBSim::Contour.

◆ evalWu_t()

Vec3 MBSimFlexibleBody::FlexiblePlanarNurbsContour::evalWu_t ( const fmatvec::Vec2 &  zeta)
overridevirtual

◆ plot()

void MBSimFlexibleBody::FlexiblePlanarNurbsContour::plot ( )
overridevirtual

Reimplemented from MBSim::Element.


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