Complex in nalgebra - Rust
Description: A complex number in Cartesian form.
Keywords: rust, rustlang, rust-lang, Complex

# Struct nalgebra::Complex

source ·

    pub struct Complex<T> {
        pub re: T,
        pub im: T,
    }

Expand description

A complex number in Cartesian form.

### Representation and Foreign Function Interface Compatibility

`Complex<T>` is memory layout compatible with an array `[T; 2]`.

Note that `Complex<F>` where F is a floating point type is only memory layout compatible with C’s complex types, not necessarily calling convention compatible. This means that for FFI you can only pass `Complex<F>` behind a pointer, not as a value.

### Examples

Example of extern function declaration.

    use num_complex::Complex;
    use std::os::raw::c_int;

    extern "C" {
        fn zaxpy_(n: *const c_int, alpha: *const Complex<f64>,
                  x: *const Complex<f64>, incx: *const c_int,
                  y: *mut Complex<f64>, incy: *const c_int);
    }

## Fields§

§`re: T`

Real portion of the complex number

§`im: T`

Imaginary portion of the complex number

## Implementations§

source§

### impl<T> Complex<T>

source

#### pub const fn new(re: T, im: T) -> Complex<T>

Create a new Complex

source§

### impl<T> Complex<T>where
T: Clone + Num,

source

#### pub fn i() -> Complex<T>

Returns imaginary unit

source

#### pub 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`.

source

#### pub fn scale(&self, t: T) -> Complex<T>

Multiplies `self` by the scalar `t`.

source

#### pub fn unscale(&self, t: T) -> Complex<T>

Divides `self` by the scalar `t`.

source

#### pub fn powu(&self, exp: u32) -> Complex<T>

Raises `self` to an unsigned integer power.

source§

### impl<T> Complex<T>where
T: Clone + Num + Neg<Output = T>,

source

#### pub fn conj(&self) -> Complex<T>

Returns the complex conjugate. i.e. `re - i im`

source

#### pub fn inv(&self) -> Complex<T>

Returns `1/self`

source

#### pub fn powi(&self, exp: i32) -> Complex<T>

Raises `self` to a signed integer power.

source§

### impl<T> Complex<T>where
T: Clone + Signed,

source

#### pub fn l1_norm(&self) -> T

Returns the L1 norm `|re| + |im|` – the Manhattan distance from the origin.

source§

### impl<T> Complex<T>where
T: FloatCore,

source

#### pub fn is_nan(self) -> bool

Checks if the given complex number is NaN

source

#### pub fn is_infinite(self) -> bool

Checks if the given complex number is infinite

source

#### pub fn is_finite(self) -> bool

Checks if the given complex number is finite

source

#### pub fn is_normal(self) -> bool

Checks if the given complex number is normal

## Trait Implementations§

source§

### impl<'a, T> Add<&'a Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `+` operator.
source§

#### fn add(self, other: &Complex<T>) -> <Complex<T> as Add<&'a Complex<T>>>::Output

Performs the `+` operation. Read more
source§

### impl<'a, 'b, T> Add<&'a T> for &'b Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `+` operator.
source§

#### fn add(self, other: &T) -> <&'b Complex<T> as Add<&'a T>>::Output

Performs the `+` operation. Read more
source§

### impl<'a, T> Add<&'a T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `+` operator.
source§

#### fn add(self, other: &T) -> <Complex<T> as Add<&'a T>>::Output

Performs the `+` operation. Read more
source§

### impl<'a, 'b, T> Add<&'b Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `+` operator.
source§

#### fn add(
self,
other: &Complex<T>
) -> <&'a Complex<T> as Add<&'b Complex<T>>>::Output

Performs the `+` operation. Read more
source§

### impl<'a, T> Add<Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `+` operator.
source§

#### fn add(self, other: Complex<T>) -> <&'a Complex<T> as Add<Complex<T>>>::Output

Performs the `+` operation. Read more
source§

### impl<T> Add<Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `+` operator.
source§

#### fn add(self, other: Complex<T>) -> <Complex<T> as Add<Complex<T>>>::Output

Performs the `+` operation. Read more
source§

### impl<'a, T> Add<T> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `+` operator.
source§

#### fn add(self, other: T) -> <&'a Complex<T> as Add<T>>::Output

Performs the `+` operation. Read more
source§

### impl<T> Add<T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `+` operator.
source§

#### fn add(self, other: T) -> <Complex<T> as Add<T>>::Output

Performs the `+` operation. Read more
source§

### impl<'a, T> AddAssign<&'a Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn add_assign(&mut self, other: &Complex<T>)

Performs the `+=` operation. Read more
source§

### impl<'a, T> AddAssign<&'a T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn add_assign(&mut self, other: &T)

Performs the `+=` operation. Read more
source§

### impl<T> AddAssign<Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn add_assign(&mut self, other: Complex<T>)

Performs the `+=` operation. Read more
source§

### impl<T> AddAssign<T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn add_assign(&mut self, other: T)

Performs the `+=` operation. Read more
source§

### impl<T, U> AsPrimitive<U> for Complex<T>where
T: AsPrimitive<U>,
U: 'static + Copy,

source§

#### fn as_(self) -> U

Convert a value to another, using the `as` operator.
source§

### impl<T> Binary for Complex<T>where
T: Binary + Num + PartialOrd<T> + Clone,

source§

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

Formats the value using the given formatter.
source§

### impl<T> Clone for Complex<T>where
T: Clone,

source§

#### fn clone(&self) -> Complex<T>

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
source§

### impl<N> ComplexField for Complex<N>where
N: RealField + PartialOrd<N>,

source§

#### fn exp(self) -> Complex<N>

Computes `e^(self)`, where `e` is the base of the natural logarithm.

source§

#### fn ln(self) -> Complex<N>

Computes the principal value of natural logarithm of `self`.

This function has one branch cut:

- `(-∞, 0]`, continuous from above.

The branch satisfies `-π ≤ arg(ln(z)) ≤ π`.

source§

#### fn sqrt(self) -> Complex<N>

Computes the principal value of the square root of `self`.

This function has one branch cut:

- `(-∞, 0)`, continuous from above.

The branch satisfies `-π/2 ≤ arg(sqrt(z)) ≤ π/2`.

source§

#### fn powf(self, exp: <Complex<N> as ComplexField>::RealField) -> Complex<N>

Raises `self` to a floating point power.

source§

#### fn log(self, base: N) -> Complex<N>

Returns the logarithm of `self` with respect to an arbitrary base.

source§

#### fn powc(self, exp: Complex<N>) -> Complex<N>

Raises `self` to a complex power.

source§

#### fn sin(self) -> Complex<N>

Computes the sine of `self`.

source§

#### fn cos(self) -> Complex<N>

Computes the cosine of `self`.

source§

#### fn tan(self) -> Complex<N>

Computes the tangent of `self`.

source§

#### fn asin(self) -> Complex<N>

