23 #include "mbsim/element.h"
55 virtual void updateT() { }
56 virtual void updateh(
int j=0) { }
57 virtual void updateM() { }
58 virtual void updatedhdz();
59 virtual void updatedq();
60 virtual void updatedu();
61 virtual void updateud();
62 virtual void updateqd();
63 virtual void sethSize(
int hSize_,
int i=0);
64 virtual int gethSize(
int i=0)
const {
return hSize[i]; }
65 virtual int getqSize()
const {
return qSize; }
66 virtual int getuSize(
int i=0)
const {
return uSize[i]; }
67 virtual void calcqSize() {};
68 virtual void calcuSize(
int j) {};
70 virtual int getuInd(
int i=0) {
return uInd[i]; }
72 virtual void setqInd(
int qInd_) {
qInd = qInd_; }
73 virtual void setuInd(
int uInd_,
int i=0) { uInd[i] = uInd_; }
85 virtual std::string
getType()
const {
return "Object"; }
205 virtual void initz();
239 void setqSize(
int qSize_) {
qSize = qSize_; }
240 void setuSize(
int uSize_,
int i=0) {
uSize[i] = uSize_; }
241 int getzSize()
const {
return qSize +
uSize[0]; }
243 virtual void sethInd(
int hInd_,
int i=0);
244 int gethInd(
int i=0) {
return hInd[i]; }
246 const fmatvec::Vec& geth(
int i=0,
bool check=
true)
const;
272 virtual void initializeUsingXML(xercesc::DOMElement *element);
int qInd
indices of positions, velocities, right hand side
Definition: object.h:293
Object(const std::string &name)
constructor
Definition: object.cc:34
virtual void updateudallRef(const fmatvec::Vec &udallRef)
references to differentiated velocities of dynamic system parent
Definition: object.cc:169
virtual void updatedqRef(const fmatvec::Vec &dqRef)
references to differentiated positions of dynamic system parent
Definition: object.cc:149
virtual void updateTRef(const fmatvec::Mat &ref)
references to linear transformation matrix between differentiated positions and velocities of dynamic...
Definition: object.cc:197
virtual void updateLLM()
perform Cholesky decomposition of mass martix
Definition: object.h:220
virtual void updatedhdqRef(const fmatvec::Mat &dhdqRef, int i=0)
references to object Jacobian for implicit integration of dynamic system parent regarding positions ...
Definition: object.cc:177
fmatvec::Mat T
linear relation matrix of differentiated position and velocity parameters
Definition: object.h:327
virtual void updateudRef(const fmatvec::Vec &udRef)
references to differentiated velocities of dynamic system parent
Definition: object.cc:161
int qSize
size of object positions
Definition: object.h:278
virtual void initz()
Definition: object.cc:247
fmatvec::Vec q
positions, velocities
Definition: object.h:298
basic class of MBSim mainly for plotting
Definition: element.h:58
virtual void writez(H5::GroupBase *group)
writes its z-Vector to a subgroup of the given group
Definition: object.cc:262
int hSize[2]
size of object h-vector (columns of J)
Definition: object.h:288
fmatvec::SymMat LLM
LU-decomposition of mass matrix.
Definition: object.h:337
virtual void plot()
plots time dependent data
Definition: object.cc:103
virtual void updatedhduRef(const fmatvec::SqrMat &dhduRef, int i=0)
references to object Jacobian for implicit integration of dynamic system parent regarding velocities ...
Definition: object.cc:181
InitStage
The stages of the initialization.
Definition: element.h:97
virtual void updatedhdtRef(const fmatvec::Vec &dhdtRef, int i=0)
references to object Jacobian for implicit integration of dynamic system parent regarding time ...
Definition: object.cc:185
PlotFeatureStatus getPlotFeature(PlotFeature pf)
Definition: element.h:214
std::string name
name of element
Definition: element.h:298
virtual void updateuRef(const fmatvec::Vec &uRef)
references to velocities of dynamic system parent
Definition: object.cc:153
fmatvec::Mat dhdq
Jacobians of h.
Definition: object.h:320
virtual double evalKineticEnergy()
Definition: object.h:225
virtual void init(InitStage stage)
initialize object at start of simulation with respect to contours and frames
Definition: object.cc:209
virtual void updateqRef(const fmatvec::Vec &qRef)
references to positions of dynamic system parent
Definition: object.cc:141
virtual void updateMRef(const fmatvec::SymMat &ref)
references to mass matrix of dynamic system parent
Definition: object.cc:201
virtual void closePlot()
closes plot file
Definition: object.cc:135
int uSize[2]
size of object velocities
Definition: object.h:283
virtual void updatehRef(const fmatvec::Vec &hRef, int i=0)
references to smooth force vector of dynamic system parent
Definition: object.cc:173
virtual void updateLLMRef(const fmatvec::SymMat &ref)
references to Cholesky decomposition of dynamic system parent
Definition: object.cc:205
virtual void readz0(H5::GroupBase *group)
reads the z-Vector of a subgroup of the given group
Definition: object.cc:268
fmatvec::Vec h[2]
complete and object smooth and nonsmooth right hand side
Definition: object.h:313
H5::GroupBase * plotGroup
associated plot group
Definition: element.h:332
virtual ~Object()
destructor
Definition: object.cc:47
virtual void updaterdtRef(const fmatvec::Vec &ref)
references to nonsmooth force vector of dynamic system parent
Definition: object.cc:193
virtual void updateduRef(const fmatvec::Vec &duRef)
references to differentiated velocities of dynamic system parent
Definition: object.cc:165
PlotFeatureStatus
Plot feature status.
Definition: element.h:61
virtual std::string getType() const
Definition: object.h:85
virtual void updateuallRef(const fmatvec::Vec &uallRef)
references to velocities of dynamic system parent
Definition: object.cc:157
PlotFeature
Plot Features.
Definition: element.h:74
virtual void updaterRef(const fmatvec::Vec &ref, int i=0)
references to nonsmooth force vector of dynamic system parent
Definition: object.cc:189
virtual void updateqdRef(const fmatvec::Vec &qdRef)
references to differentiated positions of dynamic system parent
Definition: object.cc:145
fmatvec::SymMat M
mass matrix
Definition: object.h:332
fmatvec::Vec qd
differentiated positions, velocities
Definition: object.h:308
PlotFeatureStatus getPlotFeatureForChildren(PlotFeature pf)
Definition: element.h:219
class for all objects having own dynamics and mass
Definition: object.h:42
fmatvec::Vec q0
initial position, velocity
Definition: object.h:303
virtual void setUpInverseKinetics()
TODO.
Definition: object.h:235
virtual double evalPotentialEnergy()
Definition: object.h:230