Table of Contents

Struct ComplexNumber

Namespace
NCalc.Domain
Assembly
NCalc.dll
public struct ComplexNumber : IEquatable<ComplexNumber>, IFormattable
Implements
Inherited Members

Constructors

ComplexNumber(BigDecimal)

public ComplexNumber(BigDecimal real)

Parameters

real BigDecimal

ComplexNumber(BigDecimal, BigDecimal)

public ComplexNumber(BigDecimal real, BigDecimal imaginary)

Parameters

real BigDecimal
imaginary BigDecimal

ComplexNumber(BigDecimal, BigDecimal, MathHelperOptions)

public ComplexNumber(BigDecimal real, BigDecimal imaginary, MathHelperOptions options)

Parameters

real BigDecimal
imaginary BigDecimal
options MathHelperOptions

ComplexNumber(BigDecimal, MathHelperOptions)

public ComplexNumber(BigDecimal real, MathHelperOptions options)

Parameters

real BigDecimal
options MathHelperOptions

ComplexNumber(object, object, MathHelperOptions)

public ComplexNumber(object real, object imaginary, MathHelperOptions options)

Parameters

real object
imaginary object
options MathHelperOptions

Fields

ImaginaryOne

public static readonly ComplexNumber ImaginaryOne

Field Value

ComplexNumber

One

public static readonly ComplexNumber One

Field Value

ComplexNumber

Zero

public static readonly ComplexNumber Zero

Field Value

ComplexNumber

Properties

Abs

public BigDecimal Abs { get; }

Property Value

BigDecimal

Imaginary

public readonly BigDecimal Imaginary { get; }

Property Value

BigDecimal

IsImaginary

public bool IsImaginary { get; }

Property Value

bool

IsReal

public bool IsReal { get; }

Property Value

bool

IsZero

public bool IsZero { get; }

Property Value

bool

Magnitude

public BigDecimal Magnitude { get; }

Property Value

BigDecimal

MagnitudeSquared

public BigDecimal MagnitudeSquared { get; }

Property Value

BigDecimal

Phase

public BigDecimal Phase { get; }

Property Value

BigDecimal

Real

public readonly BigDecimal Real { get; }

Property Value

BigDecimal

Tolerance

public static double Tolerance { get; set; }

Property Value

double

Methods

Acos(ComplexNumber, MathHelperOptions)