Computes the principal value of the inverse sine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Re(asin(z)) ≤ π/2`.

source§

#### fn acos(self) -> Complex<N>

Computes the principal value of the inverse cosine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `0 ≤ Re(acos(z)) ≤ π`.

source§

#### fn atan(self) -> Complex<N>

Computes the principal value of the inverse tangent of `self`.

This function has two branch cuts:

- `(-∞i, -i]`, continuous from the left.
- `[i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Re(atan(z)) ≤ π/2`.

source§

#### fn sinh(self) -> Complex<N>

Computes the hyperbolic sine of `self`.

source§

#### fn cosh(self) -> Complex<N>

Computes the hyperbolic cosine of `self`.

source§

#### fn tanh(self) -> Complex<N>

Computes the hyperbolic tangent of `self`.

source§

#### fn asinh(self) -> Complex<N>

Computes the principal value of inverse hyperbolic sine of `self`.

This function has two branch cuts:

- `(-∞i, -i)`, continuous from the left.
- `(i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Im(asinh(z)) ≤ π/2`.

source§

#### fn acosh(self) -> Complex<N>

Computes the principal value of inverse hyperbolic cosine of `self`.

This function has one branch cut:

- `(-∞, 1)`, continuous from above.

The branch satisfies `-π ≤ Im(acosh(z)) ≤ π` and `0 ≤ Re(acosh(z)) < ∞`.

source§

#### fn atanh(self) -> Complex<N>

Computes the principal value of inverse hyperbolic tangent of `self`.

This function has two branch cuts:

- `(-∞, -1]`, continuous from above.
- `[1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Im(atanh(z)) ≤ π/2`.

§

#### type RealField = N

source§

#### fn from_real(re: <Complex<N> as ComplexField>::RealField) -> Complex<N>

Builds a pure-real complex number from the given value.
source§

#### fn real(self) -> <Complex<N> as ComplexField>::RealField

The real part of this complex number.
source§

#### fn imaginary(self) -> <Complex<N> as ComplexField>::RealField

The imaginary part of this complex number.
source§

#### fn argument(self) -> <Complex<N> as ComplexField>::RealField

The argument of this complex number.
source§

#### fn modulus(self) -> <Complex<N> as ComplexField>::RealField

The modulus of this complex number.
source§

#### fn modulus_squared(self) -> <Complex<N> as ComplexField>::RealField

The squared modulus of this complex number.
source§

#### fn norm1(self) -> <Complex<N> as ComplexField>::RealField

The sum of the absolute value of this complex number’s real and imaginary part.
source§

#### fn recip(self) -> Complex<N>

source§

#### fn conjugate(self) -> Complex<N>

source§

#### fn scale(self, factor: <Complex<N> as ComplexField>::RealField) -> Complex<N>

Multiplies this complex number by `factor`.
source§

#### fn unscale(self, factor: <Complex<N> as ComplexField>::RealField) -> Complex<N>

Divides this complex number by `factor`.
source§

#### fn floor(self) -> Complex<N>

source§

#### fn ceil(self) -> Complex<N>

source§

#### fn round(self) -> Complex<N>

source§

#### fn trunc(self) -> Complex<N>

source§

#### fn fract(self) -> Complex<N>

source§

#### fn mul_add(self, a: Complex<N>, b: Complex<N>) -> Complex<N>

source§

#### fn abs(self) -> <Complex<N> as ComplexField>::RealField

The absolute value of this complex number: `self / self.signum()`. Read more
source§

#### fn exp2(self) -> Complex<N>

source§

#### fn exp_m1(self) -> Complex<N>

source§

#### fn ln_1p(self) -> Complex<N>

source§

#### fn log2(self) -> Complex<N>

source§

#### fn log10(self) -> Complex<N>

source§

#### fn cbrt(self) -> Complex<N>

source§

#### fn powi(self, n: i32) -> Complex<N>

source§

#### fn is_finite(&self) -> bool

source§

#### fn try_sqrt(self) -> Option<Complex<N>>

source§

#### fn hypot(self, b: Complex<N>) -> <Complex<N> as ComplexField>::RealField

Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
source§

#### fn sin_cos(self) -> (Complex<N>, Complex<N>)

source§

#### fn sinh_cosh(self) -> (Complex<N>, Complex<N>)

source§

#### fn to_polar(self) -> (Self::RealField, Self::RealField)

The polar form of this complex number: (modulus, arg)
source§

#### fn to_exp(self) -> (Self::RealField, Self)

The exponential form of this complex number: (modulus, e^{i arg})
source§

#### fn signum(self) -> Self

The exponential part of this complex number: `self / self.modulus()`
source§

#### fn sinc(self) -> Self

Cardinal sine
source§

#### fn sinhc(self) -> Self

source§

#### fn cosc(self) -> Self

Cardinal cos
source§

#### fn coshc(self) -> Self

source§

### impl<T> Debug for Complex<T>where
T: Debug,

source§

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

Formats the value using the given formatter. Read more
source§

### impl<T> Default for Complex<T>where
T: Default,

source§

#### fn default() -> Complex<T>

Returns the “default value” for a type. Read more
source§

### impl<T> Display for Complex<T>where
T: Display + Num + PartialOrd<T> + Clone,

source§

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

Formats the value using the given formatter. Read more
source§

### impl<'a, T> Div<&'a Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `/` operator.
source§

#### fn div(self, other: &Complex<T>) -> <Complex<T> as Div<&'a Complex<T>>>::Output

Performs the `/` operation. Read more
source§

### impl<'a, 'b, T> Div<&'a T> for &'b Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `/` operator.
source§

#### fn div(self, other: &T) -> <&'b Complex<T> as Div<&'a T>>::Output

Performs the `/` operation. Read more
source§

### impl<'a, T> Div<&'a T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `/` operator.
source§

#### fn div(self, other: &T) -> <Complex<T> as Div<&'a T>>::Output

Performs the `/` operation. Read more
source§

### impl<'a, 'b, T> Div<&'b Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `/` operator.
source§

#### fn div(
self,
other: &Complex<T>
) -> <&'a Complex<T> as Div<&'b Complex<T>>>::Output

Performs the `/` operation. Read more
source§

### impl<'a, T> Div<Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `/` operator.
source§

#### fn div(self, other: Complex<T>) -> <&'a Complex<T> as Div<Complex<T>>>::Output

Performs the `/` operation. Read more
source§

### impl<T> Div<Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `/` operator.
source§

#### fn div(self, other: Complex<T>) -> <Complex<T> as Div<Complex<T>>>::Output

Performs the `/` operation. Read more
source§

### impl<'a, T> Div<T> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `/` operator.
source§

#### fn div(self, other: T) -> <&'a Complex<T> as Div<T>>::Output

Performs the `/` operation. Read more
source§

### impl<T> Div<T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `/` operator.
source§

#### fn div(self, other: T) -> <Complex<T> as Div<T>>::Output

Performs the `/` operation. Read more
source§

### impl<'a, T> DivAssign<&'a Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn div_assign(&mut self, other: &Complex<T>)

Performs the `/=` operation. Read more
source§

### impl<'a, T> DivAssign<&'a T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn div_assign(&mut self, other: &T)

Performs the `/=` operation. Read more
source§

### impl<T> DivAssign<Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn div_assign(&mut self, other: Complex<T>)

Performs the `/=` operation. Read more
source§

### impl<T> DivAssign<T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn div_assign(&mut self, other: T)

Performs the `/=` operation. Read more
source§

### impl<'a, T> From<&'a T> for Complex<T>where
T: Clone + Num,

source§

#### fn from(re: &T) -> Complex<T>

Converts to this type from the input type.
source§

### impl<T> From<T> for Complex<T>where
T: Clone + Num,

source§

#### fn from(re: T) -> Complex<T>

Converts to this type from the input type.
source§

### impl<T> FromPrimitive for Complex<T>where
T: FromPrimitive + Num,

source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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 more
source§

#### 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 more
source§

#### fn from_f32(n: f32) -> Option<Complex<T>>

Converts a `f32` to return an optional value of this type. If the value cannot be represented by this type, then `None` is returned. Read more
source§

#### fn from_f64(n: f64) -> Option<Complex<T>>

Converts a `f64` to return an optional value of this type. If the value cannot be represented by this type, then `None` is returned. Read more
source§

### impl<T> FromStr for Complex<T>where
T: FromStr + Num + Clone,

source§

#### fn from_str(s: &str) -> Result<Complex<T>, <Complex<T> as FromStr>::Err>

Parses `a +/- bi`; `ai +/- b`; `a`; or `bi` where `a` and `b` are of type `T`

§

#### type Err = ParseComplexError<<T as FromStr>::Err>

The associated error which can be returned from parsing.
source§

### impl<T> Hash for Complex<T>where
T: Hash,

source§

#### fn hash<__H>(&self, state: &mut __H)where
__H: Hasher,

Feeds this value into the given `Hasher`. Read more
1.3.0 · source§

#### fn hash_slice<H>(data: &[Self], state: &mut H)where
H: Hasher,
Self: Sized,

Feeds a slice of this type into the given `Hasher`. Read more
source§

### impl<'a, T> Inv for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn inv(self) -> <&'a Complex<T> as Inv>::Output

Returns the multiplicative inverse of `self`. Read more
source§

### impl<T> Inv for Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn inv(self) -> <Complex<T> as Inv>::Output

Returns the multiplicative inverse of `self`. Read more
source§

### impl<T> LowerExp for Complex<T>where
T: LowerExp + Num + PartialOrd<T> + Clone,

source§

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

Formats the value using the given formatter.
source§

### impl<T> LowerHex for Complex<T>where
T: LowerHex + Num + PartialOrd<T> + Clone,

source§

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

Formats the value using the given formatter.
source§

### impl<'a, T> Mul<&'a Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `*` operator.
source§

#### fn mul(self, other: &Complex<T>) -> <Complex<T> as Mul<&'a Complex<T>>>::Output

Performs the `*` operation. Read more
source§

### impl<'a, 'b, T> Mul<&'a T> for &'b Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `*` operator.
source§

#### fn mul(self, other: &T) -> <&'b Complex<T> as Mul<&'a T>>::Output

Performs the `*` operation. Read more
source§

### impl<'a, T> Mul<&'a T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `*` operator.
source§

#### fn mul(self, other: &T) -> <Complex<T> as Mul<&'a T>>::Output

Performs the `*` operation. Read more
source§

### impl<'a, 'b, T> Mul<&'b Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `*` operator.
source§

#### fn mul(
self,
other: &Complex<T>
) -> <&'a Complex<T> as Mul<&'b Complex<T>>>::Output

Performs the `*` operation. Read more
source§

### impl<'a, T> Mul<Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `*` operator.
source§

#### fn mul(self, other: Complex<T>) -> <&'a Complex<T> as Mul<Complex<T>>>::Output

Performs the `*` operation. Read more
source§

### impl<T> Mul<Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `*` operator.
source§

#### fn mul(self, other: Complex<T>) -> <Complex<T> as Mul<Complex<T>>>::Output

Performs the `*` operation. Read more
source§

### impl<'a, T> Mul<T> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `*` operator.
source§

#### fn mul(self, other: T) -> <&'a Complex<T> as Mul<T>>::Output

Performs the `*` operation. Read more
source§

### impl<T> Mul<T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `*` operator.
source§

#### fn mul(self, other: T) -> <Complex<T> as Mul<T>>::Output

Performs the `*` operation. Read more
source§

### impl<'a, 'b, T> MulAdd<&'b Complex<T>, &'a Complex<T>> for &'a Complex<T>where
T: Clone + Num + MulAdd<T, T, Output = T>,

§

#### type Output = Complex<T>

The resulting type after applying the fused multiply-add.
source§

#### fn mul_add(self, other: &Complex<T>, add: &Complex<T>) -> Complex<T>

Performs the fused multiply-add operation.
source§

### impl<T> MulAdd<Complex<T>, Complex<T>> for Complex<T>where
T: Clone + Num + MulAdd<T, T, Output = T>,

§

#### type Output = Complex<T>

The resulting type after applying the fused multiply-add.
source§

#### fn mul_add(self, other: Complex<T>, add: Complex<T>) -> Complex<T>

Performs the fused multiply-add operation.
source§

### impl<'a, 'b, T> MulAddAssign<&'a Complex<T>, &'b Complex<T>> for Complex<T>where
T: Clone + NumAssign + MulAddAssign<T, T>,

source§

#### fn mul_add_assign(&mut self, other: &Complex<T>, add: &Complex<T>)

Performs the fused multiply-add operation.
source§

### impl<T> MulAddAssign<Complex<T>, Complex<T>> for Complex<T>where
T: Clone + NumAssign + MulAddAssign<T, T>,

source§

#### fn mul_add_assign(&mut self, other: Complex<T>, add: Complex<T>)

Performs the fused multiply-add operation.
source§

### impl<'a, T> MulAssign<&'a Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn mul_assign(&mut self, other: &Complex<T>)

Performs the `*=` operation. Read more
source§

### impl<'a, T> MulAssign<&'a T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn mul_assign(&mut self, other: &T)

Performs the `*=` operation. Read more
source§

### impl<T> MulAssign<Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn mul_assign(&mut self, other: Complex<T>)

Performs the `*=` operation. Read more
source§

### impl<T> MulAssign<T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn mul_assign(&mut self, other: T)

Performs the `*=` operation. Read more
source§

### impl<'a, T> Neg for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn neg(self) -> <&'a Complex<T> as Neg>::Output

Performs the unary `-` operation. Read more
source§

### impl<T> Neg for Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn neg(self) -> <Complex<T> as Neg>::Output

Performs the unary `-` operation. Read more
source§

### impl<T: SimdRealField> Normed for Complex<T>

§

#### type Norm = <T as SimdComplexField>::SimdRealField

The type of the norm.
source§

#### fn norm(&self) -> T::SimdRealField

Computes the norm.
source§

#### fn norm_squared(&self) -> T::SimdRealField

Computes the squared norm.
source§

#### fn scale_mut(&mut self, n: Self::Norm)

Multiply `self` by n.
source§

#### fn unscale_mut(&mut self, n: Self::Norm)

Divides `self` by n.
source§

### impl<T> Num for Complex<T>where
T: Num + Clone,

source§

#### 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> NumCast for Complex<T>where
T: NumCast + Num,

source§

#### fn from<U>(n: U) -> Option<Complex<T>>where
U: ToPrimitive,

Creates a number from another value that can be converted into a primitive via the `ToPrimitive` trait. If the source value cannot be represented by the target type, then `None` is returned. Read more
source§

### impl<T> Octal for Complex<T>where
T: Octal + Num + PartialOrd<T> + Clone,

source§

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

Formats the value using the given formatter.
source§

### impl<T> One for Complex<T>where
T: Clone + Num,

source§

#### fn one() -> Complex<T>

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

#### fn is_one(&self) -> bool

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

#### fn set_one(&mut self)

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

### impl<T> PartialEq<Complex<T>> for Complex<T>where
T: PartialEq<T>,

source§

#### fn eq(&self, other: &Complex<T>) -> bool

This method tests for `self` and `other` values to be equal, and is used by `==`. Read more
1.0.0 · source§

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

This method tests for `!=`. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
source§

### impl<'a, 'b, T> Pow<&'b i128> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &i128) -> <&'a Complex<T> as Pow<&'b i128>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b i16> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &i16) -> <&'a Complex<T> as Pow<&'b i16>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b i32> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &i32) -> <&'a Complex<T> as Pow<&'b i32>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b i64> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &i64) -> <&'a Complex<T> as Pow<&'b i64>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b i8> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &i8) -> <&'a Complex<T> as Pow<&'b i8>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b isize> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &isize) -> <&'a Complex<T> as Pow<&'b isize>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b u128> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &u128) -> <&'a Complex<T> as Pow<&'b u128>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b u16> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &u16) -> <&'a Complex<T> as Pow<&'b u16>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b u32> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &u32) -> <&'a Complex<T> as Pow<&'b u32>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b u64> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &u64) -> <&'a Complex<T> as Pow<&'b u64>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b u8> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &u8) -> <&'a Complex<T> as Pow<&'b u8>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, 'b, T> Pow<&'b usize> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: &usize) -> <&'a Complex<T> as Pow<&'b usize>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<i128> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: i128) -> <&'a Complex<T> as Pow<i128>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<i16> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: i16) -> <&'a Complex<T> as Pow<i16>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<i32> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: i32) -> <&'a Complex<T> as Pow<i32>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<i64> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: i64) -> <&'a Complex<T> as Pow<i64>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<i8> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: i8) -> <&'a Complex<T> as Pow<i8>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<isize> for &'a Complex<T>where
T: Clone + Num + Neg<Output = T>,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: isize) -> <&'a Complex<T> as Pow<isize>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<u128> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: u128) -> <&'a Complex<T> as Pow<u128>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<u16> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: u16) -> <&'a Complex<T> as Pow<u16>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<u32> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: u32) -> <&'a Complex<T> as Pow<u32>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<u64> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: u64) -> <&'a Complex<T> as Pow<u64>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<u8> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: u8) -> <&'a Complex<T> as Pow<u8>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Pow<usize> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The result after applying the operator.
source§

#### fn pow(self, exp: usize) -> <&'a Complex<T> as Pow<usize>>::Output

Returns `self` to the power `rhs`. Read more
source§

### impl<'a, T> Product<&'a Complex<T>> for Complex<T>where
T: 'a + Num + Clone,

source§

#### fn product<I>(iter: I) -> Complex<T>where
I: Iterator<Item = &'a Complex<T>>,

Method which takes an iterator and generates `Self` from the elements by multiplying the items. Read more
source§

### impl<T> Product<Complex<T>> for Complex<T>where
T: Num + Clone,

source§

#### fn product<I>(iter: I) -> Complex<T>where
I: Iterator<Item = Complex<T>>,

Method which takes an iterator and generates `Self` from the elements by multiplying the items. Read more
source§

### impl<'a, T> Rem<&'a Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `%` operator.
source§

#### fn rem(self, other: &Complex<T>) -> <Complex<T> as Rem<&'a Complex<T>>>::Output

Performs the `%` operation. Read more
source§

### impl<'a, 'b, T> Rem<&'a T> for &'b Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `%` operator.
source§

#### fn rem(self, other: &T) -> <&'b Complex<T> as Rem<&'a T>>::Output

Performs the `%` operation. Read more
source§

### impl<'a, T> Rem<&'a T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `%` operator.
source§

#### fn rem(self, other: &T) -> <Complex<T> as Rem<&'a T>>::Output

Performs the `%` operation. Read more
source§

### impl<'a, 'b, T> Rem<&'b Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `%` operator.
source§

#### fn rem(
self,
other: &Complex<T>
) -> <&'a Complex<T> as Rem<&'b Complex<T>>>::Output

Performs the `%` operation. Read more
source§

### impl<'a, T> Rem<Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `%` operator.
source§

#### fn rem(self, other: Complex<T>) -> <&'a Complex<T> as Rem<Complex<T>>>::Output

Performs the `%` operation. Read more
source§

### impl<T> Rem<Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `%` operator.
source§

#### fn rem(self, modulus: Complex<T>) -> <Complex<T> as Rem<Complex<T>>>::Output

Performs the `%` operation. Read more
source§

### impl<'a, T> Rem<T> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `%` operator.
source§

#### fn rem(self, other: T) -> <&'a Complex<T> as Rem<T>>::Output

Performs the `%` operation. Read more
source§

### impl<T> Rem<T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `%` operator.
source§

#### fn rem(self, other: T) -> <Complex<T> as Rem<T>>::Output

Performs the `%` operation. Read more
source§

### impl<'a, T> RemAssign<&'a Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn rem_assign(&mut self, other: &Complex<T>)

Performs the `%=` operation. Read more
source§

### impl<'a, T> RemAssign<&'a T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn rem_assign(&mut self, other: &T)

Performs the `%=` operation. Read more
source§

### impl<T> RemAssign<Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn rem_assign(&mut self, modulus: Complex<T>)

Performs the `%=` operation. Read more
source§

### impl<T> RemAssign<T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn rem_assign(&mut self, other: T)

Performs the `%=` operation. Read more
source§

### impl SimdComplexField for Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_exp(self) -> Complex<AutoSimd<[f32; 16]>>

Computes `e^(self)`, where `e` is the base of the natural logarithm.

source§

#### fn simd_ln(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the principal value of natural logarithm of `self`.

This function has one branch cut:

- `(-∞, 0]`, continuous from above.

The branch satisfies `-π ≤ arg(ln(z)) ≤ π`.

source§

#### fn simd_sqrt(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the principal value of the square root of `self`.

This function has one branch cut:

- `(-∞, 0)`, continuous from above.

The branch satisfies `-π/2 ≤ arg(sqrt(z)) ≤ π/2`.

source§

#### fn simd_powf(
self,
exp: <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 16]>>

Raises `self` to a floating point power.

source§

#### fn simd_log(self, base: AutoSimd<[f32; 16]>) -> Complex<AutoSimd<[f32; 16]>>

Returns the logarithm of `self` with respect to an arbitrary base.

source§

#### fn simd_powc(
self,
exp: Complex<AutoSimd<[f32; 16]>>
) -> Complex<AutoSimd<[f32; 16]>>

Raises `self` to a complex power.

source§

#### fn simd_sin(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the sine of `self`.

source§

#### fn simd_cos(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the cosine of `self`.

source§

#### fn simd_tan(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the tangent of `self`.

source§

#### fn simd_asin(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the principal value of the inverse sine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Re(asin(z)) ≤ π/2`.

source§

#### fn simd_acos(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the principal value of the inverse cosine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `0 ≤ Re(acos(z)) ≤ π`.

source§

#### fn simd_atan(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the principal value of the inverse tangent of `self`.

This function has two branch cuts:

- `(-∞i, -i]`, continuous from the left.
- `[i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Re(atan(z)) ≤ π/2`.

source§

#### fn simd_sinh(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the hyperbolic sine of `self`.

source§

#### fn simd_cosh(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the hyperbolic cosine of `self`.

source§

#### fn simd_tanh(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the hyperbolic tangent of `self`.

source§

#### fn simd_asinh(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the principal value of inverse hyperbolic sine of `self`.

This function has two branch cuts:

- `(-∞i, -i)`, continuous from the left.
- `(i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Im(asinh(z)) ≤ π/2`.

source§

#### fn simd_acosh(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the principal value of inverse hyperbolic cosine of `self`.

This function has one branch cut:

- `(-∞, 1)`, continuous from above.

The branch satisfies `-π ≤ Im(acosh(z)) ≤ π` and `0 ≤ Re(acosh(z)) < ∞`.

source§

#### fn simd_atanh(self) -> Complex<AutoSimd<[f32; 16]>>

Computes the principal value of inverse hyperbolic tangent of `self`.

This function has two branch cuts:

- `(-∞, -1]`, continuous from above.
- `[1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Im(atanh(z)) ≤ π/2`.

§

#### type SimdRealField = AutoSimd<[f32; 16]>

Type of the coefficients of a complex number.
source§

#### fn simd_horizontal_sum(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdValue>::Element

Computes the sum of all the lanes of `self`.
source§

#### fn simd_horizontal_product(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdValue>::Element

Computes the product of all the lanes of `self`.
source§

#### fn from_simd_real(
re: <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 16]>>

Builds a pure-real complex number from the given value.
source§

#### fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField

The real part of this complex number.
source§

#### fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField

The imaginary part of this complex number.
source§

#### fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField

The argument of this complex number.
source§

#### fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField

The modulus of this complex number.
source§

#### fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField

The squared modulus of this complex number.
source§

#### fn simd_norm1(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField

The sum of the absolute value of this complex number’s real and imaginary part.
source§

#### fn simd_recip(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_conjugate(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 16]>>

Multiplies this complex number by `factor`.
source§

#### fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 16]>>

Divides this complex number by `factor`.
source§

#### fn simd_floor(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_ceil(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_round(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_trunc(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_fract(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_mul_add(
self,
a: Complex<AutoSimd<[f32; 16]>>,
b: Complex<AutoSimd<[f32; 16]>>
) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField

The absolute value of this complex number: `self / self.signum()`. Read more
source§

#### fn simd_exp2(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_exp_m1(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_ln_1p(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_log2(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_log10(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_cbrt(self) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_powi(self, n: i32) -> Complex<AutoSimd<[f32; 16]>>

source§

#### fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 16]>>
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField

Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
source§

#### fn simd_sin_cos(
self
) -> (Complex<AutoSimd<[f32; 16]>>, Complex<AutoSimd<[f32; 16]>>)

