All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | Private Attributes | List of all members
MBSimIntegrator::ThetaTimeSteppingIntegrator Class Reference

#include <theta_time_stepping_integrator.h>

Inheritance diagram for MBSimIntegrator::ThetaTimeSteppingIntegrator:
MBSimIntegrator::Integrator MBSim::Solver fmatvec::Atom

Public Member Functions

 ThetaTimeSteppingIntegrator ()
 constructor
 
virtual ~ThetaTimeSteppingIntegrator ()
 destructor
 
void integrate (MBSim::DynamicSystemSolver &system)
 start the integration More...
 
virtual void initializeUsingXML (xercesc::DOMElement *element)
 initialize integrator More...
 
void setStepSize (double dt_)
 
void setTheta (double theta_)
 
void setDriftCompensation (bool dc)
 
void update (MBSim::DynamicSystemSolver &system, const fmatvec::Vec &z, double t)
 update of dynamic system necessary values concerning theta time stepping integrator More...
 
void preIntegrate (MBSim::DynamicSystemSolver &system)
 preintegration steps More...
 
void subIntegrate (MBSim::DynamicSystemSolver &system, double tStop)
 integration steps More...
 
void postIntegrate (MBSim::DynamicSystemSolver &system)
 postintegration steps More...
 
- Public Member Functions inherited from MBSimIntegrator::Integrator
 Integrator ()
 constructor
 
virtual ~Integrator ()
 destructor
 
void setStartTime (double tStart_)
 
void setEndTime (double tEnd_)
 
void setPlotStepSize (double dtPlot_)
 
void setInitialState (const fmatvec::Vec &z0_)
 
void setWarnLevel (int level)
 
void setOutput (bool flag)
 
double getStartTime () const
 
double getEndTime () const
 
double getPlotStepSize () const
 
const fmatvec::VecgetInitialState () const
 
int getWarnLevel () const
 
bool getOutput () const
 
void execute (MBSim::DynamicSystemSolver &system)
 start solving the dynamic system More...
 
void debugInit ()
 
virtual std::string getType () const
 
- Public Member Functions inherited from MBSim::Solver
 Solver ()
 constructor
 
virtual ~Solver ()
 destructor
 
- Public Member Functions inherited from fmatvec::Atom
Atomoperator= (const Atom &)
 
void setMessageStreamActive (MsgType type, bool active)
 
void getMessageStream (MsgType type, std::shared_ptr< bool > &a, std::shared_ptr< std::ostream > &s)
 
void adoptMessageStreams (const Atom *src=NULL)
 
std::ostream & msg (MsgType type)
 
bool msgAct (MsgType type)
 

Private Attributes

double dt
 step size
 
double theta
 convex combination parameter between explicit (0) and implicit (1) Euler scheme
 
double t
 time and plot time
 
double tPlot
 
int iter
 iteration counter for constraints, plots, integration, maximum constraints, cummulation constraint
 
int step
 
int integrationSteps
 
int maxIter
 
int sumIter
 
double s0
 computing time counter
 
double time
 
int stepPlot
 plot step difference
 
fmatvec::Vec z
 state, position, velocity, order coordinate of dynamical system
 
fmatvec::Vec q
 
fmatvec::Vec u
 
fmatvec::Vec x
 
std::ofstream integPlot
 file stream for integration information
 
bool driftCompensation
 flag for drift compensation
 

Additional Inherited Members

- Public Types inherited from fmatvec::Atom
enum  MsgType
 
- Static Public Member Functions inherited from MBSimIntegrator::Integrator
static IntegratorreadXMLFile (const std::string &filename)
 
- Static Public Member Functions inherited from fmatvec::Atom
static void setCurrentMessageStream (MsgType type, const std::shared_ptr< bool > &a=std::make_shared< bool >(true), const std::shared_ptr< std::ostream > &s=std::make_shared< std::ostream >(std::cout.rdbuf()))
 
static std::ostream & msgStatic (MsgType type)
 
static bool msgActStatic (MsgType type)
 
- Protected Member Functions inherited from fmatvec::Atom
 Atom (const Atom &src)
 
- Protected Attributes inherited from MBSimIntegrator::Integrator
double tStart
 start, end, plot time
 
double tEnd
 
double dtPlot
 
fmatvec::Vec z0
 initial state
 
int warnLevel
 warn level
 
bool output
 flag for ouput printing
 
std::string name
 name of integrator
 
- Static Protected Attributes inherited from MBSim::Solver
static DynamicSystemSolversystem = 0
 dynamic system
 

Detailed Description

brief theta-time-stepping integrator of first order

Author
Roland Zander
Thorsten Schindler
Date
2009-07-18 new kernel_dev (Thorsten Schindler)
2009-07-19 Delassus matrix / split of update (Thorsten Schindler)
2009-07-27 some fixes (Thorsten Schindler)
2010-04-23 integrate splitted (Thorsten Schindler)

Member Function Documentation

void MBSimIntegrator::ThetaTimeSteppingIntegrator::initializeUsingXML ( xercesc::DOMElement *  element)
virtual

initialize integrator

Parameters
XMLdescription

Reimplemented from MBSimIntegrator::Integrator.

void MBSimIntegrator::ThetaTimeSteppingIntegrator::integrate ( MBSim::DynamicSystemSolver system)
virtual

start the integration

Parameters
dynamicsystem to be integrated Each class implemeting this function should call debugInit first.

Implements MBSimIntegrator::Integrator.

void MBSimIntegrator::ThetaTimeSteppingIntegrator::postIntegrate ( MBSim::DynamicSystemSolver system)
virtual

postintegration steps

Parameters
dynamicsystem

Reimplemented from MBSimIntegrator::Integrator.

void MBSimIntegrator::ThetaTimeSteppingIntegrator::preIntegrate ( MBSim::DynamicSystemSolver system)
virtual

preintegration steps

Parameters
dynamicsystem

Reimplemented from MBSimIntegrator::Integrator.

void MBSimIntegrator::ThetaTimeSteppingIntegrator::subIntegrate ( MBSim::DynamicSystemSolver system,
double  tStop 
)
virtual

integration steps

Parameters
dynamicsystem
endtime of integration

Reimplemented from MBSimIntegrator::Integrator.

void MBSimIntegrator::ThetaTimeSteppingIntegrator::update ( MBSim::DynamicSystemSolver system,
const fmatvec::Vec z,
double  t 
)

update of dynamic system necessary values concerning theta time stepping integrator

Parameters
dynamicsystem
statevector
time

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

Impressum / Disclaimer / Datenschutz Generated by doxygen 1.8.5 Valid HTML