MBDyn-1.7.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
LogSFR Struct Reference
Inheritance diagram for LogSFR:
Collaboration diagram for LogSFR:

Public Member Functions

virtual const BasicScalarFunctionRead (DataManager *const pDM, MBDynParser &HP) const
 
- Public Member Functions inherited from ScalarFunctionRead
virtual ~ScalarFunctionRead (void)
 

Detailed Description

Definition at line 341 of file ScalarFunctionsImpl.cc.

Member Function Documentation

virtual const BasicScalarFunction* LogSFR::Read ( DataManager *const  pDM,
MBDynParser HP 
) const
inlinevirtual

Implements ScalarFunctionRead.

Definition at line 343 of file ScalarFunctionsImpl.cc.

References c, IncludeParser::GetLineData(), HighParser::GetReal(), HighParser::IsKeyWord(), and MBDYN_EXCEPT_ARGS.

343  {
344  doublereal b = 1.;
345  if (HP.IsKeyWord("base")) {
346  b = HP.GetReal();
347  if (b <= 0.) {
348  silent_cerr("LogSFR: "
349  "invalid base " << b
350  << " at line "
351  << HP.GetLineData()
352  << std::endl);
354  }
355  }
356 
357  doublereal c = 1.;
358  if (HP.IsKeyWord("coefficient")) {
359  c = HP.GetReal();
360  // note: c*x must be > 0, but x could be negative
361  if (c == 0.) {
362  silent_cerr("LogSFR: "
363  "invalid coefficient " << c
364  << " at line "
365  << HP.GetLineData()
366  << std::endl);
368  }
369  }
370 
371  doublereal m = HP.GetReal();
372  return new LogScalarFunction(m, b, c);
373  };
#define MBDYN_EXCEPT_ARGS
Definition: except.h:63
virtual bool IsKeyWord(const char *sKeyWord)
Definition: parser.cc:910
static std::stack< cleanup * > c
Definition: cleanup.cc:59
double doublereal
Definition: colamd.c:52
virtual HighParser::ErrOut GetLineData(void) const
Definition: parsinc.cc:697
virtual doublereal GetReal(const doublereal &dDefval=0.0)
Definition: parser.cc:1056

Here is the call graph for this function:


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