source§

#### fn simd_sinh_cosh(
self
) -> (Complex<AutoSimd<[f32; 16]>>, Complex<AutoSimd<[f32; 16]>>)

source§

#### fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)

The polar form of this complex number: (modulus, arg)
source§

#### fn simd_to_exp(self) -> (Self::SimdRealField, Self)

The exponential form of this complex number: (modulus, e^{i arg})
source§

#### fn simd_signum(self) -> Self

The exponential part of this complex number: `self / self.modulus()`
source§

#### fn simd_sinc(self) -> Self

Cardinal sine
source§

#### fn simd_sinhc(self) -> Self

source§

#### fn simd_cosc(self) -> Self

Cardinal cos
source§

#### fn simd_coshc(self) -> Self

source§

### impl SimdComplexField for Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_exp(self) -> Complex<AutoSimd<[f32; 2]>>

Computes `e^(self)`, where `e` is the base of the natural logarithm.

source§

#### fn simd_ln(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the principal value of natural logarithm of `self`.

This function has one branch cut:

- `(-∞, 0]`, continuous from above.

The branch satisfies `-π ≤ arg(ln(z)) ≤ π`.

source§

#### fn simd_sqrt(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the principal value of the square root of `self`.

This function has one branch cut:

- `(-∞, 0)`, continuous from above.

