- 3.0.2 rigid body dynamics module.
kindrJITtest.h File Reference
#include <kindr/Core>

Go to the source code of this file.

Functions

template<typename SCALAR >
Eigen::Matrix< SCALAR, 3, 1 > testFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 3, 3 > jacobianCheck (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 
 TEST (KindrJitTest, EulerAnglesTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 3, 1 > rotateTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 test the kindr rotate method on euler angles More...
 
 TEST (KindrJitTest, EulerRotateTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 3, 1 > kindrRotationMatrixTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 test the kindr RotationMatrix constructor More...
 
 TEST (KindrJitTest, RotationMatrixTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 3, 1 > convertRotationMatrixToKindrEulerTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 test the behaviour of transcribing a kindr rotation matrix into Euler Angles More...
 
 TEST (KindrJitTest, DISABLED_KindrRotationMatrixToEulerAnglesXyzTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 3, 1 > convertRotationMatrixToEigenEulerTestFunction (const Eigen::Matrix< SCALAR, -1, 1 > &x)
 test the behaviour of transcribing an Eigen rotation matrix into Eigen Euler Angles More...
 
 TEST (KindrJitTest, DISABLED_EigenRotationMatrixToEigenEulerAnglesTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, -1, 1 > frobeniusNormTestFunction (const Eigen::Matrix< SCALAR, -1, 1 > &x)
 test the Frobenius norm on an EigenMatrix More...
 
 TEST (KindrJitTest, FrobeniusNormTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 4, 1 > convertRotationMatrixToKindrQuatTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 test the behaviour of transcribing a rotation matrix into a kindr RotationQuaternion More...
 
 TEST (KindrJitTest, DISABLED_RotationMatrixToKindrRotationQuatTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 4, 1 > convertKindrRotationMatrixToEigenQuatTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 check conversion from kindr rotation matrix to an eigen quaternion More...
 
 TEST (KindrJitTest, DISABLED_KindrRotationMatrixToEigenRotationQuatTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 3, 1 > eigenTransformTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 test the JIT compatibility of Eigen Transforms More...
 
 TEST (KindrJitTest, EigenTransformTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 3, 1 > eigenQuaternionTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 test the JIT compatibility of Eigen quaternions More...
 
 TEST (KindrJitTest, EigenQuaternionTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 4, 1 > eigenQuatToKindrRotationQuatFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 check the conversion between an Eigen Quaternion and an kindr RotationQuaternion. More...
 
 TEST (KindrJitTest, EigenQuatToKindrRotationQuatTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 4, 1 > kindrQuaternionTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 test the JIT compatibility of kindr Quaternions More...
 
 TEST (KindrJitTest, kindrQuaternionTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 4, 1 > kindrUnitQuaternionTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 test the JIT compatibility of kindr UnitQuaternions More...
 
 TEST (KindrJitTest, kindrUnitQuaternionTest)
 
template<typename SCALAR >
Eigen::Matrix< SCALAR, 4, 1 > kindrRotationQuaternionTestFunction (const Eigen::Matrix< SCALAR, 3, 1 > &x)
 
 TEST (KindrJitTest, kindrRotationQuaternionTest)
 

Function Documentation

◆ testFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 3, 1> testFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

A 3x3 function which constructs a a kindr EulerAngles object in between. The aim of this function is to verify that JIT gets along with kindr Euler angle types (which it should do naturally)

Parameters
xthe input
Returns
output y = f(x)

◆ jacobianCheck()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 3, 3> jacobianCheck ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

The analytically, manually derived Jacobian of testFunction() used for verification

Parameters
xthe input
Returns
output y = f(x)

Referenced by TEST().

◆ TEST() [1/14]

TEST ( KindrJitTest  ,
EulerAnglesTest   
)

Test for just-in-time compilation of the Jacobian and normal Auto-diff Jacobian, with kindr in the loop

References i, and jacobianCheck().

◆ rotateTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 3, 1> rotateTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

test the kindr rotate method on euler angles

◆ TEST() [2/14]

TEST ( KindrJitTest  ,
EulerRotateTest   
)

◆ kindrRotationMatrixTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 3, 1> kindrRotationMatrixTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

test the kindr RotationMatrix constructor

References ct::core::internal::CppADCodegenTrait::cos(), and ct::core::internal::CppADCodegenTrait::sin().

◆ TEST() [3/14]

TEST ( KindrJitTest  ,
RotationMatrixTest   
)

◆ convertRotationMatrixToKindrEulerTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 3, 1> convertRotationMatrixToKindrEulerTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

test the behaviour of transcribing a kindr rotation matrix into Euler Angles

References ct::core::internal::CppADCodegenTrait::cos(), and ct::core::internal::CppADCodegenTrait::sin().

◆ TEST() [4/14]

TEST ( KindrJitTest  ,
DISABLED_KindrRotationMatrixToEulerAnglesXyzTest   
)

◆ convertRotationMatrixToEigenEulerTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 3, 1> convertRotationMatrixToEigenEulerTestFunction ( const Eigen::Matrix< SCALAR, -1, 1 > &  x)

test the behaviour of transcribing an Eigen rotation matrix into Eigen Euler Angles

References ct::core::internal::CppADCodegenTrait::cos(), and ct::core::internal::CppADCodegenTrait::sin().

◆ TEST() [5/14]

TEST ( KindrJitTest  ,
DISABLED_EigenRotationMatrixToEigenEulerAnglesTest   
)

◆ frobeniusNormTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, -1, 1> frobeniusNormTestFunction ( const Eigen::Matrix< SCALAR, -1, 1 > &  x)

test the Frobenius norm on an EigenMatrix

References ct::core::internal::CppADCodegenTrait::cos(), and ct::core::internal::CppADCodegenTrait::sin().

◆ TEST() [6/14]

TEST ( KindrJitTest  ,
FrobeniusNormTest   
)

◆ convertRotationMatrixToKindrQuatTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 4, 1> convertRotationMatrixToKindrQuatTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

test the behaviour of transcribing a rotation matrix into a kindr RotationQuaternion

References ct::core::internal::CppADCodegenTrait::cos(), and ct::core::internal::CppADCodegenTrait::sin().

◆ TEST() [7/14]

TEST ( KindrJitTest  ,
DISABLED_RotationMatrixToKindrRotationQuatTest   
)

◆ convertKindrRotationMatrixToEigenQuatTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 4, 1> convertKindrRotationMatrixToEigenQuatTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

check conversion from kindr rotation matrix to an eigen quaternion

References ct::core::internal::CppADCodegenTrait::cos(), and ct::core::internal::CppADCodegenTrait::sin().

◆ TEST() [8/14]

TEST ( KindrJitTest  ,
DISABLED_KindrRotationMatrixToEigenRotationQuatTest   
)

◆ eigenTransformTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 3, 1> eigenTransformTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

test the JIT compatibility of Eigen Transforms

References t.

◆ TEST() [9/14]

TEST ( KindrJitTest  ,
EigenTransformTest   
)

◆ eigenQuaternionTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 3, 1> eigenQuaternionTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

test the JIT compatibility of Eigen quaternions

◆ TEST() [10/14]

TEST ( KindrJitTest  ,
EigenQuaternionTest   
)

◆ eigenQuatToKindrRotationQuatFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 4, 1> eigenQuatToKindrRotationQuatFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

check the conversion between an Eigen Quaternion and an kindr RotationQuaternion.

◆ TEST() [11/14]

TEST ( KindrJitTest  ,
EigenQuatToKindrRotationQuatTest   
)

◆ kindrQuaternionTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 4, 1> kindrQuaternionTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

test the JIT compatibility of kindr Quaternions

◆ TEST() [12/14]

TEST ( KindrJitTest  ,
kindrQuaternionTest   
)

◆ kindrUnitQuaternionTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 4, 1> kindrUnitQuaternionTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

test the JIT compatibility of kindr UnitQuaternions

◆ TEST() [13/14]

TEST ( KindrJitTest  ,
kindrUnitQuaternionTest   
)

◆ kindrRotationQuaternionTestFunction()

template<typename SCALAR >
Eigen::Matrix<SCALAR, 4, 1> kindrRotationQuaternionTestFunction ( const Eigen::Matrix< SCALAR, 3, 1 > &  x)

Test JIT compatiblility of the kindr "RotationQuaternion" class

◆ TEST() [14/14]

TEST ( KindrJitTest  ,
kindrRotationQuaternionTest   
)