37 template <
size_t STATE_DIM,
size_t CONTROL_DIM,
typename SCALAR =
double>
41 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
86 const control_vector_array_t& u_trajectory,
87 const state_matrix_array_t& A,
88 const control_gain_matrix_array_t& B,
90 control_feedback_array_t& K,
91 bool performNumericalChecks =
true);
110 const control_vector_array_t& u_trajectory,
113 control_feedback_array_t& K,
114 bool performNumericalChecks =
true);
136 void linearizeModel(
const state_vector_array_t& x_trajectory,
137 const control_vector_array_t& u_trajectory,
141 state_matrix_array_t& A,
142 control_gain_matrix_array_t& B);
165 void solve(
const state_vector_array_t& x_trajectory,
166 const control_vector_array_t& u_trajectory,
167 const state_matrix_array_t& A,
168 const control_gain_matrix_array_t& B,
171 control_feedback_array_t& K,
172 bool performNumericalChecks =
true);
175 std::shared_ptr<CostFunctionQuadratic<STATE_DIM, CONTROL_DIM, SCALAR>>
Eigen::Matrix< SCALAR, STATE_DIM, STATE_DIM > state_matrix_t
Definition: FHDTLQR.hpp:44
Eigen::Matrix< SCALAR, STATE_DIM, CONTROL_DIM > control_gain_matrix_t
Definition: FHDTLQR.hpp:47
Eigen::Matrix< SCALAR, CONTROL_DIM, STATE_DIM > control_state_matrix_t
Definition: FHDTLQR.hpp:46
ct::core::StateMatrixArray< STATE_DIM, SCALAR > state_matrix_array_t
Definition: FHDTLQR.hpp:52
Eigen::Matrix< SCALAR, CONTROL_DIM, STATE_DIM > control_feedback_t
Definition: FHDTLQR.hpp:48
ct::core::StateControlMatrixArray< STATE_DIM, CONTROL_DIM, SCALAR > control_gain_matrix_array_t
Definition: FHDTLQR.hpp:55
const double dt
Definition: LQOCSolverTiming.cpp:18
Describes a cost function with a quadratic approximation, i.e. one that can compute first and second ...
Definition: CostFunctionQuadratic.hpp:29
core::ControlVectorArray< CONTROL_DIM, SCALAR > control_vector_array_t
Definition: FHDTLQR.hpp:51
Finite-Horizon Discrete Time LQR.
Definition: FHDTLQR.hpp:38
Dynamic Riccati Equation.
Definition: DynamicRiccatiEquation.hpp:22
CppAD::AD< CppAD::cg::CG< double > > SCALAR
ct::core::FeedbackArray< STATE_DIM, CONTROL_DIM, SCALAR > control_feedback_array_t
Definition: FHDTLQR.hpp:54
FHDTLQR(std::shared_ptr< CostFunctionQuadratic< STATE_DIM, CONTROL_DIM, SCALAR >> costFunction)
Constructor.
Definition: FHDTLQR-impl.hpp:12
void designController(const state_vector_array_t &x_trajectory, const control_vector_array_t &u_trajectory, const state_matrix_array_t &A, const control_gain_matrix_array_t &B, SCALAR dt, control_feedback_array_t &K, bool performNumericalChecks=true)
design a time-varying feedback trajectory using user-provided matrices A and B
Definition: FHDTLQR-impl.hpp:24
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef core::ControlVector< CONTROL_DIM, SCALAR > control_vector_t
Definition: FHDTLQR.hpp:43
core::StateVectorArray< STATE_DIM, SCALAR > state_vector_array_t
Definition: FHDTLQR.hpp:50
~FHDTLQR()
Definition: FHDTLQR-impl.hpp:19
Eigen::Matrix< SCALAR, CONTROL_DIM, CONTROL_DIM > control_matrix_t
Definition: FHDTLQR.hpp:45