The branch satisfies `-π/2 ≤ arg(sqrt(z)) ≤ π/2`.

source§

#### fn simd_powf(
self,
exp: <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 2]>>

Raises `self` to a floating point power.

source§

#### fn simd_log(self, base: AutoSimd<[f32; 2]>) -> Complex<AutoSimd<[f32; 2]>>

Returns the logarithm of `self` with respect to an arbitrary base.

source§

#### fn simd_powc(
self,
exp: Complex<AutoSimd<[f32; 2]>>
) -> Complex<AutoSimd<[f32; 2]>>

Raises `self` to a complex power.

source§

#### fn simd_sin(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the sine of `self`.

source§

#### fn simd_cos(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the cosine of `self`.

source§

#### fn simd_tan(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the tangent of `self`.

source§

#### fn simd_asin(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the principal value of the inverse sine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Re(asin(z)) ≤ π/2`.

source§

#### fn simd_acos(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the principal value of the inverse cosine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `0 ≤ Re(acos(z)) ≤ π`.

source§

#### fn simd_atan(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the principal value of the inverse tangent of `self`.

This function has two branch cuts:

- `(-∞i, -i]`, continuous from the left.
- `[i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Re(atan(z)) ≤ π/2`.

source§

#### fn simd_sinh(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the hyperbolic sine of `self`.

source§

#### fn simd_cosh(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the hyperbolic cosine of `self`.

source§

#### fn simd_tanh(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the hyperbolic tangent of `self`.

source§

#### fn simd_asinh(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the principal value of inverse hyperbolic sine of `self`.

This function has two branch cuts:

- `(-∞i, -i)`, continuous from the left.
- `(i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Im(asinh(z)) ≤ π/2`.

source§

#### fn simd_acosh(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the principal value of inverse hyperbolic cosine of `self`.

This function has one branch cut:

- `(-∞, 1)`, continuous from above.

The branch satisfies `-π ≤ Im(acosh(z)) ≤ π` and `0 ≤ Re(acosh(z)) < ∞`.

source§

#### fn simd_atanh(self) -> Complex<AutoSimd<[f32; 2]>>

Computes the principal value of inverse hyperbolic tangent of `self`.

This function has two branch cuts:

- `(-∞, -1]`, continuous from above.
- `[1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Im(atanh(z)) ≤ π/2`.

§

#### type SimdRealField = AutoSimd<[f32; 2]>

Type of the coefficients of a complex number.
source§

#### fn simd_horizontal_sum(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdValue>::Element

Computes the sum of all the lanes of `self`.
source§

#### fn simd_horizontal_product(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdValue>::Element

Computes the product of all the lanes of `self`.
source§

#### fn from_simd_real(
re: <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 2]>>

Builds a pure-real complex number from the given value.
source§

#### fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField

The real part of this complex number.
source§

#### fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField

The imaginary part of this complex number.
source§

#### fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField

The argument of this complex number.
source§

#### fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField

The modulus of this complex number.
source§

#### fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField

The squared modulus of this complex number.
source§

#### fn simd_norm1(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField

The sum of the absolute value of this complex number’s real and imaginary part.
source§

#### fn simd_recip(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_conjugate(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 2]>>

Multiplies this complex number by `factor`.
source§

#### fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 2]>>

Divides this complex number by `factor`.
source§

#### fn simd_floor(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_ceil(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_round(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_trunc(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_fract(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_mul_add(
self,
a: Complex<AutoSimd<[f32; 2]>>,
b: Complex<AutoSimd<[f32; 2]>>
) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField

The absolute value of this complex number: `self / self.signum()`. Read more
source§

#### fn simd_exp2(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_exp_m1(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_ln_1p(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_log2(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_log10(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_cbrt(self) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_powi(self, n: i32) -> Complex<AutoSimd<[f32; 2]>>

source§

#### fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 2]>>
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField

Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
source§

#### fn simd_sin_cos(
self
) -> (Complex<AutoSimd<[f32; 2]>>, Complex<AutoSimd<[f32; 2]>>)

source§

#### fn simd_sinh_cosh(
self
) -> (Complex<AutoSimd<[f32; 2]>>, Complex<AutoSimd<[f32; 2]>>)

source§

#### fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)

The polar form of this complex number: (modulus, arg)
source§

#### fn simd_to_exp(self) -> (Self::SimdRealField, Self)

The exponential form of this complex number: (modulus, e^{i arg})
source§

#### fn simd_signum(self) -> Self

The exponential part of this complex number: `self / self.modulus()`
source§

#### fn simd_sinc(self) -> Self

Cardinal sine
source§

#### fn simd_sinhc(self) -> Self

source§

#### fn simd_cosc(self) -> Self

Cardinal cos
source§

#### fn simd_coshc(self) -> Self

source§

### impl SimdComplexField for Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_exp(self) -> Complex<AutoSimd<[f32; 4]>>

Computes `e^(self)`, where `e` is the base of the natural logarithm.

source§

#### fn simd_ln(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the principal value of natural logarithm of `self`.

This function has one branch cut:

- `(-∞, 0]`, continuous from above.

The branch satisfies `-π ≤ arg(ln(z)) ≤ π`.

source§

#### fn simd_sqrt(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the principal value of the square root of `self`.

This function has one branch cut:

- `(-∞, 0)`, continuous from above.

The branch satisfies `-π/2 ≤ arg(sqrt(z)) ≤ π/2`.

source§

#### fn simd_powf(
self,
exp: <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 4]>>

Raises `self` to a floating point power.

source§

#### fn simd_log(self, base: AutoSimd<[f32; 4]>) -> Complex<AutoSimd<[f32; 4]>>

Returns the logarithm of `self` with respect to an arbitrary base.

source§

#### fn simd_powc(
self,
exp: Complex<AutoSimd<[f32; 4]>>
) -> Complex<AutoSimd<[f32; 4]>>

Raises `self` to a complex power.

source§

#### fn simd_sin(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the sine of `self`.

source§

#### fn simd_cos(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the cosine of `self`.

source§

#### fn simd_tan(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the tangent of `self`.

source§

#### fn simd_asin(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the principal value of the inverse sine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Re(asin(z)) ≤ π/2`.

source§

#### fn simd_acos(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the principal value of the inverse cosine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `0 ≤ Re(acos(z)) ≤ π`.

source§

#### fn simd_atan(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the principal value of the inverse tangent of `self`.

