Public Member Functions | |
GeneralizedAccelerationConstraint (const std::string &name="") | |
void | init (InitStage stage) |
initialize object at start of simulation with respect to contours and frames | |
void | calcxSize () |
void | setGeneralConstraintFunction (Function< fmatvec::VecV(fmatvec::VecV, double)> *f_) |
void | setTimeDependentConstraintFunction (Function< fmatvec::VecV(double)> *f_) |
void | setStateDependentConstraintFunction (Function< fmatvec::VecV(fmatvec::VecV)> *f_) |
void | setConstraintFunction (Function< fmatvec::VecV(fmatvec::VecV, double)> *f_) |
void | setConstraintFunction (Function< fmatvec::VecV(double)> *f_) |
void | setConstraintFunction (Function< fmatvec::VecV(fmatvec::VecV)> *f_) |
virtual void | setUpInverseKinetics () |
TODO. | |
void | updatexd (double t) |
void | updateStateDependentVariables (double t) |
void | updateJacobians (double t, int j=0) |
void | initializeUsingXML (xercesc::DOMElement *element) |
virtual std::string | getType () const |
![]() | |
KinematicConstraint (const std::string &name="") | |
void | setDependentBody (RigidBody *body) |
![]() | |
Constraint (const std::string &name) | |
![]() | |
Object (const std::string &name) | |
constructor | |
virtual | ~Object () |
destructor | |
virtual void | updateT (double t) |
virtual void | updateh (double t, int j=0) |
virtual void | updateM (double t, int i=0) |
virtual void | updatedhdz (double t) |
virtual void | updatedq (double t, double dt) |
virtual void | updatedu (double t, double dt) |
virtual void | updateud (double t, int i=0) |
virtual void | updateqd (double t) |
virtual void | updatezd (double t) |
virtual void | sethSize (int hSize_, int i=0) |
virtual int | gethSize (int i=0) const |
virtual int | getqSize () const |
virtual int | getuSize (int i=0) const |
virtual void | calcqSize () |
virtual void | calcuSize (int j) |
virtual int | getuInd (int i=0) |
virtual void | setqInd (int qInd_) |
virtual void | setuInd (int uInd_, int i=0) |
virtual const fmatvec::Vec & | getq () const |
virtual const fmatvec::Vec & | getu () const |
virtual H5::GroupBase * | getPlotGroup () |
virtual PlotFeatureStatus | getPlotFeature (PlotFeature fp) |
virtual PlotFeatureStatus | getPlotFeatureForChildren (PlotFeature fp) |
virtual void | updateStateDerivativeDependentVariables (double t) |
virtual void | updatehInverseKinetics (double t, int i=0) |
virtual void | plot (double t, double dt=1) |
plots time dependent data More... | |
virtual void | closePlot () |
closes plot file | |
virtual void | updatedx (double t, double dt) |
virtual const fmatvec::Vec & | getx () const |
virtual fmatvec::Vec & | getx () |
virtual void | setxInd (int xInd_) |
virtual int | getxSize () const |
virtual void | updatexRef (const fmatvec::Vec &ref) |
virtual void | updatexdRef (const fmatvec::Vec &ref) |
virtual void | updateqRef (const fmatvec::Vec &qRef) |
references to positions of dynamic system parent More... | |
virtual void | updateqdRef (const fmatvec::Vec &qdRef) |
references to differentiated positions of dynamic system parent More... | |
virtual void | updateuRef (const fmatvec::Vec &uRef) |
references to velocities of dynamic system parent More... | |
virtual void | updateuallRef (const fmatvec::Vec &uallRef) |
references to velocities of dynamic system parent More... | |
virtual void | updateudRef (const fmatvec::Vec &udRef, int i=0) |
references to differentiated velocities of dynamic system parent More... | |
virtual void | updateudallRef (const fmatvec::Vec &udallRef, int i=0) |
references to differentiated velocities of dynamic system parent More... | |
virtual void | updatehRef (const fmatvec::Vec &hRef, int i=0) |
references to smooth force vector of dynamic system parent More... | |
virtual void | updatedhdqRef (const fmatvec::Mat &dhdqRef, int i=0) |
references to object Jacobian for implicit integration of dynamic system parent regarding positions More... | |
virtual void | updatedhduRef (const fmatvec::SqrMat &dhduRef, int i=0) |
references to object Jacobian for implicit integration of dynamic system parent regarding velocities More... | |
virtual void | updatedhdtRef (const fmatvec::Vec &dhdtRef, int i=0) |
references to object Jacobian for implicit integration of dynamic system parent regarding time More... | |
virtual void | updaterRef (const fmatvec::Vec &ref, int i=0) |
references to nonsmooth force vector of dynamic system parent More... | |
virtual void | updateTRef (const fmatvec::Mat &ref) |
references to linear transformation matrix between differentiated positions and velocities of dynamic system parent More... | |
virtual void | updateMRef (const fmatvec::SymMat &ref, int i=0) |
references to mass matrix of dynamic system parent More... | |
virtual void | updateLLMRef (const fmatvec::SymMat &ref, int i=0) |
references to Cholesky decomposition of dynamic system parent More... | |
virtual void | initz () |
virtual void | writez (H5::GroupBase *group) |
writes its z-Vector to a subgroup of the given group | |
virtual void | readz0 (H5::GroupBase *group) |
reads the z-Vector of a subgroup of the given group | |
virtual void | facLLM (int i=0) |
perform Cholesky decomposition of mass martix | |
virtual void | calcSize (int j) |
calculates size of right hand side More... | |
virtual double | computeKineticEnergy () |
virtual double | computePotentialEnergy () |
void | setqSize (int qSize_) |
void | setuSize (int uSize_, int i=0) |
int | getzSize () const |
virtual void | sethInd (int hInd_, int i=0) |
int | gethInd (int i=0) |
const fmatvec::Vec & | geth (int i=0) const |
fmatvec::Vec & | geth (int i=0) |
const fmatvec::Vec & | getr (int i=0) const |
fmatvec::Vec & | getr (int i=0) |
const fmatvec::SymMat & | getM (int i=0) const |
fmatvec::SymMat & | getM (int i=0) |
const fmatvec::Mat & | getT () const |
fmatvec::Mat & | getT () |
const fmatvec::SymMat & | getLLM (int i=0) const |
fmatvec::SymMat & | getLLM (int i=0) |
fmatvec::Vec & | getq () |
fmatvec::Vec & | getu () |
const fmatvec::Vec & | getq0 () const |
const fmatvec::Vec & | getu0 () const |
fmatvec::Vec & | getq0 () |
fmatvec::Vec & | getu0 () |
const fmatvec::Vec & | getqd () const |
const fmatvec::Vec & | getud (int i=0) const |
fmatvec::Vec & | getqd () |
fmatvec::Vec & | getud (int i=0) |
void | setq (const fmatvec::Vec &q_) |
void | setu (const fmatvec::Vec &u_) |
virtual xercesc::DOMElement * | writeXMLFile (xercesc::DOMNode *element) |
![]() | |
Element (const std::string &name) | |
constructor | |
virtual | ~Element () |
destructor | |
virtual void | initDataInterfaceBase (DynamicSystemSolver *parentds) |
TODO. | |
virtual void | setDynamicSystemSolver (DynamicSystemSolver *sys) |
sets the used dynamics system solver to the element More... | |
virtual void | plotAtSpecialEvent (double t, double dt=1) |
plots time dependent data at special events More... | |
const std::string & | getName () const |
void | setName (const std::string &str) |
void | setPath (const std::string &str) |
DynamicSystemSolver * | getDynamicSystemSolver () |
virtual void | createPlotGroup () |
creates the plotGroup for H5-output | |
H5::GroupBase * | getPlotGroup () |
virtual void | setPlotFeature (PlotFeature pf, PlotFeatureStatus value) |
Set a plot feature. More... | |
void | setPlotFeatureForChildren (PlotFeature pf, PlotFeatureStatus value) |
Set a plot feature for the children of this object. More... | |
void | setPlotFeatureRecursive (PlotFeature pf, PlotFeatureStatus value) |
Set a plot feature for this object and the children of this object. More... | |
PlotFeatureStatus | getPlotFeature (PlotFeature pf) |
PlotFeatureStatus | getPlotFeatureForChildren (PlotFeature pf) |
const std::vector < MBXMLUtils::EmbedDOMLocator > & | getLocationStack () const |
template<class T > | |
T * | getByPath (const std::string &path, bool initialCaller=true) const |
Get the object of type T represented by the path path. Do not set any argurment other than path! | |
std::string | getPath (const Element *relTo=NULL, std::string sep="/") const |
Return the path of this object. If relativeTo is not NULL return a relative path to relativeTo. Do not set any argurment other than relTo and sep! | |
virtual Element * | getChildByContainerAndName (const std::string &container, const std::string &name) const |
Get the Element named name in the container named container. | |
virtual Element * | getParent () |
virtual const Element * | getParent () const |
virtual void | setParent (Element *parent_) |
std::vector< Element * > | getElementsDependingOn () const |
checks dependency on other elements. More... | |
void | addDependency (Element *ele) |
int | computeLevel () |
computes the length of the pathes in the graph that represents the dependencies between all elements. More... | |
![]() | |
Atom & | operator= (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) |
Private Attributes | |
Function< fmatvec::VecV(fmatvec::VecV, double)> * | f |
Additional Inherited Members | |
![]() | |
enum | PlotFeatureStatus { enabled, disabled, unset } |
Plot feature status. More... | |
enum | PlotFeature { plotRecursive =0, separateFilePerGroup, state, stateDerivative, notMinimalState, rightHandSide, globalPosition, globalVelocity, globalAcceleration, energy, openMBV, generalizedLinkForce, linkKinematics, stopVector, debug, LASTPLOTFEATURE } |
Plot Features. More... | |
enum | InitStage { modelBuildup =0, resolveXMLPath, preInit, resize, relativeFrameContourLocation, worldFrameContourLocation, plotting, reorganizeHierarchy, unknownStage, calculateLocalInitialValues, LASTINITSTAGE } |
The stages of the initialization. More... | |
![]() | |
enum | MsgType |
![]() | |
static double | getDouble (xercesc::DOMElement *e) |
static int | getInt (xercesc::DOMElement *e) |
static bool | getBool (xercesc::DOMElement *e) |
static fmatvec::Vec3 | getVec3 (xercesc::DOMElement *e) |
static fmatvec::Vec | getVec (xercesc::DOMElement *e, int rows=0) |
static fmatvec::Mat3xV | getMat3xV (xercesc::DOMElement *e, int cols=0) |
static fmatvec::Mat | getMat (xercesc::DOMElement *e, int rows=0, int cols=0) |
static fmatvec::SqrMat3 | getSqrMat3 (xercesc::DOMElement *e) |
static fmatvec::SqrMat | getSqrMat (xercesc::DOMElement *e, int size=0) |
static fmatvec::SymMat3 | getSymMat3 (xercesc::DOMElement *e) |
static fmatvec::SymMat | getSymMat (xercesc::DOMElement *e, int size=0) |
![]() | |
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) |
![]() | |
void | updatePlotFeatures () |
![]() | |
Atom (const Atom &src) | |
![]() | |
RigidBody * | bd |
std::string | saved_DependentBody |
![]() | |
int | qSize |
size of object positions | |
int | uSize [2] |
size of object velocities | |
int | hSize [2] |
size of object h-vector (columns of J) | |
int | qInd |
indices of positions, velocities, right hand side | |
int | uInd [2] |
int | hInd [2] |
int | xSize |
size and local index of order one parameters | |
int | xInd |
fmatvec::Vec | q |
positions, velocities | |
fmatvec::Vec | u |
fmatvec::Vec | uall |
fmatvec::Vec | x |
fmatvec::Vec | q0 |
initial position, velocity | |
fmatvec::Vec | u0 |
fmatvec::Vec | x0 |
fmatvec::Vec | qd |
differentiated positions, velocities | |
fmatvec::Vec | ud [2] |
fmatvec::Vec | udall [2] |
fmatvec::Vec | xd |
fmatvec::Vec | h [2] |
complete and object smooth and nonsmooth right hand side | |
fmatvec::Vec | r [2] |
fmatvec::Mat | W [2] |
fmatvec::Mat | V [2] |
fmatvec::Mat | dhdq |
Jacobians of h. | |
fmatvec::SqrMat | dhdu |
fmatvec::Vec | dhdt |
fmatvec::Mat | T |
linear relation matrix of differentiated position and velocity parameters | |
fmatvec::SymMat | M [2] |
mass matrix | |
fmatvec::SymMat | LLM [2] |
LU-decomposition of mass matrix. | |
![]() | |
Element * | parent |
std::string | name |
name of element | |
std::string | path |
The path of this object. Is set during the init stage reorganizeHierarchy. Before this the path is calculated dynamically using getPath() after this stage getPath just returns this value. | |
std::vector < MBXMLUtils::EmbedDOMLocator > | locationStack |
DynamicSystemSolver * | ds |
dynamic system | |
H5::VectorSerie< double > * | plotVectorSerie |
time series | |
std::vector< double > | plotVector |
one entry of time series | |
std::vector< std::string > | plotColumns |
columns of time series | |
H5::GroupBase * | plotGroup |
associated plot group | |
std::vector< Element * > | dependency |
vector containing all dependencies. | |
|
inlinevirtual |
Reimplemented from MBSim::Object.