|
|
template<mut_vector Out, vector_like< Out > U, vector_like< Out > V> |
| constexpr void | dxx::math::add (U &&u, V &&v, Out &out) |
| | Element-wise vector addition. Result via output parameter.
|
|
template<container_traits::returnable Out, vector_like< Out > U, vector_like< Out > V> |
| constexpr Out | dxx::math::add (U &&u, V &&v) |
| | Element-wise vector addition. Result in return value of a user-provided type.
|
|
template<vector U, vector_like< U > V> |
| constexpr std::remove_cvref_t< U > | dxx::math::add (U &&u, V &&v) |
| | Element-wise vector addition. Result in return value of automatically selected type.
|
|
template<vector U, vector_like< U > V> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator+ (U &&u, V &&v) |
| | Operator for a corrsponding add overload.
|
|
template<mut_vector U, vector_like< U > V> |
| constexpr U & | dxx::math::vector_operators::operator+= (U &u, const V &v) |
| | Inplace element-wise vector addition.
|
|
template<mut_vector Out, vector_like< Out > U, std::convertible_to< RealOf< Out > > Scalar> |
| constexpr void | dxx::math::add (U &&u, const Scalar &scalar, Out &out) |
| | Element-wise addition of vector elements with a scalar. Result via output parameter.
|
|
template<container_traits::returnable Out, vector_like< Out > U, std::convertible_to< RealOf< Out > > Scalar> |
| constexpr Out | dxx::math::add (U &&u, const Scalar &scalar) |
| | Element-wise addition of vector elements with a scalar. Result in return value of a user-provided type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::add (U &&u, const Scalar &scalar) |
| | Element-wise addition of vector elements with a scalar. Result in return value of automatically selected type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator+ (U &&u, const Scalar &scalar) |
| | Operator for a corrsponding add overload.
|
|
template<mut_vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr U & | dxx::math::vector_operators::operator+= (U &u, const Scalar &scalar) |
| | Inplace element-wise addition of vector with scalar.
|
|
template<mut_vector Out, std::convertible_to< RealOf< Out > > Scalar, vector_like< Out > U> |
| constexpr void | dxx::math::add (const Scalar &scalar, U &&u, Out &out) |
| | Element-wise addition of scalar with vector elements. Result via output parameter.
|
|
template<container_traits::returnable Out, std::convertible_to< RealOf< Out > > Scalar, vector_like< Out > U> |
| constexpr Out | dxx::math::add (const Scalar &scalar, U &&u) |
| | Element-wise addition of scalar with vector elements. Result in return value of a user-provided type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::add (const Scalar &scalar, U &&u) |
| | Element-wise addition of vector elements with a scalar. Result in return value of automatically selected type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator+ (const Scalar &scalar, U &&u) |
| | Operator for a corrsponding add overload.
|
|
template<mut_vector Out, vector_like< Out > U, vector_like< Out > V> |
| constexpr void | dxx::math::sub (U &&u, V &&v, Out &out) |
| | Element-wise vector subtraction. Result via output parameter.
|
|
template<container_traits::returnable Out, vector_like< Out > U, vector_like< Out > V> |
| constexpr Out | dxx::math::sub (U &&u, V &&v) |
| | Element-wise vector subtraction. Result in return value of a user-provided type.
|
|
template<vector U, vector_like< U > V> |
| constexpr std::remove_cvref_t< U > | dxx::math::sub (U &&u, V &&v) |
| | Element-wise vector subtraction. Result in return value of automatically selected type.
|
|
template<vector U, vector_like< U > V> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator- (U &&u, V &&v) |
| | Operator for a corrsponding sub overload.
|
|
template<mut_vector U, vector_like< U > V> |
| constexpr U & | dxx::math::vector_operators::operator-= (U &u, const V &v) |
| | Inplace element-wise vector subtraction.
|
|
template<mut_vector Out, vector_like< Out > U, std::convertible_to< RealOf< Out > > Scalar> |
| constexpr void | dxx::math::sub (U &&u, const Scalar &scalar, Out &out) |
| | Element-wise subtraction of vector elements with a scalar. Result via output parameter.
|
|
template<container_traits::returnable Out, vector_like< Out > U, std::convertible_to< RealOf< Out > > Scalar> |
| constexpr Out | dxx::math::sub (U &&u, const Scalar &scalar) |
| | Element-wise subtraction of vector elements with a scalar. Result in return value of a user-provided type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::sub (U &&u, const Scalar &scalar) |
| | Element-wise subtraction of vector elements with a scalar. Result in return value of automatically selected type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator- (U &&u, const Scalar &scalar) |
| | Operator for a corrsponding sub overload.
|
|
template<mut_vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr U & | dxx::math::vector_operators::operator-= (U &u, const Scalar &scalar) |
| | Inplace element-wise subtraction of vector with scalar.
|
|
template<mut_vector Out, std::convertible_to< RealOf< Out > > Scalar, vector_like< Out > U> |
| constexpr void | dxx::math::sub (const Scalar &scalar, U &&u, Out &out) |
| | Element-wise subtraction of scalar with vector elements. Result via output parameter.
|
|
template<container_traits::returnable Out, std::convertible_to< RealOf< Out > > Scalar, vector_like< Out > U> |
| constexpr Out | dxx::math::sub (const Scalar &scalar, U &&u) |
| | Element-wise subtraction of scalar with vector elements. Result in return value of a user-provided type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::sub (const Scalar &scalar, U &&u) |
| | Element-wise subtraction of vector elements with a scalar. Result in return value of automatically selected type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator- (const Scalar &scalar, U &&u) |
| | Operator for a corrsponding sub overload.
|
|
template<mut_vector Out, vector_like< Out > U, vector_like< Out > V> |
| constexpr void | dxx::math::mul (U &&u, V &&v, Out &out) |
| | Element-wise vector multiplication. Result via output parameter.
|
|
template<container_traits::returnable Out, vector_like< Out > U, vector_like< Out > V> |
| constexpr Out | dxx::math::mul (U &&u, V &&v) |
| | Element-wise vector multiplication. Result in return value of a user-provided type.
|
|
template<vector U, vector_like< U > V> |
| constexpr std::remove_cvref_t< U > | dxx::math::mul (U &&u, V &&v) |
| | Element-wise vector multiplication. Result in return value of automatically selected type.
|
|
template<vector U, vector_like< U > V> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator* (U &&u, V &&v) |
| | Operator for a corrsponding mul overload.
|
|
template<mut_vector U, vector_like< U > V> |
| constexpr U & | dxx::math::vector_operators::operator*= (U &u, const V &v) |
| | Inplace element-wise vector multiplication.
|
|
template<mut_vector Out, vector_like< Out > U, std::convertible_to< RealOf< Out > > Scalar> |
| constexpr void | dxx::math::mul (U &&u, const Scalar &scalar, Out &out) |
| | Element-wise multiplication of vector elements with a scalar. Result via output parameter.
|
|
template<container_traits::returnable Out, vector_like< Out > U, std::convertible_to< RealOf< Out > > Scalar> |
| constexpr Out | dxx::math::mul (U &&u, const Scalar &scalar) |
| | Element-wise multiplication of vector elements with a scalar. Result in return value of a user-provided type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::mul (U &&u, const Scalar &scalar) |
| | Element-wise multiplication of vector elements with a scalar. Result in return value of automatically selected type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator* (U &&u, const Scalar &scalar) |
| | Operator for a corrsponding mul overload.
|
|
template<mut_vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr U & | dxx::math::vector_operators::operator*= (U &u, const Scalar &scalar) |
| | Inplace element-wise multiplication of vector with scalar.
|
|
template<mut_vector Out, std::convertible_to< RealOf< Out > > Scalar, vector_like< Out > U> |
| constexpr void | dxx::math::mul (const Scalar &scalar, U &&u, Out &out) |
| | Element-wise multiplication of scalar with vector elements. Result via output parameter.
|
|
template<container_traits::returnable Out, std::convertible_to< RealOf< Out > > Scalar, vector_like< Out > U> |
| constexpr Out | dxx::math::mul (const Scalar &scalar, U &&u) |
| | Element-wise multiplication of scalar with vector elements. Result in return value of a user-provided type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::mul (const Scalar &scalar, U &&u) |
| | Element-wise multiplication of vector elements with a scalar. Result in return value of automatically selected type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator* (const Scalar &scalar, U &&u) |
| | Operator for a corrsponding mul overload.
|
|
template<mut_vector Out, vector_like< Out > U, vector_like< Out > V> |
| constexpr void | dxx::math::div (U &&u, V &&v, Out &out) |
| | Element-wise vector division. Result via output parameter.
|
|
template<container_traits::returnable Out, vector_like< Out > U, vector_like< Out > V> |
| constexpr Out | dxx::math::div (U &&u, V &&v) |
| | Element-wise vector division. Result in return value of a user-provided type.
|
|
template<vector U, vector_like< U > V> |
| constexpr std::remove_cvref_t< U > | dxx::math::div (U &&u, V &&v) |
| | Element-wise vector division. Result in return value of automatically selected type.
|
|
template<vector U, vector_like< U > V> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator/ (U &&u, V &&v) |
| | Operator for a corrsponding div overload.
|
|
template<mut_vector U, vector_like< U > V> |
| constexpr U & | dxx::math::vector_operators::operator/= (U &u, const V &v) |
| | Inplace element-wise vector division.
|
|
template<mut_vector Out, vector_like< Out > U, std::convertible_to< RealOf< Out > > Scalar> |
| constexpr void | dxx::math::div (U &&u, const Scalar &scalar, Out &out) |
| | Element-wise division of vector elements with a scalar. Result via output parameter.
|
|
template<container_traits::returnable Out, vector_like< Out > U, std::convertible_to< RealOf< Out > > Scalar> |
| constexpr Out | dxx::math::div (U &&u, const Scalar &scalar) |
| | Element-wise division of vector elements with a scalar. Result in return value of a user-provided type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::div (U &&u, const Scalar &scalar) |
| | Element-wise division of vector elements with a scalar. Result in return value of automatically selected type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator/ (U &&u, const Scalar &scalar) |
| | Operator for a corrsponding div overload.
|
|
template<mut_vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr U & | dxx::math::vector_operators::operator/= (U &u, const Scalar &scalar) |
| | Inplace element-wise division of vector with scalar.
|
|
template<mut_vector Out, std::convertible_to< RealOf< Out > > Scalar, vector_like< Out > U> |
| constexpr void | dxx::math::div (const Scalar &scalar, U &&u, Out &out) |
| | Element-wise division of scalar with vector elements. Result via output parameter.
|
|
template<container_traits::returnable Out, std::convertible_to< RealOf< Out > > Scalar, vector_like< Out > U> |
| constexpr Out | dxx::math::div (const Scalar &scalar, U &&u) |
| | Element-wise division of scalar with vector elements. Result in return value of a user-provided type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::div (const Scalar &scalar, U &&u) |
| | Element-wise division of vector elements with a scalar. Result in return value of automatically selected type.
|
|
template<vector U, std::convertible_to< RealOf< U > > Scalar> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator/ (const Scalar &scalar, U &&u) |
| | Operator for a corrsponding div overload.
|
|
template<vector U> |
| constexpr std::remove_cvref_t< U > | dxx::math::vector_operators::operator- (U &&u) |
| | Unary negation for vectors.
|
|
template<mut_vector Out, vector_like< Out > U, vector_like< Out > V> |
| void | dxx::math::cross (const U &u, const V &v, Out &out) |
| | Cross product of two 3D vectors (via out parameter).
|
|
template<container_traits::returnable Out, vector_like< Out > U, vector_like< Out > V> |
| constexpr Out | dxx::math::cross (const U &u, const V &v) |
| | Cross product of two 3D vectors (via return value).
|
|
template<container_traits::returnable U, vector_like< U > V> |
| constexpr U | dxx::math::cross (const U &u, const V &v) |
| | Cross product of two 3D vectors (via return value of default type).
|
|
template<vector U, vector_like< U > V> |
| constexpr RealOf< U > | dxx::math::dot (const U &u, const V &v) |
| | Vector dot product.
|
|
template<Norm t_norm = norms::euclidean, vector V> |
| constexpr RealOf< V > | dxx::math::norm (const V &v) |
| | Calculates norm t_norm for vector v.
|
|
template<Norm t_norm = norms::euclidean, vector V> |
| constexpr RealOf< V > | dxx::math::sq_norm (const V &v) |
| | Calculates the square of the norm t_norm for vector v.
|
|
template<Norm t_norm = norms::euclidean, vector V, vector_like< V > U> |
| constexpr RealOf< V > | dxx::math::dist (const V &v, const U &u) |
| | Calculates the distance between vector v and u according to norm t_norm.
|
|
template<Norm t_norm = norms::euclidean, vector V, vector_like< V > U> |
| constexpr RealOf< V > | dxx::math::sq_dist (const V &v, const U &u) |
| | Calculates the square of the distance between vector v and u according to norm t_norm.
|