extendr_api::prelude::complex_native

Struct c64

pub struct c64 {
    pub re: f64,
    pub im: f64,
}
Expand description

64-bit complex floating point type. See the module-level documentation for more details.

Fields§

§re: f64

Real part.

§im: f64

Negated imaginary part.

Implementations§

§

impl c64

pub const fn new(re: f64, im: f64) -> c64

Create a new complex number.

pub const fn i() -> c64

Construct the imaginary number.

pub fn cis(phase: f64) -> c64

Create a complex number from a phase.

pub fn from_polar(r: f64, theta: f64) -> c64

Create a complex number from polar coordinates.

pub fn to_num_complex(self) -> Complex<f64>

Convert the number to a num_complex::Complex64.

pub const fn re(self) -> f64

Returns the real part of the complex number.

pub const fn im(self) -> f64

Returns the imaginary part of the complex number.

pub fn conj(self) -> c64

Calculate the complex conjugate of self.

pub fn is_nan(self) -> bool

pub fn is_infinite(self) -> bool

pub fn is_finite(self) -> bool

pub fn is_normal(self) -> bool

pub fn recip(self) -> c64

pub fn powi(self, exp: i32) -> c64

pub fn powu(self, exp: u32) -> c64

pub fn powf(self, exp: f64) -> c64

pub fn powc(self, exp: Complex<f64>) -> c64

pub fn sqrt(self) -> c64

pub fn exp(self) -> c64

pub fn exp2(self) -> c64

pub fn expf(self, base: f64) -> c64

pub fn ln(self) -> c64

pub fn log(self, base: f64) -> c64

pub fn log2(self) -> c64

pub fn log10(self) -> c64

pub fn cbrt(self) -> c64

pub fn sin(self) -> c64

pub fn cos(self) -> c64

pub fn tan(self) -> c64

pub fn asin(self) -> c64

pub fn acos(self) -> c64

pub fn atan(self) -> c64

pub fn sinh(self) -> c64

pub fn cosh(self) -> c64

pub fn tanh(self) -> c64

pub fn asinh(self) -> c64

pub fn acosh(self) -> c64

pub fn atanh(self) -> c64

pub fn abs(self) -> f64

pub fn arg(self) -> f64

pub fn norm(&self) -> f64

Computes the l2 norm of self.

pub fn l1_norm(&self) -> f64

Computes the l1 norm of self.

pub fn norm_sqr(&self) -> f64

Computes the squared l2 norm of self.

pub fn inv(&self) -> c64

Computes the inverse of self.

Trait Implementations§

§

impl Add<c64> for c64conj

§

type Output = c64

The resulting type after applying the + operator.
§

fn add(self, rhs: c64) -> <c64conj as Add<c64>>::Output

Performs the + operation. Read more
§

impl Add<c64conj> for c64

§

type Output = c64

The resulting type after applying the + operator.
§

fn add(self, rhs: c64conj) -> <c64 as Add<c64conj>>::Output

Performs the + operation. Read more
§

impl Add<f64> for c64

§

type Output = c64

The resulting type after applying the + operator.
§

fn add(self, rhs: f64) -> <c64 as Add<f64>>::Output

Performs the + operation. Read more
§

impl Add for c64

§

type Output = c64

The resulting type after applying the + operator.
§

fn add(self, rhs: c64) -> <c64 as Add>::Output

Performs the + operation. Read more
§

impl AddAssign<c64conj> for c64

§

fn add_assign(&mut self, rhs: c64conj)

Performs the += operation. Read more
§

impl AddAssign<f64> for c64

§

fn add_assign(&mut self, rhs: f64)

Performs the += operation. Read more
§

impl AddAssign for c64

§

fn add_assign(&mut self, rhs: c64)

Performs the += operation. Read more
§

impl Clone for c64

§

fn clone(&self) -> c64

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
§

impl ComplexField for c64

§

type Real = f64

