Skip to content

math.MutableComplex.Class.MutableComplex

Christian d'Heureuse edited this page Jun 7, 2026 · 2 revisions

dsp-collection / math/MutableComplex / MutableComplex

Class: MutableComplex

Defined in: math/MutableComplex.ts:17

A mutable complex number.

This class implementation for storing complex numbers is optimized for high performance computation. Immutability is sacrificed in favor of fast in-place operations.

When mutability is no longer needed, a MutableComplex can be type cast into an immutable Complex.

Extends

Constructors

Constructor

new MutableComplex(re?, im?): MutableComplex;

Defined in: math/MutableComplex.ts:37

Constructs a MutableComplex.

Parameters

re?

number = 0

The real part. Optional. Default is 0.

im?

number = 0

The imaginary part. Optional. Default is 0.

Returns

MutableComplex

Overrides

Complex.constructor

Properties

Property Modifier Type Description Overrides Inherited from Defined in
im public number Mutable imaginary part of the complex number. Complex.im - math/MutableComplex.ts:25
re public number Mutable real part of the complex number. Complex.re - math/MutableComplex.ts:22
I readonly Complex The imaginary unit i. - Complex.I math/Complex.ts:19
INFINITY readonly Complex A Complex representing "+Infinity + Infinity i" - Complex.INFINITY math/Complex.ts:34
NaN readonly Complex A Complex representing "NaN + NaN i" - Complex.NaN math/Complex.ts:31
ONE readonly Complex A Complex representing 1. - Complex.ONE math/Complex.ts:25
TWO readonly Complex A Complex representing 2. - Complex.TWO math/Complex.ts:28
ZERO readonly Complex A Complex representing 0. - Complex.ZERO math/Complex.ts:22

Methods

abs()

abs(): number;

Defined in: math/Complex.ts:128

Returns the absolute value (magnitude, vector length, radius).

Returns

number

Inherited from

Complex.abs


add()

add(x): Complex;

Defined in: math/Complex.ts:201

Returns this + x;

Parameters

x

Complex

Returns

Complex

Inherited from

Complex.add


addReal()

addReal(x): Complex;

Defined in: math/Complex.ts:195

Returns this + x;

Parameters

x

number

Returns

Complex

Inherited from

Complex.addReal


addRealTo()

addRealTo(x): void;

Defined in: math/MutableComplex.ts:97

Mutates this MutableComplex by adding a real number.

Parameters

x

number

Returns

void


addTo()

addTo(x): void;

Defined in: math/MutableComplex.ts:103

Mutates this MutableComplex by adding a Complex.

Parameters

x

Complex

Returns

void


arg()

arg(): number;

Defined in: math/Complex.ts:134

Returns the argument (angle).

Returns

number

Inherited from

Complex.arg


conj()

conj(): Complex;

Defined in: math/Complex.ts:140

Returns the conjugate.

Returns

Complex

Inherited from

Complex.conj


div()

div(x): Complex;

Defined in: math/Complex.ts:243

Returns this / x;

Parameters

x

Complex

Returns

Complex

Inherited from

Complex.div


divBy()

divBy(x): void;

Defined in: math/MutableComplex.ts:143

Mutates this MutableComplex by dividing by a Complex.

Parameters

x

Complex

Returns

void


divByReal()

divByReal(x): void;

Defined in: math/MutableComplex.ts:136

Mutates this MutableComplex by dividing by a real number.

Parameters

x

number

Returns

void


divReal()

divReal(x): Complex;

Defined in: math/Complex.ts:237

Returns this / x;

Parameters

x

number

Returns

Complex

Inherited from

Complex.divReal


equals()

equals(x): boolean;

Defined in: math/Complex.ts:99

Returns true if this complex number is exactly equal to another.

Parameters

x

Complex

Returns

boolean

Inherited from

Complex.equals


exp()

exp(): Complex;

Defined in: math/Complex.ts:166

