Program listing for file control/src/Controller/LinearSMCOT2.hpp

Program listing for file control/src/Controller/LinearSMCOT2.hpp#

 1#ifndef LinearSMCOT2_H
 2#define LinearSMCOT2_H
 3
 4#include "CommonSMC.hpp"
 5#include "OneStepIntegratorTypes.hpp"
 6
 7class LinearSMCOT2 : public CommonSMC
 8{
 9private:
10
11  LinearSMCOT2() {};
12
13  SP::SiconosVector _X;
14
15  SP::SiconosVector _Xhat;
16
17  SP::SiconosVector _XPhi;
18
19  SP::NonSmoothDynamicalSystem _nsdsPhi;
20
21  SP::FirstOrderLinearDS _DSPhi;
22
23  SP::TimeDiscretisation _tdPhi;
24
25  SP::LsodarOSI _PhiOSI;
26
27  SP::EventDriven _simulPhi;
28
29  SP::NonSmoothDynamicalSystem _nsdsPred;
30
31  SP::TimeDiscretisation _tdPred;
32
33  SP::LsodarOSI _PredOSI;
34
35  SP::EventDriven _simulPred;
36
37  SP::FirstOrderLinearDS _DSPred;
38
39  double _coeff;
40
41  ACCEPT_SERIALIZATION(LinearSMCOT2);
42
43public:
44
45
46  LinearSMCOT2(SP::ControlSensor sensor);
47
48
49  virtual ~LinearSMCOT2();
50
51
52  void initialize(const NonSmoothDynamicalSystem& nsds, const Simulation & s);
53
54
55  void actuate();
56
57
58  virtual void setTimeDiscretisation(const TimeDiscretisation& td);
59
60};
61#endif