All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | Protected Attributes | List of all members
MBSimFlexibleBody::FlexibleBodyContinuum< AT > Class Template Reference

flexible body entirely described within MBSim holding all informations about continuum approximations More...

#include <flexible_body.h>

Inheritance diagram for MBSimFlexibleBody::FlexibleBodyContinuum< AT >:
MBSimFlexibleBody::FlexibleBody MBSim::Body MBSim::Object MBSim::Element fmatvec::Atom

Public Member Functions

 FlexibleBodyContinuum (const std::string &name)
 constructor More...
 
virtual std::string getType () const
 
void setContourNodes (const std::vector< AT > nodes)
 
void addFrame (const std::string &name, const AT &alpha)
 
void addFrame (MBSim::Frame *frame, const AT &alpha)
 
void setNodeOffset (const AT nodeOffset_)
 
AT getNodeOffset () const
 
- Public Member Functions inherited from MBSimFlexibleBody::FlexibleBody
 FlexibleBody (const std::string &name)
 constructor More...
 
virtual ~FlexibleBody ()
 destructor
 
virtual void updatedq (double t, double dt)
 
virtual void updateqd (double t)
 
virtual void updateh (double t, int k=0)
 
virtual void updateM (double t, int k=0)
 
virtual void updatedhdz (double t)
 
virtual void updateStateDependentVariables (double t)
 
virtual void updateJacobians (double t, int k=0)
 
virtual void plot (double t, double dt=1)
 
virtual void initializeUsingXML (xercesc::DOMElement *element)
 
virtual void init (InitStage stage)
 
virtual double computeKineticEnergy ()
 
virtual double computePotentialEnergy ()
 
virtual void setFrameOfReference (MBSim::Frame *frame)
 
virtual void setq0 (fmatvec::Vec q0_)
 
virtual void setu0 (fmatvec::Vec u0_)
 
virtual void BuildElements ()=0
 references finite element coordinates to assembled coordinates
 
virtual void GlobalVectorContribution (int CurrentElement, const fmatvec::Vec &locVec, fmatvec::Vec &gloVec)=0
 insert 'local' information in global vectors More...
 
virtual void GlobalMatrixContribution (int CurrentElement, const fmatvec::Mat &locMat, fmatvec::Mat &gloMat)=0
 insert 'local' information in global matrices More...
 
virtual void GlobalMatrixContribution (int CurrentElement, const fmatvec::SymMat &locMat, fmatvec::SymMat &gloMat)=0
 insert 'local' information in global matrices More...
 
virtual void updateKinematicsForFrame (MBSim::ContourPointData &data, MBSim::Frame::Frame::Feature ff, MBSim::Frame *frame=0)=0
 cartesian kinematic for contour or external frame (normal, tangent, binormal) is set by implementation class More...
 
virtual void updateKinematicsAtNode (NodeFrame *frame, MBSim::Frame::Feature ff)
 cartesian kinematic on a node
 
virtual void updateJacobiansForFrame (MBSim::ContourPointData &data, MBSim::Frame *frame=0)=0
 Jacobians and gyroscopes for contour or external frame are set by implementation class. More...
 
void setMassProportionalDamping (const double d_)
 set mass proportional damping More...
 
void addFrame (const std::string &name, const MBSim::ContourPointData &S_)
 
void addFrame (MBSim::Frame *frame, const MBSim::ContourPointData &S_)
 
void addFrame (const std::string &name, const int &id)
 
void addFrame (NodeFrame *frame)
 
void addFrame (MBSim::FixedRelativeFrame *frame)
 
void addContour (MBSim::Contour *contour)
 
virtual void exportPositionVelocity (const std::string &filenamePos, const std::string &filenameVel=std::string(), const int &deg=3, const bool &writePsFile=false)
 interpolates the position and optional the velocity coordinates of the flexible body with Nurbs-package and exports the nurbs curve in the specified file More...
 
virtual void importPositionVelocity (const std::string &filenamePos, const std::string &filenameVel=std::string())
 imports the interpolated position and optional the velocity files (created with exportPositionVelocity) and fits the rigid and flexible coordinate dofs and optional the translatory velocity components of flexible body to the imported nurbs curve More...
 
- Public Member Functions inherited from MBSim::Body
 Body (const std::string &name)
 
virtual void closePlot ()
 
virtual void setDynamicSystemSolver (DynamicSystemSolver *sys)
 
virtual ContourgetContour (const std::string &name, bool check=true) const
 
virtual FramegetFrame (const std::string &name, bool check=true) const
 
virtual FramegetFrameOfReference ()
 
virtual const FramegetFrameOfReference () const
 
int frameIndex (const Frame *frame_) const
 
int contourIndex (const Contour *contour_) const
 
virtual ElementgetChildByContainerAndName (const std::string &container, const std::string &name) const
 
 Object (const std::string &name)
 
virtual void updateqRef (const fmatvec::Vec &qRef)
 
virtual void updateqdRef (const fmatvec::Vec &qdRef)
 
virtual void updateuRef (const fmatvec::Vec &uRef)
 
virtual void updateuallRef (const fmatvec::Vec &uallRef)
 
virtual void updateudRef (const fmatvec::Vec &udRef, int i=0)
 
virtual void updateudallRef (const fmatvec::Vec &udallRef, int i=0)
 
virtual void updatehRef (const fmatvec::Vec &hRef, int i=0)
 
virtual void updatedhdqRef (const fmatvec::Mat &dhdqRef, int i=0)
 
virtual void updatedhduRef (const fmatvec::SqrMat &dhduRef, int i=0)
 
virtual void updatedhdtRef (const fmatvec::Vec &dhdtRef, int i=0)
 
virtual void updaterRef (const fmatvec::Vec &ref, int i=0)
 
