7template<
typename T,
typename U>
9 T mean = std::pow(a.
mean(),
exp);
17 T mean = std::pow(a.
mean(),
exp.mean());
18 T dcda =
exp.mean() * std::pow(a.
mean(),
exp.mean() - 1);
19 T dcdb = std::log(a.
mean()) * std::pow(a.
mean(),
exp.mean());
26 T mean = std::sqrt(a.
mean());
27 T dcda = 1.0 / (2.0 * std::sqrt(a.
mean()));
33 T mean = std::cbrt(a.
mean());
34 T dcda = 1.0 / (3.0 * std::cbrt(std::pow(a.
mean(), 2.0)));
40 T mean = std::exp(a.
mean());
41 T dcda = std::exp(a.
mean());
47 T mean = std::exp2(a.
mean());
48 T dcda = mean * std::log(2.0);
54 T mean = std::expm1(a.
mean());
55 T dcda = std::exp(a.
mean());
61 T mean = std::log(a.
mean());
62 T dcda = 1.0 / a.
mean();
68 T mean = std::log10(a.
mean());
69 T dcda = 1.0 / (a.
mean() * std::log(10.0));
75 T mean = std::log2(a.
mean());
76 T dcda = 1.0 / (a.
mean() * std::log(2.0));
82 T mean = std::log1p(a.
mean());
83 T dcda = 1.0 / (a.
mean() + 1.0);
90 T mean = std::hypot(a.
mean(), b.
mean());
97template<
typename T,
typename U>
99 T mean = std::hypot(a.
mean(), b);
100 T dcda = a.
mean() / std::hypot(a.
mean(), b);
104template<
typename T,
typename U>
Models an unceratin variable.
Definition uncertain.hpp:34
value_t mean() const
Get the mean value of the variable.
Definition uncertain.hpp:71
void inplace_binary(Uncertain< T > &c, const Uncertain< T > &b, T mean, T dcda, T dcdb)
Generalized Inplace Binary Changes.
Definition operation_common.hpp:61
Uncertain< T > unary_result(const Uncertain< T > &a, T mean, T dcda)
Generalized Unary Changes.
Definition operation_common.hpp:43
The primary namespace for the sigma library.
Definition affine.hpp:12
Affine< T > exp(const Affine< T > &a)
Calculate the exponential of an affine form.
Definition exponents.ipp:30
Affine< T > pow(const Affine< T > &a, const U &exp)
Calculate the power of an affine form.
Definition exponents.ipp:71
Uncertain< T > hypot(const Uncertain< T > &a, const Uncertain< T > &b)
Calculate the square root of the sum of squared arguments.
Definition exponents.ipp:88
Affine< T > log(const Affine< T > &a)
Calculate the natural logarithm of an affine form.
Definition exponents.ipp:50
Uncertain< T > expm1(const Uncertain< T > &a)
Calculate the Euler's number raised to the power of an uncertain variable, then subtract 1.
Definition exponents.ipp:53
Uncertain< T > log1p(const Uncertain< T > &a)
Calculate the natural logarithm of one plus a variable.
Definition exponents.ipp:81
Uncertain< T > log2(const Uncertain< T > &a)
Calculate the base 2 logarithm of a variable.
Definition exponents.ipp:74
Affine< T > sqrt(const Affine< T > &a)
Calculate the square root of an affine form.
Definition exponents.ipp:8
Uncertain< T > exp2(const Uncertain< T > &a)
Calculate 2 raised to the power of an uncertain variable.
Definition exponents.ipp:46
Uncertain< T > log10(const Uncertain< T > &a)
Calculate the base 10 logarithm of a variable.
Definition exponents.ipp:67
Uncertain< T > cbrt(const Uncertain< T > &a)
Calculate the cube root of an uncertain variable.
Definition exponents.ipp:32
Common implementation details for operations.