1.3. Double Precision Mathematical Functions
This section describes double precision mathematical functions.
Functions
- __device__ double acos ( double x )
- Calculate the arc cosine of the input argument.
- __device__ double acosh ( double x )
- Calculate the nonnegative arc hyperbolic cosine of the input argument.
- __device__ double asin ( double x )
- Calculate the arc sine of the input argument.
- __device__ double asinh ( double x )
- Calculate the arc hyperbolic sine of the input argument.
- __device__ double atan ( double x )
- Calculate the arc tangent of the input argument.
- __device__ double atan2 ( double x, double y )
- Calculate the arc tangent of the ratio of first and second input arguments.
- __device__ double atanh ( double x )
- Calculate the arc hyperbolic tangent of the input argument.
- __device__ double cbrt ( double x )
- Calculate the cube root of the input argument.
- __device__ double ceil ( double x )
- Calculate ceiling of the input argument.
- __device__ double copysign ( double x, double y )
- Create value with given magnitude, copying sign of second value.
- __device__ double cos ( double x )
- Calculate the cosine of the input argument.
- __device__ double cosh ( double x )
- Calculate the hyperbolic cosine of the input argument.
- __device__ double cospi ( double x )
- Calculate the cosine of the input argument .
- __device__ double erf ( double x )
- Calculate the error function of the input argument.
- __device__ double erfc ( double x )
- Calculate the complementary error function of the input argument.
- __device__ double erfcinv ( double y )
- Calculate the inverse complementary error function of the input argument.
- __device__ double erfcx ( double x )
- Calculate the scaled complementary error function of the input argument.
- __device__ double erfinv ( double y )
- Calculate the inverse error function of the input argument.
- __device__ double exp ( double x )
- Calculate the base exponential of the input argument.
- __device__ double exp10 ( double x )
- Calculate the base 10 exponential of the input argument.
- __device__ double exp2 ( double x )
- Calculate the base 2 exponential of the input argument.
- __device__ double expm1 ( double x )
- Calculate the base exponential of the input argument, minus 1.
- __device__ double fabs ( double x )
- Calculate the absolute value of the input argument.
- __device__ double fdim ( double x, double y )
- Compute the positive difference between x and y.
- __device__ double floor ( double x )
- Calculate the largest integer less than or equal to x.
- __device__ double fma ( double x, double y, double z )
- Compute as a single operation.
- __device__ double fmax ( double , double )
- Determine the maximum numeric value of the arguments.
- __device__ double fmin ( double x, double y )
- Determine the minimum numeric value of the arguments.
- __device__ double fmod ( double x, double y )
- Calculate the floating-point remainder of x / y.
- __device__ double frexp ( double x, int* nptr )
- Extract mantissa and exponent of a floating-point value.
- __device__ double hypot ( double x, double y )
- Calculate the square root of the sum of squares of two arguments.
- __device__ int ilogb ( double x )
- Compute the unbiased integer exponent of the argument.
- __device__ int isfinite ( double a )
- Determine whether argument is finite.
- __device__ int isinf ( double a )
- Determine whether argument is infinite.
- __device__ int isnan ( double a )
- Determine whether argument is a NaN.
- __device__ double j0 ( double x )
- Calculate the value of the Bessel function of the first kind of order 0 for the input argument.
- __device__ double j1 ( double x )
- Calculate the value of the Bessel function of the first kind of order 1 for the input argument.
- __device__ double jn ( int n, double x )
- Calculate the value of the Bessel function of the first kind of order n for the input argument.
- __device__ double ldexp ( double x, int exp )
- Calculate the value of .
- __device__ double lgamma ( double x )
- Calculate the natural logarithm of the absolute value of the gamma function of the input argument.
- __device__ long long int llrint ( double x )
- Round input to nearest integer value.
- __device__ long long int llround ( double x )
- Round to nearest integer value.
- __device__ double log ( double x )
- Calculate the base logarithm of the input argument.
- __device__ double log10 ( double x )
- Calculate the base 10 logarithm of the input argument.
- __device__ double log1p ( double x )
- Calculate the value of .
- __device__ double log2 ( double x )
- Calculate the base 2 logarithm of the input argument.
- __device__ double logb ( double x )
- Calculate the floating point representation of the exponent of the input argument.
- __device__ long int lrint ( double x )
- Round input to nearest integer value.
- __device__ long int lround ( double x )
- Round to nearest integer value.
- __device__ double modf ( double x, double* iptr )
- Break down the input argument into fractional and integral parts.
- __device__ double nan ( const char* tagp )
- Returns "Not a Number" value.
- __device__ double nearbyint ( double x )
- Round the input argument to the nearest integer.
- __device__ double nextafter ( double x, double y )
- Return next representable double-precision floating-point value after argument.
- __device__ double normcdf ( double y )
- Calculate the standard normal cumulative distribution function.
- __device__ double normcdfinv ( double y )
- Calculate the inverse of the standard normal cumulative distribution function.
- __device__ double pow ( double x, double y )
- Calculate the value of first argument to the power of second argument.
- __device__ double rcbrt ( double x )
- Calculate reciprocal cube root function.
- __device__ double remainder ( double x, double y )
- Compute double-precision floating-point remainder.
- __device__ double remquo ( double x, double y, int* quo )
- Compute double-precision floating-point remainder and part of quotient.
- __device__ double rint ( double x )
- Round to nearest integer value in floating-point.
- __device__ double round ( double x )
- Round to nearest integer value in floating-point.
- __device__ double rsqrt ( double x )
- Calculate the reciprocal of the square root of the input argument.
- __device__ double scalbln ( double x, long int n )
- Scale floating-point input by integer power of two.
- __device__ double scalbn ( double x, int n )
- Scale floating-point input by integer power of two.
- __device__ int signbit ( double a )
- Return the sign bit of the input.
- __device__ double sin ( double x )
- Calculate the sine of the input argument.
- __device__ void sincos ( double x, double* sptr, double* cptr )
- Calculate the sine and cosine of the first input argument.
- __device__ void sincospi ( double x, double* sptr, double* cptr )
- Calculate the sine and cosine of the first input argument .
- __device__ double sinh ( double x )
- Calculate the hyperbolic sine of the input argument.
- __device__ double sinpi ( double x )
- Calculate the sine of the input argument .
- __device__ double sqrt ( double x )
- Calculate the square root of the input argument.
- __device__ double tan ( double x )
- Calculate the tangent of the input argument.
- __device__ double tanh ( double x )
- Calculate the hyperbolic tangent of the input argument.
- __device__ double tgamma ( double x )
- Calculate the gamma function of the input argument.
- __device__ double trunc ( double x )
- Truncate input argument to the integral part.
- __device__ double y0 ( double x )
- Calculate the value of the Bessel function of the second kind of order 0 for the input argument.
- __device__ double y1 ( double x )
- Calculate the value of the Bessel function of the second kind of order 1 for the input argument.
- __device__ double yn ( int n, double x )
- Calculate the value of the Bessel function of the second kind of order n for the input argument.
Functions
- __device__ double acos ( double x )
-
Calculate the arc cosine of the input argument.
Returns
Result will be in radians, in the interval [0, ] for x inside [-1, +1].
- acos(1) returns +0.
- acos(x) returns NaN for x outside [-1, +1].
Description
Calculate the principal value of the arc cosine of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double acosh ( double x )
-
Calculate the nonnegative arc hyperbolic cosine of the input argument.
Returns
Result will be in the interval [0, ].
- acosh(1) returns 0.
- acosh(x) returns NaN for x in the interval [ , 1).
Description
Calculate the nonnegative arc hyperbolic cosine of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double asin ( double x )
-
Calculate the arc sine of the input argument.
Returns
Result will be in radians, in the interval [- /2, + /2] for x inside [-1, +1].
- asin(0) returns +0.
- asin(x) returns NaN for x outside [-1, +1].
Description
Calculate the principal value of the arc sine of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double asinh ( double x )
-
Calculate the arc hyperbolic sine of the input argument.
Returns
- asinh(0) returns 1.
Description
Calculate the arc hyperbolic sine of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double atan ( double x )
-
Calculate the arc tangent of the input argument.
Returns
Result will be in radians, in the interval [- /2, + /2].
- atan(0) returns +0.
Description
Calculate the principal value of the arc tangent of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double atan2 ( double x, double y )
-
Calculate the arc tangent of the ratio of first and second input arguments.
Returns
Result will be in radians, in the interval [- /, + ].
- atan2(0, 1) returns +0.
Description
Calculate the principal value of the arc tangent of the ratio of first and second input arguments x / y. The quadrant of the result is determined by the signs of inputs x and y.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double atanh ( double x )
-
Calculate the arc hyperbolic tangent of the input argument.
Returns
- atanh( ) returns .
- atanh( ) returns .
- atanh(x) returns NaN for x outside interval [-1, 1].
Description
Calculate the arc hyperbolic tangent of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double cbrt ( double x )
-
Calculate the cube root of the input argument.
Returns
Returns .
- cbrt( ) returns .
- cbrt( ) returns .
Description
Calculate the cube root of x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double ceil ( double x )
-
Calculate ceiling of the input argument.
Returns
Returns expressed as a floating-point number.
- ceil( ) returns .
- ceil( ) returns .
Description
Compute the smallest integer value not less than x.
- __device__ double copysign ( double x, double y )
-
Create value with given magnitude, copying sign of second value.
Returns
Returns a value with the magnitude of x and the sign of y.
Description
Create a floating-point value with the magnitude x and the sign of y.
- __device__ double cos ( double x )
-
Calculate the cosine of the input argument.
Returns
- cos( ) returns 1.
- cos( ) returns NaN.
Description
Calculate the cosine of the input argument x (measured in radians).
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double cosh ( double x )
-
Calculate the hyperbolic cosine of the input argument.
Returns
- cosh(0) returns 1.
- cosh( ) returns .
Description
Calculate the hyperbolic cosine of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double cospi ( double x )
-
Calculate the cosine of the input argument .
Returns
- cospi( ) returns 1.
- cospi( ) returns NaN.
Description
Calculate the cosine of x (measured in radians), where x is the input argument.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double erf ( double x )
-
Calculate the error function of the input argument.
Returns
- erf( ) returns .
- erf( ) returns .
Description
Calculate the value of the error function for the input argument x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double erfc ( double x )
-
Calculate the complementary error function of the input argument.
Returns
- erfc( ) returns 2.
- erfc( ) returns +0.
Description
Calculate the complementary error function of the input argument x, 1 - erf(x).
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double erfcinv ( double y )
-
Calculate the inverse complementary error function of the input argument.
Returns
- erfcinv(0) returns .
- erfcinv(2) returns .
Description
Calculate the inverse complementary error function of the input argument y, for y in the interval [0, 2]. The inverse complementary error function find the value x that satisfies the equation y = erfc(x), for , and .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double erfcx ( double x )
-
Calculate the scaled complementary error function of the input argument.
Returns
- erfcx( ) returns
- erfcx( ) returns +0
- erfcx(x) returns if the correctly calculated value is outside the double floating point range.
Description
Calculate the scaled complementary error function of the input argument x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double erfinv ( double y )
-
Calculate the inverse error function of the input argument.
Returns
- erfinv(1) returns .
- erfinv(-1) returns .
Description
Calculate the inverse error function of the input argument y, for y in the interval [-1, 1]. The inverse error function finds the value x that satisfies the equation y = erf(x), for , and .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double exp ( double x )
-
Calculate the base exponential of the input argument.
Returns
Returns .
Description
Calculate the base exponential of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double exp10 ( double x )
-
Calculate the base 10 exponential of the input argument.
Returns
Returns .
Description
Calculate the base 10 exponential of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double exp2 ( double x )
-
Calculate the base 2 exponential of the input argument.
Returns
Returns .
Description
Calculate the base 2 exponential of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double expm1 ( double x )
-
Calculate the base exponential of the input argument, minus 1.
Returns
Returns .
Description
Calculate the base exponential of the input argument x, minus 1.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double fabs ( double x )
-
Calculate the absolute value of the input argument.
Returns
Returns the absolute value of the input argument.
- fabs( ) returns .
- fabs( ) returns 0.
Description
Calculate the absolute value of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double fdim ( double x, double y )
-
Compute the positive difference between x and y.
Returns
Returns the positive difference between x and y.
- fdim(x, y) returns x - y if x > y.
- fdim(x, y) returns +0 if xy.
Description
Compute the positive difference between x and y. The positive difference is x - y when x > y and +0 otherwise.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-1.
- __device__ double floor ( double x )
-
Calculate the largest integer less than or equal to x.
Returns
Returns expressed as a floating-point number.
- floor( ) returns .
- floor( ) returns .
Description
Calculates the largest integer value which is less than or equal to x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double fma ( double x, double y, double z )
-
Compute as a single operation.
Returns
Returns the rounded value of as a single operation.
- fma( , , z) returns NaN.
- fma( , , z) returns NaN.
- fma(x, y, ) returns NaN if is an exact .
- fma(x, y, ) returns NaN if is an exact .
Description
Compute the value of as a single ternary operation. After computing the value to infinite precision, the value is rounded once.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double fmax ( double , double )
-
Determine the maximum numeric value of the arguments.
Returns
Returns the maximum numeric values of the arguments x and y.
- If both arguments are NaN, returns NaN.
- If one argument is NaN, returns the numeric argument.
Description
Determines the maximum numeric value of the arguments x and y. Treats NaN arguments as missing data. If one argument is a NaN and the other is legitimate numeric value, the numeric value is chosen.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double fmin ( double x, double y )
-
Determine the minimum numeric value of the arguments.
Returns
Returns the minimum numeric values of the arguments x and y.
- If both arguments are NaN, returns NaN.
- If one argument is NaN, returns the numeric argument.
Description
Determines the minimum numeric value of the arguments x and y. Treats NaN arguments as missing data. If one argument is a NaN and the other is legitimate numeric value, the numeric value is chosen.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double fmod ( double x, double y )
-
Calculate the floating-point remainder of x / y.
Returns
- Returns the floating point remainder of x / y.
- fmod( , y) returns if y is not zero.
- fmod(x, y) returns NaN and raised an invalid floating point exception if x is or y is zero.
- fmod(x, y) returns zero if y is zero or the result would overflow.
- fmod(x, ) returns x if x is finite.
- fmod(x, 0) returns NaN.
Description
Calculate the floating-point remainder of x / y. The absolute value of the computed value is always less than y's absolute value and will have the same sign as x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double frexp ( double x, int* nptr )
-
Extract mantissa and exponent of a floating-point value.
Returns
Returns the fractional component m.
- frexp(0, nptr) returns 0 for the fractional component and zero for the integer component.
- frexp( , nptr) returns and stores zero in the location pointed to by nptr.
- frexp( , nptr) returns and stores an unspecified value in the location to which nptr points.
- frexp(NaN, y) returns a NaN and stores an unspecified value in the location to which nptr points.
Description
Decompose the floating-point value x into a component m for the normalized fraction element and another term n for the exponent. The absolute value of m will be greater than or equal to 0.5 and less than 1.0 or it will be equal to 0; . The integer exponent n will be stored in the location to which nptr points.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double hypot ( double x, double y )
-
Calculate the square root of the sum of squares of two arguments.
Returns
Returns the length of the hypotenuse . If the correct value would overflow, returns . If the correct value would underflow, returns 0.
Description
Calculate the length of the hypotenuse of a right triangle whose two sides have lengths x and y without undue overflow or underflow.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ int ilogb ( double x )
-
Compute the unbiased integer exponent of the argument.
Returns
- If successful, returns the unbiased exponent of the argument.
- ilogb(0) returns INT_MIN.
- ilogb(NaN) returns NaN.
- ilogb(x) returns INT_MAX if x is or the correct value is greater than INT_MAX.
- ilogb(x) return INT_MIN if the correct value is less than INT_MIN.
Description
Calculates the unbiased integer exponent of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ int isfinite ( double a )
-
Determine whether argument is finite.
Returns
Returns a nonzero value if and only if a is a finite value.
Description
Determine whether the floating-point value a is a finite value (zero, subnormal, or normal and not infinity or NaN).
- __device__ int isinf ( double a )
-
Determine whether argument is infinite.
Returns
Returns a nonzero value if and only if a is a infinite value.
Description
Determine whether the floating-point value a is an infinite value (positive or negative).
- __device__ int isnan ( double a )
-
Determine whether argument is a NaN.
Returns
Returns a nonzero value if and only if a is a NaN value.
Description
Determine whether the floating-point value a is a NaN.
- __device__ double j0 ( double x )
-
Calculate the value of the Bessel function of the first kind of order 0 for the input argument.
Returns
Returns the value of the Bessel function of the first kind of order 0.
- j0( ) returns +0.
- j0(NaN) returns NaN.
Description
Calculate the value of the Bessel function of the first kind of order 0 for the input argument x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double j1 ( double x )
-
Calculate the value of the Bessel function of the first kind of order 1 for the input argument.
Returns
Returns the value of the Bessel function of the first kind of order 1.
- j1( ) returns .
- j1( ) returns +0.
- j1(NaN) returns NaN.
Description
Calculate the value of the Bessel function of the first kind of order 1 for the input argument x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double jn ( int n, double x )
-
Calculate the value of the Bessel function of the first kind of order n for the input argument.
Returns
Returns the value of the Bessel function of the first kind of order n.
- jn(n, NaN) returns NaN.
- jn(n, x) returns NaN for n < 0.
- jn(n, ) returns +0.
Description
Calculate the value of the Bessel function of the first kind of order n for the input argument x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double ldexp ( double x, int exp )
-
Calculate the value of .
Returns
- ldexp(x) returns if the correctly calculated value is outside the double floating point range.
Description
Calculate the value of of the input arguments x and exp.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double lgamma ( double x )
-
Calculate the natural logarithm of the absolute value of the gamma function of the input argument.
Returns
- lgamma(1) returns +0.
- lgamma(2) returns +0.
- lgamma(x) returns if the correctly calculated value is outside the double floating point range.
- lgamma(x) returns if x 0.
- lgamma( ) returns .
- lgamma( ) returns .
Description
Calculate the natural logarithm of the absolute value of the gamma function of the input argument x, namely the value of
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ long long int llrint ( double x )
-
Round input to nearest integer value.
Returns
Returns rounded integer value.
Description
Round x to the nearest integer value, with halfway cases rounded towards zero. If the result is outside the range of the return type, the result is undefined.
- __device__ long long int llround ( double x )
-
Round to nearest integer value.
Returns
Returns rounded integer value.
Description
Round x to the nearest integer value, with halfway cases rounded away from zero. If the result is outside the range of the return type, the result is undefined.
Note:This function may be slower than alternate rounding methods. See llrint().
- __device__ double log ( double x )
-
Calculate the base logarithm of the input argument.
Returns
- log( ) returns .
- log(1) returns +0.
- log(x) returns NaN for x < 0.
- log( ) returns
Description
Calculate the base logarithm of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double log10 ( double x )
-
Calculate the base 10 logarithm of the input argument.
Returns
- log10( ) returns .
- log10(1) returns +0.
- log10(x) returns NaN for x < 0.
- log10( ) returns .
Description
Calculate the base 10 logarithm of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double log1p ( double x )
-
Calculate the value of .
Returns
- log1p( ) returns .
- log1p(-1) returns +0.
- log1p(x) returns NaN for x < -1.
- log1p( ) returns .
Description
Calculate the value of of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double log2 ( double x )
-
Calculate the base 2 logarithm of the input argument.
Returns
- log2( ) returns .
- log2(1) returns +0.
- log2(x) returns NaN for x < 0.
- log2( ) returns .
Description
Calculate the base 2 logarithm of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double logb ( double x )
-
Calculate the floating point representation of the exponent of the input argument.
Returns
- logb returns
- logb returns
Description
Calculate the floating point representation of the exponent of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ long int lrint ( double x )
-
Round input to nearest integer value.
Returns
Returns rounded integer value.
Description
Round x to the nearest integer value, with halfway cases rounded towards zero. If the result is outside the range of the return type, the result is undefined.
- __device__ long int lround ( double x )
-
Round to nearest integer value.
Returns
Returns rounded integer value.
Description
Round x to the nearest integer value, with halfway cases rounded away from zero. If the result is outside the range of the return type, the result is undefined.
Note:This function may be slower than alternate rounding methods. See lrint().
- __device__ double modf ( double x, double* iptr )
-
Break down the input argument into fractional and integral parts.
Returns
- modf( , iptr) returns a result with the same sign as x.
- modf( , iptr) returns and stores in the object pointed to by iptr.
- modf(NaN, iptr) stores a NaN in the object pointed to by iptr and returns a NaN.
Description
Break down the argument x into fractional and integral parts. The integral part is stored in the argument iptr. Fractional and integral parts are given the same sign as the argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double nan ( const char* tagp )
-
Returns "Not a Number" value.
Returns
- nan(tagp) returns NaN.
Description
Return a representation of a quiet NaN. Argument tagp selects one of the possible representations.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double nearbyint ( double x )
-
Round the input argument to the nearest integer.
Returns
- nearbyint( ) returns .
- nearbyint( ) returns .
Description
Round argument x to an integer value in double precision floating-point format.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double nextafter ( double x, double y )
-
Return next representable double-precision floating-point value after argument.
Returns
- nextafter( , y) returns .
Description
Calculate the next representable double-precision floating-point value following x in the direction of y. For example, if y is greater than x, nextafter() returns the smallest representable number greater than x
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double normcdf ( double y )
-
Calculate the standard normal cumulative distribution function.
Returns
- normcdf( ) returns 1
- normcdf( ) returns +0
Description
Calculate the cumulative distribution function of the standard normal distribution for input argument y, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double normcdfinv ( double y )
-
Calculate the inverse of the standard normal cumulative distribution function.
Returns
- normcdfinv(0) returns .
- normcdfinv(1) returns .
- normcdfinv(x) returns NaN if x is not in the interval [0,1].
Description
Calculate the inverse of the standard normal cumulative distribution function for input argument y, . The function is defined for input values in the interval .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double pow ( double x, double y )
-
Calculate the value of first argument to the power of second argument.
Returns
- pow( , y) returns for y an integer less than 0.
- pow( , y) returns for y an odd integer greater than 0.
- pow( , y) returns +0 for y > 0 and not and odd integer.
- pow(-1, ) returns 1.
- pow(+1, y) returns 1 for any y, even a NaN.
- pow(x, ) returns 1 for any x, even a NaN.
- pow(x, y) returns a NaN for finite x < 0 and finite non-integer y.
- pow(x, ) returns for .
- pow(x, ) returns +0 for .
- pow(x, ) returns +0 for .
- pow(x, ) returns for .
- pow( , y) returns -0 for y an odd integer less than 0.
- pow( , y) returns +0 for y < 0 and not an odd integer.
- pow( , y) returns for y an odd integer greater than 0.
- pow( , y) returns for y > 0 and not an odd integer.
- pow( , y) returns +0 for y < 0.
- pow( , y) returns for y > 0.
Description
Calculate the value of x to the power of y
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double rcbrt ( double x )
-
Calculate reciprocal cube root function.
Returns
- rcbrt( ) returns .
- rcbrt( ) returns .
Description
Calculate reciprocal cube root function of x
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double remainder ( double x, double y )
-
Compute double-precision floating-point remainder.
Returns
- remainder(x, 0) returns NaN.
- remainder( , y) returns NaN.
- remainder(x, ) returns x for finite x.
Description
Compute double-precision floating-point remainder r of dividing x by y for nonzero y. Thus . The value n is the integer value nearest . In the case when , the even n value is chosen.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double remquo ( double x, double y, int* quo )
-
Compute double-precision floating-point remainder and part of quotient.
Returns
Returns the remainder.
- remquo(x, 0, quo) returns NaN.
- remquo( , y, quo) returns NaN.
- remquo(x, , quo) returns x.
Description
Compute a double-precision floating-point remainder in the same way as the remainder() function. Argument quo returns part of quotient upon division of x by y. Value quo has the same sign as and may not be the exact quotient but agrees with the exact quotient in the low order 3 bits.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double rint ( double x )
-
Round to nearest integer value in floating-point.
Returns
Returns rounded integer value.
Description
Round x to the nearest integer value in floating-point format, with halfway cases rounded to the nearest even integer value.
- __device__ double round ( double x )
-
Round to nearest integer value in floating-point.
Returns
Returns rounded integer value.
Description
Round x to the nearest integer value in floating-point format, with halfway cases rounded away from zero.
Note:This function may be slower than alternate rounding methods. See rint().
- __device__ double rsqrt ( double x )
-
Calculate the reciprocal of the square root of the input argument.
Returns
Returns .
- rsqrt( ) returns +0.
- rsqrt( ) returns .
- rsqrt(x) returns NaN if x is less than 0.
Description
Calculate the reciprocal of the nonnegative square root of x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double scalbln ( double x, long int n )
-
Scale floating-point input by integer power of two.
Returns
Returns x * .
- scalbln( , n) returns .
- scalbln(x, 0) returns x.
- scalbln( , n) returns .
Description
Scale x by by efficient manipulation of the floating-point exponent.
- __device__ double scalbn ( double x, int n )
-
Scale floating-point input by integer power of two.
Returns
Returns x * .
- scalbn( , n) returns .
- scalbn(x, 0) returns x.
- scalbn( , n) returns .
Description
Scale x by by efficient manipulation of the floating-point exponent.
- __device__ int signbit ( double a )
-
Return the sign bit of the input.
Returns
Returns a nonzero value if and only if a is negative. Reports the sign bit of all values including infinities, zeros, and NaNs.
Description
Determine whether the floating-point value a is negative.
- __device__ double sin ( double x )
-
Calculate the sine of the input argument.
Returns
- sin( ) returns .
- sin( ) returns NaN.
Description
Calculate the sine of the input argument x (measured in radians).
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ void sincos ( double x, double* sptr, double* cptr )
-
Calculate the sine and cosine of the first input argument.
Returns
- none
Description
Calculate the sine and cosine of the first input argument x (measured in radians). The results for sine and cosine are written into the second argument, sptr, and, respectively, third argument, cptr.
See also:
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ void sincospi ( double x, double* sptr, double* cptr )
-
Calculate the sine and cosine of the first input argument .
Returns
- none
Description
Calculate the sine and cosine of the first input argument, x (measured in radians), . The results for sine and cosine are written into the second argument, sptr, and, respectively, third argument, cptr.
See also:
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double sinh ( double x )
-
Calculate the hyperbolic sine of the input argument.
Returns
- sinh( ) returns .
Description
Calculate the hyperbolic sine of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double sinpi ( double x )
-
Calculate the sine of the input argument .
Returns
- sinpi( ) returns .
- sinpi( ) returns NaN.
Description
Calculate the sine of x (measured in radians), where x is the input argument.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double sqrt ( double x )
-
Calculate the square root of the input argument.
Returns
Returns .
- sqrt( ) returns .
- sqrt( ) returns .
- sqrt(x) returns NaN if x is less than 0.
Description
Calculate the nonnegative square root of x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double tan ( double x )
-
Calculate the tangent of the input argument.
Returns
- tan( ) returns .
- tan( ) returns NaN.
Description
Calculate the tangent of the input argument x (measured in radians).
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double tanh ( double x )
-
Calculate the hyperbolic tangent of the input argument.
Returns
- tanh( ) returns .
Description
Calculate the hyperbolic tangent of the input argument x.
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double tgamma ( double x )
-
Calculate the gamma function of the input argument.
Returns
- tgamma( ) returns .
- tgamma(2) returns +0.
- tgamma(x) returns if the correctly calculated value is outside the double floating point range.
- tgamma(x) returns NaN if x < 0.
- tgamma( ) returns NaN.
- tgamma( ) returns .
Description
Calculate the gamma function of the input argument x, namely the value of .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double trunc ( double x )
-
Truncate input argument to the integral part.
Returns
Returns truncated integer value.
Description
Round x to the nearest integer value that does not exceed x in magnitude.
- __device__ double y0 ( double x )
-
Calculate the value of the Bessel function of the second kind of order 0 for the input argument.
Returns
Returns the value of the Bessel function of the second kind of order 0.
- y0(0) returns .
- y0(x) returns NaN for x < 0.
- y0( ) returns +0.
- y0(NaN) returns NaN.
Description
Calculate the value of the Bessel function of the second kind of order 0 for the input argument x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double y1 ( double x )
-
Calculate the value of the Bessel function of the second kind of order 1 for the input argument.
Returns
Returns the value of the Bessel function of the second kind of order 1.
- y1(0) returns .
- y1(x) returns NaN for x < 0.
- y1( ) returns +0.
- y1(NaN) returns NaN.
Description
Calculate the value of the Bessel function of the second kind of order 1 for the input argument x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.
- __device__ double yn ( int n, double x )
-
Calculate the value of the Bessel function of the second kind of order n for the input argument.
Returns
Returns the value of the Bessel function of the second kind of order n.
- yn(n, x) returns NaN for n < 0.
- yn(n, 0) returns .
- yn(n, x) returns NaN for x < 0.
- yn(n, ) returns +0.
- yn(n, NaN) returns NaN.
Description
Calculate the value of the Bessel function of the second kind of order n for the input argument x, .
Note:For accuracy information for this function see the CUDA C Programming Guide, Appendix C, Table C-2.