Trait LinearAlgbra

Source
pub trait LinearAlgbra {
    type TensorType;
    type ElementType;

    // Required methods
    fn norm(&self) -> Self::TensorType;
    fn normalize_unit(&self) -> Self::TensorType;
    fn lu(&self) -> Option<[Self::TensorType; 2]>;
    fn lu_solve(&self, y: &Self::TensorType) -> Option<Self::TensorType>;
    fn qr(&self) -> Option<[Self::TensorType; 2]>;
    fn eigen(&self) -> Option<[Self::TensorType; 2]>;
    fn cholesky(&self) -> Option<Self::TensorType>;
    fn det(&self) -> Option<Self::TensorType>;
    fn svd(&self) -> Option<[Self::TensorType; 3]>;
    fn inv(&self) -> Option<Self::TensorType>;
    fn pinv(&self) -> Self::TensorType;
    fn tr(&self) -> Self::TensorType;
}

Required Associated Types§

Required Methods§

Source

fn norm(&self) -> Self::TensorType

Source

fn normalize_unit(&self) -> Self::TensorType

Assuming the input is 2 dimensional array, normalize_unit

Source

fn lu(&self) -> Option<[Self::TensorType; 2]>

Source

fn lu_solve(&self, y: &Self::TensorType) -> Option<Self::TensorType>

Source

fn qr(&self) -> Option<[Self::TensorType; 2]>

Source

fn eigen(&self) -> Option<[Self::TensorType; 2]>

Source

fn cholesky(&self) -> Option<Self::TensorType>

Source

fn det(&self) -> Option<Self::TensorType>

Source

fn svd(&self) -> Option<[Self::TensorType; 3]>

Source

fn inv(&self) -> Option<Self::TensorType>

Source

fn pinv(&self) -> Self::TensorType

Source

fn tr(&self) -> Self::TensorType

Implementors§