# [−][src]Struct na::linalg::Cholesky

pub struct Cholesky<N, D> where
D: Dim,
N: ComplexField,
DefaultAllocator: Allocator<N, D, D>,
{ /* fields omitted */ }

The Cholesky decomposition of a symmetric-definite-positive matrix.

## Methods

### impl<N, D> Cholesky<N, D> where    D: DimSub<Dynamic>,    N: ComplexField,    DefaultAllocator: Allocator<N, D, D>, [src]

#### pub fn new(    matrix: Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>) -> Option<Cholesky<N, D>>[src]

Attempts to compute the Cholesky decomposition of matrix.

Returns None if the input matrix is not definite-positive. The input matrix is assumed to be symmetric and only the lower-triangular part is read.

#### pub fn unpack(    self) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>[src]

Retrieves the lower-triangular factor of the Cholesky decomposition with its strictly upper-triangular part filled with zeros.

#### pub fn unpack_dirty(    self) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>[src]

Retrieves the lower-triangular factor of the Cholesky decomposition, without zeroing-out its strict upper-triangular part.

The values of the strict upper-triangular part are garbage and should be ignored by further computations.

#### pub fn l(    &self) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>[src]

Retrieves the lower-triangular factor of the Cholesky decomposition with its strictly uppen-triangular part filled with zeros.

#### pub fn l_dirty(    &self) -> &Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>[src]

Retrieves the lower-triangular factor of the Cholesky decomposition, without zeroing-out its strict upper-triangular part.

This is an allocation-less version of self.l(). The values of the strict upper-triangular part are garbage and should be ignored by further computations.

#### pub fn solve_mut<R2, C2, S2>(&self, b: &mut Matrix<N, R2, C2, S2>) where    C2: Dim,    R2: Dim,    S2: StorageMut<N, R2, C2>,    ShapeConstraint: SameNumberOfRows<R2, D>, [src]

Solves the system self * x = b where self is the decomposed matrix and x the unknown.

The result is stored on b.

#### pub fn solve<R2, C2, S2>(    &self,     b: &Matrix<N, R2, C2, S2>) -> Matrix<N, R2, C2, <DefaultAllocator as Allocator<N, R2, C2>>::Buffer> where    C2: Dim,    R2: Dim,    S2: StorageMut<N, R2, C2>,    DefaultAllocator: Allocator<N, R2, C2>,    ShapeConstraint: SameNumberOfRows<R2, D>, [src]

Returns the solution of the system self * x = b where self is the decomposed matrix and x the unknown.

#### pub fn inverse(    &self) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>[src]

Computes the inverse of the decomposed matrix.

## Trait Implementations

### impl<N, D> Clone for Cholesky<N, D> where    D: Dim + Clone,    N: Clone + ComplexField,    DefaultAllocator: Allocator<N, D, D>, [src]

#### default fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

## Blanket Implementations

### impl<T, U> TryFrom for T where    U: Into<T>, [src]

#### type Error = Infallible

The type returned in the event of a conversion error.

### impl<T, U> TryInto for T where    U: TryFrom<T>, [src]

#### type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

### impl<T> Same for T

#### type Output = T

Should always be Self