§

type Simd = Arch

§

type ScalarSimd = NoSimd

§

type PortableSimd = Arch

§

fn faer_from_f64(value: f64) -> c64

Converts value from f64 to Self.
The conversion may be lossy when converting to a type with less precision.
§

fn faer_add(self, rhs: c64) -> c64

Returns self + rhs.
§

fn faer_sub(self, rhs: c64) -> c64

Returns self - rhs.
§

fn faer_mul(self, rhs: c64) -> c64

Returns self * rhs.
§

fn faer_neg(self) -> c64

Returns -self.
§

fn faer_conj(self) -> c64

Returns conjugate(self).
§

fn faer_scale_real(self, rhs: <c64 as ComplexField>::Real) -> c64

Returns the input, scaled by rhs.
§

fn faer_scale_power_of_two(self, rhs: <c64 as ComplexField>::Real) -> c64

Returns the input, scaled by rhs.
§

fn faer_score(self) -> <c64 as ComplexField>::Real

Returns either the norm or squared norm of the number. Read more
§

fn faer_abs2(self) -> <c64 as ComplexField>::Real

Returns the squared absolute value of self.
§

fn faer_nan() -> c64

Returns a NaN value.
§

fn faer_from_real(real: <c64 as ComplexField>::Real) -> c64

Returns a complex number whose real part is equal to real, and a zero imaginary part.
§

fn faer_real(self) -> <c64 as ComplexField>::Real

Returns the real part.
§

fn faer_imag(self) -> <c64 as ComplexField>::Real

Returns the imaginary part.
§

fn faer_zero() -> c64

Returns 0.0.
§

fn faer_one() -> c64

Returns 1.0.
§

fn faer_inv(self) -> c64

Returns 1.0/self.
§

fn faer_sqrt(self) -> c64

Returns the square root of self.
§

fn faer_abs(self) -> <c64 as ComplexField>::Real

Returns the absolute value of self.
§

fn faer_slice_as_simd<S>( slice: &[<c64 as Entity>::Unit], ) -> (&[<c64 as Entity>::SimdUnit<S>], &[<c64 as Entity>::Unit])
where S: Simd,

§

fn faer_slice_as_simd_mut<S>( slice: &mut [<c64 as Entity>::Unit], ) -> (&mut [<c64 as Entity>::SimdUnit<S>], &mut [<c64 as Entity>::Unit])
where S: Simd,

§

fn faer_partial_load_last_unit<S>( simd: S, slice: &[<c64 as Entity>::Unit], ) -> <c64 as Entity>::SimdUnit<S>
where S: Simd,

§

fn faer_partial_store_last_unit<S>( simd: S, slice: &mut [<c64 as Entity>::Unit], values: <c64 as Entity>::SimdUnit<S>, )
where S: Simd,

§

fn faer_partial_load_unit<S>( simd: S, slice: &[<c64 as Entity>::Unit], ) -> <c64 as Entity>::SimdUnit<S>
where S: Simd,

§

fn faer_partial_store_unit<S>( simd: S, slice: &mut [<c64 as Entity>::Unit], values: <c64 as Entity>::SimdUnit<S>, )
where S: Simd,

§

fn faer_simd_splat_unit<S>( simd: S, unit: <c64 as Entity>::Unit, ) -> <c64 as Entity>::SimdUnit<S>
where S: Simd,

§