Returns the exponential function. (The Euler's number e raised to the power of this complex number).

Returns

Complex

Inherited from

Complex.exp


fuzzyEquals()

fuzzyEquals(x, eps): boolean;

Defined in: math/Complex.ts:106

Returns true if the real and imaginary parts of the two numbers do not differ more than eps.

Parameters

x

Complex

eps

number

Returns

boolean

Inherited from

Complex.fuzzyEquals


isFinite()

isFinite(): boolean;

Defined in: math/Complex.ts:93

Returns true if the real and imaginary parts are both finite.

Returns

boolean

Inherited from

Complex.isFinite


isInfinite()

isInfinite(): boolean;

Defined in: math/Complex.ts:87

Returns true if the real or the imaginary part is infinite (positive or negative).

Returns

boolean

Inherited from

Complex.isInfinite


isNaN()

isNaN(): boolean;

Defined in: math/Complex.ts:81

Returns true if the real part or the imaginary part is NaN.

Returns

boolean

Inherited from

Complex.isNaN


log()

log(): Complex;

Defined in: math/Complex.ts:172

Returns the natural logarithm (base e).

Returns

Complex

Inherited from

Complex.log


mul()

mul(x): Complex;

Defined in: math/Complex.ts:231

Returns this * x;

Parameters

x

Complex

Returns

Complex

Inherited from

Complex.mul


mulBy()

mulBy(x): void;

Defined in: math/MutableComplex.ts:130

Mutates this MutableComplex by multiplying a Complex.

Parameters

x

Complex

Returns

void


mulByReal()

mulByReal(x): void;

Defined in: math/MutableComplex.ts:123

Mutates this MutableComplex by multiplying a real number.

Parameters

x

number

Returns

void


mulReal()

mulReal(x): Complex;

Defined in: math/Complex.ts:225

Returns this * x;

Parameters

x

number

Returns

Complex

Inherited from

Complex.mulReal


neg()

neg(): Complex;

Defined in: math/Complex.ts:146

Returns the negation (-this).

Returns

Complex

Inherited from

Complex.neg


pow()

pow(x): Complex;

Defined in: math/Complex.ts:271

Returns this raised to the power of x.

Parameters

x

Complex

Returns

Complex

Inherited from

Complex.pow


powInt()

powInt(x): Complex;

Defined in: math/Complex.ts:257

Returns this raised to the power of x.

Parameters

x

number

Returns

Complex

Inherited from

Complex.powInt


powReal()

powReal(x): Complex;

Defined in: math/Complex.ts:265

Returns this raised to the power of x.

Parameters

x

number

Returns

Complex

Inherited from

Complex.powReal


reciprocal()

reciprocal(): Complex;

Defined in: math/Complex.ts:152

Returns the reciprocal (1 / this, multiplicative inverse).

Returns

Complex

Inherited from

Complex.reciprocal


set()

set(x): void;

Defined in: math/MutableComplex.ts:67

Sets this MutableComplex to the value of another Complex.

Parameters

x

Complex

Returns

void


setDiv()

setDiv(
   re1, 
   im1, 
   re2, 
   im2): void;

Defined in: math/MutableComplex.ts:158

Sets this MutableComplex to (re1, im1) / (re2, im2).

Parameters

re1

number

im1

number

re2

number

im2

number

Returns

void


setExpj()

setExpj(arg): void;

Defined in: math/MutableComplex.ts:81

Sets this MutableComplex to e^(j * arg) (length 1 and argument arg).

Parameters

arg

number

Returns

void


setMul()

setMul(
   re1, 
   im1, 
   re2, 
   im2): void;

Defined in: math/MutableComplex.ts:151

Sets this MutableComplex to (re1, im1) * (re2, im2).

Parameters

re1

number

im1

number

re2

number

im2

number

Returns

void


setPolar()

setPolar(abs, arg): void;

Defined in: math/MutableComplex.ts:88

Sets this MutableComplex using polar coordinates.

Parameters

abs

number

arg

number

Returns

void


setReIm()

setReIm(re, im?): void;

Defined in: math/MutableComplex.ts:74

Sets this MutableComplex to (re, im).

Parameters

re

number

im?

number = 0

Returns

void


sqr()

sqr(): Complex;

Defined in: math/Complex.ts:178

Returns the square.

Returns

Complex

Inherited from

Complex.sqr


sqrt()

sqrt(): Complex;

Defined in: math/Complex.ts:184

Returns one of the two square roots.

Returns

Complex

Inherited from

Complex.sqrt


sub()

sub(x): Complex;

Defined in: math/Complex.ts:219

Returns this - x;

Parameters

x

Complex

Returns

Complex

Inherited from

Complex.sub


subFrom()

subFrom(x): void;

Defined in: math/MutableComplex.ts:116

Mutates this MutableComplex by subtracting a Complex.

Parameters

x

Complex

Returns

void


subReal()

subReal(x): Complex;

Defined in: math/Complex.ts:207

Returns this - x;

Parameters

x

number

Returns

Complex

Inherited from

Complex.subReal


subRealFrom()

subRealFrom(x): void;

Defined in: math/MutableComplex.ts:110

Mutates this MutableComplex by substracting a real number.

Parameters

x

number

Returns

void


toNumber()

toNumber(eps): number;

Defined in: math/Complex.ts:72

Returns the real part. Verifies that abs(im) <= eps or abs(im) <= abs(re) * eps.

Parameters

eps

number

Returns

number

Inherited from

Complex.toNumber


toString()

toString(): string;

Defined in: math/Complex.ts:65

Returns a string representing the complex number.

Returns

string

Inherited from

Complex.toString


divFromReal()

static divFromReal(x, y): Complex;

Defined in: math/Complex.ts:250

Returns x / y;

Parameters

x

number

y

Complex

Returns

Complex

Inherited from

Complex.divFromReal


expj()

static expj(arg): MutableComplex;

Defined in: math/MutableComplex.ts:52

Creates a MutableComplex of length 1 and argument arg.

Parameters

arg

number

Returns

MutableComplex

Overrides

Complex.expj


fromComplex()

static fromComplex(x): MutableComplex;

Defined in: math/MutableComplex.ts:45

Creates a MutableComplex from a Complex.

Parameters

x

Complex

Returns

MutableComplex


fromPolar()

static fromPolar(abs, arg): MutableComplex;

Defined in: math/MutableComplex.ts:59

Creates a MutableComplex from polar coordinates.

Parameters

abs

number

arg

number

Returns

MutableComplex

Overrides

Complex.fromPolar


subFromReal()

static subFromReal(x, y): Complex;

Defined in: math/Complex.ts:213

Returns x - y;

Parameters

x

number

y

Complex

Returns

Complex

Inherited from

Complex.subFromReal

Clone this wiki locally