This function has two branch cuts:

- `(-∞i, -i]`, continuous from the left.
- `[i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Re(atan(z)) ≤ π/2`.

source§

#### fn simd_sinh(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the hyperbolic sine of `self`.

source§

#### fn simd_cosh(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the hyperbolic cosine of `self`.

source§

#### fn simd_tanh(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the hyperbolic tangent of `self`.

source§

#### fn simd_asinh(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the principal value of inverse hyperbolic sine of `self`.

This function has two branch cuts:

- `(-∞i, -i)`, continuous from the left.
- `(i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Im(asinh(z)) ≤ π/2`.

source§

#### fn simd_acosh(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the principal value of inverse hyperbolic cosine of `self`.

This function has one branch cut:

- `(-∞, 1)`, continuous from above.

The branch satisfies `-π ≤ Im(acosh(z)) ≤ π` and `0 ≤ Re(acosh(z)) < ∞`.

source§

#### fn simd_atanh(self) -> Complex<AutoSimd<[f32; 4]>>

Computes the principal value of inverse hyperbolic tangent of `self`.

This function has two branch cuts:

- `(-∞, -1]`, continuous from above.
- `[1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Im(atanh(z)) ≤ π/2`.

§

#### type SimdRealField = AutoSimd<[f32; 4]>

Type of the coefficients of a complex number.
source§

#### fn simd_horizontal_sum(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdValue>::Element

Computes the sum of all the lanes of `self`.
source§

#### fn simd_horizontal_product(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdValue>::Element

Computes the product of all the lanes of `self`.
source§

#### fn from_simd_real(
re: <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 4]>>

Builds a pure-real complex number from the given value.
source§

#### fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField

The real part of this complex number.
source§

#### fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField

The imaginary part of this complex number.
source§

#### fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField

The argument of this complex number.
source§

#### fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField

The modulus of this complex number.
source§

#### fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField

The squared modulus of this complex number.
source§

#### fn simd_norm1(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField

The sum of the absolute value of this complex number’s real and imaginary part.
source§

#### fn simd_recip(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_conjugate(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 4]>>

Multiplies this complex number by `factor`.
source§

#### fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 4]>>

Divides this complex number by `factor`.
source§

#### fn simd_floor(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_ceil(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_round(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_trunc(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_fract(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_mul_add(
self,
a: Complex<AutoSimd<[f32; 4]>>,
b: Complex<AutoSimd<[f32; 4]>>
) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField

The absolute value of this complex number: `self / self.signum()`. Read more
source§

#### fn simd_exp2(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_exp_m1(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_ln_1p(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_log2(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_log10(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_cbrt(self) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_powi(self, n: i32) -> Complex<AutoSimd<[f32; 4]>>

source§

#### fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 4]>>
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField

Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
source§

#### fn simd_sin_cos(
self
) -> (Complex<AutoSimd<[f32; 4]>>, Complex<AutoSimd<[f32; 4]>>)

source§

#### fn simd_sinh_cosh(
self
) -> (Complex<AutoSimd<[f32; 4]>>, Complex<AutoSimd<[f32; 4]>>)

source§

#### fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)

The polar form of this complex number: (modulus, arg)
source§

#### fn simd_to_exp(self) -> (Self::SimdRealField, Self)

The exponential form of this complex number: (modulus, e^{i arg})
source§

#### fn simd_signum(self) -> Self

The exponential part of this complex number: `self / self.modulus()`
source§

#### fn simd_sinc(self) -> Self

Cardinal sine
source§

#### fn simd_sinhc(self) -> Self

source§

#### fn simd_cosc(self) -> Self

Cardinal cos
source§

#### fn simd_coshc(self) -> Self

source§

### impl SimdComplexField for Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_exp(self) -> Complex<AutoSimd<[f32; 8]>>

Computes `e^(self)`, where `e` is the base of the natural logarithm.

source§

#### fn simd_ln(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the principal value of natural logarithm of `self`.

This function has one branch cut:

- `(-∞, 0]`, continuous from above.

The branch satisfies `-π ≤ arg(ln(z)) ≤ π`.

source§

#### fn simd_sqrt(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the principal value of the square root of `self`.

This function has one branch cut:

- `(-∞, 0)`, continuous from above.

The branch satisfies `-π/2 ≤ arg(sqrt(z)) ≤ π/2`.

source§

#### fn simd_powf(
self,
exp: <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 8]>>

Raises `self` to a floating point power.

source§

#### fn simd_log(self, base: AutoSimd<[f32; 8]>) -> Complex<AutoSimd<[f32; 8]>>

Returns the logarithm of `self` with respect to an arbitrary base.

source§

#### fn simd_powc(
self,
exp: Complex<AutoSimd<[f32; 8]>>
) -> Complex<AutoSimd<[f32; 8]>>

Raises `self` to a complex power.

source§

#### fn simd_sin(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the sine of `self`.

source§

#### fn simd_cos(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the cosine of `self`.

source§

#### fn simd_tan(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the tangent of `self`.

source§

#### fn simd_asin(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the principal value of the inverse sine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Re(asin(z)) ≤ π/2`.

source§

#### fn simd_acos(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the principal value of the inverse cosine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `0 ≤ Re(acos(z)) ≤ π`.

source§

#### fn simd_atan(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the principal value of the inverse tangent of `self`.

This function has two branch cuts:

- `(-∞i, -i]`, continuous from the left.
- `[i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Re(atan(z)) ≤ π/2`.

source§

#### fn simd_sinh(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the hyperbolic sine of `self`.

source§

#### fn simd_cosh(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the hyperbolic cosine of `self`.

source§

#### fn simd_tanh(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the hyperbolic tangent of `self`.

source§

#### fn simd_asinh(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the principal value of inverse hyperbolic sine of `self`.

This function has two branch cuts:

- `(-∞i, -i)`, continuous from the left.
- `(i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Im(asinh(z)) ≤ π/2`.

source§

#### fn simd_acosh(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the principal value of inverse hyperbolic cosine of `self`.

This function has one branch cut:

- `(-∞, 1)`, continuous from above.

The branch satisfies `-π ≤ Im(acosh(z)) ≤ π` and `0 ≤ Re(acosh(z)) < ∞`.

source§

#### fn simd_atanh(self) -> Complex<AutoSimd<[f32; 8]>>

Computes the principal value of inverse hyperbolic tangent of `self`.

This function has two branch cuts:

- `(-∞, -1]`, continuous from above.
- `[1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Im(atanh(z)) ≤ π/2`.

§

#### type SimdRealField = AutoSimd<[f32; 8]>

Type of the coefficients of a complex number.
source§

#### fn simd_horizontal_sum(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdValue>::Element

Computes the sum of all the lanes of `self`.
source§

#### fn simd_horizontal_product(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdValue>::Element

Computes the product of all the lanes of `self`.
source§

#### fn from_simd_real(
re: <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 8]>>

Builds a pure-real complex number from the given value.
source§

#### fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField

The real part of this complex number.
source§

#### fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField

The imaginary part of this complex number.
source§

#### fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField

The argument of this complex number.
source§

#### fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField

The modulus of this complex number.
source§

#### fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField

The squared modulus of this complex number.
source§

#### fn simd_norm1(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField

The sum of the absolute value of this complex number’s real and imaginary part.
source§

#### fn simd_recip(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_conjugate(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 8]>>

Multiplies this complex number by `factor`.
source§

#### fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 8]>>

Divides this complex number by `factor`.
source§

#### fn simd_floor(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_ceil(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_round(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_trunc(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_fract(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_mul_add(
self,
a: Complex<AutoSimd<[f32; 8]>>,
b: Complex<AutoSimd<[f32; 8]>>
) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField

The absolute value of this complex number: `self / self.signum()`. Read more
source§

#### fn simd_exp2(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_exp_m1(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_ln_1p(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_log2(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_log10(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_cbrt(self) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_powi(self, n: i32) -> Complex<AutoSimd<[f32; 8]>>

source§

#### fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 8]>>
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField

Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
source§

#### fn simd_sin_cos(
self
) -> (Complex<AutoSimd<[f32; 8]>>, Complex<AutoSimd<[f32; 8]>>)

source§

#### fn simd_sinh_cosh(
self
) -> (Complex<AutoSimd<[f32; 8]>>, Complex<AutoSimd<[f32; 8]>>)

source§

#### fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)

The polar form of this complex number: (modulus, arg)
source§

#### fn simd_to_exp(self) -> (Self::SimdRealField, Self)

The exponential form of this complex number: (modulus, e^{i arg})
source§

#### fn simd_signum(self) -> Self

The exponential part of this complex number: `self / self.modulus()`
source§

#### fn simd_sinc(self) -> Self

Cardinal sine
source§

#### fn simd_sinhc(self) -> Self

source§

#### fn simd_cosc(self) -> Self

Cardinal cos
source§

#### fn simd_coshc(self) -> Self

source§

### impl SimdComplexField for Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_exp(self) -> Complex<AutoSimd<[f64; 2]>>

Computes `e^(self)`, where `e` is the base of the natural logarithm.

source§

#### fn simd_ln(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the principal value of natural logarithm of `self`.

This function has one branch cut:

- `(-∞, 0]`, continuous from above.

The branch satisfies `-π ≤ arg(ln(z)) ≤ π`.

source§

#### fn simd_sqrt(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the principal value of the square root of `self`.

This function has one branch cut:

- `(-∞, 0)`, continuous from above.

The branch satisfies `-π/2 ≤ arg(sqrt(z)) ≤ π/2`.

source§

#### fn simd_powf(
self,
exp: <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 2]>>

Raises `self` to a floating point power.

source§

#### fn simd_log(self, base: AutoSimd<[f64; 2]>) -> Complex<AutoSimd<[f64; 2]>>

Returns the logarithm of `self` with respect to an arbitrary base.

source§

