Trait bevy_rapier2d::prelude::nalgebra::ComplexField [−]
pub trait ComplexField: 'static + SubsetOf<Self> + SupersetOf<f64> + Field<Element = Self, SimdBool = bool, Output = Self> + Copy + Neg + Send + Sync + Any + Debug + FromPrimitive + Display { type RealField: RealField;}Show methods
fn from_real(re: Self::RealField) -> Self; fn real(self) -> Self::RealField; fn imaginary(self) -> Self::RealField; fn modulus(self) -> Self::RealField; fn modulus_squared(self) -> Self::RealField; fn argument(self) -> Self::RealField; fn norm1(self) -> Self::RealField; fn scale(self, factor: Self::RealField) -> Self; fn unscale(self, factor: Self::RealField) -> Self; fn floor(self) -> Self; fn ceil(self) -> Self; fn round(self) -> Self; fn trunc(self) -> Self; fn fract(self) -> Self; fn mul_add(self, a: Self, b: Self) -> Self; fn abs(self) -> Self::RealField; fn hypot(self, other: Self) -> Self::RealField; fn recip(self) -> Self; fn conjugate(self) -> Self; fn sin(self) -> Self; fn cos(self) -> Self; fn sin_cos(self) -> (Self, Self); fn tan(self) -> Self; fn asin(self) -> Self; fn acos(self) -> Self; fn atan(self) -> Self; fn sinh(self) -> Self; fn cosh(self) -> Self; fn tanh(self) -> Self; fn asinh(self) -> Self; fn acosh(self) -> Self; fn atanh(self) -> Self; fn log(self, base: Self::RealField) -> Self; fn log2(self) -> Self; fn log10(self) -> Self; fn ln(self) -> Self; fn ln_1p(self) -> Self; fn sqrt(self) -> Self; fn exp(self) -> Self; fn exp2(self) -> Self; fn exp_m1(self) -> Self; fn powi(self, n: i32) -> Self; fn powf(self, n: Self::RealField) -> Self; fn powc(self, n: Self) -> Self; fn cbrt(self) -> Self; fn is_finite(&self) -> bool; fn try_sqrt(self) -> Option<Self>; fn to_polar(self) -> (Self::RealField, Self::RealField) { ... } fn to_exp(self) -> (Self::RealField, Self) { ... } fn signum(self) -> Self { ... } fn sinh_cosh(self) -> (Self, Self) { ... } fn sinc(self) -> Self { ... } fn sinhc(self) -> Self { ... } fn cosc(self) -> Self { ... } fn coshc(self) -> Self { ... }
Expand description
Trait shared by all complex fields and its subfields (like real numbers).
Complex numbers are equipped with functions that are commonly used on complex numbers and reals. The results of those functions only have to be approximately equal to the actual theoretical values.
Associated Types
Required methods
fn modulus_squared(self) -> Self::RealField
fn modulus_squared(self) -> Self::RealField
The squared modulus of this complex number.
The sum of the absolute value of this complex number’s real and imaginary part.
fn floor(self) -> Self
fn ceil(self) -> Self
fn round(self) -> Self
fn trunc(self) -> Self
fn fract(self) -> Self
fn mul_add(self, a: Self, b: Self) -> Self
The absolute value of this complex number: self / self.signum()
.
This is equivalent to self.modulus()
.
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
fn recip(self) -> Self
fn conjugate(self) -> Self
fn sin(self) -> Self
fn cos(self) -> Self
fn tan(self) -> Self
fn asin(self) -> Self
fn acos(self) -> Self
fn atan(self) -> Self
fn sinh(self) -> Self
fn cosh(self) -> Self
fn tanh(self) -> Self
fn asinh(self) -> Self
fn acosh(self) -> Self
fn atanh(self) -> Self
fn log2(self) -> Self
fn log10(self) -> Self
fn ln(self) -> Self
fn ln_1p(self) -> Self
fn sqrt(self) -> Self
fn exp(self) -> Self
fn exp2(self) -> Self
fn exp_m1(self) -> Self
fn powc(self, n: Self) -> Self
fn cbrt(self) -> Self
Provided methods
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
Implementations on Foreign Types
impl ComplexField for f32
impl ComplexField for f32
pub fn from_real(re: <f32 as ComplexField>::RealField) -> f32
pub fn real(self) -> <f32 as ComplexField>::RealField
pub fn imaginary(self) -> <f32 as ComplexField>::RealField
pub fn norm1(self) -> <f32 as ComplexField>::RealField
pub fn modulus(self) -> <f32 as ComplexField>::RealField
pub fn modulus_squared(self) -> <f32 as ComplexField>::RealField
pub fn argument(self) -> <f32 as ComplexField>::RealField
pub fn scale(self, factor: <f32 as ComplexField>::RealField) -> f32
pub fn unscale(self, factor: <f32 as ComplexField>::RealField) -> f32
pub fn hypot(self, other: f32) -> <f32 as ComplexField>::RealField
impl ComplexField for f64
impl ComplexField for f64
pub fn from_real(re: <f64 as ComplexField>::RealField) -> f64
pub fn real(self) -> <f64 as ComplexField>::RealField
pub fn imaginary(self) -> <f64 as ComplexField>::RealField
pub fn norm1(self) -> <f64 as ComplexField>::RealField
pub fn modulus(self) -> <f64 as ComplexField>::RealField
pub fn modulus_squared(self) -> <f64 as ComplexField>::RealField
pub fn argument(self) -> <f64 as ComplexField>::RealField
pub fn scale(self, factor: <f64 as ComplexField>::RealField) -> f64
pub fn unscale(self, factor: <f64 as ComplexField>::RealField) -> f64
pub fn hypot(self, other: f64) -> <f64 as ComplexField>::RealField
Implementors
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 real(self) -> <Complex<N> as ComplexField>::RealField
pub fn imaginary(self) -> <Complex<N> as ComplexField>::RealField
pub fn argument(self) -> <Complex<N> as ComplexField>::RealField
pub fn modulus(self) -> <Complex<N> as ComplexField>::RealField
pub fn modulus_squared(self) -> <Complex<N> as ComplexField>::RealField
pub fn norm1(self) -> <Complex<N> as ComplexField>::RealField
pub fn scale(
self,
factor: <Complex<N> as ComplexField>::RealField
) -> Complex<N>
pub fn unscale(
self,
factor: <Complex<N> as ComplexField>::RealField
) -> Complex<N>
pub fn abs(self) -> <Complex<N> as ComplexField>::RealField
pub fn hypot(self, b: Complex<N>) -> <Complex<N> as ComplexField>::RealField