Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: update examples for blas/base/zaxpy #5173

Merged
merged 1 commit into from
Feb 16, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 5 additions & 55 deletions lib/node_modules/@stdlib/blas/base/zaxpy/README.md
Original file line number Diff line number Diff line change
@@ -37,23 +37,13 @@ Scales values from `zx` by `za` and adds the result to `zy`.
```javascript
var Complex128Array = require( '@stdlib/array/complex128' );
var Complex128 = require( '@stdlib/complex/float64/ctor' );
var real = require( '@stdlib/complex/float64/real' );
var imag = require( '@stdlib/complex/float64/imag' );

var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
var za = new Complex128( 2.0, 2.0 );

zaxpy( 3, za, zx, 1, zy, 1 );

var z = zy.get( 0 );
// returns <Complex128>

var re = real( z );
// returns -1.0

var im = imag( z );
// returns 7.0
// zy => <Complex128Array>[ -1.0, 7.0, -1.0, 15.0, -1.0, 23.0 ]
```

The function has the following parameters:
@@ -70,23 +60,13 @@ The `N` and stride parameters determine how values from `zx` are scaled by `za`
```javascript
var Complex128Array = require( '@stdlib/array/complex128' );
var Complex128 = require( '@stdlib/complex/float64/ctor' );
var real = require( '@stdlib/complex/float64/real' );
var imag = require( '@stdlib/complex/float64/imag' );

var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
var za = new Complex128( 2.0, 2.0 );

zaxpy( 2, za, zx, 2, zy, 2 );

var z = zy.get( 0 );
// returns <Complex128>

var re = real( z );
// returns -1.0

var im = imag( z );
// returns 7.0
// zy => <Complex128Array>[ -1.0, 7.0, 1.0, 1.0, -1.0, 23.0, 1.0, 1.0 ]
```

Note that indexing is relative to the first index. To introduce an offset, use [`typed array`][mdn-typed-array] views.
@@ -96,8 +76,6 @@ Note that indexing is relative to the first index. To introduce an offset, use [
```javascript
var Complex128Array = require( '@stdlib/array/complex128' );
var Complex128 = require( '@stdlib/complex/float64/ctor' );
var real = require( '@stdlib/complex/float64/real' );
var imag = require( '@stdlib/complex/float64/imag' );

// Initial arrays...
var zx0 = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
@@ -112,15 +90,7 @@ var zy1 = new Complex128Array( zy0.buffer, zy0.BYTES_PER_ELEMENT*2 ); // start a

// Scales values of `zx0` by `za` starting from second index and add the result to `zy0` starting from third index...
zaxpy( 2, za, zx1, 1, zy1, 1 );

var z = zy0.get( 2 );
// returns <Complex128>

var re = real( z );
// returns -1.0

var im = imag( z );
// returns 15.0
// zy0 => <Complex128Array>[ 1.0, 1.0, 1.0, 1.0, -1.0, 15.0, -1.0, 23.0 ]
```

#### zaxpy.ndarray( N, za, zx, strideX, offsetX, zy, strideY, offsetY )
@@ -130,23 +100,13 @@ Scales values from `zx` by `za` and adds the result to `zy` using alternative in
```javascript
var Complex128Array = require( '@stdlib/array/complex128' );
var Complex128 = require( '@stdlib/complex/float64/ctor' );
var real = require( '@stdlib/complex/float64/real' );
var imag = require( '@stdlib/complex/float64/imag' );

var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
var za = new Complex128( 2.0, 2.0 );

zaxpy.ndarray( 3, za, zx, 1, 0, zy, 1, 0 );

var z = zy.get( 0 );
// returns <Complex128>

var re = real( z );
// returns -1.0

var im = imag( z );
// returns 7.0
// zy => <Complex128Array>[ -1.0, 7.0, -1.0, 15.0, -1.0, 23.0 ]
```

The function has the following additional parameters:
@@ -159,23 +119,13 @@ While [`typed array`][mdn-typed-array] views mandate a view offset based on the
```javascript
var Complex128Array = require( '@stdlib/array/complex128' );
var Complex128 = require( '@stdlib/complex/float64/ctor' );
var real = require( '@stdlib/complex/float64/real' );
var imag = require( '@stdlib/complex/float64/imag' );

var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
var za = new Complex128( 2.0, 2.0 );

zaxpy.ndarray( 3, za, zx, 1, 1, zy, 1, 1 );

var z = zy.get( 3 );
// returns <Complex128>

var re = real( z );
// returns -1.0

var im = imag( z );
// returns 31.0
// zy => <Complex128Array>[ 1.0, 1.0, -1.0, 15.0, -1.0, 23.0, -1.0, 31.0 ]
```

</section>
42 changes: 12 additions & 30 deletions lib/node_modules/@stdlib/blas/base/zaxpy/docs/repl.txt
Original file line number Diff line number Diff line change
@@ -43,34 +43,24 @@
> var zx = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0 ] );
> var zy = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0 ] );
> var za = new {{alias:@stdlib/complex/float64/ctor}}( 2.0, 2.0 );
> {{alias}}( 2, za, zx, 1, zy, 1 );
> var z = zy.get( 0 );
> var re = {{alias:@stdlib/complex/float64/real}}( z )
-1.0
> var im = {{alias:@stdlib/complex/float64/imag}}( z )
7.0
> {{alias}}( 2, za, zx, 1, zy, 1 )
<Complex128Array>[ -1.0, 7.0, -1.0, 15.0 ]

