OCS2 Manual  v1.0.0
OCS2 Documentation
ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T > Class Template Reference

#include <ConstraintBaseAD.h>

Detailed Description

template<class Derived, size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
class ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >

The system constraint Base with Algorithmic Differentiation (i.e. Auto Differentiation). The linearized state-input constraint is defined as:
$ 0 = C(t) \delta x + D(t) \delta u + e(t) $
The linearized state-only constraint is defined as:
$ 0 = F(t) \delta x + h(t) $
The linearized final state-only constraint is defined as:
$ 0 = F_f \delta x + h_f $

Template Parameters
DerivedDerived class type.
STATE_DIMDimension of the state space.
INPUT_DIMDimension of the control input space.
LOGIC_RULES_TLogic Rules type (default NullLogicRules).
Inheritance diagram for ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >:
ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >

Public Types

enum  {
  state_dim_ = STATE_DIM,
  input_dim_ = INPUT_DIM,
  domain_dim_ = 1 + state_dim_ + input_dim_
}
 
enum  { MAX_CONSTRAINT_DIM_ = INPUT_DIM }
 
using Ptr = std::shared_ptr< ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T > >
 
using ConstPtr = std::shared_ptr< const ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T > >
 
using BASE = ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >
 
using scalar_t = typename DIMENSIONS::scalar_t
 
using state_vector_t = typename DIMENSIONS::state_vector_t
 
using input_vector_t = typename DIMENSIONS::input_vector_t
 
using state_matrix_t = typename DIMENSIONS::state_matrix_t
 
using state_input_matrix_t = typename DIMENSIONS::state_input_matrix_t
 
using constraint1_vector_t = typename DIMENSIONS::constraint1_vector_t
 
using constraint2_vector_t = typename DIMENSIONS::constraint2_vector_t
 
using constraint1_state_matrix_t = typename DIMENSIONS::constraint1_state_matrix_t
 
using constraint1_input_matrix_t = typename DIMENSIONS::constraint1_input_matrix_t
 
using constraint2_state_matrix_t = typename DIMENSIONS::constraint2_state_matrix_t
 
- Public Types inherited from ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >
using Ptr = std::shared_ptr< ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T > >
 
using ConstPtr = std::shared_ptr< const ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T > >
 
using DIMENSIONS = Dimensions< STATE_DIM, INPUT_DIM >
 
using scalar_t = typename DIMENSIONS::scalar_t
 
using scalar_array_t = typename DIMENSIONS::scalar_array_t
 
using state_vector_t = typename DIMENSIONS::state_vector_t
 
using state_vector_array_t = typename DIMENSIONS::state_vector_array_t
 
using input_vector_t = typename DIMENSIONS::input_vector_t
 
using input_vector_array_t = typename DIMENSIONS::input_vector_array_t
 
using state_matrix_t = typename DIMENSIONS::state_matrix_t
 
using state_matrix_array_t = typename DIMENSIONS::state_matrix_array_t
 
using input_matrix_t = typename DIMENSIONS::input_matrix_t
 
using input_matrix_array_t = typename DIMENSIONS::input_matrix_array_t
 
using state_input_matrix_t = typename DIMENSIONS::state_input_matrix_t
 
using input_state_matrix_t = typename DIMENSIONS::input_state_matrix_t
 
using input_state_matrix_array_t = typename DIMENSIONS::input_state_matrix_array_t
 
using constraint1_vector_t = typename DIMENSIONS::constraint1_vector_t
 
using constraint1_vector_array_t = typename DIMENSIONS::constraint1_vector_array_t
 
using constraint2_vector_t = typename DIMENSIONS::constraint2_vector_t
 
using constraint2_vector_array_t = typename DIMENSIONS::constraint2_vector_array_t
 
using constraint1_state_matrix_t = typename DIMENSIONS::constraint1_state_matrix_t
 
using constraint1_input_matrix_t = typename DIMENSIONS::constraint1_input_matrix_t
 
using constraint2_state_matrix_t = typename DIMENSIONS::constraint2_state_matrix_t
 

Public Member Functions

 ConstraintBaseAD (const bool &dynamicLibraryIsCompiled=false)
 
 ConstraintBaseAD (const ConstraintBaseAD &rhs)
 
virtual ~ConstraintBaseAD ()=default
 
template<typename SCALAR_T >
void stateInputConstraint (const SCALAR_T &time, const Eigen::Matrix< SCALAR_T, STATE_DIM, 1 > &state, const Eigen::Matrix< SCALAR_T, INPUT_DIM, 1 > &input, Eigen::Matrix< SCALAR_T, Eigen::Dynamic, 1 > &constraintVector)
 
