Math functions. More...
Functions | |
| static double | ceilDecimal (double x, int decPow) |
rounds x up to the next decimal power 10 ^ decPow | |
| static double | roundDecimal (double x, int decPow) |
rounds x to the next decimal power 10 ^ decPow | |
| static double | intervalTransformation (double x, double left1, double right1, double left2, double right2) |
transforms point x of interval [left1,right1] into interval [left2,right2] | |
| double | linear2log (double x) |
| Transforms a number from linear to log10 scale. Avoids negative logarithms by adding 1. | |
| double | log2linear (double x) |
| Transforms a number from log10 to to linear scale. Subtracts the 1 added by linear2log(double). | |
| bool | isOdd (UInt x) |
| Returns true if the given interger is odd. | |
| template<typename T > | |
| T | round (T x) |
| Rounds the value. | |
| static bool | approximatelyEqual (DoubleReal a, DoubleReal b, DoubleReal tol) |
Returns if a is approximately equal b , allowing a tolerance of tol. | |
| template<typename T > | |
| T | gcd (T a, T b) |
| Returns the greatest common divisor (gcd) of two numbers by applying the Euclidean algorithm. | |
| template<typename T > | |
| T | gcd (T a, T b, T &u1, T &u2) |
| Returns the greatest common divisor by applying the extended Euclidean algorithm (Knuth TAoCP vol. 2, p342). Calculates u1, u2 and u3 (which is returned) so that a * u1 + b * u2 = u3 = gcd(a, b, u1, u2). | |
Math functions.
These functions are defined in OpenMS/MATH/MISC/MathFunctions.h .
| static bool OpenMS::Math::approximatelyEqual | ( | DoubleReal | a, | |
| DoubleReal | b, | |||
| DoubleReal | tol | |||
| ) | [inline, static] |
Returns if a is approximately equal b , allowing a tolerance of tol.
rounds x up to the next decimal power 10 ^ decPow
e.g.: (123.0 , 1) => 130
(123.0 , 2) => 200
(0.123 ,-2) => 0.13 ( 10^-2 = 0.01 )
| T OpenMS::Math::gcd | ( | T | a, | |
| T | b | |||
| ) |
Returns the greatest common divisor (gcd) of two numbers by applying the Euclidean algorithm.
| a | A number. | |
| b | A number. |
References OpenMS::Constants::c.
Referenced by IntegerMassDecomposer< ValueType, DecompositionValueType >::fillExtendedResidueTable_().
| T OpenMS::Math::gcd | ( | T | a, | |
| T | b, | |||
| T & | u1, | |||
| T & | u2 | |||
| ) |
Returns the greatest common divisor by applying the extended Euclidean algorithm (Knuth TAoCP vol. 2, p342). Calculates u1, u2 and u3 (which is returned) so that a * u1 + b * u2 = u3 = gcd(a, b, u1, u2).
| a | A number. | |
| b | A number. | |
| u1 | A reference to the number to be returned (see the above formula). | |
| u2 | A reference to the number to be returned (see the above formula). |
| static double OpenMS::Math::intervalTransformation | ( | double | x, | |
| double | left1, | |||
| double | right1, | |||
| double | left2, | |||
| double | right2 | |||
| ) | [inline, static] |
transforms point x of interval [left1,right1] into interval [left2,right2]
| bool OpenMS::Math::isOdd | ( | UInt | x | ) | [inline] |
Returns true if the given interger is odd.
Referenced by MorphologicalFilter::filter(), and FeatureFinderAlgorithmPicked< PeakType, FeatureType >::intensityScore_().
Transforms a number from linear to log10 scale. Avoids negative logarithms by adding 1.
| x | The number to transform |
Transforms a number from log10 to to linear scale. Subtracts the 1 added by linear2log(double).
| x | The number to transform |
| T OpenMS::Math::round | ( | T | x | ) |
Rounds the value.
Referenced by ContinuousWaveletTransformNumIntegration::integrate_().
| OpenMS / TOPP release 1.10.0 | Documentation generated on Thu Mar 7 2013 09:42:48 using doxygen 1.7.1 |