Go to the documentation of this file.
18 #include <benchmark/benchmark.h>
27 void SetUp(benchmark::State & st)
69 const Eigen::VectorXd & q,
119 template<pinocchio::ReferenceFrame Frame>
160 template<pinocchio::ReferenceFrame Frame>
174 std::cout <<
"frame_id: " <<
frame_id << std::endl;
205 template<pinocchio::ReferenceFrame Frame>
209 const Eigen::VectorXd & q,
233 benchmark::State & st)
static PINOCCHIO_DONT_INLINE void computeJointJacobianCall(const pinocchio::Model &model, pinocchio::Data &data, const Eigen::VectorXd &q, pinocchio::Index joint_id, pinocchio::Data::Matrix6x &J)
#define PINOCCHIO_DONT_INLINE
Function attribute to forbid inlining. This is a compiler hint that can be not respected.
void forwardKinematics(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q)
Update the joint placements according to the current joint configuration.
void getFrameJacobian(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const JointIndex joint_id, const SE3Tpl< Scalar, Options > &placement, const ReferenceFrame reference_frame, const Eigen::MatrixBase< Matrix6xLike > &J)
Returns the jacobian of the frame given by its relative placement w.r.t. a joint frame,...
static PINOCCHIO_DONT_INLINE void forwardKinematicsQCall(const pinocchio::Model &model, pinocchio::Data &data, const Eigen::VectorXd &q)
void TearDown(benchmark::State &)
FrameTpl< Scalar, Options > Frame
const DataTpl< Scalar, Options, JointCollectionTpl >::Matrix6x & computeJointJacobians(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q)
Computes the full model Jacobian, i.e. the stack of all motion subspace expressed in the world frame....
void SetUp(benchmark::State &st)
static void CustomArguments(benchmark::internal::Benchmark *b)
void SetUp(benchmark::State &)
pinocchio::Model::JointIndex joint_id
void computeFrameJacobian(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const FrameIndex frameId, const ReferenceFrame reference_frame, const Eigen::MatrixBase< Matrix6xLike > &J)
Computes the Jacobian of a specific Frame expressed in the desired reference_frame given as argument.
A Plucker coordinate frame attached to a parent joint inside a kinematic tree.
PINOCCHIO_BENCHMARK_MAIN()
PINOCCHIO_COMPILER_DIAGNOSTIC_POP typedef std::size_t Index
pinocchio::JointIndex JointIndex
static PINOCCHIO_DONT_INLINE void computeFrameJacobianCall(const pinocchio::Model &model, pinocchio::Data &data, const Eigen::VectorXd &q, pinocchio::FrameIndex frame_id, const pinocchio::Data::Matrix6x &J)
void updateFramePlacements(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data)
Updates the position of each frame contained in the model.
pinocchio::Data::Matrix6x J
DataTpl< context::Scalar, context::Options > Data
void getJointJacobian(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const JointIndex joint_id, const ReferenceFrame reference_frame, const Eigen::MatrixBase< Matrix6Like > &J)
Computes the Jacobian of a specific joint frame expressed in one of the pinocchio::ReferenceFrame opt...
pinocchio::FrameIndex FrameIndex
static PINOCCHIO_DONT_INLINE void computeJointJacobiansCall(const pinocchio::Model &model, pinocchio::Data &data)
BENCHMARK_REGISTER_F(JacobianFixture, FORWARD_KINEMATICS_Q) -> Apply(CustomArguments)
static PINOCCHIO_DONT_INLINE void getFrameJacobianCall(const pinocchio::Model &model, pinocchio::Data &data, pinocchio::FrameIndex frame_id, const pinocchio::Data::Matrix6x &J)
static PINOCCHIO_DONT_INLINE void computeJointJacobiansQCall(const pinocchio::Model &model, pinocchio::Data &data, const Eigen::VectorXd &q)
@ OP_FRAME
operational frame: user-defined frames that are defined at runtime
pinocchio::Model::FrameIndex frame_id
void computeJointJacobian(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const JointIndex joint_id, const Eigen::MatrixBase< Matrix6Like > &J)
Computes the Jacobian of a specific joint frame expressed in the local frame of the joint and store t...
int nv
Dimension of the velocity vector space.
static PINOCCHIO_DONT_INLINE void getJointJacobianCall(const pinocchio::Model &model, const pinocchio::Data &data, pinocchio::Index joint_id, const pinocchio::Data::Matrix6x &J)
FrameIndex addFrame(const Frame &frame, const bool append_inertia=true)
Adds a frame to the kinematic tree. The inertia stored within the frame will be happened to the inert...
Eigen::Matrix< Scalar, 6, Eigen::Dynamic, Options > Matrix6x
The 6d jacobian type (temporary)
void TearDown(benchmark::State &st)
BENCHMARK_DEFINE_F(JacobianFixture, FORWARD_KINEMATICS_Q)(benchmark
int njoints
Number of joints.
pinocchio
Author(s):
autogenerated on Thu Apr 10 2025 02:42:22