0.2.0 • Published 3 months ago

@stdlib/strided-base-reinterpret-complex64 v0.2.0

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
3 months ago

reinterpret

NPM version Build Status Coverage Status

Reinterpret a Complex64Array as a Float32Array.

Installation

npm install @stdlib/strided-base-reinterpret-complex64

Usage

var reinterpret = require( '@stdlib/strided-base-reinterpret-complex64' );

reinterpret( x, offset )

Returns a Float32Array view of a Complex64Array.

var Complex64Array = require( '@stdlib/array-complex64' );

var x = new Complex64Array( 10 );

var view = reinterpret( x, 0 );
// returns <Float32Array>

var bool = ( view.buffer === x.buffer );
// returns true

var len = view.length;
// returns 20

The offset argument specifies the starting index of the returned Float32Array view relative to the Complex64Array.

var Complex64Array = require( '@stdlib/array-complex64' );

var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );

var view = reinterpret( x, 2 );
// returns <Float32Array>

var len = view.length;
// returns 4

var re = view[ 0 ];
// returns 5.0

var im = view[ 1 ];
// returns 6.0

Examples

var Complex64Array = require( '@stdlib/array-complex64' );
var real = require( '@stdlib/complex-real' );
var imag = require( '@stdlib/complex-imag' );
var reinterpret = require( '@stdlib/strided-base-reinterpret-complex64' );

// Define a complex number array:
var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
// returns <Complex64Array>

// Reinterpret as a `float32` array:
var view = reinterpret( x, 0 );
// returns <Float32Array>

// Set view elements:
view[ 0 ] = 9.0;
view[ 1 ] = 10.0;

// Get the first element of the complex number array:
var z = x.get( 0 );
// returns <Complex64>

var re = real( z );
// returns 9.0

var im = imag( z );
// returns 10.0

Notice

This package is part of stdlib, a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.

For more information on the project, filing bug reports and feature requests, and guidance on how to develop stdlib, see the main project repository.

Community

Chat


License

See LICENSE.

Copyright

Copyright © 2016-2024. The Stdlib Authors.