![]() | pinocchio 4.1.0 A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives |
Struct describing the solution of the ADMM constraint solver after calling the solve method. Also contains the warmstart of the solution to the constraint problem. More...
#include <pinocchio/algorithm/solvers/admm-solver.hpp>


Public Types | |
| typedef ConstraintSolverResultBase< Self > | Base |
| typedef Eigen::Ref< const VectorXs > | RefConstVectorXs |
| typedef _Scalar | Scalar |
| typedef ADMMSolverResultTpl | Self |
| typedef Eigen::Matrix< Scalar, Eigen::Dynamic, 1, Options > | VectorXs |
| typedef internal::EigenStorageTpl< VectorXs > | VectorXsStorage |
Public Member Functions | |
| ADMMSolverResultTpl () | |
| Default constructor. | |
| ADMMSolverResultTpl (const ADMMSolverResultTpl &other) | |
| Copy constructor. | |
| void | clearConstraintImpulseGuessImpl () |
| void | clearConstraintVelocityGuessImpl () |
| int | constraintSizeImpl () const |
| ADMMSolverResultTpl & | operator= (const ADMMSolverResultTpl &other) |
| Assignment operator. | |
| void | resetImpl () |
| Reset the results. | |
| void | resize (std::size_t problem_size_) |
| Resize the primal/dual/desaxce vectors of the solution. | |
| template<typename VectorLike> | |
| void | retrieveConstraintImpulsesImpl (const Eigen::MatrixBase< VectorLike > &constraint_impulses_) const |
| template<typename VectorLike> | |
| void | retrieveConstraintVelocitiesImpl (const Eigen::MatrixBase< VectorLike > &constraint_velocities_) const |
| template<typename VectorLike> | |
| void | retrieveDesaxceTerm (const Eigen::MatrixBase< VectorLike > &desaxce_term_) const |
| Retrieve Desaxce term of solution. | |
| template<typename VectorLike> | |
| void | retrieveDualSolution (const Eigen::MatrixBase< VectorLike > &dual_solution_) const |
| Retrieve dual solution. At the optimum we have Gx + g + desaxce - z = 0. | |
| template<typename VectorLike> | |
| void | retrieveNonProjectedPrimalSolution (const Eigen::MatrixBase< VectorLike > &non_projected_primal_solution_) const |
| Retrieve non-projected primal solution. | |
| template<typename VectorLike> | |
| void | retrievePrimalSolution (const Eigen::MatrixBase< VectorLike > &primal_solution_) const |
| Retrieve primal solution. | |
| template<typename VectorLike> | |
| void | setConstraintImpulseGuessImpl (const Eigen::MatrixBase< VectorLike > &impulse_guess_in) |
| template<typename VectorLike> | |
| void | setConstraintVelocityGuessImpl (const Eigen::MatrixBase< VectorLike > &velocity_guess_in) |
Public Attributes | |
| std::size_t | delassus_decomposition_update_count |
| Number of delassus decompositions. | |
| VectorXsStorage::RefMapType | desaxce = desaxce_storage.map() |
| VectorXsStorage | desaxce_storage |
| Desaxce term of the solution. | |
| std::optional< RefConstVectorXs > | impulse_guess |
| Optional guess for the primal variable (impulses). | |
| Scalar | mu_prox |
| Value of ADMM proximal term. | |
| std::size_t | problem_size |
| Size of primal/dual variables. | |
| Scalar | rho |
| Value of ADMM rho term. | |
| Scalar | spectral_rho_power |
| Value of ADMM spectral rule rho power at the solution. This is relevant only if SPECTRAL was selected as an update rule. | |
| std::optional< RefConstVectorXs > | velocity_guess |
| Optional guess for the dual variable (velocities). | |
| VectorXsStorage::RefMapType | x = x_storage.map() |
| VectorXsStorage | x_storage |
| Non-projected primal solution. | |
| VectorXsStorage::RefMapType | y = y_storage.map() |
| VectorXsStorage | y_storage |
| Primal solution projected onto constraints. | |
| VectorXsStorage::RefMapType | z = z_storage.map() |
| VectorXsStorage | z_storage |
| Dual solution. | |
Static Public Attributes | |
| static constexpr int | Options = _Options |
Protected Attributes | |
| VectorXsStorage::RefMapType | m_impulse_guess = m_impulse_guess_storage.map() |
| VectorXsStorage | m_impulse_guess_storage |
| Storage for the optional impulse guess. | |
| VectorXsStorage::RefMapType | m_velocity_guess = m_velocity_guess_storage.map() |
| VectorXsStorage | m_velocity_guess_storage |
| Storage for the optional velocity guess. | |
Struct describing the solution of the ADMM constraint solver after calling the solve method. Also contains the warmstart of the solution to the constraint problem.
Definition at line 461 of file admm-solver.hpp.
| typedef ConstraintSolverResultBase<Self> Base |
Definition at line 466 of file admm-solver.hpp.
| typedef Eigen::Ref<const VectorXs> RefConstVectorXs |
Definition at line 470 of file admm-solver.hpp.
| typedef _Scalar Scalar |
Definition at line 463 of file admm-solver.hpp.
| typedef ADMMSolverResultTpl Self |
Definition at line 465 of file admm-solver.hpp.
| typedef Eigen::Matrix<Scalar, Eigen::Dynamic, 1, Options> VectorXs |
Definition at line 468 of file admm-solver.hpp.
| typedef internal::EigenStorageTpl<VectorXs> VectorXsStorage |
Definition at line 469 of file admm-solver.hpp.
| inline |
Default constructor.
Definition at line 477 of file admm-solver.hpp.
| inline |
Copy constructor.
Definition at line 490 of file admm-solver.hpp.
| inline |
Definition at line 615 of file admm-solver.hpp.
| inline |
Definition at line 629 of file admm-solver.hpp.
| inline |
Definition at line 537 of file admm-solver.hpp.
| inline |
Assignment operator.
Definition at line 496 of file admm-solver.hpp.
| inline |
Reset the results.
Definition at line 543 of file admm-solver.hpp.
| inline |
Resize the primal/dual/desaxce vectors of the solution.
Definition at line 562 of file admm-solver.hpp.
| inline |
Definition at line 637 of file admm-solver.hpp.
| inline |
Definition at line 646 of file admm-solver.hpp.
| inline |
Retrieve Desaxce term of solution.
Definition at line 601 of file admm-solver.hpp.
| inline |
Retrieve dual solution. At the optimum we have Gx + g + desaxce - z = 0.
Definition at line 593 of file admm-solver.hpp.
| inline |
Retrieve non-projected primal solution.
Definition at line 575 of file admm-solver.hpp.
| inline |
Retrieve primal solution.
Definition at line 584 of file admm-solver.hpp.
| inline |
Definition at line 608 of file admm-solver.hpp.
| inline |
Definition at line 622 of file admm-solver.hpp.
| std::size_t delassus_decomposition_update_count |
Number of delassus decompositions.
Definition at line 672 of file admm-solver.hpp.
| VectorXsStorage::RefMapType desaxce = desaxce_storage.map() |
Definition at line 712 of file admm-solver.hpp.
| VectorXsStorage desaxce_storage |
Desaxce term of the solution.
Definition at line 711 of file admm-solver.hpp.
| std::optional<RefConstVectorXs> impulse_guess |
Optional guess for the primal variable (impulses).
Definition at line 678 of file admm-solver.hpp.
| protected |
Definition at line 717 of file admm-solver.hpp.
| protected |
Storage for the optional impulse guess.
Definition at line 716 of file admm-solver.hpp.
| protected |
Definition at line 721 of file admm-solver.hpp.
| protected |
Storage for the optional velocity guess.
Definition at line 720 of file admm-solver.hpp.
| Scalar mu_prox |
Value of ADMM proximal term.
Definition at line 694 of file admm-solver.hpp.
| staticconstexpr |
Definition at line 464 of file admm-solver.hpp.
| std::size_t problem_size |
Size of primal/dual variables.
Definition at line 669 of file admm-solver.hpp.
| Scalar rho |
Value of ADMM rho term.
Definition at line 687 of file admm-solver.hpp.
| Scalar spectral_rho_power |
Value of ADMM spectral rule rho power at the solution. This is relevant only if SPECTRAL was selected as an update rule.
Definition at line 691 of file admm-solver.hpp.
| std::optional<RefConstVectorXs> velocity_guess |
Optional guess for the dual variable (velocities).
Definition at line 681 of file admm-solver.hpp.
| VectorXsStorage::RefMapType x = x_storage.map() |
Definition at line 700 of file admm-solver.hpp.
| VectorXsStorage x_storage |
Non-projected primal solution.
Definition at line 699 of file admm-solver.hpp.
| VectorXsStorage::RefMapType y = y_storage.map() |
Definition at line 704 of file admm-solver.hpp.
| VectorXsStorage y_storage |
Primal solution projected onto constraints.
Definition at line 703 of file admm-solver.hpp.
| VectorXsStorage::RefMapType z = z_storage.map() |
Definition at line 708 of file admm-solver.hpp.
| VectorXsStorage z_storage |
Dual solution.
Definition at line 707 of file admm-solver.hpp.