ndarray_linalg::tridiagonal

Trait SolveTridiagonal

source
pub trait SolveTridiagonal<A: Scalar, D: Dimension> {
    // Required methods
    fn solve_tridiagonal<S: Data<Elem = A>>(
        &self,
        b: &ArrayBase<S, D>,
    ) -> Result<Array<A, D>>;
    fn solve_tridiagonal_into<S: DataMut<Elem = A>>(
        &self,
        b: ArrayBase<S, D>,
    ) -> Result<ArrayBase<S, D>>;
    fn solve_t_tridiagonal<S: Data<Elem = A>>(
        &self,
        b: &ArrayBase<S, D>,
    ) -> Result<Array<A, D>>;
    fn solve_t_tridiagonal_into<S: DataMut<Elem = A>>(
        &self,
        b: ArrayBase<S, D>,
    ) -> Result<ArrayBase<S, D>>;
    fn solve_h_tridiagonal<S: Data<Elem = A>>(
        &self,
        b: &ArrayBase<S, D>,
    ) -> Result<Array<A, D>>;
    fn solve_h_tridiagonal_into<S: DataMut<Elem = A>>(
        &self,
        b: ArrayBase<S, D>,
    ) -> Result<ArrayBase<S, D>>;
}

Required Methods§

source

fn solve_tridiagonal<S: Data<Elem = A>>( &self, b: &ArrayBase<S, D>, ) -> Result<Array<A, D>>

Solves a system of linear equations A * x = b with tridiagonal matrix A, where A is self, b is the argument, and x is the successful result.

source

fn solve_tridiagonal_into<S: DataMut<Elem = A>>( &self, b: ArrayBase<S, D>, ) -> Result<ArrayBase<S, D>>

Solves a system of linear equations A * x = b with tridiagonal matrix A, where A is self, b is the argument, and x is the successful result.

source

fn solve_t_tridiagonal<S: Data<Elem = A>>( &self, b: &ArrayBase<S, D>, ) -> Result<Array<A, D>>

Solves a system of linear equations A^T * x = b with tridiagonal matrix A, where A is self, b is the argument, and x is the successful result.

source

fn solve_t_tridiagonal_into<S: DataMut<Elem = A>>( &self, b: ArrayBase<S, D>, ) -> Result<ArrayBase<S, D>>

Solves a system of linear equations A^T * x = b with tridiagonal matrix A, where A is self, b is the argument, and x is the successful result.

source

fn solve_h_tridiagonal<S: Data<Elem = A>>( &self, b: &ArrayBase<S, D>, ) -> Result<Array<A, D>>

Solves a system of linear equations A^H * x = b with tridiagonal matrix A, where A is self, b is the argument, and x is the successful result.

source

fn solve_h_tridiagonal_into<S: DataMut<Elem = A>>( &self, b: ArrayBase<S, D>, ) -> Result<ArrayBase<S, D>>

Solves a system of linear equations A^H * x = b with tridiagonal matrix A, where A is self, b is the argument, and x is the successful result.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<A, S> SolveTridiagonal<A, Dim<[usize; 1]>> for ArrayBase<S, Ix2>
where A: Scalar + Lapack, S: Data<Elem = A>,

source§

fn solve_tridiagonal<Sb: Data<Elem = A>>( &self, b: &ArrayBase<Sb, Ix1>, ) -> Result<Array<A, Ix1>>

source§

fn solve_tridiagonal_into<Sb: DataMut<Elem = A>>( &self, b: ArrayBase<Sb, Ix1>, ) -> Result<ArrayBase<Sb, Ix1>>

source§

fn solve_t_tridiagonal<Sb: Data<Elem = A>>( &self, b: &ArrayBase<Sb, Ix1>, ) -> Result<Array<A, Ix1>>

source§

fn solve_t_tridiagonal_into<Sb: DataMut<Elem = A>>( &self, b: ArrayBase<Sb, Ix1>, ) -> Result<ArrayBase<Sb, Ix1>>

source§

fn solve_h_tridiagonal<Sb: Data<Elem = A>>( &self, b: &ArrayBase<Sb, Ix1>, ) -> Result<Array<A, Ix1>>

source§

fn solve_h_tridiagonal_into<Sb: DataMut<Elem = A>>( &self, b: ArrayBase<Sb, Ix1>, ) -> Result<ArrayBase<Sb, Ix1>>

source§

impl<A, S> SolveTridiagonal<A, Dim<[usize; 2]>> for ArrayBase<S, Ix2>
where A: Scalar + Lapack, S: Data<Elem = A>,

source§

fn solve_tridiagonal<Sb: Data<Elem = A>>( &self, b: &ArrayBase<Sb, Ix2>, ) -> Result<Array<A, Ix2>>

source§

fn solve_tridiagonal_into<Sb: DataMut<Elem = A>>( &self, b: ArrayBase<Sb, Ix2>, ) -> Result<ArrayBase<Sb, Ix2>>

source§

fn solve_t_tridiagonal<Sb: Data<Elem = A>>( &self, b: &ArrayBase<Sb, Ix2>, ) -> Result<Array<A, Ix2>>

source§

fn solve_t_tridiagonal_into<Sb: DataMut<Elem = A>>( &self, b: ArrayBase<Sb, Ix2>, ) -> Result<ArrayBase<Sb, Ix2>>

source§

fn solve_h_tridiagonal<Sb: Data<Elem = A>>( &self, b: &ArrayBase<Sb, Ix2>, ) -> Result<Array<A, Ix2>>

source§

fn solve_h_tridiagonal_into<Sb: DataMut<Elem = A>>( &self, b: ArrayBase<Sb, Ix2>, ) -> Result<ArrayBase<Sb, Ix2>>

Implementors§