// Advanced indexing:
> zx = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
> zy = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
> {{alias}}( 2, za, zx, -2, zy, 1 );
> z = zy.get( 0 );
> re = {{alias:@stdlib/complex/float64/real}}( z )
-1.0
> im = {{alias:@stdlib/complex/float64/imag}}( z )
23.0
> {{alias}}( 2, za, zx, -2, zy, 1 )
<Complex128Array>[ -1.0, 23.0, -1.0, 7.0, 1.0, 1.0 ]

// Using typed array views:
> var zx0 = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0 ] );
> var zy0 = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0 ] );
> var zx1 = new {{alias:@stdlib/array/complex128}}( zx0.buffer, zx0.BYTES_PER_ELEMENT*1 );
> var zy1 = new {{alias:@stdlib/array/complex128}}( zy0.buffer, zy0.BYTES_PER_ELEMENT*1 );
> {{alias}}( 1, za, zx1, 1, zy1, 1 );
> z = zy0.get( 1 );
> re = {{alias:@stdlib/complex/float64/real}}( z )
-1.0
> im = {{alias:@stdlib/complex/float64/imag}}( z )
15.0
> {{alias}}( 1, za, zx1, 1, zy1, 1 )
<Complex128Array>[ -1.0, 15.0 ]
> zy0
<Complex128Array>[ 1.0, 1.0, -1.0, 15.0 ]


{{alias}}.ndarray( N, za, zx, strideX, offsetX, zy, strideY, offsetY )
@@ -120,22 +110,14 @@
> var zx = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0 ] );
> var zy = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0 ] );
> var za = new {{alias:@stdlib/complex/float64/ctor}}( 2.0, 2.0 );
> {{alias}}.ndarray( zx.length, za, zx, 1, 0, zy, 1, 0 );
> var z = zy.get( 0 );
> var re = {{alias:@stdlib/complex/float64/real}}( z )
-1.0
> var im = {{alias:@stdlib/complex/float64/imag}}( z )
7.0
> {{alias}}.ndarray( zx.length, za, zx, 1, 0, zy, 1, 0 )
<Complex128Array>[ -1.0, 7.0, -1.0, 15.0 ]

// Advanced indexing:
> zx = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
> zy = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
> {{alias}}.ndarray( 2, za, zx, 1, 1, zy, 1, 1 );
> z = zy.get( 2 );
> re = {{alias:@stdlib/complex/float64/real}}( z )
-1.0
> im = {{alias:@stdlib/complex/float64/imag}}( z )
23.0
> {{alias}}.ndarray( 2, za, zx, 1, 1, zy, 1, 1 )
<Complex128Array>[ 1.0, 1.0, -1.0, 15.0, -1.0, 23.0 ]

