Jpp
|
Auxiliary classes and methods for mathematical operations. More...
Classes | |
struct | JCalculator |
Auxiliary class for arithmetic operations on objects. More... | |
struct | JGauss_t |
Gauss model. More... | |
struct | JGauss |
Gauss function object. More... | |
struct | JLimits |
Auxiliary class for minimum and maximum values for any class. More... | |
struct | JLimits< T, true > |
Template spacialisation of JMATH::JLimits for numerical values. More... | |
struct | JLimits< T, false > |
Template spacialisation of JMATH::JRandom for other data types. More... | |
struct | JMath |
Auxiliary base class for aritmetic operations of derived class types. More... | |
struct | JMath< T, JNullType > |
Template base class for data structures with arithmetic capabilities. More... | |
class | JMatrix1D |
1 x 1 matrix More... | |
class | JMatrix1S |
1 x 1 symmetric matrix More... | |
class | JMatrix2D |
2 x 2 matrix More... | |
class | JMatrix2S |
2 x 2 symmetric matrix More... | |
class | JMatrix3D |
3 x 3 matrix More... | |
class | JMatrix3S |
3 x 3 symmetric matrix More... | |
class | JMatrix4D |
4 x 4 matrix More... | |
class | JMatrix4S |
4 x 4 symmetric matrix More... | |
class | JMatrix5D |
5 x 5 matrix More... | |
class | JMatrix5S |
5 x 5 symmetric matrix More... | |
struct | JMatrixND_t |
Basic NxN matrix. More... | |
struct | JMatrixND |
NxN matrix. More... | |
struct | JMatrixNS |
N x N symmetric matrix. More... | |
struct | JModel_t |
Fit model. More... | |
struct | JNumber |
Simple wrapper around template data type to ensure that zero is the default value. More... | |
struct | JPolynome_t |
Polynome model. More... | |
struct | JPolynome |
Polynome function object. More... | |
class | JPower |
Power law function object. More... | |
struct | JRandom |
Template definition of random value generator. More... | |
struct | JRandom< T, true > |
Template spacialisation of JMATH::JRandom for numerical values. More... | |
struct | JRandom< T, false > |
Template spacialisation of JMATH::JRandom for non-numerical data types. More... | |
class | JTrigonometric |
Trigonometric function object for sin and cos . More... | |
struct | JVectorND |
Nx1 matrix. More... | |
struct | JZero |
Auxiliary class to assign zero value. More... | |
Functions | |
template<class T > | |
const JCalculator< T, 1 > & | operator* (const T &first, const T &second) |
Product evaluation of objects. More... | |
template<class T , int N> | |
const JCalculator< T, N+1 > & | operator* (const T &first, const JCalculator< T, N > &second) |
Recursive product evaluation of objects. More... | |
template<class T , int N> | |
const JCalculator< T, N+1 > & | operator* (const JCalculator< T, N > &first, const T &second) |
Recursive product evaluation of objects. More... | |
double | gauss (const double x, const double sigma) |
Gauss function (normalised to 1 at x = 0). More... | |
double | gauss (const double x, const double x0, const double sigma) |
Gauss function (normalised to 1 at x = x0). More... | |
double | Gauss (const double x, const double sigma) |
Normalised Gauss function. More... | |
double | Gauss (const double x, const double x0, const double sigma) |
Normalised Gauss function. More... | |
double | Gamma (const double a, const double x) |
Incomplete gamma function. More... | |
void | randomize (JMatrix1S *p) |
Randomize matrix. More... | |
void | randomize (JMatrix2S *p) |
Randomize matrix. More... | |
void | randomize (JMatrix3S *p) |
Randomize matrix. More... | |
void | randomize (JMatrix4S *p) |
Randomize matrix. More... | |
void | randomize (JMatrix5S *p) |
Randomize matrix. More... | |
long long int | factorial (const long long int n) |
Determine factorial. More... | |
long long int | factorial (const long long int n, const long long int m) |
Determine combinatorics. More... | |
template<class JFirst_t , class JSecond_t > | |
bool | equals (const JFirst_t &first, const JSecond_t &second, const double precision=std::numeric_limits< double >::min()) |
Check equality. More... | |
template<class JFirst_t , class JSecond_t > | |
double | getDistanceSquared (const JFirst_t &first, const JSecond_t &second) |
Get square of distance between objects. More... | |
template<class JFirst_t , class JSecond_t > | |
double | getDistance (const JFirst_t &first, const JSecond_t &second) |
Get distance between objects. More... | |
template<class JFirst_t , class JSecond_t > | |
double | getDot (const JFirst_t &first, const JSecond_t &second) |
Get dot product of objects. More... | |
template<class JFirst_t , class JSecond_t > | |
double | getAngle (const JFirst_t &first, const JSecond_t &second) |
Get space angle between objects. More... | |
template<class JFirst_t , class JSecond_t > | |
double | getPerpDot (const JFirst_t &first, const JSecond_t &second) |
Get perpendicular dot product of objects. More... | |
template<class T > | |
T | interpolate (const T &first, const T &second, const double alpha) |
Interpolation between objects. More... | |
template<class T > | |
std::vector< T > | convolve (const std::vector< T > &in, const std::vector< T > &ker) |
Convolves a vector (in) with another vector (ker). More... | |
template<class T > | |
T | getRandom () |
Get random value. More... | |
template<class T > | |
T | getRandom (const T min, const T max) |
Get uniformly distributed random value between given limits. More... | |
template<class T > | |
T | getRandom (const T min, const T max, const T precision) |
Get uniformly distributed random value between given limits. More... | |
template<> | |
double | getRandom (const double min, const double max, const double precision) |
Template specialisation for data type double . More... | |
template<class T > | |
T | getZero () |
Get zero value for a given data type. More... | |
template<> | |
bool | getZero< bool > () |
Get zero value for bool . More... | |
template<> | |
float | getZero< float > () |
Get zero value for float . More... | |
template<> | |
double | getZero< double > () |
Get zero value for double . More... | |
template<> | |
long double | getZero< long double > () |
Get zero value for long double . More... | |
Variables | |
static const JZero | zero |
Function object to assign zero value. More... | |
Auxiliary classes and methods for mathematical operations.
|
inline |
Product evaluation of objects.
Multiply objects.
first | first object |
second | second object |
Definition at line 53 of file JCalculator.hh.
|
inline |
Recursive product evaluation of objects.
first | first object |
second | second object |
Definition at line 69 of file JCalculator.hh.
|
inline |
Recursive product evaluation of objects.
first | first object |
second | second object |
Definition at line 85 of file JCalculator.hh.
|
inline |
Gauss function (normalised to 1 at x = 0).
x | x |
sigma | sigma |
Definition at line 26 of file JMath/JMathSupportkit.hh.
|
inline |
Gauss function (normalised to 1 at x = x0).
x | x |
x0 | central value |
sigma | sigma |
Definition at line 45 of file JMath/JMathSupportkit.hh.
|
inline |
Normalised Gauss function.
x | x |
sigma | sigma |
Definition at line 58 of file JMath/JMathSupportkit.hh.
|
inline |
Normalised Gauss function.
x | x |
x0 | central value |
sigma | sigma |
Definition at line 72 of file JMath/JMathSupportkit.hh.
|
inline |
Incomplete gamma function.
a | a |
x | x |
Definition at line 85 of file JMath/JMathSupportkit.hh.
|
inline |
Randomize matrix.
p | pointer to valid object |
Definition at line 29 of file JMathTestkit.hh.
|
inline |
Randomize matrix.
p | pointer to valid object |
Definition at line 40 of file JMathTestkit.hh.
|
inline |
Randomize matrix.
p | pointer to valid object |
Definition at line 54 of file JMathTestkit.hh.
|
inline |
Randomize matrix.
p | pointer to valid object |
Definition at line 71 of file JMathTestkit.hh.
|
inline |
Randomize matrix.
p | pointer to valid object |
Definition at line 92 of file JMathTestkit.hh.
|
inline |
Determine factorial.
n | number |
Definition at line 41 of file JMathToolkit.hh.
|
inline |
Determine combinatorics.
n | number |
m | number |
Definition at line 61 of file JMathToolkit.hh.
|
inline |
Check equality.
first | first object |
second | second object |
precision | precision |
Definition at line 85 of file JMathToolkit.hh.
|
inline |
Get square of distance between objects.
first | first object |
second | second object |
Definition at line 101 of file JMathToolkit.hh.
|
inline |
Get distance between objects.
first | first object |
second | second object |
Definition at line 116 of file JMathToolkit.hh.
|
inline |
Get dot product of objects.
first | first object |
second | second object |
Definition at line 131 of file JMathToolkit.hh.
|
inline |
Get space angle between objects.
first | first object |
second | second object |
Definition at line 146 of file JMathToolkit.hh.
|
inline |
Get perpendicular dot product of objects.
first | first object |
second | second object |
Definition at line 168 of file JMathToolkit.hh.
|
inline |
Interpolation between objects.
The result is equal to result = (1 - alpha) x (first) + (alpha) x (second)
.
first | first object |
second | second object |
alpha | interpolation factor (normally between 0 and 1) |
Definition at line 185 of file JMathToolkit.hh.
|
inline |
Convolves a vector (in) with another vector (ker).
in | input vector (data) |
ker | convolution kernel |
Definition at line 200 of file JMathToolkit.hh.
|
inline |
Get uniformly distributed random value between given limits.
min | minimal value |
max | maximal value |
Definition at line 127 of file JRandom.hh.
Get uniformly distributed random value between given limits.
min | minimal value |
max | maximal value |
precision | precision |
Definition at line 143 of file JRandom.hh.
|
inline |
Template specialisation for data type double
.
Definition at line 155 of file JRandom.hh.
|
inline |
Get zero value for a given data type.
The default implementation of this method returns an object which is created with the default constructor. This method should be specialised if this value does not correspond to the equivalent of a zero result.
Definition at line 26 of file JZero.hh.
|
inline |
|
inline |
|
inline |
|
inline |