Public Types | |
typedef ControlParametrizationModelAbstractTpl< _Scalar > | Base |
typedef ControlParametrizationDataAbstractTpl< _Scalar > | ControlParametrizationDataAbstract |
typedef ControlParametrizationDataNumDiffTpl< _Scalar > | Data |
typedef MathBaseTpl< Scalar > | MathBase |
typedef MathBase::MatrixXs | MatrixXs |
typedef MathBase::VectorXs | VectorXs |
Public Types inherited from ControlParametrizationModelAbstractTpl< _Scalar > | |
typedef ControlParametrizationDataAbstractTpl< Scalar > | ControlParametrizationDataAbstract |
typedef MathBaseTpl< Scalar > | MathBase |
typedef MathBase::MatrixXs | MatrixXs |
typedef MathBase::VectorXs | VectorXs |
Public Member Functions | |
ControlParametrizationModelNumDiffTpl (boost::shared_ptr< Base > model) | |
Construct a new ControlParametrizationModelNumDiff object. More... | |
void | calc (const boost::shared_ptr< ControlParametrizationDataAbstract > &data, const Scalar t, const Eigen::Ref< const VectorXs > &u) const |
Get the value of the control at the specified time. More... | |
void | calcDiff (const boost::shared_ptr< ControlParametrizationDataAbstract > &data, const Scalar t, const Eigen::Ref< const VectorXs > &u) const |
Get the value of the Jacobian of the control with respect to the parameters. More... | |
void | convertBounds (const Eigen::Ref< const VectorXs > &w_lb, const Eigen::Ref< const VectorXs > &w_ub, Eigen::Ref< VectorXs > u_lb, Eigen::Ref< VectorXs > u_ub) const |
Convert the bounds on the control to bounds on the control parameters. More... | |
virtual boost::shared_ptr< ControlParametrizationDataAbstract > | createData () |
Create the control-parametrization data. More... | |
const Scalar | get_disturbance () const |
Return the disturbance constant used in the numerical differentiation routine. | |
const boost::shared_ptr< Base > & | get_model () const |
Get the model_ object. More... | |
void | multiplyByJacobian (const boost::shared_ptr< ControlParametrizationDataAbstract > &data, const Eigen::Ref< const MatrixXs > &A, Eigen::Ref< MatrixXs > out, const AssignmentOp=setto) const |
Compute the product between a specified matrix and the Jacobian of the control (with respect to the parameters) More... | |
void | multiplyJacobianTransposeBy (const boost::shared_ptr< ControlParametrizationDataAbstract > &data, const Eigen::Ref< const MatrixXs > &A, Eigen::Ref< MatrixXs > out, const AssignmentOp=setto) const |
Compute the product between the transposed Jacobian of the control (with respect to the parameters) and a specified matrix. More... | |
void | params (const boost::shared_ptr< ControlParametrizationDataAbstract > &data, const Scalar t, const Eigen::Ref< const VectorXs > &w) const |
Get a value of the control parameters such that the control at the specified time t is equal to the specified value u. More... | |
void | set_disturbance (const Scalar disturbance) |
Modify the disturbance constant used in the numerical differentiation routine. | |
Public Member Functions inherited from ControlParametrizationModelAbstractTpl< _Scalar > | |
ControlParametrizationModelAbstractTpl (const std::size_t nw, const std::size_t nu) | |
Initialize the control dimensions. More... | |
virtual bool | checkData (const boost::shared_ptr< ControlParametrizationDataAbstract > &data) |
Checks that a specific data belongs to this model. | |
std::size_t | get_nu () const |
Return the dimension of control parameters. | |
std::size_t | get_nw () const |
Return the dimension of the control inputs. | |
virtual MatrixXs | multiplyByJacobian_J (const boost::shared_ptr< ControlParametrizationDataAbstract > &data, const Eigen::Ref< const MatrixXs > &A, const AssignmentOp=setto) const |
virtual MatrixXs | multiplyJacobianTransposeBy_J (const boost::shared_ptr< ControlParametrizationDataAbstract > &data, const Eigen::Ref< const MatrixXs > &A, const AssignmentOp=setto) const |
Public Attributes | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
Public Attributes inherited from ControlParametrizationModelAbstractTpl< _Scalar > | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
Protected Attributes | |
std::size_t | nu_ |
Control parameters dimension. | |
std::size_t | nw_ |
Control dimension. | |
Protected Attributes inherited from ControlParametrizationModelAbstractTpl< _Scalar > | |
std::size_t | nu_ |
Control parameters dimension. | |
std::size_t | nw_ |
Control dimension. | |
Definition at line 25 of file control.hpp.
|
explicit |
Construct a new ControlParametrizationModelNumDiff object.
model |
|
virtual |
Get the value of the control at the specified time.
[in] | data | Control-parametrization numdiff data |
[in] | t | Time in [0,1] |
[in] | u | Control parameters |
Implements ControlParametrizationModelAbstractTpl< _Scalar >.
|
virtual |
Get the value of the Jacobian of the control with respect to the parameters.
[in] | data | Control-parametrization numdiff data |
[in] | t | Time in [0,1] |
[in] | u | Control parameters |
Implements ControlParametrizationModelAbstractTpl< _Scalar >.
|
virtual |
Create the control-parametrization data.
Reimplemented from ControlParametrizationModelAbstractTpl< _Scalar >.
|
virtual |
Get a value of the control parameters such that the control at the specified time t is equal to the specified value u.
[in] | data | Control-parametrization numdiff data |
[in] | t | Time in [0,1] |
[in] | w | Control values |
Implements ControlParametrizationModelAbstractTpl< _Scalar >.
|
virtual |
Convert the bounds on the control to bounds on the control parameters.
[in] | w_lb | Control lower bound |
[in] | w_ub | Control upper bound |
[in] | u_lb | Control parameter lower bound |
[in] | u_ub | Control parameter upper bound |
Implements ControlParametrizationModelAbstractTpl< _Scalar >.
|
virtual |
Compute the product between a specified matrix and the Jacobian of the control (with respect to the parameters)
[in] | data | Control-parametrization numdiff data |
[in] | A | A matrix to multiply times the Jacobian |
[out] | out | Product between the matrix A and the Jacobian of the control with respect to the parameters |
[in] | op | Assignment operator which sets, adds, or removes the given results |
Implements ControlParametrizationModelAbstractTpl< _Scalar >.
|
virtual |
Compute the product between the transposed Jacobian of the control (with respect to the parameters) and a specified matrix.
[in] | data | Control-parametrization numdiff data |
[in] | A | A matrix to multiply times the Jacobian |
[out] | out | Product between the transposed Jacobian of the control with respect to the parameters and the matrix A |
[in] | op | Assignment operator which sets, adds, or removes the given results |
Implements ControlParametrizationModelAbstractTpl< _Scalar >.
const boost::shared_ptr<Base>& get_model | ( | ) | const |
Get the model_ object.