sigma  0.0.0
Loading...
Searching...
No Matches
sigma::detail_ Namespace Reference

The namespace that contains the implementation details of the library. More...

Classes

class  Setter
 Modifies an unceratin variable. More...
 

Functions

template<typename T>
void inplace_unary (Uncertain< T > &c, T mean, T dcda)
 Generalized Inplace Unary Changes.
 
template<typename T>
Uncertain< T > unary_result (const Uncertain< T > &a, T mean, T dcda)
 Generalized Unary Changes.
 
template<typename T>
void inplace_binary (Uncertain< T > &c, const Uncertain< T > &b, T mean, T dcda, T dcdb)
 Generalized Inplace Binary Changes.
 
template<typename T>
Uncertain< T > binary_result (const Uncertain< T > &a, const Uncertain< T > &b, T mean, T dcda, T dcdb)
 Generalized Binary Changes.
 
template<typename FunctionType, typename NumericType>
NumericType numeric_derivative (FunctionType f, NumericType a)
 Compute the numeric derivative of a function.
 

Variables

constexpr double pi = 3.14159265358979323846
 Value of Pi.
 

Detailed Description

The namespace that contains the implementation details of the library.

This is the namespace details not intended for user interaction.

Function Documentation

◆ binary_result()

template<typename T>
Uncertain< T > sigma::detail_::binary_result ( const Uncertain< T > & a,
const Uncertain< T > & b,
T mean,
T dcda,
T dcdb )

Generalized Binary Changes.

Template Parameters
TThe value type of the variable
Parameters
aThe variable being altered copied
bThe variable whose dependencies are being added to a's
meanThe new mean value of the variable
dcdaThe partial derivative being added to the chain from a
dcdbThe partial derivative being added to the chain from b
Returns
A variable with the new mean value and the dependencies of a and b, altered respectively by dcda and dcdb.
Exceptions
noneNo throw guarantee

◆ inplace_binary()

template<typename T>
void sigma::detail_::inplace_binary ( Uncertain< T > & c,
const Uncertain< T > & b,
T mean,
T dcda,
T dcdb )

Generalized Inplace Binary Changes.

Template Parameters
TThe value type of the variable
Parameters
cThe variable being altered
bThe variable whose dependencies are being added to c's
meanThe new mean value of the variable
dcdaThe partial derivative being added to the chain from a
dcdbThe partial derivative being added to the chain from b
Exceptions
noneNo throw guarantee

◆ inplace_unary()

template<typename T>
void sigma::detail_::inplace_unary ( Uncertain< T > & c,
T mean,
T dcda )

Generalized Inplace Unary Changes.

Template Parameters
TThe value type of the variable
Parameters
cThe variable being altered
meanThe new mean value of the variable
dcdaThe partial derivative being added to the chain
Exceptions
noneNo throw guarantee

◆ numeric_derivative()

template<typename FunctionType, typename NumericType>
NumericType sigma::detail_::numeric_derivative ( FunctionType f,
NumericType a )

Compute the numeric derivative of a function.

Template Parameters
FunctionTypeThe type of the function f
NumericTypeThe numeric type of a
Parameters
fThe function whose derivative is computed
aThe value aroud which the derivative of f is computed
Returns
The derivative of f evaluated at a.
Exceptions
noneNo throw guarantee

◆ unary_result()

template<typename T>
Uncertain< T > sigma::detail_::unary_result ( const Uncertain< T > & a,
T mean,
T dcda )

Generalized Unary Changes.

Template Parameters
TThe value type of the variable
Parameters
aThe variable being altered copied
meanThe new mean value of the variable
dcdaThe partial derivative being added to the chain
Returns
A variable with the new mean value and the dependencies of a altered by dcda.
Exceptions
noneNo throw guarantee