fma overloads
Synopses
Declared in <mp‐units/math.h>
Computes the fma of 3 quantities
template<
    auto R,
    auto S,
    auto T,
    typename Rep1,
    typename Rep2,
    typename Rep3>
requires requires { get_common_quantity_spec(get_quantity_spec® * get_quantity_spec(S), get_quantity_spec(T)); } &&
           (equivalent(get_unit® * get_unit(S), get_unit(T))) && requires(Rep1 v1, Rep2 v2, Rep3 v3) {
             requires requires { fma(v1, v2, v3); } || requires { std::fma(v1, v2, v3); };
           }
[[nodiscard]]
constexpr
QuantityOf<get_common_quantity_spec(get_quantity_spec® * get_quantity_spec(S), get_quantity_spec(T))> auto
fma(
    quantity<R, Rep1> const& a,
    quantity<S, Rep2> const& x,
    quantity<T, Rep3> const& b) noexcept;Computes the fma of 2 quantities and a quantity point
template<
    auto R,
    auto S,
    auto T,
    auto Origin,
    typename Rep1,
    typename Rep2,
    typename Rep3>
requires requires { get_common_quantity_spec(get_quantity_spec® * get_quantity_spec(S), get_quantity_spec(T)); } &&
           (equivalent(get_unit® * get_unit(S), get_unit(T))) && requires(Rep1 v1, Rep2 v2, Rep3 v3) {
             requires requires { fma(v1, v2, v3); } || requires { std::fma(v1, v2, v3); };
           }
[[nodiscard]]
constexpr
QuantityPointOf<get_common_quantity_spec(get_quantity_spec® * get_quantity_spec(S), get_quantity_spec(T))> auto
fma(
    quantity<R, Rep1> const& a,
    quantity<S, Rep2> const& x,
    quantity_point<T, Origin, Rep3> const& b) noexcept;Return Value
- 
Quantity: The nearest floating point representable to ax+b 
- 
QuantityPoint: The nearest floating point representable to ax+b 
Parameters
| Name | Description | 
| a: | Multiplicand | 
| x: | Multiplicand | 
| b: | Addend | 
Created with MrDocs