59 DEBUGCOUT(
"Entering Gravity::AssJac()" << std::endl);
71 DEBUGCOUT(
"Entering Gravity::AssRes()" << std::endl);
96 return out <<
" gravity: uniform, /* reference, global, */ ",
107 DEBUGCOUT(
"Entering UniformGravity::AssRes()" << std::endl);
126 <<
" " <<
Acc << std::endl;
138 :
Elem(1, fOut),
Gravity(fOut), m_X0(X0), m_dM(dM), m_dG(dG)
152 return out <<
" gravity: central, "
153 "origin, ",
m_X0.
Write(out,
", ") <<
", "
154 "mass, " <<
m_dM <<
", "
248 silent_cerr(
"Gravity: \"mass\" keyword expected at line " << HP.
GetLineData() << std::endl);
252 if (dM <= std::numeric_limits<doublereal>::epsilon()) {
253 silent_cerr(
"Gravity: mass " << dM <<
" is negative or too small at line " << HP.
GetLineData() << std::endl);
258 silent_cerr(
"Gravity: \"G\" keyword expected at line " << HP.
GetLineData() << std::endl);
265 if (dG <= std::numeric_limits<doublereal>::epsilon()) {
266 silent_cerr(
"Gravity: gravity constant " << dG <<
" is negative or too small at line " << HP.
GetLineData() << std::endl);
275 silent_cerr(
"Gravity: "
278 "assuming \"uniform\""
flag fReadOutput(MBDynParser &HP, const T &t) const
Elem * ReadGravity(DataManager *pDM, MBDynParser &HP)
const Vec3 Zero3(0., 0., 0.)
std::ostream & Write(std::ostream &out, const char *sFill=" ") const
virtual bool bToBeOutput(void) const
#define MBDYN_EXCEPT_ARGS
void PutGravity(const Gravity *pG)
virtual void Output(OutputHandler &OH) const
virtual ~CentralGravity(void)
doublereal Norm(void) const
virtual bool bGetGravity(const Vec3 &X, Vec3 &Acc) const
ElemGravityOwner(unsigned int uL, flag fOut)
std::ostream & Gravity(void) const
virtual VariableSubMatrixHandler & AssJac(VariableSubMatrixHandler &WorkMat, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
virtual Vec3 GetAcceleration(const Vec3 &) const =0
const ReferenceFrame AbsRefFrame(0, Vec3(0., 0., 0), Mat3x3(1., 0., 0., 0., 1., 0., 0., 0., 1.), Vec3(0., 0., 0), Vec3(0., 0., 0), EULER_123)
TplDriveCaller< Vec3 > * ReadDC3D(const DataManager *pDM, MBDynParser &HP)
TplDriveCaller< Vec3 > * pGetDriveCaller(void) const
virtual ~GravityOwner(void)
virtual Vec3 GetAcceleration(const Vec3 &X) const
virtual bool IsKeyWord(const char *sKeyWord)
Vec3 GetPosAbs(const ReferenceFrame &rf)
virtual std::ostream & Restart(std::ostream &out) const
virtual std::ostream & Restart(std::ostream &out) const =0
#define ASSERT(expression)
#define SAFENEWWITHCONSTRUCTOR(pnt, item, constructor)
CentralGravity(const Vec3 &X0, doublereal dM, doublereal dG, flag fOut)
virtual SubVectorHandler & AssRes(SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
virtual HighParser::ErrOut GetLineData(void) const
unsigned int GetLabel(void) const
virtual ~ElemGravityOwner(void)
virtual void Resize(integer iNewSize)=0
bool UseText(int out) const
virtual doublereal GetReal(const doublereal &dDefval=0.0)