Skip to content

Commit 62abde4

Browse files
committed
fix: use correct signature
--- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown_pkg_readmes status: passed - task: lint_markdown_docs status: na - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: passed - task: lint_javascript_src status: passed - task: lint_javascript_cli status: na - task: lint_javascript_examples status: passed - task: lint_javascript_tests status: passed - task: lint_javascript_benchmarks status: passed - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: passed - task: lint_typescript_tests status: passed - task: lint_license_headers status: passed ---
1 parent 6f32bef commit 62abde4

9 files changed

Lines changed: 73 additions & 53 deletions

File tree

lib/node_modules/@stdlib/blas/base/ndarray/strsv/README.md

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ var resolveTriangle = require( '@stdlib/blas/base/matrix-triangle-resolve-enum'
5050
var resolveTranspose = require( '@stdlib/blas/base/transpose-operation-resolve-enum' );
5151
var resolveDiagonal = require( '@stdlib/blas/base/diagonal-type-resolve-enum' );
5252

53-
var x = new Float32Vector( [ 1.0, 2.0, 3.0 ] );
5453
var A = new Float32Matrix( [ [ 1.0, 2.0, 3.0 ], [ 0.0, 4.0, 5.0 ], [ 0.0, 0.0, 6.0 ] ] );
54+
var x = new Float32Vector( [ 1.0, 2.0, 3.0 ] );
5555

5656
var uplo = scalar2ndarray( resolveTriangle( 'upper' ), {
5757
'dtype': 'int32'
@@ -63,7 +63,7 @@ var diag = scalar2ndarray( resolveDiagonal( 'non-unit' ), {
6363
'dtype': 'int32'
6464
});
6565

66-
var out = strsv( [ x, A, uplo, trans, diag ] );
66+
var out = strsv( [ A, x, uplo, trans, diag ] );
6767
// x => <ndarray>[ -0.25, -0.125, 0.5 ]
6868

6969
var bool = ( out === x );
@@ -74,8 +74,8 @@ The function has the following parameters:
7474

7575
- **arrays**: array-like object containing the following ndarrays:
7676

77-
- a one-dimensional input/output ndarray corresponding to `x`.
7877
- a two-dimensional input ndarray corresponding to `A`.
78+
- a one-dimensional input/output ndarray corresponding to `x`.
7979
- a zero-dimensional ndarray specifying whether the upper or lower triangular part of `A` should be referenced.
8080
- a zero-dimensional ndarray specifying whether `A` should be transposed, conjugate-transposed, or not transposed.
8181
- a zero-dimensional ndarray specifying whether `A` has a unit or non-unit diagonal.
@@ -100,10 +100,12 @@ The function has the following parameters:
100100

101101
```javascript
102102
var discreteUniform = require( '@stdlib/random/discrete-uniform' );
103+
var zeros = require( '@stdlib/ndarray/zeros' );
103104
var scalar2ndarray = require( '@stdlib/ndarray/from-scalar' );
104105
var resolveTriangle = require( '@stdlib/blas/base/matrix-triangle-resolve-enum' );
105106
var resolveTranspose = require( '@stdlib/blas/base/transpose-operation-resolve-enum' );
106107
var resolveDiagonal = require( '@stdlib/blas/base/diagonal-type-resolve-enum' );
108+
var striu = require( '@stdlib/blas/ext/base/ndarray/striu' );
107109
var ndarray2array = require( '@stdlib/ndarray/to-array' );
108110
var strsv = require( '@stdlib/blas/base/ndarray/strsv' );
109111

@@ -114,14 +116,20 @@ var eopts = {
114116
'dtype': 'int32'
115117
};
116118

119+
var M = discreteUniform( [ 3, 3 ], 1, 10, opts );
120+
var A = zeros( [ 3, 3 ], opts );
117121
var x = discreteUniform( [ 3 ], 0, 10, opts );
118-
var A = discreteUniform( [ 3, 3 ], 0, 10, opts );
119122

120123
var uplo = scalar2ndarray( resolveTriangle( 'upper' ), eopts );
121124
var trans = scalar2ndarray( resolveTranspose( 'no-transpose' ), eopts );
122125
var diag = scalar2ndarray( resolveDiagonal( 'non-unit' ), eopts );
123126

124-
var out = strsv( [ x, A, uplo, trans, diag ] );
127+
var k = scalar2ndarray( 0, {
128+
'dtype': 'generic'
129+
});
130+
striu( [ M, A, k ] );
131+
132+
var out = strsv( [ A, x, uplo, trans, diag ] );
125133
console.log( ndarray2array( out ) );
126134
```
127135

lib/node_modules/@stdlib/blas/base/ndarray/strsv/benchmark/benchmark.js

Lines changed: 21 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,15 @@
2121
// MODULES //
2222

2323
var bench = require( '@stdlib/bench' );
24-
var uniform = require( '@stdlib/random/uniform' );
24+
var ones = require( '@stdlib/ndarray/ones' );
2525
var zeros = require( '@stdlib/ndarray/zeros' );
2626
var isnanf = require( '@stdlib/math/base/assert/is-nanf' );
2727
var pow = require( '@stdlib/math/base/special/pow' );
2828
var scalar2ndarray = require( '@stdlib/ndarray/from-scalar' );
2929
var resolveTriangle = require( '@stdlib/blas/base/matrix-triangle-resolve-enum' );
3030
var resolveTranspose = require( '@stdlib/blas/base/transpose-operation-resolve-enum' );
3131
var resolveDiagonal = require( '@stdlib/blas/base/diagonal-type-resolve-enum' );
32+
var striu = require( '@stdlib/blas/ext/base/ndarray/striu' );
3233
var format = require( '@stdlib/string/format' );
3334
var pkg = require( './../package.json' ).name;
3435
var strsv = require( './../lib' );
@@ -50,18 +51,26 @@ var eopts = {
5051
* Creates a benchmark function.
5152
*
5253
* @private
53-
* @param {PositiveInteger} len - array length
54+
* @param {PositiveInteger} N - number of elements along each dimension
5455
* @returns {Function} benchmark function
5556
*/
56-
function createBenchmark( len ) {
57+
function createBenchmark( N ) {
5758
var trans;
5859
var diag;
5960
var uplo;
60-
var x;
61+
var M;
6162
var A;
63+
var k;
64+
var x;
65+
66+
M = ones( [ N, N ], options );
67+
A = zeros( [ N, N ], options );
68+
k = scalar2ndarray( 0, {
69+
'dtype': 'generic'
70+
});
71+
striu( [ M, A, k ] );
6272

63-
x = zeros( [ len ], options );
64-
A = uniform( [ len, len ], -100.0, 100.0, options );
73+
x = zeros( [ N ], options );
6574

6675
uplo = scalar2ndarray( resolveTriangle( 'upper' ), eopts );
6776
trans = scalar2ndarray( resolveTranspose( 'no-transpose' ), eopts );
@@ -81,13 +90,13 @@ function createBenchmark( len ) {
8190

8291
b.tic();
8392
for ( i = 0; i < b.iterations; i++ ) {
84-
z = strsv( [ x, A, uplo, trans, diag ] );
93+
z = strsv( [ A, x, uplo, trans, diag ] );
8594
if ( typeof z !== 'object' ) {
8695
b.fail( 'should return an ndarray' );
8796
}
8897
}
8998
b.toc();
90-
if ( isnanf( z.get( i%len ) ) ) {
99+
if ( isnanf( z.get( i%N ) ) ) {
91100
b.fail( 'should not return NaN' );
92101
}
93102
b.pass( 'benchmark finished' );
@@ -104,19 +113,19 @@ function createBenchmark( len ) {
104113
* @private
105114
*/
106115
function main() {
107-
var len;
108116
var min;
109117
var max;
118+
var N;
110119
var f;
111120
var i;
112121

113122
min = 1; // 10^min
114123
max = 3; // 10^max
115124

116125
for ( i = min; i <= max; i++ ) {
117-
len = pow( 10, i );
118-
f = createBenchmark( len );
119-
bench( format( '%s:len=%d', pkg, len ), f );
126+
N = pow( 10, i );
127+
f = createBenchmark( N );
128+
bench( format( '%s:size=%d', pkg, N*N ), f );
120129
}
121130
}
122131

lib/node_modules/@stdlib/blas/base/ndarray/strsv/docs/repl.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
arrays: ArrayLikeObject<ndarray>
1010
Array-like object containing the following ndarrays:
1111

12-
- a one-dimensional input/output ndarray corresponding to `x`.
1312
- a two-dimensional input ndarray corresponding to `A`.
13+
- a one-dimensional input/output ndarray corresponding to `x`.
1414
- a zero-dimensional ndarray specifying whether the upper or lower
1515
triangular part of `A` should be referenced.
1616
- a zero-dimensional ndarray specifying whether `A` should be
@@ -25,17 +25,17 @@
2525

2626
Examples
2727
--------
28-
> var xbuf = [ 1.0, 2.0, 3.0 ];
29-
> var x = new {{alias:@stdlib/ndarray/vector/float32}}( xbuf );
30-
3128
> var abuf = [ [ 1.0, 2.0, 3.0 ], [ 0.0, 4.0, 5.0 ], [ 0.0, 0.0, 6.0 ] ];
3229
> var A = new {{alias:@stdlib/ndarray/matrix/float32}}( abuf );
3330

31+
> var xbuf = [ 1.0, 2.0, 3.0 ];
32+
> var x = new {{alias:@stdlib/ndarray/vector/float32}}( xbuf );
33+
3434
> var uplo = {{alias:@stdlib/ndarray/from-scalar}}( 'upper' );
3535
> var trans = {{alias:@stdlib/ndarray/from-scalar}}( 'no-transpose' );
3636
> var diag = {{alias:@stdlib/ndarray/from-scalar}}( 'non-unit' );
3737

38-
> {{alias}}( [ x, A, uplo, trans, diag ] );
38+
> {{alias}}( [ A, x, uplo, trans, diag ] );
3939
> x
4040
<ndarray>[ -0.25, -0.125, 0.5 ]
4141

lib/node_modules/@stdlib/blas/base/ndarray/strsv/docs/types/index.d.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ import { float32ndarray, ndarray } from '@stdlib/types/ndarray';
2929
*
3030
* - The function expects the following ndarrays:
3131
*
32-
* - a one-dimensional input/output ndarray corresponding to `x`.
3332
* - a two-dimensional input ndarray corresponding to `A`.
33+
* - a one-dimensional input/output ndarray corresponding to `x`.
3434
* - a zero-dimensional ndarray specifying whether the upper or lower triangular part of `A` should be referenced.
3535
* - a zero-dimensional ndarray specifying whether `A` should be transposed, conjugate-transposed, or not transposed.
3636
* - a zero-dimensional ndarray specifying whether `A` has a unit or non-unit diagonal.
@@ -46,8 +46,8 @@ import { float32ndarray, ndarray } from '@stdlib/types/ndarray';
4646
* var resolveTranspose = require( '@stdlib/blas/base/transpose-operation-resolve-enum' );
4747
* var resolveDiagonal = require( '@stdlib/blas/base/diagonal-type-resolve-enum' );
4848
*
49-
* var x = new Float32Vector( [ 1.0, 2.0, 3.0 ] );
5049
* var A = new Float32Matrix( [ [ 1.0, 2.0, 3.0 ], [ 0.0, 4.0, 5.0 ], [ 0.0, 0.0, 6.0 ] ] );
50+
* var x = new Float32Vector( [ 1.0, 2.0, 3.0 ] );
5151
*
5252
* var uplo = scalar2ndarray( resolveTriangle( 'upper' ), {
5353
* 'dtype': 'int32'
@@ -59,7 +59,7 @@ import { float32ndarray, ndarray } from '@stdlib/types/ndarray';
5959
* 'dtype': 'int32'
6060
* });
6161
*
62-
* var out = strsv( [ x, A, uplo, trans, diag ] );
62+
* var out = strsv( [ A, x, uplo, trans, diag ] );
6363
* // returns <ndarray>[ -0.25, -0.125, 0.5 ]
6464
*
6565
* var bool = ( out === x );

lib/node_modules/@stdlib/blas/base/ndarray/strsv/docs/types/test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ import strsv = require( '@stdlib/blas/base/ndarray/strsv' );
4242
'dtype': 'int32'
4343
});
4444

45-
strsv( [ x, A, uplo, trans, diag ] ); // $ExpectType float32ndarray
45+
strsv( [ A, x, uplo, trans, diag ] ); // $ExpectType float32ndarray
4646
}
4747

4848
// The compiler throws an error if the function is provided a first argument which is not an array of ndarrays...
@@ -77,5 +77,5 @@ import strsv = require( '@stdlib/blas/base/ndarray/strsv' );
7777
});
7878

7979
strsv(); // $ExpectError
80-
strsv( [ x, A, uplo, trans, diag ], {} ); // $ExpectError
80+
strsv( [ A, x, uplo, trans, diag ], {} ); // $ExpectError
8181
}

lib/node_modules/@stdlib/blas/base/ndarray/strsv/examples/index.js

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,12 @@
1919
'use strict';
2020

2121
var discreteUniform = require( '@stdlib/random/discrete-uniform' );
22+
var zeros = require( '@stdlib/ndarray/zeros' );
2223
var scalar2ndarray = require( '@stdlib/ndarray/from-scalar' );
2324
var resolveTriangle = require( '@stdlib/blas/base/matrix-triangle-resolve-enum' );
2425
var resolveTranspose = require( '@stdlib/blas/base/transpose-operation-resolve-enum' );
2526
var resolveDiagonal = require( '@stdlib/blas/base/diagonal-type-resolve-enum' );
27+
var striu = require( '@stdlib/blas/ext/base/ndarray/striu' );
2628
var ndarray2array = require( '@stdlib/ndarray/to-array' );
2729
var strsv = require( './../lib' );
2830

@@ -33,12 +35,18 @@ var eopts = {
3335
'dtype': 'int32'
3436
};
3537

38+
var M = discreteUniform( [ 3, 3 ], 1, 10, opts );
39+
var A = zeros( [ 3, 3 ], opts );
3640
var x = discreteUniform( [ 3 ], 0, 10, opts );
37-
var A = discreteUniform( [ 3, 3 ], 0, 10, opts );
3841

3942
var uplo = scalar2ndarray( resolveTriangle( 'upper' ), eopts );
4043
var trans = scalar2ndarray( resolveTranspose( 'no-transpose' ), eopts );
4144
var diag = scalar2ndarray( resolveDiagonal( 'non-unit' ), eopts );
4245

43-
var out = strsv( [ x, A, uplo, trans, diag ] );
46+
var k = scalar2ndarray( 0, {
47+
'dtype': 'generic'
48+
});
49+
striu( [ M, A, k ] );
50+
51+
var out = strsv( [ A, x, uplo, trans, diag ] );
4452
console.log( ndarray2array( out ) );

lib/node_modules/@stdlib/blas/base/ndarray/strsv/lib/index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@
3232
* var resolveDiagonal = require( '@stdlib/blas/base/diagonal-type-resolve-enum' );
3333
* var strsv = require( '@stdlib/blas/base/ndarray/strsv' );
3434
*
35-
* var x = new Float32Vector( [ 1.0, 2.0, 3.0 ] );
3635
* var A = new Float32Matrix( [ [ 1.0, 2.0, 3.0 ], [ 0.0, 4.0, 5.0 ], [ 0.0, 0.0, 6.0 ] ] );
36+
* var x = new Float32Vector( [ 1.0, 2.0, 3.0 ] );
3737
*
3838
* var uplo = scalar2ndarray( resolveTriangle( 'upper' ), {
3939
* 'dtype': 'int32'
@@ -45,7 +45,7 @@
4545
* 'dtype': 'int32'
4646
* });
4747
*
48-
* var out = strsv( [ x, A, uplo, trans, diag ] );
48+
* var out = strsv( [ A, x, uplo, trans, diag ] );
4949
* // returns <ndarray>[ -0.25, -0.125, 0.5 ]
5050
*
5151
* var bool = ( out === x );

lib/node_modules/@stdlib/blas/base/ndarray/strsv/lib/main.js

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,12 @@
2020

2121
// MODULES //
2222

23-
var getShape = require( '@stdlib/ndarray/base/shape' );
23+
var numelDimension = require( '@stdlib/ndarray/base/numel-dimension' );
2424
var getStrides = require( '@stdlib/ndarray/base/strides' );
2525
var getStride = require( '@stdlib/ndarray/base/stride' );
2626
var getOffset = require( '@stdlib/ndarray/base/offset' );
2727
var getData = require( '@stdlib/ndarray/base/data-buffer' );
2828
var ndarraylike2scalar = require( '@stdlib/ndarray/base/ndarraylike2scalar' );
29-
var resolveTriangleStr = require( '@stdlib/blas/base/matrix-triangle-resolve-str' );
30-
var resolveTransposeStr = require( '@stdlib/blas/base/transpose-operation-resolve-str' );
31-
var resolveDiagonalStr = require( '@stdlib/blas/base/diagonal-type-resolve-str' );
3229
var strided = require( '@stdlib/blas/base/strsv' ).ndarray;
3330

3431

@@ -41,8 +38,8 @@ var strided = require( '@stdlib/blas/base/strsv' ).ndarray;
4138
*
4239
* - The function expects the following ndarrays:
4340
*
44-
* - a one-dimensional input/output ndarray corresponding to `x`.
4541
* - a two-dimensional input ndarray corresponding to `A`.
42+
* - a one-dimensional input/output ndarray corresponding to `x`.
4643
* - a zero-dimensional ndarray specifying whether the upper or lower triangular part of `A` should be referenced.
4744
* - a zero-dimensional ndarray specifying whether `A` should be transposed, conjugate-transposed, or not transposed.
4845
* - a zero-dimensional ndarray specifying whether `A` has a unit or non-unit diagonal.
@@ -58,8 +55,8 @@ var strided = require( '@stdlib/blas/base/strsv' ).ndarray;
5855
* var resolveTranspose = require( '@stdlib/blas/base/transpose-operation-resolve-enum' );
5956
* var resolveDiagonal = require( '@stdlib/blas/base/diagonal-type-resolve-enum' );
6057
*
61-
* var x = new Float32Vector( [ 1.0, 2.0, 3.0 ] );
6258
* var A = new Float32Matrix( [ [ 1.0, 2.0, 3.0 ], [ 0.0, 4.0, 5.0 ], [ 0.0, 0.0, 6.0 ] ] );
59+
* var x = new Float32Vector( [ 1.0, 2.0, 3.0 ] );
6360
*
6461
* var uplo = scalar2ndarray( resolveTriangle( 'upper' ), {
6562
* 'dtype': 'int32'
@@ -71,7 +68,7 @@ var strided = require( '@stdlib/blas/base/strsv' ).ndarray;
7168
* 'dtype': 'int32'
7269
* });
7370
*
74-
* var out = strsv( [ x, A, uplo, trans, diag ] );
71+
* var out = strsv( [ A, x, uplo, trans, diag ] );
7572
* // returns <ndarray>[ -0.25, -0.125, 0.5 ]
7673
*
7774
* var bool = ( out === x );
@@ -81,22 +78,20 @@ function strsv( arrays ) {
8178
var trans;
8279
var diag;
8380
var uplo;
84-
var sh;
8581
var st;
8682
var x;
8783
var A;
8884

89-
x = arrays[ 0 ];
90-
A = arrays[ 1 ];
85+
A = arrays[ 0 ];
86+
x = arrays[ 1 ];
9187

92-
uplo = resolveTriangleStr( ndarraylike2scalar( arrays[ 2 ] ) );
93-
trans = resolveTransposeStr( ndarraylike2scalar( arrays[ 3 ] ) );
94-
diag = resolveDiagonalStr( ndarraylike2scalar( arrays[ 4 ] ) );
88+
uplo = ndarraylike2scalar( arrays[ 2 ] );
89+
trans = ndarraylike2scalar( arrays[ 3 ] );
90+
diag = ndarraylike2scalar( arrays[ 4 ] );
9591

96-
sh = getShape( A, false );
9792
st = getStrides( A, false );
9893

99-
strided( uplo, trans, diag, sh[ 0 ], getData( A ), st[ 0 ], st[ 1 ], getOffset( A ), getData( x ), getStride( x, 0 ), getOffset( x ) );
94+
strided( uplo, trans, diag, numelDimension( A, 0 ), getData( A ), st[ 0 ], st[ 1 ], getOffset( A ), getData( x ), getStride( x, 0 ), getOffset( x ) ); // eslint-disable-line max-len
10095

10196
return x;
10297
}

0 commit comments

Comments
 (0)