Vulcan
Aerospace Engineering Utilities Built on Janus
Loading...
Searching...
No Matches
vulcan::validation Namespace Reference

Functions

template<typename Scalar>
bool is_finite (const Scalar &x)
 Check if value is finite (not NaN or Inf).
template<typename Scalar>
auto is_in_range (const Scalar &x, const Scalar &min, const Scalar &max)
template<typename Scalar>
Scalar clamp (const Scalar &x, const Scalar &min, const Scalar &max)
 Clamp value to [min, max].
template<typename Scalar>
void assert_finite (const Scalar &x, const std::string &name)
 Assert value is finite.
template<typename Scalar>
void assert_positive (const Scalar &x, const std::string &name)
 Assert value is positive (> 0).
template<typename Scalar>
void assert_non_negative (const Scalar &x, const std::string &name)
 Assert value is non-negative (>= 0).
template<typename Scalar>
void assert_in_range (const Scalar &x, const std::string &name, const Scalar &min_val, const Scalar &max_val)
 Assert value is in range [min, max].
template<typename Scalar>
void assert_at_most (const Scalar &x, const std::string &name, const Scalar &max_val)
 Assert value is less than or equal to max.
template<typename Scalar>
void assert_at_least (const Scalar &x, const std::string &name, const Scalar &min_val)
 Assert value is greater than or equal to min.
template<typename VectorType>
void assert_unit_quaternion (const VectorType &q, double tolerance=1e-6)

Function Documentation

◆ assert_at_least()

template<typename Scalar>
void vulcan::validation::assert_at_least ( const Scalar & x,
const std::string & name,
const Scalar & min_val )

Assert value is greater than or equal to min.

◆ assert_at_most()

template<typename Scalar>
void vulcan::validation::assert_at_most ( const Scalar & x,
const std::string & name,
const Scalar & max_val )

Assert value is less than or equal to max.

◆ assert_finite()

template<typename Scalar>
void vulcan::validation::assert_finite ( const Scalar & x,
const std::string & name )

Assert value is finite.

◆ assert_in_range()

template<typename Scalar>
void vulcan::validation::assert_in_range ( const Scalar & x,
const std::string & name,
const Scalar & min_val,
const Scalar & max_val )

Assert value is in range [min, max].

◆ assert_non_negative()

template<typename Scalar>
void vulcan::validation::assert_non_negative ( const Scalar & x,
const std::string & name )

Assert value is non-negative (>= 0).

◆ assert_positive()

template<typename Scalar>
void vulcan::validation::assert_positive ( const Scalar & x,
const std::string & name )

Assert value is positive (> 0).

◆ assert_unit_quaternion()

template<typename VectorType>
void vulcan::validation::assert_unit_quaternion ( const VectorType & q,
double tolerance = 1e-6 )

Assert quaternion is unit magnitude

Parameters
qQuaternion (w, x, y, z) or similar vector of size 4
toleranceTolerance for magnitude check

◆ clamp()

template<typename Scalar>
Scalar vulcan::validation::clamp ( const Scalar & x,
const Scalar & min,
const Scalar & max )

Clamp value to [min, max].

◆ is_finite()

template<typename Scalar>
bool vulcan::validation::is_finite ( const Scalar & x)

Check if value is finite (not NaN or Inf).

◆ is_in_range()

template<typename Scalar>
auto vulcan::validation::is_in_range ( const Scalar & x,
const Scalar & min,
const Scalar & max )

Check if value is in range [min, max] inclusive Returns boolean for numeric, symbolic logic for symbolic