Struct sprs_ldl::LdlSymbolic
[−]
[src]
pub struct LdlSymbolic { /* fields omitted */ }
Structure to compute and hold a symbolic LDLT decomposition
Methods
impl LdlSymbolic
[src]
fn new<N, IpS, IS, DS>(mat: &CsMat<N, IpS, IS, DS>) -> LdlSymbolic where N: Copy + PartialEq, IpS: Deref<Target=[usize]>, IS: Deref<Target=[usize]>, DS: Deref<Target=[N]>
fn new_perm<N, IpS, IS, DS>(mat: &CsMat<N, IpS, IS, DS>, perm: PermOwned) -> LdlSymbolic where N: Copy + PartialEq, IpS: Deref<Target=[usize]>, IS: Deref<Target=[usize]>, DS: Deref<Target=[N]>
Compute the symbolic decomposition L D LT = P A PT where P is a permutation matrix.
Using a good permutation matrix can reduce the non-zero count in L, thus making the decomposition and the solves faster.
Panics
- if mat is not symmetric
fn problem_size(&self) -> usize
The size of the linear system associated with this decomposition
fn nnz(&self) -> usize
The number of non-zero entries in L
fn factor<N, IpS, IS, DS>(self, mat: &CsMat<N, IpS, IS, DS>) -> LdlNumeric<N> where N: Copy + Num + PartialOrd, IpS: Deref<Target=[usize]>, IS: Deref<Target=[usize]>, DS: Deref<Target=[N]>
Compute the numerical decomposition of the given matrix.