Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Solving Linear Equation Systems


Functions

vec SPUC::ls_solve (const mat &A, const vec &b)
 Solve linear equation system by LU factorisation.
mat SPUC::ls_solve (const mat &A, const mat &b)
 Solve multiple linear equations by LU factorisation.
vec SPUC::ls_solve_chol (const mat &A, const vec &b)
 Solve linear equation system by Cholesky factorisation.
vec SPUC::ls_solve (const mat &L, const mat &U, const vec &b)
 Solve linear equation system, when LU-factorisation is given.
vec SPUC::ls_solve_chol (const mat &A, int p, const vec &b)
 Solve linear (band) equation system by Cholesky factorisation.
vec SPUC::ls_solve (const mat &L, int p, const mat &U, int q, const vec &b)
 Solve linear (band) equation system, when LU-factorisation is given.
vec SPUC::ls_solve_od (const mat &A, const vec &b)
 Solves overdetermined linear equation systems.
mat SPUC::ls_solve_od (const mat &A, const mat &B)
 Solves overdetermined linear equation systems.
vec SPUC::backslash (const mat &A, const vec &b)
 A general linear equation system solver.
mat SPUC::backslash (const mat &A, const mat &B)
 A general linear equation system solver.
vec SPUC::forward_substitution (const mat &L, const vec &b)
 Forward substitution of square matrix.
void SPUC::forward_substitution (const mat &L, const vec &b, vec &x)
 Forward substitution of square matrix.
vec SPUC::forward_substitution (const mat &L, int p, const vec &b)
 Forward substitution of band matricies.
void SPUC::forward_substitution (const mat &L, int p, const vec &b, vec &x)
 Forward substitution of band matricies.
vec SPUC::backward_substitution (const mat &U, const vec &b)
 Backward substitution of square matrix.
void SPUC::backward_substitution (const mat &U, const vec &b, vec &x)
 Backward substitution of square matrix.
vec SPUC::backward_substitution (const mat &U, int q, const vec &b)
 Backward substitution of band matrix.
void SPUC::backward_substitution (const mat &U, int q, const vec &b, vec &x)
 Backward substitution of band matrix.

Function Documentation

mat SPUC::backslash const mat &  A,
const mat &  B
 

A general linear equation system solver.

Tries to emulate the backslash operator in Matlab by calling ls_solve(A,B) or ls_solve_od(A,B).

vec SPUC::backslash const mat &  A,
const vec &  b
 

A general linear equation system solver.

Tries to emulate the backslash operator in Matlab by calling ls_solve(A,b) or ls_solve_od(A,b).

void SPUC::backward_substitution const mat &  U,
int  q,
const vec &  b,
vec &  x
 

Backward substitution of band matrix.

Solves Ux=b, where U is a upper triangular n by n matrix band-matrix with upper bandwidth q. Assumes that U is nonsingular. Requires about 2nq flops (if n >> q). Uses Alg. 4.3.3 in Golub & van Loan "Matrix computations", 3rd ed., p. 153.

vec SPUC::backward_substitution const mat &  U,
int  q,
const vec &  b
 

Backward substitution of band matrix.

Solves Ux=b, where U is a upper triangular n by n matrix band-matrix with upper bandwidth q. Assumes that U is nonsingular. Requires about 2nq flops (if n >> q). Uses Alg. 4.3.3 in Golub & van Loan "Matrix computations", 3rd ed., p. 153.

void SPUC::backward_substitution const mat &  U,
const vec &  b,
vec &  x
 

Backward substitution of square matrix.

Solves Ux=b, where U is a upper triangular n by n matrix. Assumes that U is nonsingular. Requires n^2 flops. Uses Alg. 3.1.2 in Golub & van Loan "Matrix computations", 3rd ed., p. 89.

vec SPUC::backward_substitution const mat &  U,
const vec &  b
 

Backward substitution of square matrix.

Solves Ux=b, where U is a upper triangular n by n matrix. Assumes that U is nonsingular. Requires n^2 flops. Uses Alg. 3.1.2 in Golub & van Loan "Matrix computations", 3rd ed., p. 89.

void SPUC::forward_substitution const mat &  L,
int  p,
const vec &  b,
vec &  x
 

