File control/src/utils/ControlZOHAdditionalTerms.hpp#
Go to the source code of this file
Functions to add control terms during the integration steps.
-
struct ControlZOHAdditionalTerms : public ExtraAdditionalTerms#
Public Functions
-
virtual void init(DynamicalSystemsGraph &DSG0, const NonSmoothDynamicalSystem &nsds, const TimeDiscretisation &td)#
initialize elements in the graph for the computations
- Parameters:
DSG0 – the graph of DynamicalSystems
nsds – current nonsmooth dynamical system
td – current time discretisation
-
virtual void addSmoothTerms(DynamicalSystemsGraph &DSG0, const DynamicalSystemsGraph::VDescriptor &dsgVD, const double h, SiconosVector &xfree)#
add smooth term to xfree (like the control input, the error correction for an observer)
- Parameters:
DSG0 – the graph of DynamicalSystems
dsgVD – a DynamicalSystem in the DS graph
h – the current timestep
xfree – the free state to modify
-
virtual void addJacobianRhsContribution(DynamicalSystemsGraph &DSG0, const DynamicalSystemsGraph::VDescriptor &dsgVD, const double h, SiconosMatrix &jacRhs)#
add contribution to JacRhs for instance if \(\dot{x} = f(x) + g(x)u\)
- Parameters:
DSG0 – the graph of DynamicalSystems
dsgVD – a DynamicalSystem in the DS graph
h – the current timestep
jacRhs – the jacobian to modify
Private Functions
-
ACCEPT_SERIALIZATION(ControlZOHAdditionalTerms)#
-
virtual void init(DynamicalSystemsGraph &DSG0, const NonSmoothDynamicalSystem &nsds, const TimeDiscretisation &td)#