17 template <
typename SCALAR>
40 const control_vector_t& control,
41 state_vector_t& derivative)
override 44 derivative(0) = state(1) * state(0) + state(1) * control(0);
45 derivative(1) = w_n_ * control(0) - 2.0 * w_n_ * state(1) - 3.0 * w_n_ * state(1) * control(0);
virtual void computeControlledDynamics(const StateVector< 2, SCALAR > &state, const SCALAR &t, const control_vector_t &control, state_vector_t &derivative) override
Definition: TestNonlinearSystem.h:38
static const size_t CONTROL_DIM
Definition: TestNonlinearSystem.h:22
TestNonlinearSystem(const TestNonlinearSystem &arg)
Definition: TestNonlinearSystem.h:35
StateVector< 2, SCALAR > state_vector_t
Definition: TestNonlinearSystem.h:25
TestNonlinearSystem()=delete
Definition: ControlVector.h:12
CppAD::AD< CppAD::cg::CG< double > > SCALAR
TestNonlinearSystem * clone() const override
deep copy
Definition: TestNonlinearSystem.h:37
static const size_t STATE_DIM
Definition: TestNonlinearSystem.h:21
ControlVector< 1, SCALAR > control_vector_t
Definition: TestNonlinearSystem.h:24
Definition: TestNonlinearSystem.h:18
SYSTEM_TYPE
type of system
Definition: System.h:15
any non-specific system
Definition: System.h:17
TestNonlinearSystem(SCALAR w_n, std::shared_ptr< Controller< 2, 1, SCALAR >> controller=nullptr)
Definition: TestNonlinearSystem.h:30
virtual ~TestNonlinearSystem()
Definition: TestNonlinearSystem.h:36
A general, non-linear dynamic system with a control input.
Definition: ControlledSystem.h:46
Interface class for all controllers.
Definition: Controller.h:26