Skip to content

Commit 5950cdf

Browse files
committed
chore: cleanup
1 parent 3c82dfc commit 5950cdf

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+1489
-2486
lines changed

lib/node_modules/@stdlib/blas/base/ctrsv/README.md

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -151,12 +151,8 @@ var opts = {
151151

152152
var N = 5;
153153

154-
// Generate interleaved real and imaginary components:
155-
var Abuf = discreteUniform( N * N * 2, -10.0, 10.0, opts );
156-
var A = new Complex64Array( Abuf.buffer );
157-
158-
var xbuf = discreteUniform( N * 2, -10.0, 10.0, opts );
159-
var x = new Complex64Array( xbuf.buffer );
154+
var A = new Complex64Array( discreteUniform( N * N * 2, -10.0, 10.0, opts ).buffer );
155+
var x = new Complex64Array( discreteUniform( N * 2, -10.0, 10.0, opts ).buffer );
160156

161157
ctrsv( 'column-major', 'upper', 'no-transpose', 'unit', N, A, N, x, 1 );
162158
console.log( x );

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ interface Routine {
3131
* Solves one of the systems of equations `A*x = b`, `A^T*x = b`, or `A^H*x = b` where `b` and `x` are `N` element vectors and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix.
3232
*
3333
* @param order - storage layout
34-
* @param uplo - specifies whether `A` is an upper or lower triangular matrix
34+
* @param uplo - specifies whether `A` is an upper or lower triangular part of matrix is supplied.
3535
* @param trans - specifies whether `A` should be transposed, conjugate-transposed, or not transposed
3636
* @param diag - specifies whether `A` has a unit diagonal
3737
* @param N - number of elements along each dimension in the matrix `A`
@@ -55,7 +55,7 @@ interface Routine {
5555
/**
5656
* Solves one of the systems of equations `A*x = b`, `A^T*x = b`, or `A^H*x = b`, using alternative indexing semantics and where `b` and `x` are `N` element vectors and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix.
5757
*
58-
* @param uplo - specifies whether `A` is an upper or lower triangular matrix
58+
* @param uplo - specifies whether `A` is an upper or lower triangular part of matrix is supplied.
5959
* @param trans - specifies whether `A` should be transposed, conjugate-transposed, or not transposed
6060
* @param diag - specifies whether `A` has a unit diagonal
6161
* @param N - number of elements along each dimension in the matrix `A`
@@ -84,7 +84,7 @@ interface Routine {
8484
* Solves one of the systems of equations `A*x = b`, `A^T*x = b`, or `A^H*x = b` where `b` and `x` are `N` element vectors and `A` is an `N` by `N` unit, or non-unit, upper or lower triangular matrix.
8585
*
8686
* @param order - storage layout
87-
* @param uplo - specifies whether `A` is an upper or lower triangular matrix
87+
* @param uplo - specifies whether `A` is an upper or lower triangular part of matrix is supplied.
8888
* @param trans - specifies whether `A` should be transposed, conjugate-transposed, or not transposed
8989
* @param diag - specifies whether `A` has a unit diagonal
9090
* @param N - number of elements along each dimension in the matrix `A`

lib/node_modules/@stdlib/blas/base/ctrsv/examples/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/**
22
* @license Apache-2.0
33
*
4-
* Copyright (c) 2025 The Stdlib Authors.
4+
* Copyright (c) 2026 The Stdlib Authors.
55
*
66
* Licensed under the Apache License, Version 2.0 (the "License");
77
* you may not use this file except in compliance with the License.

lib/node_modules/@stdlib/blas/base/ctrsv/lib/base.js

Lines changed: 70 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/**
22
* @license Apache-2.0
33
*
4-
* Copyright (c) 2025 The Stdlib Authors.
4+
* Copyright (c) 2026 The Stdlib Authors.
55
*
66
* Licensed under the Apache License, Version 2.0 (the "License");
77
* you may not use this file except in compliance with the License.
@@ -51,7 +51,7 @@ var f32 = require( '@stdlib/number/float64/base/to-float32' );
5151
* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
5252
*
5353
* ctrsv( 'upper', 'no-transpose', 'unit', 3, A, 3, 1, 0, x, 1, 0 );
54-
* // x => <Complex64Array>
54+
* // x => <Complex64Array>[ -10.0, 5.0, 4.0, -7.0, 5.0, 6.0 ]
5555
*/
5656
function ctrsv( uplo, trans, diag, N, A, strideA1, strideA2, offsetA, x, strideX, offsetX ) { // eslint-disable-line max-params, max-len
5757
var nonunit;
@@ -68,16 +68,17 @@ function ctrsv( uplo, trans, diag, N, A, strideA1, strideA2, offsetA, x, strideX
6868
var imd;
6969
var ix0;
7070
var ix1;
71-
var oa2;
7271
var rea;
7372
var rex;
7473
var re0;
7574
var re1;
7675
var red;
7776
var sa0;
7877
var sa1;
78+
var oa2;
7979
var i0;
8080
var i1;
81+
var oa;
8182
var ox;
8283
var sx;
8384

@@ -98,42 +99,41 @@ function ctrsv( uplo, trans, diag, N, A, strideA1, strideA2, offsetA, x, strideX
9899
sa0 = strideA1 * 2; // stride for innermost loop
99100
sa1 = strideA2 * 2; // stride for outermost loop
100101
}
101-
ox = offsetX * 2;
102102
sx = strideX * 2;
103+
oa = offsetA * 2;
104+
ox = offsetX * 2;
103105

104-
if ( trans === 'conjugate-transpose' ) {
105-
sign = -1;
106-
} else {
107-
sign = 1;
108-
}
106+
// For conjugate-transpose, negate the imaginary part of A elements...
107+
sign = ( trans === 'conjugate-transpose' ) ? -1 : 1;
109108

110109
if (
111110
( !isrm && trans === 'no-transpose' && uplo === 'upper' ) ||
112111
( isrm && trans !== 'no-transpose' && uplo === 'lower' )
113112
) {
114-
ix1 = ox + ( ( N - 1 ) * sx );
115-
for ( i1 = N - 1; i1 >= 0; i1-- ) {
113+
// Solve A*x = b where A is upper triangular (col-major) or transposed lower (row-major)...
114+
ix1 = ox + ( ( N-1 ) * sx );
115+
for ( i1 = N-1; i1 >= 0; i1-- ) {
116116
re1 = viewX[ ix1 ];
117-
im1 = viewX[ ix1 + 1 ];
117+
im1 = viewX[ ix1+1 ];
118118
if ( re1 !== 0.0 || im1 !== 0.0 ) {
119-
oa2 = ( offsetA * 2 ) + ( sa1 * i1 );
119+
oa2 = oa + ( sa1*i1 );
120120
if ( nonunit ) {
121-
red = viewA[ oa2 + ( sa0 * i1 ) ];
122-
imd = sign * viewA[ oa2 + ( sa0 * i1 ) + 1 ];
123-
denom = f32( f32( red * red ) + f32( imd * imd ) );
121+
red = viewA[ oa2 + (sa0*i1) ];
122+
imd = sign * viewA[ oa2 + (sa0*i1) + 1 ];
123+
denom = f32( f32(red*red) + f32(imd*imd) );
124124
tmp = re1;
125-
re1 = f32( f32( f32( tmp * red ) + f32( im1 * imd ) ) / denom ); // eslint-disable-line max-len
126-
im1 = f32( f32( f32( im1 * red ) - f32( tmp * imd ) ) / denom ); // eslint-disable-line max-len
125+
re1 = f32( f32( f32(tmp*red) + f32(im1*imd) ) / denom );
126+
im1 = f32( f32( f32(im1*red) - f32(tmp*imd) ) / denom );
127127
viewX[ ix1 ] = re1;
128-
viewX[ ix1 + 1 ] = im1;
128+
viewX[ ix1+1 ] = im1;
129129
}
130130
ix0 = ix1;
131-
for ( i0 = i1 - 1; i0 >= 0; i0-- ) {
131+
for ( i0 = i1-1; i0 >= 0; i0-- ) {
132132
ix0 -= sx;
133-
rea = viewA[ oa2 + ( sa0 * i0 ) ];
134-
ima = sign * viewA[ oa2 + ( sa0 * i0 ) + 1 ];
135-
viewX[ ix0 ] = f32( viewX[ ix0 ] - f32( f32( re1 * rea ) - f32( im1 * ima ) ) ); // eslint-disable-line max-len
136-
viewX[ ix0 + 1 ] = f32( viewX[ ix0 + 1 ] - f32( f32( re1 * ima ) + f32( im1 * rea ) ) ); // eslint-disable-line max-len
133+
rea = viewA[ oa2 + (sa0*i0) ];
134+
ima = sign * viewA[ oa2 + (sa0*i0) + 1 ];
135+
viewX[ ix0 ] = f32( viewX[ ix0 ] - f32( f32(re1*rea) - f32(im1*ima) ) );
136+
viewX[ ix0+1 ] = f32( viewX[ ix0+1 ] - f32( f32(re1*ima) + f32(im1*rea) ) );
137137
}
138138
}
139139
ix1 -= sx;
@@ -144,29 +144,30 @@ function ctrsv( uplo, trans, diag, N, A, strideA1, strideA2, offsetA, x, strideX
144144
( !isrm && trans === 'no-transpose' && uplo === 'lower' ) ||
145145
( isrm && trans !== 'no-transpose' && uplo === 'upper' )
146146
) {
147+
// Solve A*x = b where A is lower triangular (col-major) or transposed upper (row-major)...
147148
ix1 = ox;
148149
for ( i1 = 0; i1 < N; i1++ ) {
149150
re1 = viewX[ ix1 ];
150-
im1 = viewX[ ix1 + 1 ];
151+
im1 = viewX[ ix1+1 ];
151152
if ( re1 !== 0.0 || im1 !== 0.0 ) {
152-
oa2 = ( offsetA * 2 ) + ( sa1 * i1 );
153+
oa2 = oa + ( sa1*i1 );
153154
if ( nonunit ) {
154-
red = viewA[ oa2 + ( sa0 * i1 ) ];
155-
imd = sign * viewA[ oa2 + ( sa0 * i1 ) + 1 ];
156-
denom = f32( f32( red * red ) + f32( imd * imd ) );
155+
red = viewA[ oa2 + (sa0*i1) ];
156+
imd = sign * viewA[ oa2 + (sa0*i1) + 1 ];
157+
denom = f32( f32(red*red) + f32(imd*imd) );
157158
tmp = re1;
158-
re1 = f32( f32( f32( tmp * red ) + f32( im1 * imd ) ) / denom ); // eslint-disable-line max-len
159-
im1 = f32( f32( f32( im1 * red ) - f32( tmp * imd ) ) / denom ); // eslint-disable-line max-len
159+
re1 = f32( f32( f32(tmp*red) + f32(im1*imd) ) / denom );
160+
im1 = f32( f32( f32(im1*red) - f32(tmp*imd) ) / denom );
160161
viewX[ ix1 ] = re1;
161-
viewX[ ix1 + 1 ] = im1;
162+
viewX[ ix1+1 ] = im1;
162163
}
163164
ix0 = ix1;
164-
for ( i0 = i1 + 1; i0 < N; i0++ ) {
165+
for ( i0 = i1+1; i0 < N; i0++ ) {
165166
ix0 += sx;
166-
rea = viewA[ oa2 + ( sa0 * i0 ) ];
167-
ima = sign * viewA[ oa2 + ( sa0 * i0 ) + 1 ];
168-
viewX[ ix0 ] = f32( viewX[ ix0 ] - f32( f32( re1 * rea ) - f32( im1 * ima ) ) ); // eslint-disable-line max-len
169-
viewX[ ix0 + 1 ] = f32( viewX[ ix0 + 1 ] - f32( f32( re1 * ima ) + f32( im1 * rea ) ) ); // eslint-disable-line max-len
167+
rea = viewA[ oa2 + (sa0*i0) ];
168+
ima = sign * viewA[ oa2 + (sa0*i0) + 1 ];
169+
viewX[ ix0 ] = f32( viewX[ ix0 ] - f32( f32(re1*rea) - f32(im1*ima) ) );
170+
viewX[ ix0+1 ] = f32( viewX[ ix0+1 ] - f32( f32(re1*ima) + f32(im1*rea) ) );
170171
}
171172
}
172173
ix1 += sx;
@@ -177,62 +178,64 @@ function ctrsv( uplo, trans, diag, N, A, strideA1, strideA2, offsetA, x, strideX
177178
( !isrm && trans !== 'no-transpose' && uplo === 'upper' ) ||
178179
( isrm && trans === 'no-transpose' && uplo === 'lower' )
179180
) {
181+
// Solve A^T*x = b or A^H*x = b where A is upper triangular (col-major) or lower triangular (row-major)...
180182
ix1 = ox;
181183
for ( i1 = 0; i1 < N; i1++ ) {
182184
re0 = viewX[ ix1 ];
183-
im0 = viewX[ ix1 + 1 ];
184-
oa2 = ( offsetA * 2 ) + ( sa1 * i1 );
185+
im0 = viewX[ ix1+1 ];
186+
oa2 = oa + ( sa1*i1 );
185187
ix0 = ox;
186-
for ( i0 = 0; i0 <= i1 - 1; i0++ ) {
187-
rea = viewA[ oa2 + ( sa0 * i0 ) ];
188-
ima = sign * viewA[ oa2 + ( sa0 * i0 ) + 1 ];
188+
for ( i0 = 0; i0 <= i1-1; i0++ ) {
189+
rea = viewA[ oa2 + (sa0*i0) ];
190+
ima = sign * viewA[ oa2 + (sa0*i0) + 1 ];
189191
rex = viewX[ ix0 ];
190-
imx = viewX[ ix0 + 1 ];
191-
re0 = f32( re0 - f32( f32( rea * rex ) - f32( ima * imx ) ) ); // eslint-disable-line max-len
192-
im0 = f32( im0 - f32( f32( rea * imx ) + f32( ima * rex ) ) ); // eslint-disable-line max-len
192+
imx = viewX[ ix0+1 ];
193+
re0 = f32( re0 - f32( f32(rea*rex) - f32(ima*imx) ) );
194+
im0 = f32( im0 - f32( f32(rea*imx) + f32(ima*rex) ) );
193195
ix0 += sx;
194196
}
195197
if ( nonunit ) {
196-
red = viewA[ oa2 + ( sa0 * i1 ) ];
197-
imd = sign * viewA[ oa2 + ( sa0 * i1 ) + 1 ];
198-
denom = f32( f32( red * red ) + f32( imd * imd ) );
198+
red = viewA[ oa2 + (sa0*i1) ];
199+
imd = sign * viewA[ oa2 + (sa0*i1) + 1 ];
200+
denom = f32( f32(red*red) + f32(imd*imd) );
199201
tmp = re0;
200-
re0 = f32( f32( f32( tmp * red ) + f32( im0 * imd ) ) / denom ); // eslint-disable-line max-len
201-
im0 = f32( f32( f32( im0 * red ) - f32( tmp * imd ) ) / denom ); // eslint-disable-line max-len
202+
re0 = f32( f32( f32(tmp*red) + f32(im0*imd) ) / denom );
203+
im0 = f32( f32( f32(im0*red) - f32(tmp*imd) ) / denom );
202204
}
203205
viewX[ ix1 ] = re0;
204-
viewX[ ix1 + 1 ] = im0;
206+
viewX[ ix1+1 ] = im0;
205207
ix1 += sx;
206208
}
207209
return x;
208210
}
209211
// ( !isrm && trans !== 'no-transpose' && uplo === 'lower' ) || ( isrm && trans === 'no-transpose' && uplo === 'upper' )
210-
ox += ( N - 1 ) * sx;
212+
// Solve A^T*x = b or A^H*x = b where A is lower triangular (col-major) or upper triangular (row-major)...
213+
ox += ( N-1 ) * sx;
211214
ix1 = ox;
212-
for ( i1 = N - 1; i1 >= 0; i1-- ) {
215+
for ( i1 = N-1; i1 >= 0; i1-- ) {
213216
re0 = viewX[ ix1 ];
214-
im0 = viewX[ ix1 + 1 ];
215-
oa2 = ( offsetA * 2 ) + ( sa1 * i1 );
217+
im0 = viewX[ ix1+1 ];
218+
oa2 = oa + ( sa1*i1 );
216219
ix0 = ox;
217-
for ( i0 = N - 1; i0 > i1; i0-- ) {
218-
rea = viewA[ oa2 + ( sa0 * i0 ) ];
219-
ima = sign * viewA[ oa2 + ( sa0 * i0 ) + 1 ];
220+
for ( i0 = N-1; i0 > i1; i0-- ) {
221+
rea = viewA[ oa2 + (sa0*i0) ];
222+
ima = sign * viewA[ oa2 + (sa0*i0) + 1 ];
220223
rex = viewX[ ix0 ];
221-
imx = viewX[ ix0 + 1 ];
222-
re0 = f32( re0 - f32( f32( rea * rex ) - f32( ima * imx ) ) );
223-
im0 = f32( im0 - f32( f32( rea * imx ) + f32( ima * rex ) ) );
224+
imx = viewX[ ix0+1 ];
225+
re0 = f32( re0 - f32( f32(rea*rex) - f32(ima*imx) ) );
226+
im0 = f32( im0 - f32( f32(rea*imx) + f32(ima*rex) ) );
224227
ix0 -= sx;
225228
}
226229
if ( nonunit ) {
227-
red = viewA[ oa2 + ( sa0 * i1 ) ];
228-
imd = sign * viewA[ oa2 + ( sa0 * i1 ) + 1 ];
229-
denom = f32( f32( red * red ) + f32( imd * imd ) );
230+
red = viewA[ oa2 + (sa0*i1) ];
231+
imd = sign * viewA[ oa2 + (sa0*i1) + 1 ];
232+
denom = f32( f32(red*red) + f32(imd*imd) );
230233
tmp = re0;
231-
re0 = f32( f32( f32( tmp * red ) + f32( im0 * imd ) ) / denom ); // eslint-disable-line max-len
232-
im0 = f32( f32( f32( im0 * red ) - f32( tmp * imd ) ) / denom ); // eslint-disable-line max-len
234+
re0 = f32( f32( f32(tmp*red) + f32(im0*imd) ) / denom );
235+
im0 = f32( f32( f32(im0*red) - f32(tmp*imd) ) / denom );
233236
}
234237
viewX[ ix1 ] = re0;
235-
viewX[ ix1 + 1 ] = im0;
238+
viewX[ ix1+1 ] = im0;
236239
ix1 -= sx;
237240
}
238241
return x;

lib/node_modules/@stdlib/blas/base/ctrsv/lib/ctrsv.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/**
22
* @license Apache-2.0
33
*
4-
* Copyright (c) 2025 The Stdlib Authors.
4+
* Copyright (c) 2026 The Stdlib Authors.
55
*
66
* Licensed under the Apache License, Version 2.0 (the "License");
77
* you may not use this file except in compliance with the License.
@@ -61,7 +61,7 @@ var base = require( './base.js' );
6161
* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
6262
*
6363
* ctrsv( 'row-major', 'upper', 'no-transpose', 'unit', 3, A, 3, x, 1 );
64-
* // x => <Complex64Array>
64+
* // x => <Complex64Array>[ -10.0, 5.0, 4.0, -7.0, 5.0, 6.0 ]
6565
*/
6666
function ctrsv( order, uplo, trans, diag, N, A, LDA, x, strideX ) {
6767
var sa1;

lib/node_modules/@stdlib/blas/base/ctrsv/lib/index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
3232
*
3333
* ctrsv( 'row-major', 'upper', 'no-transpose', 'unit', 3, A, 3, x, 1 );
34-
* // x => <Complex64Array>
34+
* // x => <Complex64Array>[ -10.0, 5.0, 4.0, -7.0, 5.0, 6.0 ]
3535
*
3636
* @example
3737
* var Complex64Array = require( '@stdlib/array/complex64' );
@@ -41,7 +41,7 @@
4141
* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
4242
*
4343
* ctrsv.ndarray( 'upper', 'no-transpose', 'unit', 3, A, 3, 1, 0, x, 1, 0 );
44-
* // x => <Complex64Array>
44+
* // x => <Complex64Array>[ -10.0, 5.0, 4.0, -7.0, 5.0, 6.0 ]
4545
*/
4646

4747
// MODULES //

lib/node_modules/@stdlib/blas/base/ctrsv/lib/ndarray.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ var base = require( './base.js' );
5959
* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
6060
*
6161
* ctrsv( 'upper', 'no-transpose', 'unit', 3, A, 3, 1, 0, x, 1, 0 );
62-
* // x => <Complex64Array>
62+
* // x => <Complex64Array>[ -10.0, 5.0, 4.0, -7.0, 5.0, 6.0 ]
6363
*/
6464
function ctrsv( uplo, trans, diag, N, A, strideA1, strideA2, offsetA, x, strideX, offsetX ) { // eslint-disable-line max-params, max-len
6565
if ( !isMatrixTriangle( uplo ) ) {

0 commit comments

Comments
 (0)