linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
Loading...
Searching...
No Matches
sparskit::ilud Interface Reference

Computes the incomplete LU factorization of a sparse matrix in CSR format with standard dropping strategy. More...

Public Member Functions

subroutine ilud (n, a, ja, ia, alph, tol, alu, jlu, ju, iwk, w, jw, ierr)
 

Detailed Description

Computes the incomplete LU factorization of a sparse matrix in CSR format with standard dropping strategy.

Parameters
[in]nThe row dimension of the matrix.
[in]aThe non-zero elements of matrix A.
[in]jaThe column indices of matrix A.
[in]iaThe index in A where the requested row starts.
[in]alphThe diagonal compensation parameter. If ALPH = 0, the process is approximately equivalent to ILU with threshold; else, if ALPH = 1, the process is approximately equivalent to MILU with threshold.
[in]tolThe threshold parameter for dropping small terms in the factorization.
[out]aluThe factored matrix stored in Modified Sparse Row (MSR) format containing the L and U factors together. The diagonal, stored in ALU(1:N), is inverted. Each i-th row of the ALU, JLU matrix contains the i-th row of L, excluding the diagonal entry, followed by the i-th row of U.
[out]jluThe column indices for the factored matrix.
[out]juAn N-element array containing the pointers to the beginning of each row of U in the factored matrix.
[in]iwkThe lengths of alu and jlu.
[out]wAn N+1 element workspace array.
[out]jwA 2*N element workspace array.
[out]ierrError flag:
  • 0: Successful return
  • .gt. 0: Zero pivot encountered at step number IERR.
  • -1: Input matrix is incorrect. The elimination process generated a row in L or U whose length is greater than N.
  • -2: Insufficient storage for the LU factors.
  • -3: Zero-valued row encountered.

Definition at line 452 of file sparskit.f90.

Constructor & Destructor Documentation

◆ ilud()

subroutine sparskit::ilud::ilud ( integer(int32), intent(in) n,
real(real64), dimension(*), intent(in) a,
integer(int32), dimension(*), intent(in) ja,
integer(int32), dimension(n+1), intent(in) ia,
real(real64), intent(in) alph,
real(real64), intent(in) tol,
real(real64), dimension(*), intent(out) alu,
integer(int32), dimension(*), intent(out) jlu,
integer(int32), dimension(n), intent(out) ju,
integer(int32), intent(in) iwk,
real(real64), dimension(2*n), intent(out) w,
integer(int32), dimension(2*n), intent(out) jw,
integer(int32), intent(out) ierr )

Definition at line 452 of file sparskit.f90.


The documentation for this interface was generated from the following file: