aligator  0.9.0
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
Loading...
Searching...
No Matches
ode-abstract.hpp
Go to the documentation of this file.
1#pragma once
5
7
8namespace aligator {
9namespace dynamics {
14template <typename _Scalar>
16 using Scalar = _Scalar;
18
21 using Base::Base;
22 using Base::nu_;
23 using Base::space_;
24
25 virtual ~ODEAbstractTpl() = default;
26
28 virtual void forward(const ConstVectorRef &x, const ConstVectorRef &u,
29 Data &data) const = 0;
30
32 virtual void dForward(const ConstVectorRef &x, const ConstVectorRef &u,
33 Data &data) const = 0;
34
37 void evaluate(const ConstVectorRef &x, const ConstVectorRef &u,
38 const ConstVectorRef &xdot, Data &data) const override;
39
40 void computeJacobians(const ConstVectorRef &x, const ConstVectorRef &u,
41 const ConstVectorRef &xdot, Data &data) const override;
42};
43
44} // namespace dynamics
45} // namespace aligator
46
47#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
48#include "aligator/modelling/dynamics/ode-abstract.txx"
49#endif
Base definitions for continuous dynamics.
Main package namespace.
Continuous dynamics described by differential-algebraic equations (DAEs) .
Definition fwd.hpp:12
Data struct for ContinuousDynamicsAbstractTpl.
Definition fwd.hpp:15
Base class for ODE dynamics .
virtual void forward(const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const =0
Evaluate the ODE vector field: this returns the value of .
virtual void dForward(const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const =0
Evaluate the vector field Jacobians.
void evaluate(const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xdot, Data &data) const override
void computeJacobians(const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xdot, Data &data) const override