#### fn simd_powc(
self,
exp: Complex<AutoSimd<[f64; 2]>>
) -> Complex<AutoSimd<[f64; 2]>>

Raises `self` to a complex power.

source§

#### fn simd_sin(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the sine of `self`.

source§

#### fn simd_cos(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the cosine of `self`.

source§

#### fn simd_tan(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the tangent of `self`.

source§

#### fn simd_asin(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the principal value of the inverse sine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Re(asin(z)) ≤ π/2`.

source§

#### fn simd_acos(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the principal value of the inverse cosine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `0 ≤ Re(acos(z)) ≤ π`.

source§

#### fn simd_atan(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the principal value of the inverse tangent of `self`.

This function has two branch cuts:

- `(-∞i, -i]`, continuous from the left.
- `[i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Re(atan(z)) ≤ π/2`.

source§

#### fn simd_sinh(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the hyperbolic sine of `self`.

source§

#### fn simd_cosh(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the hyperbolic cosine of `self`.

source§

#### fn simd_tanh(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the hyperbolic tangent of `self`.

source§

#### fn simd_asinh(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the principal value of inverse hyperbolic sine of `self`.

This function has two branch cuts:

- `(-∞i, -i)`, continuous from the left.
- `(i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Im(asinh(z)) ≤ π/2`.

source§

#### fn simd_acosh(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the principal value of inverse hyperbolic cosine of `self`.

This function has one branch cut:

- `(-∞, 1)`, continuous from above.

The branch satisfies `-π ≤ Im(acosh(z)) ≤ π` and `0 ≤ Re(acosh(z)) < ∞`.

source§

#### fn simd_atanh(self) -> Complex<AutoSimd<[f64; 2]>>

Computes the principal value of inverse hyperbolic tangent of `self`.

This function has two branch cuts:

- `(-∞, -1]`, continuous from above.
- `[1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Im(atanh(z)) ≤ π/2`.

§

#### type SimdRealField = AutoSimd<[f64; 2]>

Type of the coefficients of a complex number.
source§

#### fn simd_horizontal_sum(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdValue>::Element

Computes the sum of all the lanes of `self`.
source§

#### fn simd_horizontal_product(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdValue>::Element

Computes the product of all the lanes of `self`.
source§

#### fn from_simd_real(
re: <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 2]>>

Builds a pure-real complex number from the given value.
source§

#### fn simd_real(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField

The real part of this complex number.
source§

#### fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField

The imaginary part of this complex number.
source§

#### fn simd_argument(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField

The argument of this complex number.
source§

#### fn simd_modulus(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField

The modulus of this complex number.
source§

#### fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField

The squared modulus of this complex number.
source§

#### fn simd_norm1(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField

The sum of the absolute value of this complex number’s real and imaginary part.
source§

#### fn simd_recip(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_conjugate(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_scale(
self,
factor: <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 2]>>

Multiplies this complex number by `factor`.
source§

#### fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 2]>>

Divides this complex number by `factor`.
source§

#### fn simd_floor(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_ceil(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_round(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_trunc(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_fract(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_mul_add(
self,
a: Complex<AutoSimd<[f64; 2]>>,
b: Complex<AutoSimd<[f64; 2]>>
) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_abs(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField

The absolute value of this complex number: `self / self.signum()`. Read more
source§

#### fn simd_exp2(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_exp_m1(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_ln_1p(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_log2(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_log10(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_cbrt(self) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_powi(self, n: i32) -> Complex<AutoSimd<[f64; 2]>>

source§

#### fn simd_hypot(
self,
b: Complex<AutoSimd<[f64; 2]>>
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField

Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
source§

#### fn simd_sin_cos(
self
) -> (Complex<AutoSimd<[f64; 2]>>, Complex<AutoSimd<[f64; 2]>>)

source§

#### fn simd_sinh_cosh(
self
) -> (Complex<AutoSimd<[f64; 2]>>, Complex<AutoSimd<[f64; 2]>>)

source§

#### fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)

The polar form of this complex number: (modulus, arg)
source§

#### fn simd_to_exp(self) -> (Self::SimdRealField, Self)

The exponential form of this complex number: (modulus, e^{i arg})
source§

#### fn simd_signum(self) -> Self

The exponential part of this complex number: `self / self.modulus()`
source§

#### fn simd_sinc(self) -> Self

Cardinal sine
source§

#### fn simd_sinhc(self) -> Self

source§

#### fn simd_cosc(self) -> Self

Cardinal cos
source§

#### fn simd_coshc(self) -> Self

source§

### impl SimdComplexField for Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_exp(self) -> Complex<AutoSimd<[f64; 4]>>

Computes `e^(self)`, where `e` is the base of the natural logarithm.

source§

#### fn simd_ln(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the principal value of natural logarithm of `self`.

This function has one branch cut:

- `(-∞, 0]`, continuous from above.

The branch satisfies `-π ≤ arg(ln(z)) ≤ π`.

source§

#### fn simd_sqrt(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the principal value of the square root of `self`.

This function has one branch cut:

- `(-∞, 0)`, continuous from above.

The branch satisfies `-π/2 ≤ arg(sqrt(z)) ≤ π/2`.

source§

#### fn simd_powf(
self,
exp: <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 4]>>

Raises `self` to a floating point power.

source§

#### fn simd_log(self, base: AutoSimd<[f64; 4]>) -> Complex<AutoSimd<[f64; 4]>>

Returns the logarithm of `self` with respect to an arbitrary base.

source§

#### fn simd_powc(
self,
exp: Complex<AutoSimd<[f64; 4]>>
) -> Complex<AutoSimd<[f64; 4]>>

Raises `self` to a complex power.

source§

#### fn simd_sin(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the sine of `self`.

source§

#### fn simd_cos(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the cosine of `self`.

source§

#### fn simd_tan(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the tangent of `self`.

source§

#### fn simd_asin(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the principal value of the inverse sine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Re(asin(z)) ≤ π/2`.

source§

#### fn simd_acos(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the principal value of the inverse cosine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `0 ≤ Re(acos(z)) ≤ π`.

source§

#### fn simd_atan(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the principal value of the inverse tangent of `self`.

This function has two branch cuts:

- `(-∞i, -i]`, continuous from the left.
- `[i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Re(atan(z)) ≤ π/2`.

source§

#### fn simd_sinh(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the hyperbolic sine of `self`.

source§

#### fn simd_cosh(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the hyperbolic cosine of `self`.

source§

#### fn simd_tanh(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the hyperbolic tangent of `self`.

source§

#### fn simd_asinh(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the principal value of inverse hyperbolic sine of `self`.

This function has two branch cuts:

- `(-∞i, -i)`, continuous from the left.
- `(i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Im(asinh(z)) ≤ π/2`.

source§

#### fn simd_acosh(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the principal value of inverse hyperbolic cosine of `self`.

This function has one branch cut:

- `(-∞, 1)`, continuous from above.

The branch satisfies `-π ≤ Im(acosh(z)) ≤ π` and `0 ≤ Re(acosh(z)) < ∞`.

source§

#### fn simd_atanh(self) -> Complex<AutoSimd<[f64; 4]>>

Computes the principal value of inverse hyperbolic tangent of `self`.

This function has two branch cuts:

- `(-∞, -1]`, continuous from above.
- `[1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Im(atanh(z)) ≤ π/2`.

§

#### type SimdRealField = AutoSimd<[f64; 4]>

Type of the coefficients of a complex number.
source§

#### fn simd_horizontal_sum(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdValue>::Element

Computes the sum of all the lanes of `self`.
source§

#### fn simd_horizontal_product(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdValue>::Element

Computes the product of all the lanes of `self`.
source§

#### fn from_simd_real(
re: <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 4]>>

Builds a pure-real complex number from the given value.
source§

#### fn simd_real(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField

The real part of this complex number.
source§

#### fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField

The imaginary part of this complex number.
source§

#### fn simd_argument(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField

The argument of this complex number.
source§

#### fn simd_modulus(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField

The modulus of this complex number.
source§

#### fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField

The squared modulus of this complex number.
source§

#### fn simd_norm1(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField

The sum of the absolute value of this complex number’s real and imaginary part.
source§

#### fn simd_recip(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_conjugate(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_scale(
self,
factor: <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 4]>>

Multiplies this complex number by `factor`.
source§

#### fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 4]>>

Divides this complex number by `factor`.
source§

#### fn simd_floor(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_ceil(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_round(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_trunc(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_fract(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_mul_add(
self,
a: Complex<AutoSimd<[f64; 4]>>,
b: Complex<AutoSimd<[f64; 4]>>
) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_abs(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField

The absolute value of this complex number: `self / self.signum()`. Read more
source§

#### fn simd_exp2(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_exp_m1(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_ln_1p(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_log2(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_log10(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_cbrt(self) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_powi(self, n: i32) -> Complex<AutoSimd<[f64; 4]>>

source§

#### fn simd_hypot(
self,
b: Complex<AutoSimd<[f64; 4]>>
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField

Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
source§

#### fn simd_sin_cos(
self
) -> (Complex<AutoSimd<[f64; 4]>>, Complex<AutoSimd<[f64; 4]>>)

source§

#### fn simd_sinh_cosh(
self
) -> (Complex<AutoSimd<[f64; 4]>>, Complex<AutoSimd<[f64; 4]>>)

source§

#### fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)

The polar form of this complex number: (modulus, arg)
source§

#### fn simd_to_exp(self) -> (Self::SimdRealField, Self)

The exponential form of this complex number: (modulus, e^{i arg})
source§

#### fn simd_signum(self) -> Self

The exponential part of this complex number: `self / self.modulus()`
source§

#### fn simd_sinc(self) -> Self

Cardinal sine
source§

#### fn simd_sinhc(self) -> Self

source§

#### fn simd_cosc(self) -> Self

