diff --git a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/README.md b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/README.md index 5362f5478460..80b668ab68c1 100644 --- a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/README.md +++ b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/README.md @@ -178,6 +178,7 @@ console.log( v ); ```c #include "stdlib/stats/strided/dnanmidrange.h" +#include "stdlib/constants/float64/nan.h" ``` #### stdlib_strided_dnanmidrange( N, \*X, strideX ) @@ -185,7 +186,7 @@ console.log( v ); Computes the [mid-range][mid-range] of a double-precision floating-point strided array, ignoring `NaN` values. ```c -const double x[] = { 1.0, 0.0/0.0, 3.0, -4.0 }; +const double x[] = { 1.0, STDLIB_CONSTANT_FLOAT64_NAN, 3.0, -4.0 }; double v = stdlib_strided_dnanmidrange( 4, x, 1 ); // returns -0.5 @@ -206,7 +207,7 @@ double stdlib_strided_dnanmidrange( const CBLAS_INT N, const double *X, const CB Computes the [mid-range][mid-range] of a double-precision floating-point strided array, ignoring `NaN` values and using alternative indexing semantics. ```c -const double x[] = { 1.0, 0.0/0.0, 3.0, -4.0 }; +const double x[] = { 1.0, STDLIB_CONSTANT_FLOAT64_NAN, 3.0, -4.0 }; double v = stdlib_strided_dnanmidrange_ndarray( 4, x, 1, 0 ); // returns -0.5 @@ -243,11 +244,12 @@ double stdlib_strided_dnanmidrange_ndarray( const CBLAS_INT N, const double *X, ```c #include "stdlib/stats/strided/dnanmidrange.h" +#include "stdlib/constants/float64/nan.h" #include int main( void ) { // Create a strided array: - const double x[] = { 1.0, -2.0, -3.0, 4.0, -5.0, -6.0, 7.0, 8.0, 0.0/0.0, 0.0/0.0 }; + const double x[] = { 1.0, -2.0, -3.0, 4.0, -5.0, -6.0, 7.0, 8.0, STDLIB_CONSTANT_FLOAT64_NAN, STDLIB_CONSTANT_FLOAT64_NAN }; // Specify the number of elements: const int N = 5; diff --git a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/benchmark/c/benchmark.length.c b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/benchmark/c/benchmark.length.c index c4e0a005eea5..39e0f2d99afa 100644 --- a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/benchmark/c/benchmark.length.c +++ b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/benchmark/c/benchmark.length.c @@ -17,6 +17,7 @@ */ #include "stdlib/stats/strided/dnanmidrange.h" +#include "stdlib/constants/float64/nan.h" #include #include #include @@ -104,7 +105,7 @@ static double benchmark1( int iterations, int len ) { x = (double *)malloc( len * sizeof( double ) ); for ( i = 0; i < len; i++ ) { if ( rand_double() < 0.2 ) { - x[ i ] = 0.0 / 0.0; // NaN + x[ i ] = STDLIB_CONSTANT_FLOAT64_NAN; } else { x[ i ] = ( rand_double() * 20000.0 ) - 10000.0; } @@ -144,7 +145,7 @@ static double benchmark2( int iterations, int len ) { x = (double *)malloc( len * sizeof( double ) ); for ( i = 0; i < len; i++ ) { if ( rand_double() < 0.2 ) { - x[ i ] = 0.0 / 0.0; // NaN + x[ i ] = STDLIB_CONSTANT_FLOAT64_NAN; } else { x[ i ] = ( rand_double() * 20000.0 ) - 10000.0; } diff --git a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/examples/c/example.c b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/examples/c/example.c index 0a94bb1c6be2..40c6949f142a 100644 --- a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/examples/c/example.c +++ b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/examples/c/example.c @@ -17,11 +17,12 @@ */ #include "stdlib/stats/strided/dnanmidrange.h" +#include "stdlib/constants/float64/nan.h" #include int main( void ) { // Create a strided array: - const double x[] = { 1.0, -2.0, -3.0, 4.0, -5.0, -6.0, 7.0, 8.0, 0.0/0.0, 0.0/0.0 }; + const double x[] = { 1.0, -2.0, -3.0, 4.0, -5.0, -6.0, 7.0, 8.0, STDLIB_CONSTANT_FLOAT64_NAN, STDLIB_CONSTANT_FLOAT64_NAN }; // Specify the number of elements: const int N = 5; diff --git a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/manifest.json b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/manifest.json index 87ac804c1994..47c0f3ff5afb 100644 --- a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/manifest.json +++ b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/manifest.json @@ -47,7 +47,8 @@ "@stdlib/napi/argv", "@stdlib/napi/argv-int64", "@stdlib/napi/argv-strided-float64array", - "@stdlib/napi/create-double" + "@stdlib/napi/create-double", + "@stdlib/constants/float64/nan" ] }, { @@ -66,7 +67,8 @@ "@stdlib/strided/base/stride2offset", "@stdlib/math/base/assert/is-nan", "@stdlib/math/base/assert/is-positive-zero", - "@stdlib/math/base/assert/is-negative-zero" + "@stdlib/math/base/assert/is-negative-zero", + "@stdlib/constants/float64/nan" ] }, { @@ -85,7 +87,8 @@ "@stdlib/strided/base/stride2offset", "@stdlib/math/base/assert/is-nan", "@stdlib/math/base/assert/is-positive-zero", - "@stdlib/math/base/assert/is-negative-zero" + "@stdlib/math/base/assert/is-negative-zero", + "@stdlib/constants/float64/nan" ] }, { @@ -104,7 +107,8 @@ "@stdlib/strided/base/stride2offset", "@stdlib/math/base/assert/is-nan", "@stdlib/math/base/assert/is-positive-zero", - "@stdlib/math/base/assert/is-negative-zero" + "@stdlib/math/base/assert/is-negative-zero", + "@stdlib/constants/float64/nan" ] } ] diff --git a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/src/main.c b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/src/main.c index e71c201209c4..b67e8794cbab 100644 --- a/lib/node_modules/@stdlib/stats/strided/dnanmidrange/src/main.c +++ b/lib/node_modules/@stdlib/stats/strided/dnanmidrange/src/main.c @@ -22,6 +22,7 @@ #include "stdlib/math/base/assert/is_negative_zero.h" #include "stdlib/blas/base/shared.h" #include "stdlib/strided/base/stride2offset.h" +#include "stdlib/constants/float64/nan.h" /** * Computes the mid-range of a double-precision floating-point strided array, ignoring `NaN` values. @@ -51,9 +52,8 @@ double API_SUFFIX(stdlib_strided_dnanmidrange_ndarray)( const CBLAS_INT N, const double max; double min; double v; - if ( N <= 0 ) { - return 0.0 / 0.0; // NaN + return STDLIB_CONSTANT_FLOAT64_NAN; } if ( N == 1 || strideX == 0 ) { return X[ offsetX ]; @@ -67,7 +67,7 @@ double API_SUFFIX(stdlib_strided_dnanmidrange_ndarray)( const CBLAS_INT N, const ix += strideX; } if ( i == N ) { - return 0.0 / 0.0; // NaN + return STDLIB_CONSTANT_FLOAT64_NAN; } min = v; max = min;