pub type c64 = Complex<f64>;
Aliased Type§
struct c64 {
pub re: f64,
pub im: f64,
}
Fields§
§re: f64
Real portion of the complex number
im: f64
Imaginary portion of the complex number
Implementations
source§impl<T> Complex<T>
impl<T> Complex<T>
source§impl<T> Complex<T>
impl<T> Complex<T>
sourcepub fn l1_norm(&self) -> T
pub fn l1_norm(&self) -> T
Returns the L1 norm |re| + |im|
– the Manhattan distance from the origin.
Trait Implementations
source§impl<'a, T> AddAssign<&'a Complex<T>> for Complex<T>
impl<'a, T> AddAssign<&'a Complex<T>> for Complex<T>
source§fn add_assign(&mut self, other: &Complex<T>)
fn add_assign(&mut self, other: &Complex<T>)
Performs the
+=
operation. Read moresource§impl<'a, T> AddAssign<&'a T> for Complex<T>
impl<'a, T> AddAssign<&'a T> for Complex<T>
source§fn add_assign(&mut self, other: &T)
fn add_assign(&mut self, other: &T)
Performs the
+=
operation. Read moresource§impl<T> AddAssign<T> for Complex<T>
impl<T> AddAssign<T> for Complex<T>
source§fn add_assign(&mut self, other: T)
fn add_assign(&mut self, other: T)
Performs the
+=
operation. Read moresource§impl<T> AddAssign for Complex<T>
impl<T> AddAssign for Complex<T>
source§fn add_assign(&mut self, other: Complex<T>)
fn add_assign(&mut self, other: Complex<T>)
Performs the
+=
operation. Read moresource§impl<T, U> AsPrimitive<U> for Complex<T>where
T: AsPrimitive<U>,
U: 'static + Copy,
impl<T, U> AsPrimitive<U> for Complex<T>where
T: AsPrimitive<U>,
U: 'static + Copy,
source§impl<'a, T> DivAssign<&'a Complex<T>> for Complex<T>
impl<'a, T> DivAssign<&'a Complex<T>> for Complex<T>
source§fn div_assign(&mut self, other: &Complex<T>)
fn div_assign(&mut self, other: &Complex<T>)
Performs the
/=
operation. Read moresource§impl<'a, T> DivAssign<&'a T> for Complex<T>
impl<'a, T> DivAssign<&'a T> for Complex<T>
source§fn div_assign(&mut self, other: &T)
fn div_assign(&mut self, other: &T)
Performs the
/=
operation. Read moresource§impl<T> DivAssign<T> for Complex<T>
impl<T> DivAssign<T> for Complex<T>
source§fn div_assign(&mut self, other: T)
fn div_assign(&mut self, other: T)
Performs the
/=
operation. Read moresource§impl<T> DivAssign for Complex<T>
impl<T> DivAssign for Complex<T>
source§fn div_assign(&mut self, other: Complex<T>)
fn div_assign(&mut self, other: Complex<T>)
Performs the
/=
operation. Read moresource§impl<T> FromPrimitive for Complex<T>where
T: FromPrimitive + Num,
impl<T> FromPrimitive for Complex<T>where
T: FromPrimitive + Num,
source§fn from_usize(n: usize) -> Option<Complex<T>>
fn from_usize(n: usize) -> Option<Complex<T>>
Converts a
usize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_isize(n: isize) -> Option<Complex<T>>
fn from_isize(n: isize) -> Option<Complex<T>>
Converts an
isize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u8(n: u8) -> Option<Complex<T>>
fn from_u8(n: u8) -> Option<Complex<T>>
Converts an
u8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u16(n: u16) -> Option<Complex<T>>
fn from_u16(n: u16) -> Option<Complex<T>>
Converts an
u16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u32(n: u32) -> Option<Complex<T>>
fn from_u32(n: u32) -> Option<Complex<T>>
Converts an
u32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u64(n: u64) -> Option<Complex<T>>
fn from_u64(n: u64) -> Option<Complex<T>>
Converts an
u64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i8(n: i8) -> Option<Complex<T>>
fn from_i8(n: i8) -> Option<Complex<T>>
Converts an
i8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i16(n: i16) -> Option<Complex<T>>
fn from_i16(n: i16) -> Option<Complex<T>>
Converts an
i16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i32(n: i32) -> Option<Complex<T>>
fn from_i32(n: i32) -> Option<Complex<T>>
Converts an
i32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i64(n: i64) -> Option<Complex<T>>
fn from_i64(n: i64) -> Option<Complex<T>>
Converts an
i64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u128(n: u128) -> Option<Complex<T>>
fn from_u128(n: u128) -> Option<Complex<T>>
Converts an
u128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§fn from_i128(n: i128) -> Option<Complex<T>>
fn from_i128(n: i128) -> Option<Complex<T>>
Converts an
i128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§impl<'a, 'b, T> MulAddAssign<&'a Complex<T>, &'b Complex<T>> for Complex<T>
impl<'a, 'b, T> MulAddAssign<&'a Complex<T>, &'b Complex<T>> for Complex<T>
source§fn mul_add_assign(&mut self, other: &Complex<T>, add: &Complex<T>)
fn mul_add_assign(&mut self, other: &Complex<T>, add: &Complex<T>)
Performs the fused multiply-add assignment operation
*self = (*self * a) + b
source§impl<T> MulAddAssign for Complex<T>
impl<T> MulAddAssign for Complex<T>
source§fn mul_add_assign(&mut self, other: Complex<T>, add: Complex<T>)
fn mul_add_assign(&mut self, other: Complex<T>, add: Complex<T>)
Performs the fused multiply-add assignment operation
*self = (*self * a) + b
source§impl<'a, T> MulAssign<&'a Complex<T>> for Complex<T>
impl<'a, T> MulAssign<&'a Complex<T>> for Complex<T>
source§fn mul_assign(&mut self, other: &Complex<T>)
fn mul_assign(&mut self, other: &Complex<T>)
Performs the
*=
operation. Read moresource§impl<'a, T> MulAssign<&'a T> for Complex<T>
impl<'a, T> MulAssign<&'a T> for Complex<T>
source§fn mul_assign(&mut self, other: &T)
fn mul_assign(&mut self, other: &T)
Performs the
*=
operation. Read moresource§impl<T> MulAssign<T> for Complex<T>
impl<T> MulAssign<T> for Complex<T>
source§fn mul_assign(&mut self, other: T)
fn mul_assign(&mut self, other: T)
Performs the
*=
operation. Read moresource§impl<T> MulAssign for Complex<T>
impl<T> MulAssign for Complex<T>
source§fn mul_assign(&mut self, other: Complex<T>)
fn mul_assign(&mut self, other: Complex<T>)
Performs the
*=
operation. Read moresource§impl<T> Num for Complex<T>
impl<T> Num for Complex<T>
source§fn from_str_radix(
s: &str,
radix: u32
) -> Result<Complex<T>, <Complex<T> as Num>::FromStrRadixErr>
fn from_str_radix( s: &str, radix: u32 ) -> Result<Complex<T>, <Complex<T> as Num>::FromStrRadixErr>
Parses a +/- bi
; ai +/- b
; a
; or bi
where a
and b
are of type T
radix
must be <= 18; larger radix would include i and j as digits,
which cannot be supported.
The conversion returns an error if 18 <= radix <= 36; it panics if radix > 36.
The elements of T
are parsed using Num::from_str_radix
too, and errors
(or panics) from that are reflected here as well.
type FromStrRadixErr = ParseComplexError<<T as Num>::FromStrRadixErr>
source§impl<T> PartialEq for Complex<T>where
T: PartialEq,
impl<T> PartialEq for Complex<T>where
T: PartialEq,
source§impl<'a, T> RemAssign<&'a Complex<T>> for Complex<T>
impl<'a, T> RemAssign<&'a Complex<T>> for Complex<T>
source§fn rem_assign(&mut self, other: &Complex<T>)
fn rem_assign(&mut self, other: &Complex<T>)
Performs the
%=
operation. Read moresource§impl<'a, T> RemAssign<&'a T> for Complex<T>
impl<'a, T> RemAssign<&'a T> for Complex<T>
source§fn rem_assign(&mut self, other: &T)
fn rem_assign(&mut self, other: &T)
Performs the
%=
operation. Read moresource§impl<T> RemAssign<T> for Complex<T>
impl<T> RemAssign<T> for Complex<T>
source§fn rem_assign(&mut self, other: T)
fn rem_assign(&mut self, other: T)
Performs the
%=
operation. Read moresource§impl<T> RemAssign for Complex<T>
impl<T> RemAssign for Complex<T>
source§fn rem_assign(&mut self, modulus: Complex<T>)
fn rem_assign(&mut self, modulus: Complex<T>)
Performs the
%=
operation. Read moresource§impl<'a, T> SubAssign<&'a Complex<T>> for Complex<T>
impl<'a, T> SubAssign<&'a Complex<T>> for Complex<T>
source§fn sub_assign(&mut self, other: &Complex<T>)
fn sub_assign(&mut self, other: &Complex<T>)
Performs the
-=
operation. Read moresource§impl<'a, T> SubAssign<&'a T> for Complex<T>
impl<'a, T> SubAssign<&'a T> for Complex<T>
source§fn sub_assign(&mut self, other: &T)
fn sub_assign(&mut self, other: &T)
Performs the
-=
operation. Read moresource§impl<T> SubAssign<T> for Complex<T>
impl<T> SubAssign<T> for Complex<T>
source§fn sub_assign(&mut self, other: T)
fn sub_assign(&mut self, other: T)
Performs the
-=
operation. Read moresource§impl<T> SubAssign for Complex<T>
impl<T> SubAssign for Complex<T>
source§fn sub_assign(&mut self, other: Complex<T>)
fn sub_assign(&mut self, other: Complex<T>)
Performs the
-=
operation. Read moresource§impl<T> ToPrimitive for Complex<T>where
T: ToPrimitive + Num,
impl<T> ToPrimitive for Complex<T>where
T: ToPrimitive + Num,
source§fn to_usize(&self) -> Option<usize>
fn to_usize(&self) -> Option<usize>
Converts the value of
self
to a usize
. If the value cannot be
represented by a usize
, then None
is returned.source§fn to_isize(&self) -> Option<isize>
fn to_isize(&self) -> Option<isize>
Converts the value of
self
to an isize
. If the value cannot be
represented by an isize
, then None
is returned.source§fn to_u8(&self) -> Option<u8>
fn to_u8(&self) -> Option<u8>
Converts the value of
self
to a u8
. If the value cannot be
represented by a u8
, then None
is returned.source§fn to_u16(&self) -> Option<u16>
fn to_u16(&self) -> Option<u16>
Converts the value of
self
to a u16
. If the value cannot be
represented by a u16
, then None
is returned.source§fn to_u32(&self) -> Option<u32>
fn to_u32(&self) -> Option<u32>
Converts the value of
self
to a u32
. If the value cannot be
represented by a u32
, then None
is returned.source§fn to_u64(&self) -> Option<u64>
fn to_u64(&self) -> Option<u64>
Converts the value of
self
to a u64
. If the value cannot be
represented by a u64
, then None
is returned.source§fn to_i8(&self) -> Option<i8>
fn to_i8(&self) -> Option<i8>
Converts the value of
self
to an i8
. If the value cannot be
represented by an i8
, then None
is returned.source§fn to_i16(&self) -> Option<i16>
fn to_i16(&self) -> Option<i16>
Converts the value of
self
to an i16
. If the value cannot be
represented by an i16
, then None
is returned.source§fn to_i32(&self) -> Option<i32>
fn to_i32(&self) -> Option<i32>
Converts the value of
self
to an i32
. If the value cannot be
represented by an i32
, then None
is returned.source§fn to_i64(&self) -> Option<i64>
fn to_i64(&self) -> Option<i64>
Converts the value of
self
to an i64
. If the value cannot be
represented by an i64
, then None
is returned.source§fn to_u128(&self) -> Option<u128>
fn to_u128(&self) -> Option<u128>
Converts the value of
self
to a u128
. If the value cannot be
represented by a u128
(u64
under the default implementation), then
None
is returned. Read moresource§fn to_i128(&self) -> Option<i128>
fn to_i128(&self) -> Option<i128>
Converts the value of
self
to an i128
. If the value cannot be
represented by an i128
(i64
under the default implementation), then
None
is returned. Read more