Forward substitution of band matricies.

Solves Lx=b, where L is a lower triangular n by n band-matrix with lower bandwidth p. Assumes that L is nonsingular. Requires about 2np flops (if n >> p). Uses Alg. 4.3.2 in Golub & van Loan "Matrix computations", 3rd ed., p. 153.

vec SPUC::forward_substitution const mat &  L,
int  p,
const vec &  b
 

Forward substitution of band matricies.

Solves Lx=b, where L is a lower triangular n by n band-matrix with lower bandwidth p. Assumes that L is nonsingular. Requires about 2np flops (if n >> p). Uses Alg. 4.3.2 in Golub & van Loan "Matrix computations", 3rd ed., p. 153.

void SPUC::forward_substitution const mat &  L,
const vec &  b,
vec &  x
 

Forward substitution of square matrix.

Solves Lx=b, where L is a lower triangular n by n matrix. Assumes that L is nonsingular. Requires n^2 flops. Uses Alg. 3.1.1 in Golub & van Loan "Matrix computations", 3rd ed., p. 89.

vec SPUC::forward_substitution const mat &  L,
const vec &  b
 

Forward substitution of square matrix.

Solves Lx=b, where L is a lower triangular n by n matrix. Assumes that L is nonsingular. Requires n^2 flops. Uses Alg. 3.1.1 in Golub & van Loan "Matrix computations", 3rd ed., p. 89.

vec SPUC::ls_solve const mat &  L,
int  p,
const mat &  U,
int  q,
const vec &  b
 

Solve linear (band) equation system, when LU-factorisation is given.

Solves Ax=b, where A=LU obtained by some factorization algorithm Assumes that L and U is nonsingular band-matricies with lower bandwidth p and upper bandwidth q, respectively. Requires about 2n*(p+q) flops (if n >> p, q). Uses Alg. 4.3.2 and 4.3.3 in Golub & van Loan "Matrix computations", 3rd ed., p. 153.

vec SPUC::ls_solve const mat &  L,
const mat &  U,
const vec &  b
 

Solve linear equation system, when LU-factorisation is given.

Solves Ax=b, where A=LU obtained by some factorization algorithm Assumes that L and U is nonsingular. Requires 2*n^2 flops. Uses Alg. 3.1.1 and 3.1.2 in Golub & van Loan "Matrix computations", 3rd ed., p. 89.

mat SPUC::ls_solve const mat &  A,
const mat &  b
 

Solve multiple linear equations by LU factorisation.

Solves AX=B. Here A is a nonsingular n by n matrix, X and B n by p matricies such that X=[x1 x2 ... xp], B=[b1 b2 ... bp]. Hence, the equations A*xj=bj is solved for all j=1..p. Requires n^3/3+2*p*n^2 flops. The Algorithm is taken from Golub and van Loan, "Matrix Computations", 3rd ed., p.121.

vec SPUC::ls_solve const mat &  A,
const vec &  b
 

Solve linear equation system by LU factorisation.

Solves Ax=b, where A is a n by n matrix. Requires n^3/3+2*n^2 flops.

vec SPUC::ls_solve_chol const mat &  A,
int  p,
const vec &  b
 

Solve linear (band) equation system by Cholesky factorisation.

Solves Ax=b, where A is a symmetric postive definite n by n band-matrix with bandwidth p. Requires about n*(p^2+3*p)+4np flops (n >> p).

vec SPUC::ls_solve_chol const mat &  A,
const vec &  b
 

Solve linear equation system by Cholesky factorisation.

Solves Ax=b, where A is a symmetric postive definite n by n matrix. Requires n^3/3+2*n^2 flops.

mat SPUC::ls_solve_od const mat &  A,
const mat &  B
 

Solves overdetermined linear equation systems.

Solves Ax=B, where A is a m by n matrix and m>=n. Requires approximately 2*n^2(m-n/3) flops.

vec SPUC::ls_solve_od const mat &  A,
const vec &  b
 

Solves overdetermined linear equation systems.

Solves Ax=b, where A is a m by n matrix and m>=n. Requires approximately 2*n^2(m-n/3) flops.


Generated on Fri Sep 16 11:06:48 2005 for spuc by  doxygen 1.4.4