Cardinal cos
source§

#### fn simd_coshc(self) -> Self

source§

### impl SimdComplexField for Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_exp(self) -> Complex<AutoSimd<[f64; 8]>>

Computes `e^(self)`, where `e` is the base of the natural logarithm.

source§

#### fn simd_ln(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the principal value of natural logarithm of `self`.

This function has one branch cut:

- `(-∞, 0]`, continuous from above.

The branch satisfies `-π ≤ arg(ln(z)) ≤ π`.

source§

#### fn simd_sqrt(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the principal value of the square root of `self`.

This function has one branch cut:

- `(-∞, 0)`, continuous from above.

The branch satisfies `-π/2 ≤ arg(sqrt(z)) ≤ π/2`.

source§

#### fn simd_powf(
self,
exp: <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 8]>>

Raises `self` to a floating point power.

source§

#### fn simd_log(self, base: AutoSimd<[f64; 8]>) -> Complex<AutoSimd<[f64; 8]>>

Returns the logarithm of `self` with respect to an arbitrary base.

source§

#### fn simd_powc(
self,
exp: Complex<AutoSimd<[f64; 8]>>
) -> Complex<AutoSimd<[f64; 8]>>

Raises `self` to a complex power.

source§

#### fn simd_sin(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the sine of `self`.

source§

#### fn simd_cos(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the cosine of `self`.

source§

#### fn simd_tan(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the tangent of `self`.

source§

#### fn simd_asin(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the principal value of the inverse sine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Re(asin(z)) ≤ π/2`.

source§

#### fn simd_acos(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the principal value of the inverse cosine of `self`.

This function has two branch cuts:

- `(-∞, -1)`, continuous from above.
- `(1, ∞)`, continuous from below.

The branch satisfies `0 ≤ Re(acos(z)) ≤ π`.

source§

#### fn simd_atan(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the principal value of the inverse tangent of `self`.

This function has two branch cuts:

- `(-∞i, -i]`, continuous from the left.
- `[i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Re(atan(z)) ≤ π/2`.

source§

#### fn simd_sinh(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the hyperbolic sine of `self`.

source§

#### fn simd_cosh(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the hyperbolic cosine of `self`.

source§

#### fn simd_tanh(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the hyperbolic tangent of `self`.

source§

#### fn simd_asinh(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the principal value of inverse hyperbolic sine of `self`.

This function has two branch cuts:

- `(-∞i, -i)`, continuous from the left.
- `(i, ∞i)`, continuous from the right.

The branch satisfies `-π/2 ≤ Im(asinh(z)) ≤ π/2`.

source§

#### fn simd_acosh(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the principal value of inverse hyperbolic cosine of `self`.

This function has one branch cut:

- `(-∞, 1)`, continuous from above.

The branch satisfies `-π ≤ Im(acosh(z)) ≤ π` and `0 ≤ Re(acosh(z)) < ∞`.

source§

#### fn simd_atanh(self) -> Complex<AutoSimd<[f64; 8]>>

Computes the principal value of inverse hyperbolic tangent of `self`.

This function has two branch cuts:

- `(-∞, -1]`, continuous from above.
- `[1, ∞)`, continuous from below.

The branch satisfies `-π/2 ≤ Im(atanh(z)) ≤ π/2`.

§

#### type SimdRealField = AutoSimd<[f64; 8]>

Type of the coefficients of a complex number.
source§

#### fn simd_horizontal_sum(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdValue>::Element

Computes the sum of all the lanes of `self`.
source§

#### fn simd_horizontal_product(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdValue>::Element

Computes the product of all the lanes of `self`.
source§

#### fn from_simd_real(
re: <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 8]>>

Builds a pure-real complex number from the given value.
source§

#### fn simd_real(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField

The real part of this complex number.
source§

#### fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField

The imaginary part of this complex number.
source§

#### fn simd_argument(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField

The argument of this complex number.
source§

#### fn simd_modulus(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField

The modulus of this complex number.
source§

#### fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField

The squared modulus of this complex number.
source§

#### fn simd_norm1(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField

The sum of the absolute value of this complex number’s real and imaginary part.
source§

#### fn simd_recip(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_conjugate(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_scale(
self,
factor: <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 8]>>

Multiplies this complex number by `factor`.
source§

#### fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 8]>>

Divides this complex number by `factor`.
source§

#### fn simd_floor(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_ceil(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_round(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_trunc(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_fract(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_mul_add(
self,
a: Complex<AutoSimd<[f64; 8]>>,
b: Complex<AutoSimd<[f64; 8]>>
) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_abs(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField

The absolute value of this complex number: `self / self.signum()`. Read more
source§

#### fn simd_exp2(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_exp_m1(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_ln_1p(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_log2(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_log10(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_cbrt(self) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_powi(self, n: i32) -> Complex<AutoSimd<[f64; 8]>>

source§

#### fn simd_hypot(
self,
b: Complex<AutoSimd<[f64; 8]>>
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField

Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
source§

#### fn simd_sin_cos(
self
) -> (Complex<AutoSimd<[f64; 8]>>, Complex<AutoSimd<[f64; 8]>>)

source§

#### fn simd_sinh_cosh(
self
) -> (Complex<AutoSimd<[f64; 8]>>, Complex<AutoSimd<[f64; 8]>>)

source§

#### fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)

The polar form of this complex number: (modulus, arg)
source§

#### fn simd_to_exp(self) -> (Self::SimdRealField, Self)

The exponential form of this complex number: (modulus, e^{i arg})
source§

#### fn simd_signum(self) -> Self

The exponential part of this complex number: `self / self.modulus()`
source§

#### fn simd_sinc(self) -> Self

Cardinal sine
source§

#### fn simd_sinhc(self) -> Self

source§

#### fn simd_cosc(self) -> Self

Cardinal cos
source§

#### fn simd_coshc(self) -> Self

source§

### impl<N> SimdValue for Complex<N>where
N: SimdValue,

§

#### type Element = Complex<<N as SimdValue>::Element>

The type of the elements of each lane of this SIMD value.
§

#### type SimdBool = <N as SimdValue>::SimdBool

Type of the result of comparing two SIMD values like `self`.
source§

#### fn lanes() -> usize

The number of lanes of this SIMD value.
source§

#### fn splat(val: <Complex<N> as SimdValue>::Element) -> Complex<N>

Initializes an SIMD value with each lanes set to `val`.
source§

#### fn extract(&self, i: usize) -> <Complex<N> as SimdValue>::Element

Extracts the i-th lane of `self`. Read more
source§

#### unsafe fn extract_unchecked(
&self,
i: usize
) -> <Complex<N> as SimdValue>::Element

Extracts the i-th lane of `self` without bound-checking.
source§

#### fn replace(&mut self, i: usize, val: <Complex<N> as SimdValue>::Element)

Replaces the i-th lane of `self` by `val`. Read more
source§

#### unsafe fn replace_unchecked(
&mut self,
i: usize,
val: <Complex<N> as SimdValue>::Element
)

Replaces the i-th lane of `self` by `val` without bound-checking.
source§

#### fn select(
self,
cond: <Complex<N> as SimdValue>::SimdBool,
other: Complex<N>
) -> Complex<N>

Merges `self` and `other` depending on the lanes of `cond`. Read more
source§

### impl<'a, T> Sub<&'a Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn sub(self, other: &Complex<T>) -> <Complex<T> as Sub<&'a Complex<T>>>::Output

Performs the `-` operation. Read more
source§

### impl<'a, 'b, T> Sub<&'a T> for &'b Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn sub(self, other: &T) -> <&'b Complex<T> as Sub<&'a T>>::Output

Performs the `-` operation. Read more
source§

### impl<'a, T> Sub<&'a T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn sub(self, other: &T) -> <Complex<T> as Sub<&'a T>>::Output

Performs the `-` operation. Read more
source§

### impl<'a, 'b, T> Sub<&'b Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn sub(
self,
other: &Complex<T>
) -> <&'a Complex<T> as Sub<&'b Complex<T>>>::Output

Performs the `-` operation. Read more
source§

### impl<'a, T> Sub<Complex<T>> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn sub(self, other: Complex<T>) -> <&'a Complex<T> as Sub<Complex<T>>>::Output

Performs the `-` operation. Read more
source§

### impl<T> Sub<Complex<T>> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn sub(self, other: Complex<T>) -> <Complex<T> as Sub<Complex<T>>>::Output

Performs the `-` operation. Read more
source§

### impl<'a, T> Sub<T> for &'a Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn sub(self, other: T) -> <&'a Complex<T> as Sub<T>>::Output

Performs the `-` operation. Read more
source§

### impl<T> Sub<T> for Complex<T>where
T: Clone + Num,

§

#### type Output = Complex<T>

The resulting type after applying the `-` operator.
source§

#### fn sub(self, other: T) -> <Complex<T> as Sub<T>>::Output

Performs the `-` operation. Read more
source§

### impl<'a, T> SubAssign<&'a Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn sub_assign(&mut self, other: &Complex<T>)

Performs the `-=` operation. Read more
source§

### impl<'a, T> SubAssign<&'a T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn sub_assign(&mut self, other: &T)

Performs the `-=` operation. Read more
source§

### impl<T> SubAssign<Complex<T>> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn sub_assign(&mut self, other: Complex<T>)

Performs the `-=` operation. Read more
source§

### impl<T> SubAssign<T> for Complex<T>where
T: Clone + NumAssign,

source§

#### fn sub_assign(&mut self, other: T)

Performs the `-=` operation. Read more
source§

### impl<N1, N2> SubsetOf<Complex<N2>> for Complex<N1>where
N2: SupersetOf<N1>,

source§

#### fn to_superset(&self) -> Complex<N2>

The inclusion map: converts `self` to the equivalent element of its superset.
source§

#### fn from_superset_unchecked(element: &Complex<N2>) -> Complex<N1>

