20#ifndef _QUASI_STATIC_INTEGRATOR_H_
21#define _QUASI_STATIC_INTEGRATOR_H_
23#include "integrator.h"
24#include "mbsim/functions/function.h"
25#include<mbsim/dynamic_system_solver.h>
50 fmatvec::Vec operator()(
const fmatvec::Vec& qla)
override;
76 sys(sys_), t(t_), z(z_) {
86 fmatvec::SqrMat operator()(
const fmatvec::Vec& q)
override;
113 void preIntegrate()
override;
114 void subIntegrate(
double tStop)
override;
115 void postIntegrate()
override;
124 void setStepSize(
double dt_) {
127 void setgTolerance(
double tolerance_) {
130 void sethTolerance(
double tolerance_) {
133 void setmaxExtraPolate(
int value) {
136 void setextraPolateAfter(
int value) {
139 void setupdateJacobianEvery(
int value) {
153 double t{0.}, tPlot{0.};
168 int iter{0}, step{0}, integrationSteps{0}, maxIter{0}, sumIter{0};
188 double s0{0.}, time{0.};
198 fmatvec::Vec
z, q, u, x;
solver interface for modelling and simulation of dynamic systems
Definition: dynamic_system_solver.h:61
Definition: function.h:53
integrator-interface for dynamic systems
Definition: integrator.h:37
virtual void integrate()=0
start the integration of the system set by setSystem. Each class implemeting this function should cal...
Definition: quasi_static_integrator.h:101
double gTol
tolerance for the newton iteration for distances
Definition: quasi_static_integrator.h:158
double s0
computing time counter
Definition: quasi_static_integrator.h:188
double dt
step size
Definition: quasi_static_integrator.h:148
int updateJacobianEvery
value of how often the Jacobian should be updated every step
Definition: quasi_static_integrator.h:183
void initializeUsingXML(xercesc::DOMElement *element) override
initialize integrator
Definition: quasi_static_integrator.cc:203
fmatvec::Vec z
state, position, velocity, order coordinate of dynamical system
Definition: quasi_static_integrator.h:198
void integrate() override
start the integration of the system set by setSystem. Each class implemeting this function should cal...
Definition: quasi_static_integrator.cc:197
double t
time and plot time
Definition: quasi_static_integrator.h:153
int iter
iteration counter for constraints, plots, integration, maximum constraints, cummulation constraint
Definition: quasi_static_integrator.h:168
double hTol
tolerance for newton iteration for forces
Definition: quasi_static_integrator.h:163
int maxExtraPolate
value of how many points in the past should be used to extrapolate for new value
Definition: quasi_static_integrator.h:173
~QuasiStaticIntegrator() override=default
destructor
QuasiStaticIntegrator()
constructor
Definition: quasi_static_integrator.cc:40
int stepPlot
plot step difference
Definition: quasi_static_integrator.h:193
int extraPolateAfter
extrapolate after such and that integration steps
Definition: quasi_static_integrator.h:178
calculate h vector according the new q and system boundary conditions
Definition: quasi_static_integrator.h:34
hgFun(MBSim::DynamicSystemSolver *sys_)
constructor
Definition: quasi_static_integrator.h:39
~hgFun() override=default
destructor
function for the dh/dq
Definition: quasi_static_integrator.h:70
~jacFun() override=default
destructor
jacFun(MBSim::DynamicSystemSolver *sys_, double t_, fmatvec::Vec &z_)
constructor
Definition: quasi_static_integrator.h:75
namespace MBSim
Definition: bilateral_constraint.cc:30