34 #ifndef ACADO_TOOLKIT_INTEGRATOR_BDF_HPP 35 #define ACADO_TOOLKIT_INTEGRATOR_BDF_HPP 322 virtual int getDim()
const;
389 double applyNewtonStep(
int index,
double *etakplus1,
const double *etak,
const DMatrix &J,
const double *FFF );
648 #include <acado/integrator/integrator_bdf.ipp> 651 #endif // ACADO_TOOLKIT_INTEGRATOR_BDF_HPP
virtual returnValue getProtectedBackwardSensitivities(DVector &Dx_x0, DVector &Dx_p, DVector &Dx_u, DVector &Dx_w, int order) const
void determineRKEtaGForward()
void printBDFfinalResults()
virtual returnValue getProtectedForwardSensitivities(DMatrix *Dx, int order) const
void constructAll(const IntegratorBDF &arg)
virtual int getNumberOfRejectedSteps() const
double applyNewtonStep(int index, double *etakplus1, const double *etak, const DMatrix &J, const double *FFF)
returnValue setForwardSeed2(const DVector &xSeed, const DVector &pSeed, const DVector &uSeed, const DVector &wSeed)
Allows real time measurements based on the system's clock.
double determinePredictor(int number, BooleanType ini)
Implements the backward-differentiation formula for integrating DAEs.
virtual returnValue freezeAll()
virtual returnValue stop()
void determineBDFEtaHBackward(int number)
void logCurrentIntegratorStep(const DVector ¤tX=emptyConstVector, const DVector ¤tXA=emptyConstVector)
Discretizes a DifferentialEquation by means of single or multiple shooting.
void determineRKEtaGForward2()
Provides a time grid consisting of vector-valued optimization variables at each grid point...
virtual IntegratorBDF & operator=(const IntegratorBDF &arg)
Allows to pass back messages to the calling function.
void determineBDFEtaGForward(int number)
returnValue decomposeJacobian(int index, DMatrix &J)
Allows to conveniently handle (one-dimensional) grids consisting of time points.
virtual int getDim() const
void determineRKEtaHBackward()
virtual returnValue evaluate(const DVector &x0, const DVector &xa, const DVector &p, const DVector &u, const DVector &w, const Grid &t_)
void printRKIntermediateResults()
returnValue rk_start_solve(int stepnumber)
#define CLOSE_NAMESPACE_ACADO
virtual Integrator * clone() const
Abstract base class for all kinds of algorithms for integrating differential equations (ODEs or DAEs)...
double * initialAlgebraicResiduum
void determineBDFEtaHBackward2(int number)
virtual returnValue evaluateSensitivities()
returnValue determineCorrector(int number, BooleanType ini)
double relaxationConstant
friend class SimulationByIntegration
static const DVector emptyConstVector
virtual int getDimX() const
virtual returnValue step(int number)
virtual returnValue unfreeze()
void determineRKEtaHBackward2()
void printBDFIntermediateResults()
virtual returnValue setProtectedForwardSeed(const DVector &xSeed, const DVector &pSeed, const DVector &uSeed, const DVector &wSeed, const int &order)
RealClock jacDecomposition
void initializeVariables()
void interpolate(int number_, DMatrix &div, VariablesGrid &poly)
void relaxAlgebraic(double *residuum, double timePoint)
virtual returnValue setProtectedBackwardSeed(const DVector &seed, const int &order)
void printBDFfinalResults2(DMatrix &div)
virtual returnValue getProtectedX(DVector *xEnd) const
void prepareDividedDifferences(DMatrix &div)
virtual returnValue setBackwardSeed2(const DVector &seed)
void applyMTranspose(int index, double *seed1, DMatrix &J, double *seed2)
Allows to setup and evaluate transition functions based on SymbolicExpressions.
void initializeButcherTableau()
virtual int getNumberOfSteps() const
virtual returnValue init(const DifferentialEquation &rhs_)
#define BEGIN_NAMESPACE_ACADO
virtual returnValue freezeMesh()
virtual returnValue setDxInitialization(double *dx0)
void determineBDFEtaGForward2(int number)
void copyBackward(DVector &Dx_x0, DVector &Dx_p, DVector &Dx_u, DVector &Dx_w, const DMatrix &div) const
virtual double getStepSize() const
Allows to setup and evaluate differential equations (ODEs and DAEs) based on SymbolicExpressions.