Trait linxal::types::impl_scalar::LinxalImplScalar [] [src]

pub trait LinxalImplScalar: Sized + Default + Clone + Debug + Display + Zero + One + Sub<Output = Self> + LinalgScalar {
    type RealPart: LinxalImplScalar + Float + NumCast + From<f32> + SampleRange;
    type Complex: LinxalImplScalar;
    fn cj(self) -> Self;
    fn mag(self) -> Self::RealPart;
    fn eps() -> Self::RealPart;
    fn tol() -> Self::RealPart;
    fn from_real(f: Self::RealPart) -> Self;
}

Aggregate trait for implementing matrix operations and utilities.

This trait is unifies most required operations for real and complex scalars. It also defines common utility functions for internal implementations.

Associated Types

Associated type defining the type of just the real portion of the scalar.

For real-type scalars, this type is trivially the type itself.

Associated type defining the complex variant of this scalar.

For real-type scalars, this type is trivially the type itself.

Required Methods

Return the conjugate of the value.

Returns the magnitude of the scalar.

Return the machine epsilon for the value.

Return the default tolerance used for comparisons.

Return an equivalent value from just a real part.

Implementors