diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/README.md b/lib/node_modules/@stdlib/blas/base/dtrmv/README.md
index 5491910065c..5a4f30f9aab 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/README.md
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/README.md
@@ -20,7 +20,7 @@ limitations under the License.
# dtrmv
-> Perform one of the matrix-vector operations `x = A*x` or `x = A^T*x`, where `x` is an `N` element vector and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix.
+> Perform one of the matrix-vector operations `x = A*x` or `x = A^T*x`.
@@ -127,7 +127,7 @@ dtrmv.ndarray( 'upper', 'no-transpose', 'unit', 3, A, 3, 1, 0, x, -1, 2 );
## Notes
-- `dtrmv()` corresponds to the [BLAS][blas] level 2 function [`dtrmv`][dtrmv].
+- `dtrmv()` corresponds to the [BLAS][blas] level 2 function [`dtrmv`][blas-dtrmv].
@@ -147,12 +147,15 @@ var opts = {
'dtype': 'float64'
};
-var N = 3;
+var N = 5;
var A = discreteUniform( N*N, -10.0, 10.0, opts );
var x = discreteUniform( N, -10.0, 10.0, opts );
-dtrmv( 'row-major', 'upper', 'no-transpose', 'unit', 3, A, 3, x, 1 );
+dtrmv( 'column-major', 'upper', 'no-transpose', 'unit', N, A, N, x, 1 );
+console.log( x );
+
+dtrmv.ndarray( 'upper', 'no-transpose', 'unit', N, A, 1, N, 0, x, 1, 0 );
console.log( x );
```
@@ -244,7 +247,7 @@ TODO
[blas]: http://www.netlib.org/blas
-[dtrmv]: https://www.netlib.org/lapack/explore-html/d6/d1c/group__trmv_ga7b90369d2b2b19f78f168e10dd9eb8ad.html#ga7b90369d2b2b19f78f168e10dd9eb8ad
+[blas-dtrmv]: https://www.netlib.org/lapack/explore-html/d6/d1c/group__trmv_ga7b90369d2b2b19f78f168e10dd9eb8ad.html#ga7b90369d2b2b19f78f168e10dd9eb8ad
[mdn-float64array]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float64Array
diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/docs/repl.txt b/lib/node_modules/@stdlib/blas/base/dtrmv/docs/repl.txt
index 59965c0e889..64b772a891b 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/docs/repl.txt
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/docs/repl.txt
@@ -44,7 +44,7 @@
Returns
-------
x: Float64Array
- Output vector.
+ Input vector.
Examples
--------
@@ -103,7 +103,7 @@
Returns
-------
x: Float64Array
- Output array.
+ Input vector.
Examples
--------
diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/docs/types/index.d.ts b/lib/node_modules/@stdlib/blas/base/dtrmv/docs/types/index.d.ts
index d0d9a8e0740..81e994ec341 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/docs/types/index.d.ts
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/docs/types/index.d.ts
@@ -76,7 +76,7 @@ interface Routine {
* dtrmv.ndarray( 'upper', 'no-transpose', 'non-unit', 3, A, 3, 1, 0, x, 1, 0 );
* // x => [ 14.0, 8.0, 3.0 ]
*/
- ndarray( uplo: MatrixTriangle, trans: TransposeOperation, diag: DiagonalType, N: number, A: Float64Array, LDA: number, x: Float64Array, strideX: number, offsetX: number ): Float64Array;
+ ndarray( uplo: MatrixTriangle, trans: TransposeOperation, diag: DiagonalType, N: number, A: Float64Array, strideA1: number, strideA2: number, offsetA: number, x: Float64Array, strideX: number, offsetX: number ): Float64Array;
}
/**
diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/examples/index.js b/lib/node_modules/@stdlib/blas/base/dtrmv/examples/index.js
index 470aacbfba7..79ad63ee323 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/examples/index.js
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/examples/index.js
@@ -25,10 +25,13 @@ var opts = {
'dtype': 'float64'
};
-var N = 3;
+var N = 5;
var A = discreteUniform( N*N, -10.0, 10.0, opts );
var x = discreteUniform( N, -10.0, 10.0, opts );
-dtrmv( 'row-major', 'upper', 'no-transpose', 'unit', 3, A, 3, x, 1 );
+dtrmv( 'column-major', 'upper', 'no-transpose', 'unit', N, A, N, x, 1 );
+console.log( x );
+
+dtrmv.ndarray( 'upper', 'no-transpose', 'unit', N, A, 1, N, 0, x, 1, 0 );
console.log( x );
diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/lib/base.js b/lib/node_modules/@stdlib/blas/base/dtrmv/lib/base.js
index 45646a3998c..e4e67c5c38c 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/lib/base.js
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/lib/base.js
@@ -28,6 +28,7 @@ var isRowMajor = require( '@stdlib/ndarray/base/assert/is-row-major' );
/**
* Performs one of the matrix-vector operations `x = A*x` or `x = A^T*x`, where `x` is an `N` element vector and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix.
*
+* @private
* @param {string} uplo - specifies whether `A` is an upper or lower triangular matrix
* @param {string} trans - specifies whether `A` should be transposed, conjugate-transposed, or not transposed
* @param {string} diag - specifies whether `A` has a unit diagonal
@@ -77,8 +78,8 @@ function dtrmv( uplo, trans, diag, N, A, strideA1, strideA2, offsetA, x, strideX
sa0 = strideA1; // stride for innermost loop
sa1 = strideA2; // stride for outermost loop
}
-
ox = offsetX;
+
if (
( !isrm && trans === 'no-transpose' && uplo === 'upper' ) ||
( isrm && trans !== 'no-transpose' && uplo === 'lower' )
@@ -145,27 +146,23 @@ function dtrmv( uplo, trans, diag, N, A, strideA1, strideA2, offsetA, x, strideX
}
return x;
}
- if (
- ( !isrm && trans !== 'no-transpose' && uplo === 'lower' ) ||
- ( isrm && trans === 'no-transpose' && uplo === 'upper' )
- ) {
- ix1 = ox;
- for ( i1 = 0; i1 < N; i1++ ) {
- tmp = x[ ix1 ];
- oa = offsetA + (sa1*i1);
- ix0 = ix1;
- if ( nonunit ) {
- tmp *= A[ oa+(sa0*i1) ];
- }
- for ( i0 = i1+1; i0 < N; i0++ ) {
- ix0 += strideX;
- tmp += ( x[ ix0 ] * A[ oa+(sa0*i0) ] );
- }
- x[ ix1 ] = tmp;
- ix1 += strideX;
+ // ( !isrm && trans !== 'no-transpose' && uplo === 'lower' ) || ( isrm && trans === 'no-transpose' && uplo === 'upper' )
+ ix1 = ox;
+ for ( i1 = 0; i1 < N; i1++ ) {
+ tmp = x[ ix1 ];
+ oa = offsetA + (sa1*i1);
+ ix0 = ix1;
+ if ( nonunit ) {
+ tmp *= A[ oa+(sa0*i1) ];
}
- return x;
+ for ( i0 = i1+1; i0 < N; i0++ ) {
+ ix0 += strideX;
+ tmp += ( x[ ix0 ] * A[ oa+(sa0*i0) ] );
+ }
+ x[ ix1 ] = tmp;
+ ix1 += strideX;
}
+ return x;
}
diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/lib/dtrmv.js b/lib/node_modules/@stdlib/blas/base/dtrmv/lib/dtrmv.js
index b16b0048a7b..987510e68c1 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/lib/dtrmv.js
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/lib/dtrmv.js
@@ -20,7 +20,7 @@
// MODULES //
-var max = require( '@stdlib/math/base/special/max' );
+var max = require( '@stdlib/math/base/special/fast/max' );
var isLayout = require( '@stdlib/blas/base/assert/is-layout' );
var isMatrixTriangle = require( '@stdlib/blas/base/assert/is-matrix-triangle' );
var isTransposeOperation = require( '@stdlib/blas/base/assert/is-transpose-operation' );
@@ -45,7 +45,7 @@ var base = require( './base.js' );
* @param {Float64Array} x - input vector
* @param {integer} strideX - `x` stride length
* @throws {TypeError} first argument must be a valid order
-* @throws {TypeError} second argument must specify whether the lower or upper triangular matrix is supplied
+* @throws {TypeError} second argument must specify whether a lower or upper triangular matrix is supplied
* @throws {TypeError} third argument must be a valid transpose operation
* @throws {TypeError} fourth argument must be a valid diagonal type
* @throws {RangeError} fifth argument must be a nonnegative integer
diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/lib/ndarray.js b/lib/node_modules/@stdlib/blas/base/dtrmv/lib/ndarray.js
index fdb3c6f9d4f..9036d43cb70 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/lib/ndarray.js
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/lib/ndarray.js
@@ -43,7 +43,7 @@ var base = require( './base.js' );
* @param {Float64Array} x - input vector
* @param {integer} strideX - `x` stride length
* @param {NonNegativeInteger} offsetX - starting index for `x`
-* @throws {TypeError} first argument must specify whether the lower or upper triangular matrix is supplied
+* @throws {TypeError} first argument must specify whether a lower or upper triangular matrix is supplied
* @throws {TypeError} second argument must be a valid transpose operation
* @throws {TypeError} third argument must be a valid diagonal type
* @throws {RangeError} fourth argument must be a nonnegative integer
diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/package.json b/lib/node_modules/@stdlib/blas/base/dtrmv/package.json
index 1ce52bfa158..ecf9053fd04 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/package.json
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/package.json
@@ -1,7 +1,7 @@
{
"name": "@stdlib/blas/base/dtrmv",
"version": "0.0.0",
- "description": "Perform one of the matrix-vector operations `x = A*x` or `x = A^T*x`, where `x` is an `N` element vector and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix.",
+ "description": "Perform one of the matrix-vector operations `x = A*x` or `x = A^T*x`.",
"license": "Apache-2.0",
"author": {
"name": "The Stdlib Authors",
diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/test/test.dtrmv.js b/lib/node_modules/@stdlib/blas/base/dtrmv/test/test.dtrmv.js
index 078293205d7..18bdc4c9e8e 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/test/test.dtrmv.js
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/test/test.dtrmv.js
@@ -276,7 +276,7 @@ tape( 'the function throws an error if provided an invalid ninth argument', func
}
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, lower, none, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, lower, none, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -297,7 +297,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, lower, none, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, lower, none, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -318,7 +318,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, lower, transpose, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, lower, transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -339,7 +339,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, lower, transpose, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, lower, transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -360,7 +360,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, lower, none, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, lower, none, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -381,7 +381,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, lower, none, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, lower, none, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -402,7 +402,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, lower, transpose, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, lower, transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -423,7 +423,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, lower, transpose, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, lower, transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -444,7 +444,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, upper, none, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, upper, none, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -465,7 +465,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, upper, none, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, upper, none, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -486,7 +486,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, upper, none, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, upper, none, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -507,7 +507,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, upper, none, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, upper, none, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -528,7 +528,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, upper, transpose, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, upper, transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -549,7 +549,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, upper, transpose, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, upper, transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -570,7 +570,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, upper, transpose, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, upper, transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -591,7 +591,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, upper, transpose, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, upper, transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -612,7 +612,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, sx=2)', function test( t ) {
+tape( 'the function supports speciying an `x` stride (row-major)', function test( t ) {
var expected;
var data;
var out;
@@ -633,7 +633,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, sx=2)', function test( t ) {
+tape( 'the function supports speciying an `x` stride (column-major)', function test( t ) {
var expected;
var data;
var out;
@@ -654,7 +654,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function returns a reference to the second input vector', function test( t ) {
+tape( 'the function returns a reference to the input vector', function test( t ) {
var data;
var out;
var a;
@@ -671,7 +671,7 @@ tape( 'the function returns a reference to the second input vector', function te
t.end();
});
-tape( 'if `N` is zero, the function returns the second input vector unchanged (row-major)', function test( t ) {
+tape( 'if `N` is zero, the function returns the input vector unchanged (row-major)', function test( t ) {
var expected;
var data;
var out;
@@ -692,7 +692,7 @@ tape( 'if `N` is zero, the function returns the second input vector unchanged (r
t.end();
});
-tape( 'if `N` is zero, the function returns the second input vector unchanged (column-major)', function test( t ) {
+tape( 'if `N` is zero, the function returns the input vector unchanged (column-major)', function test( t ) {
var expected;
var data;
var out;
diff --git a/lib/node_modules/@stdlib/blas/base/dtrmv/test/test.ndarray.js b/lib/node_modules/@stdlib/blas/base/dtrmv/test/test.ndarray.js
index 94230df5fc3..9e4c9ea153f 100644
--- a/lib/node_modules/@stdlib/blas/base/dtrmv/test/test.ndarray.js
+++ b/lib/node_modules/@stdlib/blas/base/dtrmv/test/test.ndarray.js
@@ -234,7 +234,7 @@ tape( 'the function throws an error if provided an invalid tenth argument', func
}
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, lower, none, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, lower, no-transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -255,7 +255,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, lower, none, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, lower, no-transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -276,7 +276,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, lower, transpose, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, lower, transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -297,7 +297,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, lower, transpose, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, lower, transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -318,7 +318,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, lower, none, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, lower, no-transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -339,7 +339,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, lower, none, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, lower, no-transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -360,7 +360,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, lower, transpose, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, lower, transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -381,7 +381,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, lower, transpose, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, lower, transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -402,7 +402,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, upper, none, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, upper, no-transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -423,7 +423,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, upper, none, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, upper, no-transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -444,7 +444,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, upper, none, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, upper, no-transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -465,7 +465,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, upper, none, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, upper, no-transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -486,7 +486,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, upper, transpose, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, upper, transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -507,7 +507,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, upper, transpose, non-unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, upper, transpose, non-unit)', function test( t ) {
var expected;
var data;
var out;
@@ -528,7 +528,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, upper, transpose, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (row-major, upper, transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -549,7 +549,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, upper, transpose, unit)', function test( t ) {
+tape( 'the function performs one of the matrix-vector operations `x = A*x`, or `x = A^T*x` (column-major, upper, transpose, unit)', function test( t ) {
var expected;
var data;
var out;
@@ -570,7 +570,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (row-major, sx=2)', function test( t ) {
+tape( 'the function supports specifying an `x` stride (row-major)', function test( t ) {
var expected;
var data;
var out;
@@ -591,7 +591,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x = A**T*x`, `x` and `y` are `N` element vectors, and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix (column-major, sx=2)', function test( t ) {
+tape( 'the function supports specifying an `x` stride (column-major)', function test( t ) {
var expected;
var data;
var out;
@@ -612,7 +612,7 @@ tape( 'the function performs one of the matrix-vector operation `x = A*x`, or `x
t.end();
});
-tape( 'the function returns a reference to the second input vector', function test( t ) {
+tape( 'the function returns a reference to the input vector', function test( t ) {
var data;
var out;
var a;
@@ -629,7 +629,7 @@ tape( 'the function returns a reference to the second input vector', function te
t.end();
});
-tape( 'if `N` is zero, the function returns the second input vector unchanged (row-major)', function test( t ) {
+tape( 'if `N` is zero, the function returns the input vector unchanged (row-major)', function test( t ) {
var expected;
var data;
var out;
@@ -650,7 +650,7 @@ tape( 'if `N` is zero, the function returns the second input vector unchanged (r
t.end();
});
-tape( 'if `N` is zero, the function returns the second input vector unchanged (column-major)', function test( t ) {
+tape( 'if `N` is zero, the function returns the input vector unchanged (column-major)', function test( t ) {
var expected;
var data;
var out;
@@ -671,7 +671,7 @@ tape( 'if `N` is zero, the function returns the second input vector unchanged (c
t.end();
});
-tape( 'the function supports specifying stride of the first and the second dimension of `A` (row-major)', function test( t ) {
+tape( 'the function supports specifying stride of the first and second dimensions of `A` (row-major)', function test( t ) {
var expected;
var data;
var out;
@@ -692,7 +692,7 @@ tape( 'the function supports specifying stride of the first and the second dimen
t.end();
});
-tape( 'the function supports specifying stride of the first and the second dimension of `A` (column-major)', function test( t ) {
+tape( 'the function supports specifying stride of the first and second dimensions of `A` (column-major)', function test( t ) {
var expected;
var data;
var out;
@@ -713,7 +713,7 @@ tape( 'the function supports specifying stride of the first and the second dimen
t.end();
});
-tape( 'the function supports a negative `strideA1` parameter (row-major)', function test( t ) {
+tape( 'the function supports a negative stride for the first dimension of `A` (row-major)', function test( t ) {
var expected;
var data;
var out;
@@ -734,7 +734,7 @@ tape( 'the function supports a negative `strideA1` parameter (row-major)', funct
t.end();
});
-tape( 'the function supports a negative `strideA1` parameter (column-major)', function test( t ) {
+tape( 'the function supports a negative stride for the first dimension of `A` (column-major)', function test( t ) {
var expected;
var data;
var out;
@@ -755,7 +755,7 @@ tape( 'the function supports a negative `strideA1` parameter (column-major)', fu
t.end();
});
-tape( 'the function supports a negative `strideA2` parameter (row-major)', function test( t ) {
+tape( 'the function supports a negative stride for the second dimension of `A` (row-major)', function test( t ) {
var expected;
var data;
var out;
@@ -776,7 +776,7 @@ tape( 'the function supports a negative `strideA2` parameter (row-major)', funct
t.end();
});
-tape( 'the function supports a negative `strideA2` parameter (column-major)', function test( t ) {
+tape( 'the function supports a negative stride for the second dimension of `A` (column-major)', function test( t ) {
var expected;
var data;
var out;
@@ -797,7 +797,7 @@ tape( 'the function supports a negative `strideA2` parameter (column-major)', fu
t.end();
});
-tape( 'the function supports negative strides for `A` (row-major)', function test( t ) {
+tape( 'the function supports negative strides for both dimensions of `A` (row-major)', function test( t ) {
var expected;
var data;
var out;
@@ -818,7 +818,7 @@ tape( 'the function supports negative strides for `A` (row-major)', function tes
t.end();
});
-tape( 'the function supports negative strides for `A` (column-major)', function test( t ) {
+tape( 'the function supports negative strides for both dimensions of `A` (column-major)', function test( t ) {
var expected;
var data;
var out;
@@ -881,7 +881,7 @@ tape( 'the function supports an `A` offset (column-major)', function test( t ) {
t.end();
});
-tape( 'the function supports a negative `x` stride value (row-major)', function test( t ) {
+tape( 'the function supports a negative `x` stride (row-major)', function test( t ) {
var expected;
var data;
var out;