size_t numStateInputConstraint (const scalar_t &time) override
 
template<typename SCALAR_T >
void stateOnlyConstraint (const SCALAR_T &time, const Eigen::Matrix< SCALAR_T, STATE_DIM, 1 > &state, Eigen::Matrix< SCALAR_T, Eigen::Dynamic, 1 > &constraintVector)
 
size_t numStateOnlyConstraint (const scalar_t &time) override
 
template<typename SCALAR_T >
void stateOnlyFinalConstraint (const SCALAR_T &time, const Eigen::Matrix< SCALAR_T, STATE_DIM, 1 > &state, Eigen::Matrix< SCALAR_T, Eigen::Dynamic, 1 > &constraintVector)
 
size_t numStateOnlyFinalConstraint (const scalar_t &time) override
 
void createModels (const std::string &modelName, const std::string &libraryFolder)
 
void loadModels (const std::string &modelName, const std::string &libraryFolder)
 
const bool & isDynamicLibraryCompiled () const
 
std::string getModelName () const
 
virtual void setCurrentStateAndControl (const scalar_t &t, const state_vector_t &x, const input_vector_t &u) final
 
virtual void getConstraint1 (constraint1_vector_t &e) final
 
virtual void getConstraint2 (constraint2_vector_t &h) final
 
virtual void getFinalConstraint2 (constraint2_vector_t &h_f) final
 
virtual void getConstraint1DerivativesState (constraint1_state_matrix_t &C) final
 
virtual void getConstraint1DerivativesControl (constraint1_input_matrix_t &D) final
 
virtual void getConstraint2DerivativesState (constraint2_state_matrix_t &F) final
 
virtual void getFinalConstraint2DerivativesState (constraint2_state_matrix_t &F_f) final
 
virtual BASEclone () const final
 
void initializeModel (LogicRulesMachine< LOGIC_RULES_T > &logicRulesMachine, const size_t &partitionIndex, const char *algorithmName=nullptr) final
 
- Public Member Functions inherited from ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >
 ConstraintBase ()=default
 
 ConstraintBase (const ConstraintBase &rhs)=default
 
virtual ~ConstraintBase ()=default
 
virtual void getInequalityConstraint (scalar_array_t &h)
 
virtual size_t numInequalityConstraint (const scalar_t &time)
 
virtual void getConstraint1DerivativesEventTimes (constraint1_vector_array_t &g1DevArray)
 
virtual void getInequalityConstraintDerivativesState (state_vector_array_t &dhdx)
 
virtual void getInequalityConstraintDerivativesInput (input_vector_array_t &dhdu)
 
virtual void getInequalityConstraintSecondDerivativesState (state_matrix_array_t &ddhdxdx)
 
virtual void getInequalityConstraintSecondDerivativesInput (input_matrix_array_t &ddhdudu)
 
virtual void getInequalityConstraintDerivativesInputState (input_state_matrix_array_t &ddhdudx)
 

Protected Types

using ad_interface_t = ocs2::CppAdCodeGenInterface< domain_dim_, MAX_CONSTRAINT_DIM_, scalar_t >
 
using ad_scalar_t = typename ad_interface_t::ad_scalar_t
 
using ad_dynamic_vector_t = typename ad_interface_t::ad_dynamic_vector_t
 
using ad_funtion_t = typename ad_interface_t::ad_funtion_t
 
using domain_vector_t = typename ad_interface_t::domain_vector_t
 
using domain_matrix_t = typename ad_interface_t::domain_matrix_t
 
using domain_range_matrix_t = typename ad_interface_t::domain_range_matrix_t
 
using range_domain_matrix_t = typename ad_interface_t::range_domain_matrix_t
 

Protected Member Functions

void stateInputConstraintAD (const ad_dynamic_vector_t &tapedInput, ad_dynamic_vector_t &g1)
 
void stateOnlyConstraintAD (const ad_dynamic_vector_t &tapedInput, ad_dynamic_vector_t &g2)
 
void stateOnlyConstraintFinalAD (const ad_dynamic_vector_t &tapedInput, ad_dynamic_vector_t &g2Final)
 
void setADInterfaces ()
 
void createModels (bool verbose)
 
bool loadModels (bool verbose)
 

Private Attributes

bool dynamicLibraryIsCompiled_
 
std::string modelName_
 
std::string libraryFolder_
 
ad_funtion_t stateInputConstraintAD_
 
ad_funtion_t stateOnlyConstraintAD_
 
ad_funtion_t stateOnlyConstraintFinalAD_
 
range_domain_matrix_t stateInputSparsityPattern_
 
