Trait ndarray_linalg::types::Scalar
pub trait Scalar:
NumAssign
+ FromPrimitive
+ NumCast
+ Neg<Output = Self>
+ Copy
+ Clone
+ Display
+ Debug
+ LowerExp
+ UpperExp
+ Sum
+ Product
+ Serialize
+ for<'de> Deserialize<'de>
+ 'static {
type Real: Scalar<Real = Self::Real, Complex = Self::Complex> + NumOps + Float;
type Complex: Scalar<Real = Self::Real, Complex = Self::Complex> + NumOps<Self::Real> + NumOps;
Show 37 methods
// Required 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;
}
Required Associated Types§
type Real: Scalar<Real = Self::Real, Complex = Self::Complex> + NumOps + Float
type Complex: Scalar<Real = Self::Real, Complex = Self::Complex> + NumOps<Self::Real> + NumOps
Required Methods§
fn real<T>(re: T) -> Self::Realwhere
T: ToPrimitive,
fn real<T>(re: T) -> Self::Realwhere
T: ToPrimitive,
Create a new real number
fn complex<T>(re: T, im: T) -> Self::Complexwhere
T: ToPrimitive,
fn complex<T>(re: T, im: T) -> Self::Complexwhere
T: ToPrimitive,
Create a new complex number
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 conj(&self) -> Self
fn conj(&self) -> Self
Complex conjugate
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
fn rand(rng: &mut impl Rng) -> Self
Generate an random number from rand::distributions::Standard
Object Safety§
This trait is not object safe.