diff --git a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/README.md b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/README.md index 6d3fe1d71ae0..30f09dba4085 100644 --- a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/README.md +++ b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/README.md @@ -140,7 +140,7 @@ var z = dcosineSimilarity.ndarray( 3, x, 2, 1, y, -1, y.length-1 ); ## Notes -- If `N <= 0`, both functions return `0.0`. +- If `N <= 0`, both functions return `NaN`. diff --git a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/docs/repl.txt b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/docs/repl.txt index 301feb1ca2b6..b210d3c43510 100644 --- a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/docs/repl.txt +++ b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/docs/repl.txt @@ -9,7 +9,7 @@ Indexing is relative to the first index. To introduce an offset, use a typed array view. - If `N <= 0`, the function returns `0`. + If `N <= 0`, the function returns `NaN`. Parameters ---------- diff --git a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/lib/ndarray.js b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/lib/ndarray.js index 2ace7b1566ef..29da806e986f 100644 --- a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/lib/ndarray.js +++ b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/lib/ndarray.js @@ -53,7 +53,7 @@ function dcosineSimilarity( N, x, strideX, offsetX, y, strideY, offsetY ) { var dot; if ( N <= 0 ) { - return 0.0; + return NaN; } dot = ddot( N, x, strideX, offsetX, y, strideY, offsetY ); xnrm = dnrm2( N, x, strideX, offsetX ); diff --git a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/src/main.c b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/src/main.c index 90ae28dc9abf..31eb475502a5 100644 --- a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/src/main.c +++ b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/src/main.c @@ -56,7 +56,7 @@ double API_SUFFIX( stdlib_strided_dcosine_similarity_ndarray )( const CBLAS_INT double dot; if ( N <= 0 ) { - return 0.0; + return 0.0 / 0.0; } dot = c_ddot_ndarray( N, X, strideX, offsetX, Y, strideY, offsetY ); xnrm = c_dnrm2_ndarray( N, X, strideX, offsetX ); diff --git a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.dcosine_similarity.js b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.dcosine_similarity.js index 01e547ec6abf..7f080bdd3b1b 100644 --- a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.dcosine_similarity.js +++ b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.dcosine_similarity.js @@ -61,7 +61,7 @@ tape( 'the function calculates the cosine similarity of two strided arrays', fun t.end(); }); -tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `0`', function test( t ) { +tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `NaN`', function test( t ) { var sim; var x; var y; @@ -70,10 +70,10 @@ tape( 'if provided an `N` parameter less than or equal to `0`, the function retu y = new Float64Array( [ 1.0, -2.0, 3.0 ] ); sim = dcosineSimilarity( 0, x, 1, y, 1 ); - t.strictEqual( isAlmostSameValue( sim, 0.0, 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( sim, NaN, 1 ), true, 'returns expected value' ); sim = dcosineSimilarity( -4, x, 1, y, 1 ); - t.strictEqual( isAlmostSameValue( sim, 0.0, 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( sim, NaN, 1 ), true, 'returns expected value' ); t.end(); }); diff --git a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.dcosine_similarity.native.js b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.dcosine_similarity.native.js index 0865f54b58e7..fbcf868847e3 100644 --- a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.dcosine_similarity.native.js +++ b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.dcosine_similarity.native.js @@ -70,7 +70,7 @@ tape( 'the function calculates the cosine similarity of two strided arrays', opt t.end(); }); -tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `0`', opts, function test( t ) { +tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `NaN`', opts, function test( t ) { var sim; var x; var y; @@ -80,11 +80,11 @@ tape( 'if provided an `N` parameter less than or equal to `0`, the function retu // Test against textbook algorithm for computing cosine similarity: sim = dcosineSimilarity( 0, x, 1, y, 1 ); - t.strictEqual( isAlmostSameValue( sim, 0.0, 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( sim, NaN, 1 ), true, 'returns expected value' ); // Test against textbook algorithm for computing cosine similarity: sim = dcosineSimilarity( -4, x, 1, y, 1 ); - t.strictEqual( isAlmostSameValue( sim, 0.0, 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( sim, NaN, 1 ), true, 'returns expected value' ); t.end(); }); diff --git a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.ndarray.js b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.ndarray.js index 45353f3e7adf..0a894dae3c61 100644 --- a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.ndarray.js +++ b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.ndarray.js @@ -61,7 +61,7 @@ tape( 'the function calculates the cosine similarity of two strided arrays', fun t.end(); }); -tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `0`', function test( t ) { +tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `NaN`', function test( t ) { var sim; var x; var y; @@ -71,11 +71,11 @@ tape( 'if provided an `N` parameter less than or equal to `0`, the function retu // Test against textbook algorithm for computing cosine similarity: sim = dcosineSimilarity( 0, x, 1, 0, y, 1, 0 ); - t.strictEqual( isAlmostSameValue( sim, 0.0, 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( sim, NaN, 1 ), true, 'returns expected value' ); // Test against textbook algorithm for computing cosine similarity: sim = dcosineSimilarity( -4, x, 1, 0, y, 1, 0 ); - t.strictEqual( isAlmostSameValue( sim, 0.0, 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( sim, NaN, 1 ), true, 'returns expected value' ); t.end(); }); diff --git a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.ndarray.native.js b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.ndarray.native.js index 5badb5e3a5bf..a18424c3f4a3 100644 --- a/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.ndarray.native.js +++ b/lib/node_modules/@stdlib/stats/strided/distances/dcosine-similarity/test/test.ndarray.native.js @@ -70,7 +70,7 @@ tape( 'the function calculates the cosine similarity of two strided arrays', opt t.end(); }); -tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `0`', opts, function test( t ) { +tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `NaN`', opts, function test( t ) { var sim; var x; var y; @@ -80,11 +80,11 @@ tape( 'if provided an `N` parameter less than or equal to `0`, the function retu // Test against textbook algorithm for computing cosine similarity: sim = dcosineSimilarity( 0, x, 1, 0, y, 1, 0 ); - t.strictEqual( isAlmostSameValue( sim, 0.0, 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( sim, NaN, 1 ), true, 'returns expected value' ); // Test against textbook algorithm for computing cosine similarity: sim = dcosineSimilarity( -4, x, 1, 0, y, 1, 0 ); - t.strictEqual( isAlmostSameValue( sim, 0.0, 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( sim, NaN, 1 ), true, 'returns expected value' ); t.end(); });