Complex128

128-bit complex number.

Usage

var Complex128 = require( '@stdlib/complex/float64' );

Complex128( real, imag )

128-bit complex number constructor, where real and imag are the real and imaginary components, respectively.

var z = new Complex128( 5.0, 3.0 );
// returns <Complex128>

Properties

Complex128.BYTES_PER_ELEMENT

Size (in bytes) of each component.

var nbytes = Complex128.BYTES_PER_ELEMENT;
// returns 8

Complex128.prototype.BYTES_PER_ELEMENT

Size (in bytes) of each component.

var z = new Complex128( 5.0, 3.0 );

var nbytes = z.BYTES_PER_ELEMENT;
// returns 8

Complex128.prototype.byteLength

Length (in bytes) of a complex number.

var z = new Complex128( 5.0, 3.0 );

var nbytes = z.byteLength;
// returns 16

Instance

A Complex128 instance has the following properties...

re

A read-only property returning the real component.

var z = new Complex128( 5.0, 3.0 );

var re = z.re;
// returns 5.0

im

A read-only property returning the imaginary component.

var z = new Complex128( 5.0, -3.0 );

var im = z.im;
// returns -3.0

Methods

Accessor Methods

These methods do not mutate a Complex128 instance and, instead, return a complex number representation.

Complex128.prototype.toString()

Returns a string representation of a Complex128 instance.

var z = new Complex128( 5.0, 3.0 );
var str = z.toString();
// returns '5 + 3i'

z = new Complex128( -5.0, -3.0 );
str = z.toString();
// returns '-5 - 3i'

Complex128.prototype.toJSON()

Returns a JSON representation of a Complex128 instance. JSON.stringify() implicitly calls this method when stringifying a Complex128 instance.

var z = new Complex128( 5.0, -3.0 );

var o = z.toJSON();
/*
  {
    "type": "Complex128",
    "re": 5.0,
    "im": -3.0
  }
*/

To revive a Complex128 number from a JSON string, see @stdlib/complex/reviver-float64.


Notes

  • Both the real and imaginary components are stored as double-precision floating-point numbers.

Examples

var Complex128 = require( '@stdlib/complex/float64' );

var z = new Complex128( 3.0, -2.0 );

console.log( 'type: %s', typeof z );
// => type: object

console.log( 'str: %s', z );
// => str: 3 - 2i

console.log( 'real: %d', z.re );
// => real: 3.0

console.log( 'imag: %d', z.im );
// => imag: -2.0

console.log( 'JSON: %s', JSON.stringify( z ) );
// => JSON: {"type":"Complex128","re":3,"im":-2}