Struct bevy_rapier2d::prelude::nalgebra::Complex [−][src]
#[repr(C)]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
Returns the square of the norm (since T
doesn’t necessarily
have a sqrt function), i.e. re^2 + im^2
.
Returns the L1 norm |re| + |im|
– the Manhattan distance from the origin.
Checks if the given complex number is infinite
Trait Implementations
Performs the +=
operation. Read more
Performs the +=
operation. Read more
Performs the +=
operation. Read more
Performs the +=
operation. Read more
impl<N> ComplexField for Complex<N> where
N: RealField + PartialOrd<N>,
impl<N> ComplexField for Complex<N> where
N: RealField + PartialOrd<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)) ≤ π
.
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
.
pub fn powf(self, exp: <Complex<N> as ComplexField>::RealField) -> Complex<N>
pub fn powf(self, exp: <Complex<N> as ComplexField>::RealField) -> Complex<N>
Raises self
to a floating point power.
Returns the logarithm of self
with respect to an arbitrary base.
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
.
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)) ≤ π
.
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
.
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
.
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)) < ∞
.
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
pub fn from_real(re: <Complex<N> as ComplexField>::RealField) -> Complex<N>
pub fn from_real(re: <Complex<N> as ComplexField>::RealField) -> Complex<N>
Builds a pure-real complex number from the given value.
pub fn real(self) -> <Complex<N> as ComplexField>::RealField
pub fn real(self) -> <Complex<N> as ComplexField>::RealField
The real part of this complex number.
pub fn imaginary(self) -> <Complex<N> as ComplexField>::RealField
pub fn imaginary(self) -> <Complex<N> as ComplexField>::RealField
The imaginary part of this complex number.
pub fn argument(self) -> <Complex<N> as ComplexField>::RealField
pub fn argument(self) -> <Complex<N> as ComplexField>::RealField
The argument of this complex number.
pub fn modulus(self) -> <Complex<N> as ComplexField>::RealField
pub fn modulus(self) -> <Complex<N> as ComplexField>::RealField
The modulus of this complex number.
pub fn modulus_squared(self) -> <Complex<N> as ComplexField>::RealField
pub fn modulus_squared(self) -> <Complex<N> as ComplexField>::RealField
The squared modulus of this complex number.
pub fn norm1(self) -> <Complex<N> as ComplexField>::RealField
pub fn norm1(self) -> <Complex<N> as ComplexField>::RealField
The sum of the absolute value of this complex number’s real and imaginary part.
pub fn scale(
self,
factor: <Complex<N> as ComplexField>::RealField
) -> Complex<N>
pub fn scale(
self,
factor: <Complex<N> as ComplexField>::RealField
) -> Complex<N>
Multiplies this complex number by factor
.
pub fn unscale(
self,
factor: <Complex<N> as ComplexField>::RealField
) -> Complex<N>
pub fn unscale(
self,
factor: <Complex<N> as ComplexField>::RealField
) -> Complex<N>
Divides this complex number by factor
.
pub fn abs(self) -> <Complex<N> as ComplexField>::RealField
pub fn abs(self) -> <Complex<N> as ComplexField>::RealField
The absolute value of this complex number: self / self.signum()
. Read more
pub fn hypot(self, b: Complex<N>) -> <Complex<N> as ComplexField>::RealField
pub fn hypot(self, b: Complex<N>) -> <Complex<N> as ComplexField>::RealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
The polar form of this complex number: (modulus, arg)
The exponential form of this complex number: (modulus, e^{i arg})
fn signum(self) -> Self
fn signum(self) -> Self
The exponential part of this complex number: self / self.modulus()
fn sinc(self) -> Self
fn sinc(self) -> Self
Cardinal sine
fn sinhc(self) -> Self
fn cosc(self) -> Self
fn cosc(self) -> Self
Cardinal cos
fn coshc(self) -> Self
Performs the /=
operation. Read more
Performs the /=
operation. Read more
Performs the /=
operation. Read more
Performs the /=
operation. Read more
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
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
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
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
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
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
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
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
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
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
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
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
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
impl<'a, 'b, T> MulAddAssign<&'a Complex<T>, &'b Complex<T>> for Complex<T> where
T: Clone + NumAssign + MulAddAssign<T, T>,
[src]
impl<'a, 'b, T> MulAddAssign<&'a Complex<T>, &'b Complex<T>> for Complex<T> where
T: Clone + NumAssign + MulAddAssign<T, T>,
[src]Performs the fused multiply-add operation.
impl<T> MulAddAssign<Complex<T>, Complex<T>> for Complex<T> where
T: Clone + NumAssign + MulAddAssign<T, T>,
[src]
impl<T> MulAddAssign<Complex<T>, Complex<T>> for Complex<T> where
T: Clone + NumAssign + MulAddAssign<T, T>,
[src]Performs the fused multiply-add operation.
Performs the *=
operation. Read more
Performs the *=
operation. Read more
Performs the *=
operation. Read more
Performs the *=
operation. Read more
type Norm = <T as SimdComplexField>::SimdRealField
type Norm = <T as SimdComplexField>::SimdRealField
The type of the norm.
Computes the norm.
Computes the squared norm.
Divides self
by n.
pub fn from_str_radix(
s: &str,
radix: u32
) -> Result<Complex<T>, <Complex<T> as Num>::FromStrRadixErr>
[src]
pub fn from_str_radix(
s: &str,
radix: u32
) -> Result<Complex<T>, <Complex<T> as Num>::FromStrRadixErr>
[src]Parses a +/- bi
; ai +/- b
; a
; or bi
where a
and b
are of type T
type FromStrRadixErr = ParseComplexError<<T as Num>::FromStrRadixErr>
Performs the %=
operation. Read more
Performs the %=
operation. Read more
Performs the %=
operation. Read more
Performs the %=
operation. Read more
impl SimdComplexField for Complex<AutoSimd<[f32; 16]>>
impl SimdComplexField for Complex<AutoSimd<[f32; 16]>>
Computes e^(self)
, where e
is the base of the natural logarithm.
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)) ≤ π
.
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
.
Raises self
to a floating point power.
Returns the logarithm of self
with respect to an arbitrary base.
Raises self
to a complex power.
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
.
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)) ≤ π
.
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
.
pub fn simd_asinh(self) -> Complex<AutoSimd<[f32; 16]>>
pub 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
.
pub fn simd_acosh(self) -> Complex<AutoSimd<[f32; 16]>>
pub 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)) < ∞
.
pub fn simd_atanh(self) -> Complex<AutoSimd<[f32; 16]>>
pub 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 SimdRealField = AutoSimd<[f32; 16]>
Type of the coefficients of a complex number.
Computes the sum of all the lanes of self
.
Computes the product of all the lanes of self
.
pub fn from_simd_real(
re: <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 16]>>
pub 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.
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
The real part of this complex number.
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
The imaginary part of this complex number.
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
The argument of this complex number.
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
The modulus of this complex number.
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
The squared modulus of this complex number.
pub fn simd_norm1(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
pub 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.
pub fn simd_recip(self) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_conjugate(self) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 16]>>
Multiplies this complex number by factor
.
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 16]>>
Divides this complex number by factor
.
pub fn simd_floor(self) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_round(self) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_trunc(self) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_fract(self) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_mul_add(
self,
a: Complex<AutoSimd<[f32; 16]>>,
b: Complex<AutoSimd<[f32; 16]>>
) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
The absolute value of this complex number: self / self.signum()
. Read more
pub fn simd_exp_m1(self) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_ln_1p(self) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_log10(self) -> Complex<AutoSimd<[f32; 16]>>
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 16]>>
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 16]>>
) -> <Complex<AutoSimd<[f32; 16]>> as SimdComplexField>::SimdRealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
The polar form of this complex number: (modulus, arg)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
The exponential form of this complex number: (modulus, e^{i arg})
fn simd_signum(self) -> Self
fn simd_signum(self) -> Self
The exponential part of this complex number: self / self.modulus()
fn simd_sinc(self) -> Self
fn simd_sinc(self) -> Self
Cardinal sine
fn simd_sinhc(self) -> Self
fn simd_cosc(self) -> Self
fn simd_cosc(self) -> Self
Cardinal cos
fn simd_coshc(self) -> Self
impl SimdComplexField for Complex<AutoSimd<[f64; 8]>>
impl SimdComplexField for Complex<AutoSimd<[f64; 8]>>
Computes e^(self)
, where e
is the base of the natural logarithm.
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)) ≤ π
.
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
.
Raises self
to a floating point power.
Returns the logarithm of self
with respect to an arbitrary base.
Raises self
to a complex power.
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
.
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)) ≤ π
.
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
.
pub fn simd_asinh(self) -> Complex<AutoSimd<[f64; 8]>>
pub 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
.
pub fn simd_acosh(self) -> Complex<AutoSimd<[f64; 8]>>
pub 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)) < ∞
.
pub fn simd_atanh(self) -> Complex<AutoSimd<[f64; 8]>>
pub 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 SimdRealField = AutoSimd<[f64; 8]>
Type of the coefficients of a complex number.
Computes the sum of all the lanes of self
.
Computes the product of all the lanes of self
.
pub fn from_simd_real(
re: <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 8]>>
pub 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.
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
The real part of this complex number.
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
The imaginary part of this complex number.
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
The argument of this complex number.
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
The modulus of this complex number.
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
The squared modulus of this complex number.
pub fn simd_norm1(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
pub 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.
pub fn simd_recip(self) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_conjugate(self) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 8]>>
Multiplies this complex number by factor
.
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 8]>>
Divides this complex number by factor
.
pub fn simd_floor(self) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_round(self) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_trunc(self) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_fract(self) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_mul_add(
self,
a: Complex<AutoSimd<[f64; 8]>>,
b: Complex<AutoSimd<[f64; 8]>>
) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
The absolute value of this complex number: self / self.signum()
. Read more
pub fn simd_exp_m1(self) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_ln_1p(self) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_log10(self) -> Complex<AutoSimd<[f64; 8]>>
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f64; 8]>>
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f64; 8]>>
) -> <Complex<AutoSimd<[f64; 8]>> as SimdComplexField>::SimdRealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
The polar form of this complex number: (modulus, arg)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
The exponential form of this complex number: (modulus, e^{i arg})
fn simd_signum(self) -> Self
fn simd_signum(self) -> Self
The exponential part of this complex number: self / self.modulus()
fn simd_sinc(self) -> Self
fn simd_sinc(self) -> Self
Cardinal sine
fn simd_sinhc(self) -> Self
fn simd_cosc(self) -> Self
fn simd_cosc(self) -> Self
Cardinal cos
fn simd_coshc(self) -> Self
impl SimdComplexField for Complex<AutoSimd<[f32; 2]>>
impl SimdComplexField for Complex<AutoSimd<[f32; 2]>>
Computes e^(self)
, where e
is the base of the natural logarithm.
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)) ≤ π
.
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
.
Raises self
to a floating point power.
Returns the logarithm of self
with respect to an arbitrary base.
Raises self
to a complex power.
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
.
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)) ≤ π
.
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
.
pub fn simd_asinh(self) -> Complex<AutoSimd<[f32; 2]>>
pub 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
.
pub fn simd_acosh(self) -> Complex<AutoSimd<[f32; 2]>>
pub 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)) < ∞
.
pub fn simd_atanh(self) -> Complex<AutoSimd<[f32; 2]>>
pub 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 SimdRealField = AutoSimd<[f32; 2]>
Type of the coefficients of a complex number.
Computes the sum of all the lanes of self
.
Computes the product of all the lanes of self
.
pub fn from_simd_real(
re: <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 2]>>
pub 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.
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
The real part of this complex number.
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
The imaginary part of this complex number.
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
The argument of this complex number.
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
The modulus of this complex number.
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
The squared modulus of this complex number.
pub fn simd_norm1(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
pub 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.
pub fn simd_recip(self) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_conjugate(self) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 2]>>
Multiplies this complex number by factor
.
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 2]>>
Divides this complex number by factor
.
pub fn simd_floor(self) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_round(self) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_trunc(self) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_fract(self) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_mul_add(
self,
a: Complex<AutoSimd<[f32; 2]>>,
b: Complex<AutoSimd<[f32; 2]>>
) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
The absolute value of this complex number: self / self.signum()
. Read more
pub fn simd_exp_m1(self) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_ln_1p(self) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_log10(self) -> Complex<AutoSimd<[f32; 2]>>
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 2]>>
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 2]>>
) -> <Complex<AutoSimd<[f32; 2]>> as SimdComplexField>::SimdRealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
The polar form of this complex number: (modulus, arg)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
The exponential form of this complex number: (modulus, e^{i arg})
fn simd_signum(self) -> Self
fn simd_signum(self) -> Self
The exponential part of this complex number: self / self.modulus()
fn simd_sinc(self) -> Self
fn simd_sinc(self) -> Self
Cardinal sine
fn simd_sinhc(self) -> Self
fn simd_cosc(self) -> Self
fn simd_cosc(self) -> Self
Cardinal cos
fn simd_coshc(self) -> Self
impl SimdComplexField for Complex<AutoSimd<[f32; 8]>>
impl SimdComplexField for Complex<AutoSimd<[f32; 8]>>
Computes e^(self)
, where e
is the base of the natural logarithm.
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)) ≤ π
.
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
.
Raises self
to a floating point power.
Returns the logarithm of self
with respect to an arbitrary base.
Raises self
to a complex power.
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
.
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)) ≤ π
.
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
.
pub fn simd_asinh(self) -> Complex<AutoSimd<[f32; 8]>>
pub 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
.
pub fn simd_acosh(self) -> Complex<AutoSimd<[f32; 8]>>
pub 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)) < ∞
.
pub fn simd_atanh(self) -> Complex<AutoSimd<[f32; 8]>>
pub 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 SimdRealField = AutoSimd<[f32; 8]>
Type of the coefficients of a complex number.
Computes the sum of all the lanes of self
.
Computes the product of all the lanes of self
.
pub fn from_simd_real(
re: <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 8]>>
pub 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.
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
The real part of this complex number.
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
The imaginary part of this complex number.
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
The argument of this complex number.
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
The modulus of this complex number.
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
The squared modulus of this complex number.
pub fn simd_norm1(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
pub 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.
pub fn simd_recip(self) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_conjugate(self) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 8]>>
Multiplies this complex number by factor
.
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 8]>>
Divides this complex number by factor
.
pub fn simd_floor(self) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_round(self) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_trunc(self) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_fract(self) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_mul_add(
self,
a: Complex<AutoSimd<[f32; 8]>>,
b: Complex<AutoSimd<[f32; 8]>>
) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
The absolute value of this complex number: self / self.signum()
. Read more
pub fn simd_exp_m1(self) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_ln_1p(self) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_log10(self) -> Complex<AutoSimd<[f32; 8]>>
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 8]>>
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 8]>>
) -> <Complex<AutoSimd<[f32; 8]>> as SimdComplexField>::SimdRealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
The polar form of this complex number: (modulus, arg)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
The exponential form of this complex number: (modulus, e^{i arg})
fn simd_signum(self) -> Self
fn simd_signum(self) -> Self
The exponential part of this complex number: self / self.modulus()
fn simd_sinc(self) -> Self
fn simd_sinc(self) -> Self
Cardinal sine
fn simd_sinhc(self) -> Self
fn simd_cosc(self) -> Self
fn simd_cosc(self) -> Self
Cardinal cos
fn simd_coshc(self) -> Self
impl SimdComplexField for Complex<AutoSimd<[f64; 4]>>
impl SimdComplexField for Complex<AutoSimd<[f64; 4]>>
Computes e^(self)
, where e
is the base of the natural logarithm.
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)) ≤ π
.
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
.
Raises self
to a floating point power.
Returns the logarithm of self
with respect to an arbitrary base.
Raises self
to a complex power.
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
.
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)) ≤ π
.
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
.
pub fn simd_asinh(self) -> Complex<AutoSimd<[f64; 4]>>
pub 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
.
pub fn simd_acosh(self) -> Complex<AutoSimd<[f64; 4]>>
pub 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)) < ∞
.
pub fn simd_atanh(self) -> Complex<AutoSimd<[f64; 4]>>
pub 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 SimdRealField = AutoSimd<[f64; 4]>
Type of the coefficients of a complex number.
Computes the sum of all the lanes of self
.
Computes the product of all the lanes of self
.
pub fn from_simd_real(
re: <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 4]>>
pub 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.
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
The real part of this complex number.
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
The imaginary part of this complex number.
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
The argument of this complex number.
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
The modulus of this complex number.
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
The squared modulus of this complex number.
pub fn simd_norm1(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
pub 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.
pub fn simd_recip(self) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_conjugate(self) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 4]>>
Multiplies this complex number by factor
.
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 4]>>
Divides this complex number by factor
.
pub fn simd_floor(self) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_round(self) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_trunc(self) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_fract(self) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_mul_add(
self,
a: Complex<AutoSimd<[f64; 4]>>,
b: Complex<AutoSimd<[f64; 4]>>
) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
The absolute value of this complex number: self / self.signum()
. Read more
pub fn simd_exp_m1(self) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_ln_1p(self) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_log10(self) -> Complex<AutoSimd<[f64; 4]>>
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f64; 4]>>
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f64; 4]>>
) -> <Complex<AutoSimd<[f64; 4]>> as SimdComplexField>::SimdRealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
The polar form of this complex number: (modulus, arg)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
The exponential form of this complex number: (modulus, e^{i arg})
fn simd_signum(self) -> Self
fn simd_signum(self) -> Self
The exponential part of this complex number: self / self.modulus()
fn simd_sinc(self) -> Self
fn simd_sinc(self) -> Self
Cardinal sine
fn simd_sinhc(self) -> Self
fn simd_cosc(self) -> Self
fn simd_cosc(self) -> Self
Cardinal cos
fn simd_coshc(self) -> Self
impl SimdComplexField for Complex<AutoSimd<[f64; 2]>>
impl SimdComplexField for Complex<AutoSimd<[f64; 2]>>
Computes e^(self)
, where e
is the base of the natural logarithm.
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)) ≤ π
.
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
.
Raises self
to a floating point power.
Returns the logarithm of self
with respect to an arbitrary base.
Raises self
to a complex power.
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
.
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)) ≤ π
.
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
.
pub fn simd_asinh(self) -> Complex<AutoSimd<[f64; 2]>>
pub 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
.
pub fn simd_acosh(self) -> Complex<AutoSimd<[f64; 2]>>
pub 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)) < ∞
.
pub fn simd_atanh(self) -> Complex<AutoSimd<[f64; 2]>>
pub 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 SimdRealField = AutoSimd<[f64; 2]>
Type of the coefficients of a complex number.
Computes the sum of all the lanes of self
.
Computes the product of all the lanes of self
.
pub fn from_simd_real(
re: <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 2]>>
pub 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.
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
The real part of this complex number.
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
The imaginary part of this complex number.
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
The argument of this complex number.
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
The modulus of this complex number.
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
The squared modulus of this complex number.
pub fn simd_norm1(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
pub 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.
pub fn simd_recip(self) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_conjugate(self) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 2]>>
Multiplies this complex number by factor
.
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f64; 2]>>
Divides this complex number by factor
.
pub fn simd_floor(self) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_round(self) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_trunc(self) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_fract(self) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_mul_add(
self,
a: Complex<AutoSimd<[f64; 2]>>,
b: Complex<AutoSimd<[f64; 2]>>
) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
The absolute value of this complex number: self / self.signum()
. Read more
pub fn simd_exp_m1(self) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_ln_1p(self) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_log10(self) -> Complex<AutoSimd<[f64; 2]>>
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f64; 2]>>
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f64; 2]>>
) -> <Complex<AutoSimd<[f64; 2]>> as SimdComplexField>::SimdRealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
The polar form of this complex number: (modulus, arg)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
The exponential form of this complex number: (modulus, e^{i arg})
fn simd_signum(self) -> Self
fn simd_signum(self) -> Self
The exponential part of this complex number: self / self.modulus()
fn simd_sinc(self) -> Self
fn simd_sinc(self) -> Self
Cardinal sine
fn simd_sinhc(self) -> Self
fn simd_cosc(self) -> Self
fn simd_cosc(self) -> Self
Cardinal cos
fn simd_coshc(self) -> Self
impl SimdComplexField for Complex<AutoSimd<[f32; 4]>>
impl SimdComplexField for Complex<AutoSimd<[f32; 4]>>
Computes e^(self)
, where e
is the base of the natural logarithm.
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)) ≤ π
.
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
.
Raises self
to a floating point power.
Returns the logarithm of self
with respect to an arbitrary base.
Raises self
to a complex power.
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
.
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)) ≤ π
.
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
.
pub fn simd_asinh(self) -> Complex<AutoSimd<[f32; 4]>>
pub 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
.
pub fn simd_acosh(self) -> Complex<AutoSimd<[f32; 4]>>
pub 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)) < ∞
.
pub fn simd_atanh(self) -> Complex<AutoSimd<[f32; 4]>>
pub 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 SimdRealField = AutoSimd<[f32; 4]>
Type of the coefficients of a complex number.
Computes the sum of all the lanes of self
.
Computes the product of all the lanes of self
.
pub fn from_simd_real(
re: <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 4]>>
pub 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.
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_real(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
The real part of this complex number.
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_imaginary(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
The imaginary part of this complex number.
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_argument(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
The argument of this complex number.
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
The modulus of this complex number.
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_modulus_squared(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
The squared modulus of this complex number.
pub fn simd_norm1(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
pub 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.
pub fn simd_recip(self) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_conjugate(self) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_scale(
self,
factor: <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 4]>>
Multiplies this complex number by factor
.
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_unscale(
self,
factor: <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
) -> Complex<AutoSimd<[f32; 4]>>
Divides this complex number by factor
.
pub fn simd_floor(self) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_round(self) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_trunc(self) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_fract(self) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_mul_add(
self,
a: Complex<AutoSimd<[f32; 4]>>,
b: Complex<AutoSimd<[f32; 4]>>
) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_abs(
self
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
The absolute value of this complex number: self / self.signum()
. Read more
pub fn simd_exp_m1(self) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_ln_1p(self) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_log10(self) -> Complex<AutoSimd<[f32; 4]>>
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 4]>>
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
pub fn simd_hypot(
self,
b: Complex<AutoSimd<[f32; 4]>>
) -> <Complex<AutoSimd<[f32; 4]>> as SimdComplexField>::SimdRealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
The polar form of this complex number: (modulus, arg)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
The exponential form of this complex number: (modulus, e^{i arg})
fn simd_signum(self) -> Self
fn simd_signum(self) -> Self
The exponential part of this complex number: self / self.modulus()
fn simd_sinc(self) -> Self
fn simd_sinc(self) -> Self
Cardinal sine
fn simd_sinhc(self) -> Self
fn simd_cosc(self) -> Self
fn simd_cosc(self) -> Self
Cardinal cos
fn simd_coshc(self) -> Self
The type of the elements of each lane of this SIMD value.
Type of the result of comparing two SIMD values like self
.
Initializes an SIMD value with each lanes set to val
.
Extracts the i-th lane of self
. Read more
pub unsafe fn extract_unchecked(
&self,
i: usize
) -> <Complex<N> as SimdValue>::Element
pub unsafe fn extract_unchecked(
&self,
i: usize
) -> <Complex<N> as SimdValue>::Element
Extracts the i-th lane of self
without bound-checking.
Replaces the i-th lane of self
by val
. Read more
pub unsafe fn replace_unchecked(
&mut self,
i: usize,
val: <Complex<N> as SimdValue>::Element
)
pub 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.
Merges self
and other
depending on the lanes of cond
. Read more
Applies a function to each lane of self
. Read more
Performs the -=
operation. Read more
Performs the -=
operation. Read more
Performs the -=
operation. Read more
Performs the -=
operation. Read more
pub fn to_superset(&self) -> Complex<N2>
pub fn to_superset(&self) -> Complex<N2>
The inclusion map: converts self
to the equivalent element of its superset.
pub fn from_superset_unchecked(element: &Complex<N2>) -> Complex<N1>
pub fn from_superset_unchecked(element: &Complex<N2>) -> Complex<N1>
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
pub fn is_in_subset(c: &Complex<N2>) -> bool
pub fn is_in_subset(c: &Complex<N2>) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
fn from_superset(element: &T) -> Option<Self>
fn from_superset(element: &T) -> Option<Self>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
Converts the value of self
to a usize
. If the value cannot be
represented by a usize
, then None
is returned. Read more
Converts the value of self
to an isize
. If the value cannot be
represented by an isize
, then None
is returned. Read more
Converts the value of self
to a u8
. If the value cannot be
represented by a u8
, then None
is returned. Read more
Converts the value of self
to a u16
. If the value cannot be
represented by a u16
, then None
is returned. Read more
Converts the value of self
to a u32
. If the value cannot be
represented by a u32
, then None
is returned. Read more
Converts the value of self
to a u64
. If the value cannot be
represented by a u64
, then None
is returned. Read more
Converts the value of self
to an i8
. If the value cannot be
represented by an i8
, then None
is returned. Read more
Converts the value of self
to an i16
. If the value cannot be
represented by an i16
, then None
is returned. Read more
Converts the value of self
to an i32
. If the value cannot be
represented by an i32
, then None
is returned. Read more
Converts the value of self
to an i64
. If the value cannot be
represented by an i64
, then None
is returned. Read more
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
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
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
impl<N> PrimitiveSimdValue for Complex<N> where
N: PrimitiveSimdValue,
Auto Trait Implementations
impl<T> RefUnwindSafe for Complex<T> where
T: RefUnwindSafe,
impl<T> UnwindSafe for Complex<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
impl<T> DynHash for T where
T: DynEq + Hash,
impl<T> DynHash for T where
T: DynEq + Hash,
impl<T> FromWorld for T where
T: Default,
impl<T> FromWorld for T where
T: Default,
pub fn from_world(_world: &mut World) -> T
pub fn from_world(_world: &mut World) -> T
Creates Self
using data from the given [World]
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
impl<T> SimdComplexField for T where
T: ComplexField,
impl<T> SimdComplexField for T where
T: ComplexField,
type SimdRealField = <T as ComplexField>::RealField
type SimdRealField = <T as ComplexField>::RealField
Type of the coefficients of a complex number.
pub fn from_simd_real(re: <T as SimdComplexField>::SimdRealField) -> T
pub fn from_simd_real(re: <T as SimdComplexField>::SimdRealField) -> T
Builds a pure-real complex number from the given value.
pub fn simd_real(self) -> <T as SimdComplexField>::SimdRealField
pub fn simd_real(self) -> <T as SimdComplexField>::SimdRealField
The real part of this complex number.
pub fn simd_imaginary(self) -> <T as SimdComplexField>::SimdRealField
pub fn simd_imaginary(self) -> <T as SimdComplexField>::SimdRealField
The imaginary part of this complex number.
pub fn simd_modulus(self) -> <T as SimdComplexField>::SimdRealField
pub fn simd_modulus(self) -> <T as SimdComplexField>::SimdRealField
The modulus of this complex number.
pub fn simd_modulus_squared(self) -> <T as SimdComplexField>::SimdRealField
pub fn simd_modulus_squared(self) -> <T as SimdComplexField>::SimdRealField
The squared modulus of this complex number.
pub fn simd_argument(self) -> <T as SimdComplexField>::SimdRealField
pub fn simd_argument(self) -> <T as SimdComplexField>::SimdRealField
The argument of this complex number.
pub fn simd_norm1(self) -> <T as SimdComplexField>::SimdRealField
pub fn simd_norm1(self) -> <T as SimdComplexField>::SimdRealField
The sum of the absolute value of this complex number’s real and imaginary part.
pub fn simd_scale(self, factor: <T as SimdComplexField>::SimdRealField) -> T
pub fn simd_scale(self, factor: <T as SimdComplexField>::SimdRealField) -> T
Multiplies this complex number by factor
.
pub fn simd_unscale(self, factor: <T as SimdComplexField>::SimdRealField) -> T
pub fn simd_unscale(self, factor: <T as SimdComplexField>::SimdRealField) -> T
Divides this complex number by factor
.
pub fn simd_to_polar(
self
) -> (<T as SimdComplexField>::SimdRealField, <T as SimdComplexField>::SimdRealField)
pub fn simd_to_polar(
self
) -> (<T as SimdComplexField>::SimdRealField, <T as SimdComplexField>::SimdRealField)
The polar form of this complex number: (modulus, arg)
pub fn simd_to_exp(self) -> (<T as SimdComplexField>::SimdRealField, T)
pub fn simd_to_exp(self) -> (<T as SimdComplexField>::SimdRealField, T)
The exponential form of this complex number: (modulus, e^{i arg})
pub fn simd_signum(self) -> T
pub fn simd_signum(self) -> T
The exponential part of this complex number: self / self.modulus()
pub fn simd_floor(self) -> T
pub fn simd_ceil(self) -> T
pub fn simd_round(self) -> T
pub fn simd_trunc(self) -> T
pub fn simd_fract(self) -> T
pub fn simd_mul_add(self, a: T, b: T) -> T
pub fn simd_abs(self) -> <T as SimdComplexField>::SimdRealField
pub fn simd_abs(self) -> <T as SimdComplexField>::SimdRealField
The absolute value of this complex number: self / self.signum()
. Read more
pub fn simd_hypot(self, other: T) -> <T as SimdComplexField>::SimdRealField
pub fn simd_hypot(self, other: T) -> <T as SimdComplexField>::SimdRealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
pub fn simd_recip(self) -> T
pub fn simd_conjugate(self) -> T
pub fn simd_sin(self) -> T
pub fn simd_cos(self) -> T
pub fn simd_sin_cos(self) -> (T, T)
pub fn simd_sinh_cosh(self) -> (T, T)
pub fn simd_tan(self) -> T
pub fn simd_asin(self) -> T
pub fn simd_acos(self) -> T
pub fn simd_atan(self) -> T
pub fn simd_sinh(self) -> T
pub fn simd_cosh(self) -> T
pub fn simd_tanh(self) -> T
pub fn simd_asinh(self) -> T
pub fn simd_acosh(self) -> T
pub fn simd_atanh(self) -> T
pub fn simd_sinc(self) -> T
pub fn simd_sinc(self) -> T
Cardinal sine
pub fn simd_sinhc(self) -> T
pub fn simd_cosc(self) -> T
pub fn simd_cosc(self) -> T
Cardinal cos
pub fn simd_coshc(self) -> T
pub fn simd_log(self, base: <T as SimdComplexField>::SimdRealField) -> T
pub fn simd_log2(self) -> T
pub fn simd_log10(self) -> T
pub fn simd_ln(self) -> T
pub fn simd_ln_1p(self) -> T
pub fn simd_sqrt(self) -> T
pub fn simd_exp(self) -> T
pub fn simd_exp2(self) -> T
pub fn simd_exp_m1(self) -> T
pub fn simd_powf(self, n: <T as SimdComplexField>::SimdRealField) -> T
pub fn simd_powc(self, n: T) -> T
pub fn simd_cbrt(self) -> T
pub fn simd_horizontal_sum(self) -> <T as SimdValue>::Element
pub fn simd_horizontal_sum(self) -> <T as SimdValue>::Element
Computes the sum of all the lanes of self
.
pub fn simd_horizontal_product(self) -> <T as SimdValue>::Element
pub fn simd_horizontal_product(self) -> <T as SimdValue>::Element
Computes the product of all the lanes of self
.
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
pub fn clone_type_data(&self) -> Box<dyn TypeData + 'static, Global>
pub fn vzip(self) -> V
impl<T> ClosedNeg for T where
T: Neg<Output = T>,
impl<T, Rhs> NumAssignOps<Rhs> for T where
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,
[src]