aba.hpp 3.28 KB
 jcarpent committed Mar 04, 2016 1 ``````// `````` jcarpent committed Apr 03, 2018 2 ``````// Copyright (c) 2016-2018 CNRS `````` jcarpent committed Mar 04, 2016 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ``````// // This file is part of Pinocchio // Pinocchio is free software: you can redistribute it // and/or modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation, either version // 3 of the License, or (at your option) any later version. // // Pinocchio is distributed in the hope that it will be // useful, but WITHOUT ANY WARRANTY; without even the implied warranty // of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // General Lesser Public License for more details. You should have // received a copy of the GNU Lesser General Public License along with // Pinocchio If not, see // . #ifndef __se3_aba_hpp__ #define __se3_aba_hpp__ #include "pinocchio/multibody/model.hpp" `````` jcarpent committed Jun 01, 2018 22 ``````#include "pinocchio/multibody/data.hpp" `````` 23 ``````#include "pinocchio/algorithm/check.hpp" `````` jcarpent committed Mar 04, 2016 24 25 26 `````` namespace se3 { `````` jcarpent committed Mar 04, 2016 27 28 29 30 31 32 33 34 35 36 37 `````` /// /// \brief The Articulated-Body algorithm. It computes the forward dynamics, aka the joint accelerations given the current state and actuation of the model. /// /// \param[in] model The model structure of the rigid body system. /// \param[in] data The data structure of the rigid body system. /// \param[in] q The joint configuration vector (dim model.nq). /// \param[in] v The joint velocity vector (dim model.nv). /// \param[in] tau The joint torque vector (dim model.nv). /// /// \return The current joint acceleration stored in data.ddq. /// `````` jcarpent committed Mar 04, 2016 38 39 40 41 42 43 44 `````` inline const Eigen::VectorXd & aba(const Model & model, Data & data, const Eigen::VectorXd & q, const Eigen::VectorXd & v, const Eigen::VectorXd & tau); `````` Rohan Budhiraja committed Nov 09, 2017 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 `````` /// /// \brief The Articulated-Body algorithm. It computes the forward dynamics, aka the joint accelerations given the current state and actuation of the model. /// /// \param[in] model The model structure of the rigid body system. /// \param[in] data The data structure of the rigid body system. /// \param[in] q The joint configuration vector (dim model.nq). /// \param[in] v The joint velocity vector (dim model.nv). /// \param[in] tau The joint torque vector (dim model.nv). /// \param[in] fext Vector of external forces expressed in the local frame of the joints (dim model.njoints) /// /// \return The current joint acceleration stored in data.ddq. /// inline const Eigen::VectorXd & aba(const Model & model, Data & data, const Eigen::VectorXd & q, const Eigen::VectorXd & v, const Eigen::VectorXd & tau, const container::aligned_vector & fext); `````` jcarpent committed Apr 03, 2018 64 65 66 67 68 69 70 71 72 73 74 75 76 77 `````` /// /// \brief Computes the inverse of the joint space inertia matrix using Articulated Body formulation. /// /// \param[in] model The model structure of the rigid body system. /// \param[in] data The data structure of the rigid body system. /// \param[in] q The joint configuration vector (dim model.nq). /// /// \return The inverse of the joint space inertia matrix stored in data.ddq. /// inline const Data::RowMatrixXd & computeMinverse(const Model & model, Data & data, const Eigen::VectorXd & q); `````` Rohan Budhiraja committed Nov 09, 2017 78 79 `````` `````` 80 81 `````` DEFINE_ALGO_CHECKER(ABA); `````` jcarpent committed Mar 04, 2016 82 83 84 ``````} // namespace se3 /* --- Details -------------------------------------------------------------------- */ `````` jcarpent committed Apr 10, 2016 85 ``````#include "pinocchio/algorithm/aba.hxx" `````` jcarpent committed Mar 04, 2016 86 87 `````` #endif // ifndef __se3_aba_hpp__``````