fn faer_simd_neg<S>( simd: S, values: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_conj<S>( simd: S, values: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_add<S>( simd: S, lhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, rhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_sub<S>( simd: S, lhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, rhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_mul<S>( simd: S, lhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, rhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_scale_real<S>( simd: S, lhs: <<<c64 as ComplexField>::Real as Entity>::Group as ForCopyType>::FaerOfCopy<<<c64 as ComplexField>::Real as Entity>::SimdUnit<S>>, rhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_conj_mul<S>( simd: S, lhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, rhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_mul_adde<S>( simd: S, lhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, rhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, acc: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_conj_mul_adde<S>( simd: S, lhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, rhs: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, acc: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_reduce_add<S>( simd: S, values: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> c64
where S: Simd,

§

fn faer_simd_abs2_adde<S>( simd: S, values: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, acc: <<<c64 as ComplexField>::Real as Entity>::Group as ForCopyType>::FaerOfCopy<<<c64 as ComplexField>::Real as Entity>::SimdUnit<S>>, ) -> <<<c64 as ComplexField>::Real as Entity>::Group as ForCopyType>::FaerOfCopy<<<c64 as ComplexField>::Real as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_abs2<S>( simd: S, values: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<<c64 as ComplexField>::Real as Entity>::Group as ForCopyType>::FaerOfCopy<<<c64 as ComplexField>::Real as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_score<S>( simd: S, values: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, ) -> <<<c64 as ComplexField>::Real as Entity>::Group as ForCopyType>::FaerOfCopy<<<c64 as ComplexField>::Real as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_simd_scalar_mul<S>(simd: S, lhs: c64, rhs: c64) -> c64
where S: Simd,

§

fn faer_simd_scalar_conj_mul<S>(simd: S, lhs: c64, rhs: c64) -> c64
where S: Simd,

§

fn faer_simd_scalar_mul_adde<S>(simd: S, lhs: c64, rhs: c64, acc: c64) -> c64
where S: Simd,

§

fn faer_simd_scalar_conj_mul_adde<S>( simd: S, lhs: c64, rhs: c64, acc: c64, ) -> c64
where S: Simd,

§

fn faer_align_offset<S>( simd: S, ptr: *const <c64 as Entity>::Unit, len: usize, ) -> Offset<<c64 as Entity>::SimdMask<S>>
where S: Simd,

§

fn faer_slice_as_aligned_simd<S>( simd: S, slice: &[<c64 as Entity>::Unit], offset: Offset<<c64 as Entity>::SimdMask<S>>, ) -> (<c64 as Entity>::PrefixUnit<'_, S>, &[<c64 as Entity>::SimdUnit<S>], <c64 as Entity>::SuffixUnit<'_, S>)
where S: Simd,

§

fn faer_slice_as_aligned_simd_mut<S>( simd: S, slice: &mut [<c64 as Entity>::Unit], offset: Offset<<c64 as Entity>::SimdMask<S>>, ) -> (<c64 as Entity>::PrefixMutUnit<'_, S>, &mut [<c64 as Entity>::SimdUnit<S>], <c64 as Entity>::SuffixMutUnit<'_, S>)
where S: Simd,

§

fn faer_simd_rotate_left<S>( simd: S, values: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>, amount: usize, ) -> <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<<c64 as Entity>::SimdUnit<S>>
where S: Simd,

§

fn faer_is_nan(&self) -> bool

Returns true if self is a NaN value, or false otherwise.
§

fn faer_is_finite(&self) -> bool

Returns true if self is a NaN value, or false otherwise.
§

fn faer_partial_load<S>( simd: S, slice: <Self::Group as ForType>::FaerOf<&[Self::Unit]>, ) -> <Self::Group as ForCopyType>::FaerOfCopy<Self::SimdUnit<S>>
where S: Simd,

§

fn faer_partial_store<S>( simd: S, slice: <Self::Group as ForType>::FaerOf<&mut [Self::Unit]>, values: <Self::Group as ForCopyType>::FaerOfCopy<Self::SimdUnit<S>>, )
where S: Simd,

§

fn faer_partial_load_last<S>( simd: S, slice: <Self::Group as ForType>::FaerOf<&[Self::Unit]>, ) -> <Self::Group as ForCopyType>::FaerOfCopy<Self::SimdUnit<S>>
where S: Simd,

§

fn faer_partial_store_last<S>( simd: S, slice: <Self::Group as ForType>::FaerOf<&mut [Self::Unit]>, values: <Self::Group as ForCopyType>::FaerOfCopy<Self::SimdUnit<S>>, )
where S: Simd,

§

fn faer_simd_splat<S>( simd: S, value: Self, ) -> <Self::Group as ForCopyType>::FaerOfCopy<Self::SimdUnit<S>>
where S: Simd,

§

impl Conjugate for c64

§

type Conj = c64conj

Must have the same layout as Self, and Conj::Unit must have the same layout as Unit.
§

type Canonical = c64

Must have the same layout as Self, and Canonical::Unit must have the same layout as Unit.
§

fn canonicalize(self) -> <c64 as Conjugate>::Canonical

Performs the implicit conjugation operation on the given value, returning the canonical form.
§

impl Debug for c64

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl Display for c64

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl Div<c64> for c64conj

§

type Output = c64

The resulting type after applying the / operator.
§

fn div(self, rhs: c64) -> <c64conj as Div<c64>>::Output

Performs the / operation. Read more
§

impl Div<c64conj> for c64

§

type Output = c64

The resulting type after applying the / operator.
§

fn div(self, rhs: c64conj) -> <c64 as Div<c64conj>>::Output

Performs the / operation. Read more
§

impl Div<f64> for c64

§

type Output = c64

The resulting type after applying the / operator.
§

fn div(self, rhs: f64) -> <c64 as Div<f64>>::Output

Performs the / operation. Read more
§

impl Div for c64

§

type Output = c64

The resulting type after applying the / operator.
§

fn div(self, rhs: c64) -> <c64 as Div>::Output

Performs the / operation. Read more
§

impl DivAssign<c64conj> for c64

§

fn div_assign(&mut self, rhs: c64conj)

Performs the /= operation. Read more
§

impl DivAssign<f64> for c64

§

fn div_assign(&mut self, rhs: f64)

Performs the /= operation. Read more
§

impl DivAssign for c64

§

fn div_assign(&mut self, rhs: c64)

Performs the /= operation. Read more
§

impl Entity for c64

§

const N_COMPONENTS: usize = 1usize

§

const UNIT: <<c64 as Entity>::Group as ForCopyType>::FaerOfCopy<()> = ()

§

type Unit = c64

§

type Index = u64

§

type SimdUnit<S: Simd> = <S as Simd>::c64s

§

type SimdMask<S: Simd> = <S as Simd>::m64s

§

type SimdIndex<S: Simd> = <S as Simd>::u64s

§

type Group = IdentityGroup

§

type Iter<I: Iterator> = I

§

type PrefixUnit<'a, S: Simd> = Prefix<'a, Complex<f64>, S, <S as Simd>::m64s>

§

type SuffixUnit<'a, S: Simd> = Suffix<'a, Complex<f64>, S, <S as Simd>::m64s>

§

type PrefixMutUnit<'a, S: Simd> = PrefixMut<'a, Complex<f64>, S, <S as Simd>::m64s>

§

type SuffixMutUnit<'a, S: Simd> = SuffixMut<'a, Complex<f64>, S, <S as Simd>::m64s>

§

fn faer_first<T>(group: <<c64 as Entity>::Group as ForType>::FaerOf<T>) -> T

§

fn faer_from_units( group: <<c64 as Entity>::Group as ForType>::FaerOf<<c64 as Entity>::Unit>, ) -> c64

§

fn faer_into_units( self, ) -> <<c64 as Entity>::Group as ForType>::FaerOf<<c64 as Entity>::Unit>

§

fn faer_as_ref<T>( group: &<<c64 as Entity>::Group as ForType>::FaerOf<T>, ) -> <<c64 as Entity>::Group as ForType>::FaerOf<&T>

§

fn faer_as_mut<T>( group: &mut <<c64 as Entity>::Group as ForType>::FaerOf<T>, ) -> <<c64 as Entity>::Group as ForType>::FaerOf<&mut T>

§

fn faer_as_ptr<T>( group: *mut <<c64 as Entity>::Group as ForType>::FaerOf<T>, ) -> <<c64 as Entity>::Group as ForType>::FaerOf<*mut T>

§

fn faer_map_impl<T, U>( group: <<c64 as Entity>::Group as ForType>::FaerOf<T>, f: &mut impl FnMut(T) -> U, ) -> <<c64 as Entity>::Group as ForType>::FaerOf<U>

§

fn faer_map_with_context<Ctx, T, U>( ctx: Ctx, group: <<c64 as Entity>::Group as ForType>::FaerOf<T>, f: &mut impl FnMut(Ctx, T) -> (Ctx, U), ) -> (Ctx, <<c64 as Entity>::Group as ForType>::FaerOf<U>)

§

fn faer_zip<T, U>( first: <<c64 as Entity>::Group as ForType>::FaerOf<T>, second: <<c64 as Entity>::Group as ForType>::FaerOf<U>, ) -> <<c64 as Entity>::Group as ForType>::FaerOf<(T, U)>

§

fn faer_unzip<T, U>( zipped: <<c64 as Entity>::Group as ForType>::FaerOf<(T, U)>, ) -> (<<c64 as Entity>::Group as ForType>::FaerOf<T>, <<c64 as Entity>::Group as ForType>::FaerOf<U>)

§

fn faer_into_iter<I>( iter: <<c64 as Entity>::Group as ForType>::FaerOf<I>, ) -> <c64 as Entity>::Iter<<I as IntoIterator>::IntoIter>
where I: IntoIterator,

§

fn faer_map<T, U>( group: <Self::Group as ForType>::FaerOf<T>, f: impl FnMut(T) -> U, ) -> <Self::Group as ForType>::FaerOf<U>

§

fn faer_unzip2<T>( zipped: <Self::Group as ForType>::FaerOf<[T; 2]>, ) -> [<Self::Group as ForType>::FaerOf<T>; 2]

§

fn faer_unzip4<T>( zipped: <Self::Group as ForType>::FaerOf<[T; 4]>, ) -> [<Self::Group as ForType>::FaerOf<T>; 4]

§

fn faer_unzip8<T>( zipped: <Self::Group as ForType>::FaerOf<[T; 8]>, ) -> [<Self::Group as ForType>::FaerOf<T>; 8]

§

fn faer_as_arrays<const N: usize, T>( group: <Self::Group as ForType>::FaerOf<&[T]>, ) -> (<Self::Group as ForType>::FaerOf<&[[T; N]]>, <Self::Group as ForType>::FaerOf<&[T]>)

§

fn faer_as_arrays_mut<const N: usize, T>( group: <Self::Group as ForType>::FaerOf<&mut [T]>, ) -> (<Self::Group as ForType>::FaerOf<&mut [[T; N]]>, <Self::Group as ForType>::FaerOf<&mut [T]>)

§

fn faer_deref<T>( group: <Self::Group as ForType>::FaerOf<&T>, ) -> <Self::Group as ForType>::FaerOf<T>
where T: Copy,

§

fn faer_rb<'short, T>( value: <Self::Group as ForType>::FaerOf<&'short T>, ) -> <Self::Group as ForType>::FaerOf<<T as Reborrow<'short>>::Target>
where T: Reborrow<'short>,

§

fn faer_rb_mut<'short, T>( value: <Self::Group as ForType>::FaerOf<&'short mut T>, ) -> <Self::Group as ForType>::FaerOf<<T as ReborrowMut<'short>>::Target>
where T: ReborrowMut<'short>,

§

fn faer_into_const<T>( value: <Self::Group as ForType>::FaerOf<T>, ) -> <Self::Group as ForType>::FaerOf<<T as IntoConst>::Target>
where T: IntoConst,

§

fn faer_copy<T>( x: &<Self::Group as ForType>::FaerOf<T>, ) -> <Self::Group as ForType>::FaerOf<T>
where T: Copy,

§

impl<'a> From<&'a f64> for c64

§

fn from(value: &'a f64) -> c64

Converts to this type from the input type.
§

impl From<Complex<f64>> for c64

§

fn from(value: Complex<f64>) -> c64

Converts to this type from the input type.
§

impl From<c64> for Complex<f64>

§

fn from(value: c64) -> Complex<f64>

Converts to this type from the input type.
§

impl From<f64> for c64

§

fn from(value: f64) -> c64

Converts to this type from the input type.
§

impl FromNpy for c64

§

const DTYPE: NpyDType = NpyDType::C64

Data type of the buffer data.
§

impl Inv for c64

§

type Output = c64

The result after applying the operator.
§

fn inv(self) -> <c64 as Inv>::Output

Returns the multiplicative inverse of self. Read more
§

impl Mul<c64> for c64conj

§

type Output = c64

The resulting type after applying the * operator.
§

fn mul(self, rhs: c64) -> <c64conj as Mul<c64>>::Output

Performs the * operation. Read more
§

impl Mul<c64conj> for c64

§

type Output = c64

The resulting type after applying the * operator.
§

fn mul(self, rhs: c64conj) -> <c64 as Mul<c64conj>>::Output

Performs the * operation. Read more
§

impl Mul<f64> for c64

§

type Output = c64

The resulting type after applying the * operator.
§

fn mul(self, rhs: f64) -> <c64 as Mul<f64>>::Output

Performs the * operation. Read more
§

impl Mul for c64

§

type Output = c64

The resulting type after applying the * operator.
§

fn mul(self, rhs: c64) -> <c64 as Mul>::Output

Performs the * operation. Read more
§

impl MulAssign<c64conj> for c64

§

fn mul_assign(&mut self, rhs: c64conj)

Performs the *= operation. Read more
§

impl MulAssign<f64> for c64

§

fn mul_assign(&mut self, rhs: f64)

Performs the *= operation. Read more
§

impl MulAssign for c64

§

fn mul_assign(&mut self, rhs: c64)

Performs the *= operation. Read more
§

impl Neg for c64

§

type Output = c64

The resulting type after applying the - operator.
§

fn neg(self) -> <c64 as Neg>::Output

Performs the unary - operation. Read more
§

impl Num for c64

§

type FromStrRadixErr = ParseComplexError<<f64 as Num>::FromStrRadixErr>

§

fn from_str_radix( str: &str, radix: u32, ) -> Result<c64, <c64 as Num>::FromStrRadixErr>

Convert from a string and radix (typically 2..=36). Read more
§

impl One for c64

§

fn one() -> c64

Returns the multiplicative identity element of Self, 1. Read more
§

fn is_one(&self) -> bool

Returns true if self is equal to the multiplicative identity. Read more
§

fn set_one(&mut self)

Sets self to the multiplicative identity element of Self, 1.
§

impl PartialEq for c64

§

fn eq(&self, other: &c64) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl Product for c64

§

fn product<I>(iter: I) -> c64
where I: Iterator<Item = c64>,

Takes an iterator and generates Self from the elements by multiplying the items.
§

impl Rem<c64> for c64conj

§

type Output = c64

The resulting type after applying the % operator.
§

fn rem(self, rhs: c64) -> <c64conj as Rem<c64>>::Output

Performs the % operation. Read more
§

impl Rem<c64conj> for c64

§

type Output = c64

The resulting type after applying the % operator.
§

fn rem(self, rhs: c64conj) -> <c64 as Rem<c64conj>>::Output

Performs the % operation. Read more
§

impl Rem<f64> for c64

§

type Output = c64

The resulting type after applying the % operator.
§

fn rem(self, rhs: f64) -> <c64 as Rem<f64>>::Output

Performs the % operation. Read more
§

impl Rem for c64

§

type Output = c64

The resulting type after applying the % operator.
§

fn rem(self, rhs: c64) -> <c64 as Rem>::Output

Performs the % operation. Read more
§

impl RemAssign<c64conj> for c64

§

fn rem_assign(&mut self, rhs: c64conj)

Performs the %= operation. Read more
§

impl RemAssign<f64> for c64

§

fn rem_assign(&mut self, rhs: f64)

Performs the %= operation. Read more
§

impl RemAssign for c64

§

fn rem_assign(&mut self, rhs: c64)

Performs the %= operation. Read more
§

impl Sub<c64> for c64conj

§

type Output = c64

The resulting type after applying the - operator.
§

fn sub(self, rhs: c64) -> <c64conj as Sub<c64>>::Output

Performs the - operation. Read more
§

impl Sub<c64conj> for c64

§

type Output = c64

The resulting type after applying the - operator.
§

fn sub(self, rhs: c64conj) -> <c64 as Sub<c64conj>>::Output

Performs the - operation. Read more
§

impl Sub<f64> for c64

§

type Output = c64

The resulting type after applying the - operator.
§

fn sub(self, rhs: f64) -> <c64 as Sub<f64>>::Output

Performs the - operation. Read more
§

impl Sub for c64

§

type Output = c64

The resulting type after applying the - operator.
§

fn sub(self, rhs: c64) -> <c64 as Sub>::Output

Performs the - operation. Read more
§

impl SubAssign<c64conj> for c64

§

fn sub_assign(&mut self, rhs: c64conj)

Performs the -= operation. Read more
§

impl SubAssign<f64> for c64

§

fn sub_assign(&mut self, rhs: f64)

Performs the -= operation. Read more
§

impl SubAssign for c64

§

fn sub_assign(&mut self, rhs: c64)

Performs the -= operation. Read more
§

impl Sum for c64

§

fn sum<I>(iter: I) -> c64
where I: Iterator<Item = c64>,

Takes an iterator and generates Self from the elements by “summing up” the items.
§

impl Zero for c64

§

fn zero() -> c64

Returns the additive identity element of Self, 0. Read more
§

fn is_zero(&self) -> bool

Returns true if self is equal to the additive identity.
§

fn set_zero(&mut self)

Sets self to the additive identity element of Self, 0.
§

impl Zeroable for c64

§

fn zeroed() -> Self

§

impl Copy for c64

§

impl Pod for c64

§

impl StructuralPartialEq for c64

Auto Trait Implementations§

§

impl Freeze for c64

§

impl RefUnwindSafe for c64

§

impl Send for c64

§

impl Sync for c64

§

impl Unpin for c64

§

impl UnwindSafe for c64

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CheckedBitPattern for T
where T: AnyBitPattern,

§

type Bits = T

Self must have the same layout as the specified Bits except for the possible invalid bit patterns being checked during is_valid_bit_pattern.
§

fn is_valid_bit_pattern(_bits: &T) -> bool

If this function returns true, then it must be valid to reinterpret bits as &Self.
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> AnyBitPattern for T
where T: Pod,

§

impl<T> Boilerplate for T
where T: Copy + Send + Sync + Debug + PartialEq + 'static,

Source§

impl<T> LinalgScalar for T
where T: One<Output = T> + Add<Output = T> + Sub<Output = T> + 'static + Mul + Copy + Div<Output = T> + Zero,

§

impl<T> NoUninit for T
where T: Pod,

Source§

impl<T> NumAssign for T
where T: Num + NumAssignOps,

Source§

impl<T, Rhs> NumAssignOps<Rhs> for T
where T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,

Source§

impl<T, Rhs, Output> NumOps<Rhs, Output> for T
where T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,

§

impl<E> SimpleEntity for E
where E: Entity<Group = IdentityGroup, Unit = E>,