range_domain_matrix_t stateOnlySparsityPattern_
 
range_domain_matrix_t stateOnlyFinalSparsityPattern_
 
std::unique_ptr< ad_interface_tstateInputADInterfacePtr_
 
std::unique_ptr< ad_interface_tstateOnlyADInterfacePtr_
 
std::unique_ptr< ad_interface_tstateOnlyFinalADInterfacePtr_
 
domain_vector_t tapedInput_
 
domain_range_matrix_t stateInputJacobian_
 
domain_range_matrix_t stateOnlyJacobian_
 
domain_range_matrix_t stateOnlyFinalJacobian_
 

Additional Inherited Members

- Public Attributes inherited from ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >
 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
 
- Protected Attributes inherited from ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >
scalar_t t_
 
state_vector_t x_
 
input_vector_t u_
 

Member Typedef Documentation

◆ ad_dynamic_vector_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::ad_dynamic_vector_t = typename ad_interface_t::ad_dynamic_vector_t
protected

◆ ad_funtion_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::ad_funtion_t = typename ad_interface_t::ad_funtion_t
protected

◆ ad_interface_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::ad_interface_t = ocs2::CppAdCodeGenInterface<domain_dim_, MAX_CONSTRAINT_DIM_, scalar_t>
protected

◆ ad_scalar_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::ad_scalar_t = typename ad_interface_t::ad_scalar_t
protected

◆ BASE

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::BASE = ConstraintBase<STATE_DIM, INPUT_DIM, LOGIC_RULES_T>

◆ ConstPtr

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::ConstPtr = std::shared_ptr<const ConstraintBaseAD<Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T> >

◆ constraint1_input_matrix_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::constraint1_input_matrix_t = typename DIMENSIONS::constraint1_input_matrix_t

◆ constraint1_state_matrix_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::constraint1_state_matrix_t = typename DIMENSIONS::constraint1_state_matrix_t

◆ constraint1_vector_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::constraint1_vector_t = typename DIMENSIONS::constraint1_vector_t

◆ constraint2_state_matrix_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::constraint2_state_matrix_t = typename DIMENSIONS::constraint2_state_matrix_t

◆ constraint2_vector_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::constraint2_vector_t = typename DIMENSIONS::constraint2_vector_t

◆ domain_matrix_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::domain_matrix_t = typename ad_interface_t::domain_matrix_t
protected

◆ domain_range_matrix_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::domain_range_matrix_t = typename ad_interface_t::domain_range_matrix_t
protected

◆ domain_vector_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::domain_vector_t = typename ad_interface_t::domain_vector_t
protected

◆ input_vector_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::input_vector_t = typename DIMENSIONS::input_vector_t

◆ Ptr

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::Ptr = std::shared_ptr<ConstraintBaseAD<Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T> >

◆ range_domain_matrix_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::range_domain_matrix_t = typename ad_interface_t::range_domain_matrix_t
protected

◆ scalar_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::scalar_t = typename DIMENSIONS::scalar_t

◆ state_input_matrix_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::state_input_matrix_t = typename DIMENSIONS::state_input_matrix_t

◆ state_matrix_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::state_matrix_t = typename DIMENSIONS::state_matrix_t

◆ state_vector_t

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
using ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::state_vector_t = typename DIMENSIONS::state_vector_t

Member Enumeration Documentation

◆ anonymous enum

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
anonymous enum
Enumerator
state_dim_ 
input_dim_ 
domain_dim_ 

◆ anonymous enum

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
anonymous enum
Enumerator
MAX_CONSTRAINT_DIM_ 

Constructor & Destructor Documentation

◆ ~ConstraintBaseAD()

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
virtual ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::~ConstraintBaseAD ( )
virtualdefault

Default destructor

Member Function Documentation

◆ initializeModel()

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
void ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::initializeModel ( LogicRulesMachine< LOGIC_RULES_T > &  logicRulesMachine,
const size_t &  partitionIndex,
const char *  algorithmName = nullptr 
)
inlinefinalvirtual

Initialization of the system Constraints cannot be override.

Parameters
[in]logicRulesMachineA class which contains and parse the logic rules e.g method findActiveSubsystemHandle returns a Lambda expression which can be used to find the ID of the current active subsystem.
[in]partitionIndexindex of the time partition.
[in]algorithmNameThe algorithm that class this class (default not defined).

Reimplemented from ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >.

◆ numStateInputConstraint()

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
size_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::numStateInputConstraint ( const scalar_t time)
inlineoverridevirtual

Get the number of state-input active equality constraints.

Parameters
[in]timetime.
Returns
number of state-input active equality constraints.

