Struct num::complex::Complex
[−]
[src]
pub struct Complex<T> { pub re: T, pub im: T, }
A complex number in Cartesian form.
Fields
re | Real portion of the complex number |
im | Imaginary portion of the complex number |
Methods
impl<T: Clone + Num> Complex<T>
fn new(re: T, im: T) -> Complex<T>
Create a new Complex
fn norm_sqr(&self) -> T
Returns the square of the norm (since T
doesn't necessarily
have a sqrt function), i.e. re^2 + im^2
.
fn scale(&self, t: T) -> Complex<T>
Multiplies self
by the scalar t
.
fn unscale(&self, t: T) -> Complex<T>
Divides self
by the scalar t
.
impl<T: Clone + Num + Neg<Output=T>> Complex<T>
fn conj(&self) -> Complex<T>
Returns the complex conjugate. i.e. re - i im
fn inv(&self) -> Complex<T>
Returns 1/self
impl<T: Clone + Float> Complex<T>
fn norm(&self) -> T
Calculate |self|
impl<T: Clone + Float + Num> Complex<T>
fn arg(&self) -> T
Calculate the principal Arg of self.
fn to_polar(&self) -> (T, T)
Convert to polar form (r, theta), such that self = r * exp(i * theta)
fn from_polar(r: &T, theta: &T) -> Complex<T>
Convert a polar representation into a complex number.