Function Description
KML_MATH is a basic math function library implemented by the C language.
The calculation result of the high-performance version is benchmarked against the open-source math library MPFR, and the calculation result of the high-precision version is benchmarked against the x86 math library.
Function Class |
Function |
Description |
High Performance |
High Precision |
|---|---|---|---|---|
Trigonometric functions
|
sin |
Sine function |
Single-precision/double-precision real number Single-precision/double-precision complex number |
Single-precision/double-precision real number |
cos |
Cosine function |
Single-precision/double-precision real number Single-precision/double-precision complex number |
Single-precision/double-precision real number |
|
sincos |
Sine and cosine function |
Single-precision/double-precision real number |
None |
|
tan |
Tangent function |
Single-precision/double-precision real number Single-precision/double-precision complex number |
Single-precision/double-precision real number |
|
asin |
Arc sine function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
asind |
Arc sine function (the input parameter is an angle) |
None |
Single-precision real number |
|
acos |
Arc cosine function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
atan |
Arc tangent function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
atan2 |
Arc tangent function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
cosd |
Cosine function (the input parameter is an angle) |
None |
Single-precision real number |
|
Hyperbolic functions
|
sinh |
Hyperbolic sine function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
cosh |
Hyperbolic cosine function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
tanh |
Hyperbolic tangent function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
asinh |
Inverse hyperbolic sine function |
Single-precision/double-precision real number |
None |
|
acosh |
Inverse hyperbolic cosine function |
Single-precision/double-precision real number |
None |
|
atanh |
Inverse hyperbolic tangent function |
Single-precision/double-precision real number |
None |
|
Exponential and logarithmic functions
|
exp |
Exponential function (base e) |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
exp2 |
Exponential function (base 2) |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
log |
Logarithmic function (base e) |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
log2 |
Logarithm function (base 2) |
Single-precision/double-precision real number |
None |
|
log10 |
Logarithmic function (base 10) |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
Power and root functions |
pow |
Power function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
powr8i4 |
Power function (80-bit precision) |
None |
Dual-precision real number |
|
sqrt |
Square root function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
cbrt |
Cubic root function |
Single-precision/double-precision real number |
Single-precision/double-precision real number |
|
Miscellaneous functions |
fmod |
Performs the modulo operation on two floating-point vectors. |
None |
Single-precision real number |
tgamma |
Gamma function |
Single-precision real number |
Single-precision real number |