public static ComplexNumber Acos(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Acosh(ComplexNumber, MathHelperOptions)

public static ComplexNumber Acosh(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Acot(ComplexNumber, MathHelperOptions)

public static ComplexNumber Acot(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Acoth(ComplexNumber, MathHelperOptions)

public static ComplexNumber Acoth(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Acsc(ComplexNumber, MathHelperOptions)

public static ComplexNumber Acsc(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Acsch(ComplexNumber, MathHelperOptions)

public static ComplexNumber Acsch(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Asec(ComplexNumber, MathHelperOptions)

public static ComplexNumber Asec(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Asech(ComplexNumber, MathHelperOptions)

public static ComplexNumber Asech(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Asin(ComplexNumber, MathHelperOptions)

public static ComplexNumber Asin(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Asinh(ComplexNumber, MathHelperOptions)

public static ComplexNumber Asinh(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Atan(ComplexNumber, MathHelperOptions)

public static ComplexNumber Atan(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Atanh(ComplexNumber, MathHelperOptions)

public static ComplexNumber Atanh(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Ceiling(ComplexNumber)

public static ComplexNumber Ceiling(ComplexNumber value)

Parameters

value ComplexNumber

Returns

ComplexNumber

CheckIsReal()

public bool CheckIsReal()

Returns

bool

Conjugate()

public ComplexNumber Conjugate()

Returns

ComplexNumber

Cos(ComplexNumber, MathHelperOptions)

public static ComplexNumber Cos(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Cosh(ComplexNumber, MathHelperOptions)

public static ComplexNumber Cosh(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Cot(ComplexNumber, MathHelperOptions)

public static ComplexNumber Cot(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Coth(ComplexNumber, MathHelperOptions)

public static ComplexNumber Coth(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Csc(ComplexNumber, MathHelperOptions)

public static ComplexNumber Csc(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Csch(ComplexNumber, MathHelperOptions)

public static ComplexNumber Csch(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Equals(ComplexNumber)

Indicates whether the current object is equal to another object of the same type.

public bool Equals(ComplexNumber other)

Parameters

other ComplexNumber

An object to compare with this object.

Returns

bool

true if the current object is equal to the other parameter; otherwise, false.

Equals(object?)

Indicates whether this instance and a specified object are equal.

public override bool Equals(object? obj)

Parameters

obj object

The object to compare with the current instance.

Returns

bool

true if obj and this instance are the same type and represent the same value; otherwise, false.

Exp(ComplexNumber, MathHelperOptions)

public static ComplexNumber Exp(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Floor(ComplexNumber)

public static ComplexNumber Floor(ComplexNumber value)

Parameters

value ComplexNumber

Returns

ComplexNumber

FromComplex(Complex, MathHelperOptions)

Creates a ComplexNumber from a Complex. Both components are widened from double to ExtendedNumerics.BigDecimal.

public static ComplexNumber FromComplex(Complex c, MathHelperOptions options = default)

Parameters

c Complex
options MathHelperOptions

Returns

ComplexNumber

FromPolar(BigDecimal, BigDecimal, MathHelperOptions)

public static ComplexNumber FromPolar(BigDecimal magnitude, BigDecimal phase, MathHelperOptions options)

Parameters

magnitude BigDecimal
phase BigDecimal
options MathHelperOptions

Returns

ComplexNumber

GetHashCode()

Returns the hash code for this instance.

public override int GetHashCode()

Returns

int

A 32-bit signed integer that is the hash code for this instance.

Log(ComplexNumber, BigDecimal, MathHelperOptions)

public static ComplexNumber Log(ComplexNumber value, BigDecimal baseValue, MathHelperOptions options)

Parameters

value ComplexNumber
baseValue BigDecimal
options MathHelperOptions

Returns

ComplexNumber

Log(ComplexNumber, MathHelperOptions)

public static ComplexNumber Log(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Log10(ComplexNumber, MathHelperOptions)

Returns the base-10 logarithm of a complex number.

public static ComplexNumber Log10(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

MaxByMagnitude(ComplexNumber, ComplexNumber)

public static ComplexNumber MaxByMagnitude(ComplexNumber x, ComplexNumber y)

Parameters

x ComplexNumber
y ComplexNumber

Returns

ComplexNumber

MinByMagnitude(ComplexNumber, ComplexNumber)

public static ComplexNumber MinByMagnitude(ComplexNumber x, ComplexNumber y)

Parameters

x ComplexNumber
y ComplexNumber

Returns

ComplexNumber

Normalize()

public ComplexNumber Normalize()

Returns

ComplexNumber

Pow(ComplexNumber, BigDecimal, MathHelperOptions)

public static ComplexNumber Pow(ComplexNumber value, BigDecimal power, MathHelperOptions options)

Parameters

value ComplexNumber
power BigDecimal
options MathHelperOptions

Returns

ComplexNumber

Pow(ComplexNumber, ComplexNumber, MathHelperOptions)

public static ComplexNumber Pow(ComplexNumber value, ComplexNumber power, MathHelperOptions options)

Parameters

value ComplexNumber
power ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Reciprocal()

public ComplexNumber Reciprocal()

Returns

ComplexNumber

Round(ComplexNumber)

public static ComplexNumber Round(ComplexNumber value)

Parameters

value ComplexNumber

Returns

ComplexNumber

Sec(ComplexNumber, MathHelperOptions)

public static ComplexNumber Sec(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Sech(ComplexNumber, MathHelperOptions)

public static ComplexNumber Sech(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Sin(ComplexNumber, MathHelperOptions)

public static ComplexNumber Sin(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Sinh(ComplexNumber, MathHelperOptions)

public static ComplexNumber Sinh(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Sqrt(ComplexNumber, MathHelperOptions)

public static ComplexNumber Sqrt(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Tan(ComplexNumber, MathHelperOptions)

public static ComplexNumber Tan(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

Tanh(ComplexNumber, MathHelperOptions)

public static ComplexNumber Tanh(ComplexNumber value, MathHelperOptions options)

Parameters

value ComplexNumber
options MathHelperOptions

Returns

ComplexNumber

ToComplex()

Converts this complex number to a Complex. Both the real and imaginary components are narrowed from ExtendedNumerics.BigDecimal to double.

public Complex ToComplex()

Returns

Complex

ToString()

Returns the fully qualified type name of this instance.

public override string ToString()

Returns

string

The fully qualified type name.

ToString(string?, IFormatProvider?)

Formats the value of the current instance using the specified format.

public string ToString(string? format, IFormatProvider? formatProvider)

Parameters

format string

The format to use.

-or-

A null reference (Nothing in Visual Basic) to use the default format defined for the type of the IFormattable implementation.

formatProvider IFormatProvider

The provider to use to format the value.

-or-

A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system.

Returns

string

The value of the current instance in the specified format.

Truncate(ComplexNumber)

public static ComplexNumber Truncate(ComplexNumber value)

Parameters

value ComplexNumber

Returns

ComplexNumber

Operators

operator +(BigDecimal, ComplexNumber)

public static ComplexNumber operator +(BigDecimal r, ComplexNumber z)

Parameters

r BigDecimal
z ComplexNumber

Returns

ComplexNumber

operator +(ComplexNumber, BigDecimal)

public static ComplexNumber operator +(ComplexNumber z, BigDecimal r)

Parameters

z ComplexNumber
r BigDecimal

Returns

ComplexNumber

operator +(ComplexNumber, ComplexNumber)

public static ComplexNumber operator +(ComplexNumber a, ComplexNumber b)

Parameters

a ComplexNumber
b ComplexNumber

Returns

ComplexNumber

operator +(ComplexNumber, double)

public static ComplexNumber operator +(ComplexNumber z, double r)

Parameters

z ComplexNumber
r double

Returns

ComplexNumber

operator +(double, ComplexNumber)

public static ComplexNumber operator +(double r, ComplexNumber z)

Parameters

r double
z ComplexNumber

Returns

ComplexNumber

operator /(BigDecimal, ComplexNumber)

public static ComplexNumber operator /(BigDecimal scalar, ComplexNumber value)

Parameters

scalar BigDecimal
value ComplexNumber

Returns

ComplexNumber

operator /(ComplexNumber, BigDecimal)

public static ComplexNumber operator /(ComplexNumber value, BigDecimal divisor)

Parameters

value ComplexNumber
divisor BigDecimal

Returns

ComplexNumber

operator /(ComplexNumber, ComplexNumber)

public static ComplexNumber operator /(ComplexNumber a, ComplexNumber b)

Parameters

a ComplexNumber
b ComplexNumber

Returns

ComplexNumber

operator /(ComplexNumber, double)

public static ComplexNumber operator /(ComplexNumber value, double divisor)

Parameters

value ComplexNumber
divisor double

Returns

ComplexNumber

operator /(double, ComplexNumber)

public static ComplexNumber operator /(double scalar, ComplexNumber value)

Parameters

scalar double
value ComplexNumber

Returns

ComplexNumber

operator ==(ComplexNumber, ComplexNumber)

public static bool operator ==(ComplexNumber a, ComplexNumber b)

Parameters

a ComplexNumber
b ComplexNumber

Returns

bool

explicit operator Complex(ComplexNumber)

Explicitly converts a ComplexNumber to a Complex.

public static explicit operator Complex(ComplexNumber c)

Parameters

c ComplexNumber

Returns

Complex

explicit operator ComplexNumber(Complex)

Explicitly converts a Complex to a ComplexNumber.

public static explicit operator ComplexNumber(Complex c)

Parameters

c Complex

Returns

ComplexNumber

implicit operator ComplexNumber(double)

public static implicit operator ComplexNumber(double value)

Parameters

value double

Returns

ComplexNumber

operator !=(ComplexNumber, ComplexNumber)

public static bool operator !=(ComplexNumber a, ComplexNumber b)

Parameters

a ComplexNumber
b ComplexNumber

Returns

bool

operator *(BigDecimal, ComplexNumber)

public static ComplexNumber operator *(BigDecimal r, ComplexNumber z)

Parameters

r BigDecimal
z ComplexNumber

Returns

ComplexNumber

operator *(ComplexNumber, BigDecimal)

public static ComplexNumber operator *(ComplexNumber z, BigDecimal r)

Parameters

z ComplexNumber
r BigDecimal

Returns

ComplexNumber

operator *(ComplexNumber, ComplexNumber)

public static ComplexNumber operator *(ComplexNumber a, ComplexNumber b)

Parameters

a ComplexNumber
b ComplexNumber

Returns

ComplexNumber

operator *(ComplexNumber, double)

public static ComplexNumber operator *(ComplexNumber z, double r)

Parameters

z ComplexNumber
r double

Returns

ComplexNumber

operator *(double, ComplexNumber)

public static ComplexNumber operator *(double r, ComplexNumber z)

Parameters

r double
z ComplexNumber

Returns

ComplexNumber

operator -(BigDecimal, ComplexNumber)

public static ComplexNumber operator -(BigDecimal r, ComplexNumber z)

Parameters

r BigDecimal
z ComplexNumber

Returns

ComplexNumber

operator -(ComplexNumber, BigDecimal)

public static ComplexNumber operator -(ComplexNumber z, BigDecimal r)

Parameters

z ComplexNumber
r BigDecimal

Returns

ComplexNumber

operator -(ComplexNumber, ComplexNumber)

public static ComplexNumber operator -(ComplexNumber a, ComplexNumber b)

Parameters

a ComplexNumber
b ComplexNumber

Returns

ComplexNumber

operator -(ComplexNumber, double)

public static ComplexNumber operator -(ComplexNumber z, double r)

Parameters

z ComplexNumber
r double

Returns

ComplexNumber

operator -(double, ComplexNumber)

public static ComplexNumber operator -(double r, ComplexNumber z)

Parameters

r double
z ComplexNumber

Returns

ComplexNumber

operator -(ComplexNumber)

public static ComplexNumber operator -(ComplexNumber a)

Parameters

a ComplexNumber

Returns

ComplexNumber