Use with care! Same as `self.to_superset` but without any property checks. Always succeeds.
source§

#### fn is_in_subset(c: &Complex<N2>) -> bool

Checks if `element` is actually part of the subset `Self` (and can be converted to it).
source§

#### fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct `self` from the equivalent element of its superset. Read more
source§

### impl<'a, T> Sum<&'a Complex<T>> for Complex<T>where
T: 'a + Num + Clone,

source§

#### fn sum<I>(iter: I) -> Complex<T>where
I: Iterator<Item = &'a Complex<T>>,

Method which takes an iterator and generates `Self` from the elements by “summing up” the items. Read more
source§

### impl<T> Sum<Complex<T>> for Complex<T>where
T: Num + Clone,

source§

#### fn sum<I>(iter: I) -> Complex<T>where
I: Iterator<Item = Complex<T>>,

Method which takes an iterator and generates `Self` from the elements by “summing up” the items. Read more
source§

### impl<T> ToPrimitive for Complex<T>where
T: ToPrimitive + Num,

source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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. Read more
source§

#### 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 more
source§

#### 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
source§

#### fn to_f32(&self) -> Option<f32>

Converts the value of `self` to an `f32`. Overflows may map to positive or negative inifinity, otherwise `None` is returned if the value cannot be represented by an `f32`. Read more
source§

#### fn to_f64(&self) -> Option<f64>

Converts the value of `self` to an `f64`. Overflows may map to positive or negative inifinity, otherwise `None` is returned if the value cannot be represented by an `f64`. Read more
source§

### impl<T> UpperExp for Complex<T>where
T: UpperExp + Num + PartialOrd<T> + Clone,

source§

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

Formats the value using the given formatter.
source§

### impl<T> UpperHex for Complex<T>where
T: UpperHex + Num + PartialOrd<T> + Clone,

source§

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

Formats the value using the given formatter.
source§

### impl<T> Zero for Complex<T>where
T: Clone + Num,

source§

#### fn zero() -> Complex<T>

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

#### fn is_zero(&self) -> bool

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

#### fn set_zero(&mut self)

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

### impl<T> Copy for Complex<T>where
T: Copy,

source§

### impl<T> Eq for Complex<T>where
T: Eq,

source§

### impl<N> Field for Complex<N>where
N: SimdValue + Clone + NumAssign + ClosedNeg,

source§

### impl<N> PrimitiveSimdValue for Complex<N>where
N: PrimitiveSimdValue,

source§

### impl<T> StructuralEq for Complex<T>

source§

### impl<T> StructuralPartialEq for Complex<T>

## Auto Trait Implementations§

§

### impl<T> RefUnwindSafe for Complex<T>where
T: RefUnwindSafe,

§

### impl<T> Send for Complex<T>where
T: Send,

§

### impl<T> Sync for Complex<T>where
T: Sync,

§

### impl<T> Unpin for Complex<T>where
T: Unpin,

§

### impl<T> UnwindSafe for Complex<T>where
T: UnwindSafe,

## Blanket Implementations§

source§

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

source§

#### fn type_id(&self) -> TypeId

Gets the `TypeId` of `self`. Read more
source§

### impl<T> Borrow<T> for Twhere
T: ?Sized,

const: unstable · source§

#### fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

### impl<T> BorrowMut<T> for Twhere
T: ?Sized,

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

### impl<T> From<T> for T

const: unstable · source§

#### fn from(t: T) -> T

Returns the argument unchanged.

source§

### impl<T, U> Into<U> for Twhere
U: From<T>,

const: unstable · 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> Same<T> for T

§

#### type Output = T

Should always be `Self`
source§

### impl<T> SimdComplexField for Twhere
T: ComplexField,

§

#### type SimdRealField = <T as ComplexField>::RealField

Type of the coefficients of a complex number.
source§

#### fn from_simd_real(re: <T as SimdComplexField>::SimdRealField) -> T

Builds a pure-real complex number from the given value.
source§

#### fn simd_real(self) -> <T as SimdComplexField>::SimdRealField

The real part of this complex number.
source§

#### fn simd_imaginary(self) -> <T as SimdComplexField>::SimdRealField

The imaginary part of this complex number.
source§

#### fn simd_modulus(self) -> <T as SimdComplexField>::SimdRealField

The modulus of this complex number.
source§

#### fn simd_modulus_squared(self) -> <T as SimdComplexField>::SimdRealField

The squared modulus of this complex number.
source§

#### fn simd_argument(self) -> <T as SimdComplexField>::SimdRealField

The argument of this complex number.
source§

#### fn simd_norm1(self) -> <T as SimdComplexField>::SimdRealField

The sum of the absolute value of this complex number’s real and imaginary part.
source§

#### fn simd_scale(self, factor: <T as SimdComplexField>::SimdRealField) -> T

Multiplies this complex number by `factor`.
source§

#### fn simd_unscale(self, factor: <T as SimdComplexField>::SimdRealField) -> T

Divides this complex number by `factor`.
source§

#### fn simd_to_polar(
self
) -> (<T as SimdComplexField>::SimdRealField, <T as SimdComplexField>::SimdRealField)

The polar form of this complex number: (modulus, arg)
source§

#### fn simd_to_exp(self) -> (<T as SimdComplexField>::SimdRealField, T)

The exponential form of this complex number: (modulus, e^{i arg})
source§

#### fn simd_signum(self) -> T

The exponential part of this complex number: `self / self.modulus()`
source§

#### fn simd_floor(self) -> T

source§

#### fn simd_ceil(self) -> T

source§

#### fn simd_round(self) -> T

source§

#### fn simd_trunc(self) -> T

source§

#### fn simd_fract(self) -> T

source§

#### fn simd_mul_add(self, a: T, b: T) -> T

source§

#### fn simd_abs(self) -> <T as SimdComplexField>::SimdRealField

The absolute value of this complex number: `self / self.signum()`. Read more
source§

#### fn simd_hypot(self, other: T) -> <T as SimdComplexField>::SimdRealField

Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
source§

#### fn simd_recip(self) -> T

source§

#### fn simd_conjugate(self) -> T

source§

#### fn simd_sin(self) -> T

source§

#### fn simd_cos(self) -> T

source§

#### fn simd_sin_cos(self) -> (T, T)

source§

#### fn simd_sinh_cosh(self) -> (T, T)

source§

#### fn simd_tan(self) -> T

source§

#### fn simd_asin(self) -> T

source§

#### fn simd_acos(self) -> T

source§

#### fn simd_atan(self) -> T

source§

#### fn simd_sinh(self) -> T

source§

#### fn simd_cosh(self) -> T

source§

#### fn simd_tanh(self) -> T

source§

#### fn simd_asinh(self) -> T

source§

#### fn simd_acosh(self) -> T

source§

#### fn simd_atanh(self) -> T

source§

#### fn simd_sinc(self) -> T

Cardinal sine
source§

#### fn simd_sinhc(self) -> T

source§

#### fn simd_cosc(self) -> T

Cardinal cos
source§

#### fn simd_coshc(self) -> T

source§

#### fn simd_log(self, base: <T as SimdComplexField>::SimdRealField) -> T

source§

#### fn simd_log2(self) -> T

source§

#### fn simd_log10(self) -> T

source§

#### fn simd_ln(self) -> T

source§

#### fn simd_ln_1p(self) -> T

source§

#### fn simd_sqrt(self) -> T

source§

#### fn simd_exp(self) -> T

source§

#### fn simd_exp2(self) -> T

source§

#### fn simd_exp_m1(self) -> T

source§

#### fn simd_powi(self, n: i32) -> T

source§

#### fn simd_powf(self, n: <T as SimdComplexField>::SimdRealField) -> T

source§

#### fn simd_powc(self, n: T) -> T

source§

#### fn simd_cbrt(self) -> T

source§

#### fn simd_horizontal_sum(self) -> <T as SimdValue>::Element

Computes the sum of all the lanes of `self`.
source§

#### fn simd_horizontal_product(self) -> <T as SimdValue>::Element

Computes the product of all the lanes of `self`.
source§

### impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,

source§

#### fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct `self` from the equivalent element of its superset. Read more
source§

#### fn is_in_subset(&self) -> bool

Checks if `self` is actually part of its subset `T` (and can be converted to it).
source§

#### fn to_subset_unchecked(&self) -> SS

Use with care! Same as `self.to_subset` but without any property checks. Always succeeds.
source§

#### fn from_subset(element: &SS) -> SP

The inclusion map: converts `self` to the equivalent element of its superset.
source§

### impl<T> ToOwned for Twhere
T: Clone,

§

#### 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 Twhere
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 Twhere
U: Into<T>,

§

#### type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

### impl<T, U> TryInto<U> for Twhere
U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

### impl<T, Right> ClosedAdd<Right> for Twhere
T: Add<Right, Output = T> + AddAssign<Right>,

source§

### impl<T, Right> ClosedDiv<Right> for Twhere
T: Div<Right, Output = T> + DivAssign<Right>,

source§

### impl<T, Right> ClosedMul<Right> for Twhere
T: Mul<Right, Output = T> + MulAssign<Right>,

source§

### impl<T> ClosedNeg for Twhere
T: Neg<Output = T>,

source§

### impl<T, Right> ClosedSub<Right> for Twhere
T: Sub<Right, Output = T> + SubAssign<Right>,

source§

### impl<T> NumAssign for Twhere
T: Num + NumAssignOps<T>,

source§

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

source§

### impl<T> NumAssignRef for Twhere
T: NumAssign + for<'r> NumAssignOps<&'r T>,

source§

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

source§

### impl<T> NumRef for Twhere
T: Num + for<'r> NumOps<&'r T, T>,

source§

### impl<T, Base> RefNum<Base> for Twhere
T: NumOps<Base, Base> + for<'r> NumOps<&'r Base, Base>,