24 #ifndef AHRS_ASSERTIONS_HPP
25 #define AHRS_ASSERTIONS_HPP
30 template <
typename MatrixBase>
31 bool hasNaN(
const MatrixBase &expr);
33 template <
typename MatrixBase>
34 bool hasInf(
const MatrixBase &expr);
36 template <
typename MatrixBase>
37 bool perpendicular(
const MatrixBase &expl,
const MatrixBase &expr);
39 template <
typename MatrixBase>
42 for (
int j = 0; j != expr.cols(); ++j) {
43 for (
int i = 0;
i != expr.rows(); ++
i) {
44 if (std::isnan(expr.coeff(
i, j)))
51 template <
typename MatrixBase>
54 for (
int i = 0;
i != expr.cols(); ++
i) {
55 for (
int j = 0; j != expr.rows(); ++j) {
56 if (std::isinf(expr.coeff(j,
i)))
63 template <
typename MatrixBase>
69 template <
typename MatrixBase>
74 return fabs(rhs.dot(lhs)) < 0.0001;
bool perpendicular(const MatrixBase &expl, const MatrixBase &expr)
bool hasInf(const MatrixBase &expr)
bool hasNaN(const MatrixBase &expr)
bool isReal(const MatrixBase &exp)