Reimplemented from ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >.

◆ numStateOnlyConstraint()

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
size_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::numStateOnlyConstraint ( const scalar_t time)
inlineoverridevirtual

Get the number of state-only active equality constraints.

Parameters
[in]timetime.
Returns
number of state-only active equality constraints.

Reimplemented from ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >.

◆ numStateOnlyFinalConstraint()

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
size_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::numStateOnlyFinalConstraint ( const scalar_t time)
inlineoverridevirtual

Get the number of final state-only active equality constraints.

Parameters
[in]timetime.
Returns
number of final state-only active equality constraints.

Reimplemented from ocs2::ConstraintBase< STATE_DIM, INPUT_DIM, LOGIC_RULES_T >.

◆ stateInputConstraint()

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
template<typename SCALAR_T >
void ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateInputConstraint ( const SCALAR_T &  time,
const Eigen::Matrix< SCALAR_T, STATE_DIM, 1 > &  state,
const Eigen::Matrix< SCALAR_T, INPUT_DIM, 1 > &  input,
Eigen::Matrix< SCALAR_T, Eigen::Dynamic, 1 > &  constraintVector 
)
inline

Interface method to the state-input equality constraints. This method should be implemented by the derived class.

Template Parameters
scalartype. All the floating point operations should be with this type.
Parameters
[in]timetime.
[in]statestate vector.
[in]inputinput vector
[out]constraintVectorconstraints vector.

◆ stateOnlyConstraint()

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
template<typename SCALAR_T >
void ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlyConstraint ( const SCALAR_T &  time,
const Eigen::Matrix< SCALAR_T, STATE_DIM, 1 > &  state,
Eigen::Matrix< SCALAR_T, Eigen::Dynamic, 1 > &  constraintVector 
)
inline

Interface method to the state-only equality constraints. This method should be implemented by the derived class.

Template Parameters
scalartype. All the floating point operations should be with this type.
Parameters
[in]timetime.
[in]statestate vector.
[out]constraintVectorconstraint vector.

◆ stateOnlyFinalConstraint()

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
template<typename SCALAR_T >
void ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlyFinalConstraint ( const SCALAR_T &  time,
const Eigen::Matrix< SCALAR_T, STATE_DIM, 1 > &  state,
Eigen::Matrix< SCALAR_T, Eigen::Dynamic, 1 > &  constraintVector 
)
inline

Interface method to the state-only final equality constraints. This method should be implemented by the derived class.

Template Parameters
scalartype. All the floating point operations should be with this type.
Parameters
[in]timetime.
[in]statestate vector.
[out]constraintVectorconstraint vector.

Member Data Documentation

◆ dynamicLibraryIsCompiled_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
bool ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::dynamicLibraryIsCompiled_
private

◆ libraryFolder_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
std::string ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::libraryFolder_
private

◆ modelName_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
std::string ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::modelName_
private

◆ stateInputADInterfacePtr_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
std::unique_ptr<ad_interface_t> ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateInputADInterfacePtr_
private

◆ stateInputConstraintAD_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
ad_funtion_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateInputConstraintAD_
private

◆ stateInputJacobian_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
domain_range_matrix_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateInputJacobian_
private

◆ stateInputSparsityPattern_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
range_domain_matrix_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateInputSparsityPattern_
private

◆ stateOnlyADInterfacePtr_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
std::unique_ptr<ad_interface_t> ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlyADInterfacePtr_
private

◆ stateOnlyConstraintAD_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
ad_funtion_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlyConstraintAD_
private

◆ stateOnlyConstraintFinalAD_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
ad_funtion_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlyConstraintFinalAD_
private

◆ stateOnlyFinalADInterfacePtr_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
std::unique_ptr<ad_interface_t> ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlyFinalADInterfacePtr_
private

◆ stateOnlyFinalJacobian_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
domain_range_matrix_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlyFinalJacobian_
private

◆ stateOnlyFinalSparsityPattern_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
range_domain_matrix_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlyFinalSparsityPattern_
private

◆ stateOnlyJacobian_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
domain_range_matrix_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlyJacobian_
private

◆ stateOnlySparsityPattern_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
range_domain_matrix_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::stateOnlySparsityPattern_
private

◆ tapedInput_

template<class Derived , size_t STATE_DIM, size_t INPUT_DIM, class LOGIC_RULES_T = NullLogicRules>
domain_vector_t ocs2::ConstraintBaseAD< Derived, STATE_DIM, INPUT_DIM, LOGIC_RULES_T >::tapedInput_
private

The documentation for this class was generated from the following file: