|  | 
| template<typename IterateType  = Iterate> | 
| IterateType | createIterate () const | 
|  | Create an iterate with the variable names populated according to the variables added to this problem.  More... 
 | 
|  | 
| void | initialize (const std::string &finiteDiffScheme, std::shared_ptr< const std::vector< VariablesDM >> pointsForSparsityDetection) const | 
|  | 
|  | 
| int | getNumStates () const | 
|  | 
| int | getNumControls () const | 
|  | 
| int | getNumParameters () const | 
|  | 
| int | getNumMultipliers () const | 
|  | 
| std::string | getDynamicsMode () const | 
|  | 
| bool | isDynamicsModeImplicit () const | 
|  | 
| int | getNumDerivatives () const | 
|  | 
| int | getNumSlacks () const | 
|  | 
| int | getNumCoordinates () const | 
|  | This is the number of generalized coordinates, which may be greater than the number of generalized speeds.  More... 
 | 
|  | 
| int | getNumSpeeds () const | 
|  | 
| int | getNumAccelerations () const | 
|  | 
| int | getNumAuxiliaryStates () const | 
|  | 
| int | getNumCosts () const | 
|  | 
| bool | isPrescribedKinematics () const | 
|  | 
| int | getNumMultibodyDynamicsEquations () const | 
|  | If the coordinates are prescribed, then the number of multibody dynamics equations is not the same as the number of speeds.  More... 
 | 
|  | 
| const std::vector< std::string > & | getAuxiliaryDerivativeNames () const | 
|  | 
| int | getNumAuxiliaryResidualEquations () const | 
|  | 
| int | getNumKinematicConstraintEquations () const | 
|  | 
| std::vector< std::string > | createKinematicConstraintEquationNames () const | 
|  | Create a vector of names for scalar kinematic constraint equations.  More... 
 | 
|  | 
| int | getNumHolonomicConstraintEquations () const | 
|  | 
| int | getNumNonHolonomicConstraintEquations () const | 
|  | 
| int | getNumAccelerationConstraintEquations () const | 
|  | 
| bool | getEnforceConstraintDerivatives () const | 
|  | 
| const Bounds & | getKinematicConstraintBounds () const | 
|  | 
| const Bounds & | getTimeInitialBounds () const | 
|  | 
| const Bounds & | getTimeFinalBounds () const | 
|  | 
| const std::vector< StateInfo > & | getStateInfos () const | 
|  | 
| const std::vector< ControlInfo > & | getControlInfos () const | 
|  | 
| const std::vector< MultiplierInfo > & | getMultiplierInfos () const | 
|  | 
| const std::vector< SlackInfo > & | getSlackInfos () const | 
|  | 
| const std::vector< ParameterInfo > & | getParameterInfos () const | 
|  | 
| const std::vector< CostInfo > & | getCostInfos () const | 
|  | 
| const std::vector< EndpointConstraintInfo > & | getEndpointConstraintInfos () const | 
|  | 
| const std::vector< PathConstraintInfo > & | getPathConstraintInfos () const | 
|  | 
| const casadi::Function & | getMultibodySystem () const | 
|  | Get a function to the full multibody system (i.e.  More... 
 | 
|  | 
| const casadi::Function & | getMultibodySystemIgnoringConstraints () const | 
|  | Get a function to the multibody system that does not compute kinematic constraint errors (if they exist).  More... 
 | 
|  | 
| const casadi::Function & | getVelocityCorrection () const | 
|  | Get a function to compute the velocity correction to qdot when enforcing kinematic constraints and their derivatives.  More... 
 | 
|  | 
| const casadi::Function & | getImplicitMultibodySystem () const | 
|  | 
| const casadi::Function & | getImplicitMultibodySystemIgnoringConstraints () const | 
|  | 
|  | 
| Call the add/set functions in the constructor for your problem.  | 
| virtual void | calcMultibodySystemExplicit (const ContinuousInput &input, bool calcKCErrors, MultibodySystemExplicitOutput &output) const =0 | 
|  | Kinematic constraint errors should be ordered as so:  More... 
 | 
|  | 
| virtual void | calcMultibodySystemImplicit (const ContinuousInput &input, bool calcKCErrors, MultibodySystemImplicitOutput &output) const =0 | 
|  | 
| virtual void | calcVelocityCorrection (const double &time, const casadi::DM &multibody_states, const casadi::DM &slacks, const casadi::DM ¶meters, casadi::DM &velocity_correction) const =0 | 
|  | 
| virtual void | calcCostIntegrand (int, const ContinuousInput &, double &) const | 
|  | 
| virtual void | calcCost (int, const CostInput &, casadi::DM &) const | 
|  | 
| virtual void | calcEndpointConstraintIntegrand (int, const ContinuousInput &, double &) const | 
|  | 
| virtual void | calcEndpointConstraint (int, const CostInput &, casadi::DM &) const | 
|  | 
| virtual void | calcPathConstraint (int, const ContinuousInput &, casadi::DM &) const | 
|  | 
| virtual std::vector< std::string > | createKinematicConstraintEquationNamesImpl () const | 
|  | 
| void | intermediateCallback () const | 
|  | 
| void | intermediateCallbackWithIterate (const CasOC::Iterate &it) const | 
|  | 
| virtual void | intermediateCallbackImpl () const | 
|  | This is invoked once for each iterate in the optimization process. 
 | 
|  | 
| virtual void | intermediateCallbackWithIterateImpl (const CasOC::Iterate &) const | 
|  | Process an intermediate iterate.  More... 
 | 
|  | 
| void | setTimeBounds (Bounds initial, Bounds final) | 
|  | 
| void | addState (std::string name, StateType type, Bounds bounds, Bounds initialBounds, Bounds finalBounds) | 
|  | Add a differential state.  More... 
 | 
|  | 
| void | addControl (std::string name, Bounds bounds, Bounds initialBounds, Bounds finalBounds) | 
|  | Add an algebraic variable/"state" to the problem. 
 | 
|  | 
| void | addKinematicConstraint (std::string multName, Bounds multbounds, Bounds multInitialBounds, Bounds multFinalBounds, KinematicLevel kinLevel) | 
|  | 
| void | addSlack (std::string name, Bounds bounds) | 
|  | Add a slack velocity correction variable to the problem associated with a kinematic constraint in the model.  More... 
 | 
|  | 
| void | setPrescribedKinematics (bool tf, int numMultibodyDynamicsEquations) | 
|  | Set if all kinematics are prescribed.  More... 
 | 
|  | 
| void | setEnforceConstraintDerivatives (bool tf) | 
|  | Set whether not constraint derivatives are to be enforced. 
 | 
|  | 
| void | setKinematicConstraintBounds (Bounds bounds) | 
|  | Set the bounds for all kinematic constraints in the problem. 
 | 
|  | 
| void | addParameter (std::string name, Bounds bounds) | 
|  | Add a constant (time-invariant) variable to the optimization problem. 
 | 
|  | 
| void | addCost (std::string name, int numIntegrals, int numOutputs) | 
|  | Add a cost term to the problem. 
 | 
|  | 
| void | addEndpointConstraint (std::string name, int numIntegrals, std::vector< Bounds > bounds) | 
|  | Add an endpoint constraint to the problem. 
 | 
|  | 
| void | addPathConstraint (std::string name, std::vector< Bounds > bounds) | 
|  | The size of bounds must match the number of outputs in the function.  More... 
 | 
|  | 
| void | setDynamicsMode (std::string dynamicsMode) | 
|  | 
| void | setAuxiliaryDerivativeNames (const std::vector< std::string > &names) | 
|  |