virtual void updateTRef (const fmatvec::Mat &ref)
 
virtual void updateMRef (const fmatvec::SymMat &ref, int i=0)
 
virtual void updateLLMRef (const fmatvec::SymMat &ref, int i=0)
 
virtual void initz ()
 
virtual void writez (H5::GroupBase *group)
 
virtual void readz0 (H5::GroupBase *group)
 
virtual void facLLM (int i=0)
 
virtual void calcSize (int j)
 
virtual void setUpInverseKinetics ()
 
 Element (const std::string &name)
 
virtual void initDataInterfaceBase (DynamicSystemSolver *parentds)
 
virtual void plotAtSpecialEvent (double t, double dt=1)
 
const std::string & getName () const
 
void setName (const std::string &str)
 
DynamicSystemSolvergetDynamicSystemSolver ()
 
virtual void createPlotGroup ()
 
H5::GroupBasegetPlotGroup ()
 
virtual void setPlotFeature (PlotFeature pf, PlotFeatureStatus value)
 
void setPlotFeatureForChildren (PlotFeature pf, PlotFeatureStatus value)
 
void setPlotFeatureRecursive (PlotFeature pf, PlotFeatureStatus value)
 
PlotFeatureStatus getPlotFeature (PlotFeature pf)
 
PlotFeatureStatus getPlotFeatureForChildren (PlotFeature pf)
 
TgetByPath (const std::string &path, bool initialCaller=true) const
 
std::string getPath (const Element *relTo=NULL, std::string sep="/") const
 
std::vector< Element * > getElementsDependingOn () const
 
int computeLevel ()
 
- Public Member Functions inherited from fmatvec::Atom
Atomoperator= (const Atom &)
 
void setMessageStreamActive (MsgType type, bool active)
 
void getMessageStream (MsgType type, boost::shared_ptr< bool > &a, boost::shared_ptr< std::ostream > &s)
 
void adoptMessageStreams (const Atom *src=NULL)
 
std::ostream & msg (MsgType type)
 
bool msgAct (MsgType type)
 

Protected Attributes

std::vector< AT > userContourNodes
 grid for contact point detection
 
AT nodeOffset
 offset of the ROTNODE from the TRANSNODE
 
- Protected Attributes inherited from MBSimFlexibleBody::FlexibleBody
std::vector
< MBSim::DiscretizationInterface * > 
discretization
 stl-vector of discretizations/finite elements
 
std::vector< fmatvec::VecqElement
 stl-vector of finite element wise positions
 
std::vector< fmatvec::VecuElement
 stl-vector of finite element wise velocities
 
double d_massproportional
 damping factor for mass proportion, see BodyFlexible::setMassProportionalDamping()
 
std::vector
< MBSim::ContourPointData
S_Frame
 vector of contour parameters each describing a frame
 
MBSim::FramecontourFrame
 
std::vector
< MBSim::FixedRelativeFrame * > 
fixedRelativeFrames
 list of all contour frames More...
 
std::vector< NodeFrame * > nodeFrames
 list of all Node-Frames
 
- Protected Attributes inherited from MBSim::Body
std::vector< Frame * > frame
 
FrameR
 
fmatvec::Mat3xV PJT [2]
 
int qSize
 
int uSize [2]
 
int hSize [2]
 
int qInd
 
int xSize
 
fmatvec::Vec q
 
fmatvec::Vec q0
 
fmatvec::Vec qd
 
fmatvec::Vec h [2]
 
fmatvec::Mat dhdq
 
fmatvec::Mat T
 
fmatvec::SymMat M [2]
 
fmatvec::SymMat LLM [2]
 
std::string name
 
std::string path
 
DynamicSystemSolverds
 
H5::VectorSerie< double > * plotVectorSerie
 
std::vector< double > plotVector
 
std::vector< std::string > plotColumns
 
H5::GroupBaseplotGroup
 
std::vector< Element * > dependency
 

Additional Inherited Members

- Public Types inherited from MBSim::Body
enum  PlotFeatureStatus
 
enum  PlotFeature
 
enum  InitStage
 
- Public Types inherited from fmatvec::Atom
enum  MsgType
 
- Static Public Member Functions inherited from fmatvec::Atom
static void setCurrentMessageStream (MsgType type, const boost::shared_ptr< bool > &a=boost::make_shared< bool >(true), const boost::shared_ptr< std::ostream > &s=boost::make_shared< std::ostream >(std::cout.rdbuf()))
 
static std::ostream & msgStatic (MsgType type)
 
static bool msgActStatic (MsgType type)
 
- Protected Member Functions inherited from MBSim::Body
virtual void addFrame (Frame *frame)
 
- Protected Member Functions inherited from fmatvec::Atom
 Atom (const Atom &src)
 

Detailed Description

template<class AT>
class MBSimFlexibleBody::FlexibleBodyContinuum< AT >

flexible body entirely described within MBSim holding all informations about continuum approximations

Author
Roland Zander
Thorsten Schindler
Date
2009-04-05 initial definition (Schindler / Zander)

Constructor & Destructor Documentation

template<class AT >
MBSimFlexibleBody::FlexibleBodyContinuum< AT >::FlexibleBodyContinuum ( const std::string &  name)
inline

constructor

Parameters
nameof flexible body

Member Function Documentation

template<class AT >
void MBSimFlexibleBody::FlexibleBodyContinuum< AT >::addFrame ( const std::string &  name,
const AT &  alpha 
)
inline
Parameters
nameof frame
locationof frame
template<class AT >
void MBSimFlexibleBody::FlexibleBodyContinuum< AT >::addFrame ( MBSim::Frame frame,
const AT &  alpha 
)
inline
Parameters
frame
locationof frame

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

Impressum / Disclaimer / Datenschutz Generated by doxygen 1.8.5 Valid HTML