Trait ndarray_linalg::types::Scalar[][src]

pub trait Scalar: 'static + NumAssign + FromPrimitive + NumCast + Neg<Output = Self> + Copy + Clone + Display + Debug + LowerExp + UpperExp + Sum<Self> + Product<Self> + Serialize + for<'de> Deserialize<'de> {
    type Real: Scalar + NumOps<Self::Real, Self::Real> + Float;
    type Complex: Scalar + NumOps<Self::Real, Self::Complex> + NumOps<Self::Complex, Self::Complex>;
Show 37 methods fn real<T>(re: T) -> Self::Real
    where
        T: ToPrimitive
;
fn complex<T>(re: T, im: T) -> Self::Complex
    where
        T: ToPrimitive
;
fn from_real(re: Self::Real) -> Self;
fn add_real(self, re: Self::Real) -> Self;
fn sub_real(self, re: Self::Real) -> Self;
fn mul_real(self, re: Self::Real) -> Self;
fn div_real(self, re: Self::Real) -> Self;
fn add_complex(self, im: Self::Complex) -> Self::Complex;
fn sub_complex(self, im: Self::Complex) -> Self::Complex;
fn mul_complex(self, im: Self::Complex) -> Self::Complex;
fn div_complex(self, im: Self::Complex) -> Self::Complex;
fn pow(self, n: Self) -> Self;
fn powi(self, n: i32) -> Self;
fn powf(self, n: Self::Real) -> Self;
fn powc(self, n: Self::Complex) -> Self::Complex;
fn re(&self) -> Self::Real;
fn im(&self) -> Self::Real;
fn as_c(&self) -> Self::Complex;
fn conj(&self) -> Self;
fn abs(self) -> Self::Real;
fn square(self) -> Self::Real;
fn sqrt(self) -> Self;
fn exp(self) -> Self;
fn ln(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 rand(rng: &mut impl Rng) -> Self;
}

Associated Types

Required methods

Create a new real number

Create a new complex number

Real part

Imaginary part

As a complex number

Complex conjugate

Absolute value

Sqaure of absolute value

Generate an random number from rand::distributions::Standard

Implementations on Foreign Types

Implementors