See Also
--------
48 changes: 4 additions & 44 deletions lib/node_modules/@stdlib/blas/base/zaxpy/docs/types/index.d.ts
Original file line number Diff line number Diff line change
@@ -41,23 +41,13 @@ interface Routine {
* @example
* var Complex128Array = require( '@stdlib/array/complex128' );
* var Complex128 = require( '@stdlib/complex/float64/ctor' );
* var real = require( '@stdlib/complex/float64/real' );
* var imag = require( '@stdlib/complex/float64/imag' );
*
* var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
* var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
* var za = new Complex128( 2.0, 2.0 );
*
* zaxpy( zx.length, za, zx, 1, zy, 1 );
*
* var z = zy.get( 0 );
* // returns <Complex128>
*
* var re = real( z );
* // returns -1.0
*
* var im = imag( z );
* // returns 7.0
* // zy => <Complex128Array>[ -1.0, 7.0, -1.0, 15.0, -1.0, 23.0 ]
*/
( N: number, za: Complex128, zx: Complex128Array, strideX: number, zy: Complex128Array, strideY: number ): Complex128Array;

@@ -77,23 +67,13 @@ interface Routine {
* @example
* var Complex128Array = require( '@stdlib/array/complex128' );
* var Complex128 = require( '@stdlib/complex/float64/ctor' );
* var real = require( '@stdlib/complex/float64/real' );
* var imag = require( '@stdlib/complex/float64/imag' );
*
* var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
* var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
* var za = new Complex128( 2.0, 2.0 );
*
* zaxpy.ndarray( zx.length, za, zx, 1, 0, zy, 1, 0 );
*
* var z = zy.get( 0 );
* // returns <Complex128>
*
* var re = real( z );
* // returns -1.0
*
* var im = imag( z );
* // returns 7.0
* // zy => <Complex128Array>[ -1.0, 7.0, -1.0, 15.0, -1.0, 23.0 ]
*/
ndarray( N: number, za: Complex128, zx: Complex128Array, strideX: number, offsetX: number, zy: Complex128Array, strideY: number, offsetY: number ): Complex128Array;
}
@@ -112,44 +92,24 @@ interface Routine {
* @example
* var Complex128Array = require( '@stdlib/array/complex128' );
* var Complex128 = require( '@stdlib/complex/float64/ctor' );
* var real = require( '@stdlib/complex/float64/real' );
* var imag = require( '@stdlib/complex/float64/imag' );
*
* var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
* var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
* var za = new Complex128( 2.0, 2.0 );
*
* zaxpy( 2, za, zx, 2, zy, 2 );
*
* var z = zy.get( 0 );
* // returns <Complex128>
*
* var re = real( z );
* // returns -1.0
*
* var im = imag( z );
* // returns 7.0
* // zy => <Complex128Array>[ -1.0, 7.0, 1.0, 1.0, -1.0, 23.0, 1.0, 1.0 ]
*
* @example
* var Complex128Array = require( '@stdlib/array/complex128' );
* var Complex128 = require( '@stdlib/complex/float64/ctor' );
* var real = require( '@stdlib/complex/float64/real' );
* var imag = require( '@stdlib/complex/float64/imag' );
*
* var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
* var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
* var za = new Complex128( 2.0, 2.0 );
*
* zaxpy.ndarray( 3, za, zx, 1, 1, zy, 1, 1 );
*
* var z = zy.get( 3 );
* // returns <Complex128>
*
* var re = real( z );
* // returns -1.0
*
* var im = imag( z );
* // returns 31.0
* // zy => <Complex128Array>[ 1.0, 1.0, -1.0, 15.0, -1.0, 23.0, -1.0, 31.0 ]
*/
declare var zaxpy: Routine;

24 changes: 2 additions & 22 deletions lib/node_modules/@stdlib/blas/base/zaxpy/lib/index.js
Original file line number Diff line number Diff line change
@@ -26,46 +26,26 @@
* @example
* var Complex128Array = require( '@stdlib/array/complex128' );
* var Complex128 = require( '@stdlib/complex/float64/ctor' );
* var real = require( '@stdlib/complex/float64/real' );
* var imag = require( '@stdlib/complex/float64/imag' );
* var zaxpy = require( '@stdlib/blas/base/zaxpy' );
*
* var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
* var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
* var za = new Complex128( 2.0, 2.0 );
*
* zaxpy( 3, za, zx, 1, zy, 1 );
*
* var z = zy.get( 0 );
* // returns <Complex128>
*
* var re = real( z );
* // returns -1.0
*
* var im = imag( z );
* // returns 7.0
* // zy => <Complex128Array>[ -1.0, 7.0, -1.0, 15.0, -1.0, 23.0 ]
*
* @example
* var Complex128Array = require( '@stdlib/array/complex128' );
* var Complex128 = require( '@stdlib/complex/float64/ctor' );
* var real = require( '@stdlib/complex/float64/real' );
* var imag = require( '@stdlib/complex/float64/imag' );
* var zaxpy = require( '@stdlib/blas/base/zaxpy' );
*
* var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
* var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
* var za = new Complex128( 2.0, 2.0 );
*
* zaxpy.ndarray( 3, za, zx, 1, 0, zy, 1, 0 );
*
* var z = zy.get( 0 );
* // returns <Complex128>
*
* var re = real( z );
* // returns -1.0
*
* var im = imag( z );
* // returns 7.0
* // zy => <Complex128Array>[ -1.0, 7.0, -1.0, 15.0, -1.0, 23.0 ]
*/

// MODULES //
12 changes: 1 addition & 11 deletions lib/node_modules/@stdlib/blas/base/zaxpy/lib/ndarray.js
Original file line number Diff line number Diff line change
@@ -45,23 +45,13 @@ var dcabs1 = require( '@stdlib/blas/base/dcabs1' );
* @example
* var Complex128Array = require( '@stdlib/array/complex128' );
* var Complex128 = require( '@stdlib/complex/float64/ctor' );
* var real = require( '@stdlib/complex/float64/real' );
* var imag = require( '@stdlib/complex/float64/imag' );
*
* var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
* var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
* var za = new Complex128( 2.0, 2.0 );
*
* zaxpy( 3, za, zx, 1, 0, zy, 1, 0 );
*
* var z = zy.get( 0 );
* // returns <Complex128>
*
* var re = real( z );
* // returns -1.0
*
* var im = imag( z );
* // returns 7.0
* // zy => <Complex128Array>[ -1.0, 7.0, -1.0, 15.0, -1.0, 23.0 ]
*/
function zaxpy( N, za, zx, strideX, offsetX, zy, strideY, offsetY ) {
var viewX;
12 changes: 1 addition & 11 deletions lib/node_modules/@stdlib/blas/base/zaxpy/lib/zaxpy.js
Original file line number Diff line number Diff line change
@@ -40,23 +40,13 @@ var ndarray = require( './ndarray.js' );
* @example
* var Complex128Array = require( '@stdlib/array/complex128' );
* var Complex128 = require( '@stdlib/complex/float64/ctor' );
* var real = require( '@stdlib/complex/float64/real' );
* var imag = require( '@stdlib/complex/float64/imag' );
*
* var zx = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] );
* var zy = new Complex128Array( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] );
* var za = new Complex128( 2.0, 2.0 );
*
* zaxpy( 3, za, zx, 1, zy, 1 );
*
* var z = zy.get( 0 );
* // returns <Complex128>
*
* var re = real( z );
* // returns -1.0
*
* var im = imag( z );
* // returns 7.0
* // zy => <Complex128Array>[ -1.0, 7.0, -1.0, 15.0, -1.0, 23.0 ]
*/
function zaxpy( N, za, zx, strideX, zy, strideY ) {
var ix = stride2offset( N, strideX );