petsc-3.7.1 2016-05-15
Report Typos and Errors

MatForwardSolve

Solves L x = b, given a factored matrix, A = LU, or U^T*D^(1/2) x = b, given a factored symmetric matrix, A = U^T*D*U,

Synopsis

#include "petscmat.h" 
PetscErrorCode MatForwardSolve(Mat mat,Vec b,Vec x)
Neighbor-wise Collective on Mat and Vec Many br

Input Parameters

mat - the factored matrix Many br
b - the right-hand-side vector Many br

Output Parameter

x -the result vector Many br

Notes

MatSolve() should be used for most applications, as it performs Many bra forward solve followed by a backward solve. Many br

The vectors b and x cannot be the same, i.e., one cannot Many brcall MatForwardSolve(A,x,x). Many br

For matrix in seqsbaij format with block size larger than 1, Many brthe diagonal blocks are not implemented as D = D^(1/2) * D^(1/2) yet. Many brMatForwardSolve() solves U^T*D y = b, and Many brMatBackwardSolve() solves U x = y. Many brThus they do not provide a symmetric preconditioner. Many br

Most users should employ the simplified KSP interface for linear solvers Many brinstead of working directly with matrix algebra routines such as this. Many brSee, e.g., KSPCreate(). Many br

Many br

See Also

MatSolve(), MatBackwardSolve()

Level:developer
Location:
src/mat/interface/matrix.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages