32 template <
size_t STATE_DIM,
size_t CONTROL_DIM,
typename SCALAR =
double>
36 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
46 throw std::runtime_error(
"clone not implemented for Sensitivity");
52 virtual void setTimeDiscretization(
const SCALAR&
dt) = 0;
62 std::vector<StateVectorArrayPtr, Eigen::aligned_allocator<StateVectorArrayPtr>>* xSubstep,
63 std::vector<ControlVectorArrayPtr, Eigen::aligned_allocator<ControlVectorArrayPtr>>* uSubstep)
87 std::vector<StateVectorArrayPtr, Eigen::aligned_allocator<StateVectorArrayPtr>>*
xSubstep_;
88 std::vector<ControlVectorArrayPtr, Eigen::aligned_allocator<ControlVectorArrayPtr>>*
uSubstep_;
interface class for a general linear system or linearized system
Definition: LinearSystem.h:23
std::shared_ptr< ControlVectorArray< CONTROL_DIM, SCALAR > > ControlVectorArrayPtr
Definition: Sensitivity.h:39
Sensitivity()
Definition: Sensitivity.h:42
std::vector< ControlVectorArrayPtr, Eigen::aligned_allocator< ControlVectorArrayPtr > > * uSubstep_
Definition: Sensitivity.h:88
APPROXIMATION approximation_
type of discretization strategy used.
Definition: Sensitivity.h:29
APPROXIMATION
different discrete-time approximations to linear systems
Definition: Sensitivity.h:15
ct::core::ControlVector< control_dim > u
interface class for a general discrete linear system or linearized discrete system ...
Definition: DiscreteLinearSystem.h:23
virtual void setApproximation(const SensitivityApproximationSettings::APPROXIMATION &approx)
update the approximation type for the discrete-time system
Definition: Sensitivity.h:55
Definition: StateMatrix.h:12
Definition: ControlVector.h:12
double dt_
discretization time-step
Definition: Sensitivity.h:26
CppAD::AD< CppAD::cg::CG< double > > SCALAR
constexpr size_t n
Definition: MatrixInversionTest.cpp:14
virtual Sensitivity< STATE_DIM, CONTROL_DIM, SCALAR > * clone() const override
deep cloning
Definition: Sensitivity.h:44
Definition: StateVector.h:12
ct::core::StateVector< state_dim > x
Definition: Sensitivity.h:33
SensitivityApproximationSettings(double dt, APPROXIMATION approx)
Definition: Sensitivity.h:24
settings for the SensitivityApproximation
Definition: Sensitivity.h:12
virtual ~Sensitivity()
Definition: Sensitivity.h:43
std::vector< StateVectorArrayPtr, Eigen::aligned_allocator< StateVectorArrayPtr > > * xSubstep_
Definition: Sensitivity.h:87
void setSubstepTrajectoryReference(std::vector< StateVectorArrayPtr, Eigen::aligned_allocator< StateVectorArrayPtr >> *xSubstep, std::vector< ControlVectorArrayPtr, Eigen::aligned_allocator< ControlVectorArrayPtr >> *uSubstep)
Definition: Sensitivity.h:61
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef std::shared_ptr< StateVectorArray< STATE_DIM, SCALAR > > StateVectorArrayPtr
Definition: Sensitivity.h:38
Definition: StateControlMatrix.h:12