![]() |
mars_lib
0.1.0.3dc76ee85e09
Modular and Robust Sensor-Fusion
|
#include </home/runner/work/mars_lib/mars_lib/source/mars/include/mars/general_functions/utils.h>
Public Member Functions | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | Utils () |
Static Public Member Functions | |
static std::string | get_mars_version_string () |
get_mars_version_string More... | |
static void | PrintMarsVersion () |
PrintMarsVersion. More... | |
static void | TransformImu (const mars::IMUMeasurementType &prev, const mars::IMUMeasurementType &now, const double &dt, const Eigen::Vector3d &p_ab, const Eigen::Quaterniond &q_ab, mars::IMUMeasurementType &result) |
TransformImu Transform IMU measurements from current frame A to frame B. More... | |
static void | TransformImu (const mars::IMUMeasurementType &now, const Eigen::Vector3d &p_ab, const Eigen::Quaterniond &q_ab, mars::IMUMeasurementType &result) |
TransformImu Transform IMU measurements from current frame A to frame B. More... | |
static Eigen::Matrix3d | Skew (const Eigen::Vector3d &v) |
skew generate the skew symmetric matrix of v More... | |
static Eigen::Matrix4d | MatExp (const Eigen::Matrix4d &A, const int &order=4) |
mat_exp Calculation of the matrix exponential, Taylor series cut-off at specified order More... | |
static Eigen::Matrix4d | OmegaMat (const Eigen::Vector3d &v) |
omega_mat ight multiplication More... | |
static Eigen::Quaterniond | QuatFromSmallAngle (const Eigen::Vector3d &d_theta_vec) |
QuatFromSmallAngle. More... | |
static Eigen::Quaterniond | ApplySmallAngleQuatCorr (const Eigen::Quaterniond &q_prior, const Eigen::Vector3d &correction) |
ApplySmallAngleQuatCorr. More... | |
static Eigen::Vector3d | RPYFromRotMat (const Eigen::Matrix3d &rot_mat) |
RPYFromRotMat derives the roll pitch and yaw angle from a rotation matrix (in that order) More... | |
static bool | CheckCov (const Eigen::MatrixXd &cov_mat, const std::string &description, const bool &check_cond=false) |
check_cov Performs tests for the properties of a given covariance matrix More... | |
static Eigen::MatrixXd | EnforceMatrixSymmetry (const Eigen::Ref< const Eigen::MatrixXd > &mat_in) |
EnforceMatrixSymmetry. More... | |
static Eigen::Quaterniond | quaternionAverage (const std::vector< Eigen::Quaterniond > &quats) |
quaternionAverage without weights More... | |
template<typename T , typename A > | |
static std::vector< T > | VecExtractEveryNthElm (std::vector< T, A > const &data, const int &nth) |
VecExtractEveryNthElm Takes a vector and returns a new vector which only contains every n'th element. More... | |
static Eigen::Quaterniond | NormalizeQuaternion (const Eigen::Quaterniond &quat, std::string note="") |
static Eigen::Quaterniond | NormalizeQuaternion (const double &w, const double &x, const double &y, const double &z, std::string note="") |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW mars::Utils::Utils | ( | ) |
|
static |
get_mars_version_string
|
static |
PrintMarsVersion.
|
static |
TransformImu Transform IMU measurements from current frame A to frame B.
This function takes angular accleration into account and thus needs the previous IMU measurement and dt
prev | Previos IMU measurement expressed in frame A |
now | Current IMU measurement expressed in frame A |
dt | Delta time between both IMU measurements |
p_ab | Transformation of frame B w.r.t. frame A |
q_ab | Rotation of frame B w.r.t. frame A |
result | Transformed current IMU measurement expressed in frame B |
|
static |
TransformImu Transform IMU measurements from current frame A to frame B.
This function does not take the angular accleration into account and thus does not need the previous IMU measurement and dt
now | Current IMU measurement expressed in frame A |
p_ab | Transformation of frame B w.r.t. frame A |
q_ab | Rotation of frame B w.r.t. frame A |
result | Transformed current IMU measurement expressed in frame B |
|
static |
skew generate the skew symmetric matrix of v
v | 3d vector |
|
static |
mat_exp Calculation of the matrix exponential, Taylor series cut-off at specified order
A | Matrix for Taylor series |
order | Order at wich the series is cut-off |
|
static |
omega_mat ight multiplication
v |
|
static |
QuatFromSmallAngle.
d_theta_vec | angle for the generation of the quaternion |
|
static |
ApplySmallAngleQuatCorr.
q_prior | |
correction |
|
static |
RPYFromRotMat derives the roll pitch and yaw angle from a rotation matrix (in that order)
rot_mat | 3x3 rotation matrix |
|
static |
check_cov Performs tests for the properties of a given covariance matrix
cov_mat | |
description | Used to associate the warning with the given covariance |
check_cond | Check the condition number of the covariance matrix |
|
static |
EnforceMatrixSymmetry.
mat_in |
|
static |
quaternionAverage without weights
quats | vector of quaternion being averaged |
|
inlinestatic |
VecExtractEveryNthElm Takes a vector and returns a new vector which only contains every n'th element.
data | Vector with a number of entries |
nth | Defines the reduction of entries to only every n'th |
|
static |
|
static |