Jpp
|
Auxiliary classes and methods for mathematical operations. More...
Classes | |
struct | JCalculator |
Auxiliary class for product evaluation of objects. More... | |
class | JGauss |
Data structure for Gaussian function on top of a flat background. 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 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 |
Type definition of a NxN matrix. More... | |
class | JMatrixND |
N x N matrix. More... | |
class | JMatrixNS |
N x N symmetric matrix. More... | |
struct | JNumber |
Simple wrapper around template data type to ensure that zero is the default value. More... | |
class | 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 | JZero |
Auxiliary class to assign zero value. More... | |
Typedefs | |
typedef std::vector< std::pair < int, int > > | JPermutationMatrix |
Type definition of permutation matrix. 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... | |
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 > | |
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 > | |
double | getDot (T __begin, T __end, const JMatrixND &V) |
Determine dot product Y^T x V x Y , where. 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<> | |
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.
typedef std::vector< std::pair<int,int> > JMATH::JPermutationMatrix |
Type definition of permutation matrix.
Definition at line 57 of file JMatrixND.hh.
|
inline |
Product evaluation of objects.
Multiply objects.
first | first object |
second | second object |
Definition at line 40 of file JCalculator.hh.
|
inline |
Recursive product evaluation of objects.
first | first object |
second | second object |
Definition at line 56 of file JCalculator.hh.
|
inline |
Recursive product evaluation of objects.
first | first object |
second | second object |
Definition at line 72 of file JCalculator.hh.
|
inline |
Determine factorial.
n | number |
Definition at line 40 of file JMathToolkit.hh.
|
inline |
Determine combinatorics.
n | number |
m | number |
Definition at line 60 of file JMathToolkit.hh.
|
inline |
Get square of distance between objects.
first | first object |
second | second object |
Definition at line 83 of file JMathToolkit.hh.
|
inline |
Get distance between objects.
first | first object |
second | second object |
Definition at line 98 of file JMathToolkit.hh.
|
inline |
Get dot product of objects.
first | first object |
second | second object |
Definition at line 113 of file JMathToolkit.hh.
|
inline |
Get space angle between objects.
first | first object |
second | second object |
Definition at line 128 of file JMathToolkit.hh.
|
inline |
Get perpendicular dot product of objects.
first | first object |
second | second object |
Definition at line 150 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 167 of file JMathToolkit.hh.
|
inline |
Determine dot product Y^T x V x Y
, where.
Y
is a 1xN
matrix; andV
is a NxN
matrix.__begin | begin of data |
__end | end of data |
V | matrix |
Definition at line 647 of file JMatrixND.hh.
|
inline |
|
inline |
Get uniformly distributed random value between given limits.
min | minimal value |
max | maximal value |
Definition at line 127 of file JRandom.hh.
|
inline |
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.
|
inline |
|
inline |
|
inline |