IT++ 4.3.1
Solving Linear Equation Systems

Functions

bool itpp::ls_solve (const mat &A, const vec &b, vec &x)
 Solve linear equation system by LU factorisation.
 
vec itpp::ls_solve (const mat &A, const vec &b)
 Solve linear equation system by LU factorisation.
 
bool itpp::ls_solve (const mat &A, const mat &B, mat &X)
 Solve multiple linear equations by LU factorisation.
 
mat itpp::ls_solve (const mat &A, const mat &B)
 Solve multiple linear equations by LU factorisation.
 
bool itpp::ls_solve (const cmat &A, const cvec &b, cvec &x)
 Solve linear equation system by LU factorisation.
 
cvec itpp::ls_solve (const cmat &A, const cvec &b)
 Solve linear equation system by LU factorisation.
 
bool itpp::ls_solve (const cmat &A, const cmat &B, cmat &X)
 Solve multiple linear equations by LU factorisation.
 
cmat itpp::ls_solve (const cmat &A, const cmat &B)
 Solve multiple linear equations by LU factorisation.
 
bool itpp::ls_solve_chol (const mat &A, const vec &b, vec &x)
 Solve linear equation system by Cholesky factorisation.
 
vec itpp::ls_solve_chol (const mat &A, const vec &b)
 Solve linear equation system by Cholesky factorisation.
 
bool itpp::ls_solve_chol (const mat &A, const mat &B, mat &X)
 Solve linear equation system by Cholesky factorisation.
 
mat itpp::ls_solve_chol (const mat &A, const mat &B)
 Solve linear equation system by Cholesky factorisation.
 
bool itpp::ls_solve_chol (const cmat &A, const cvec &b, cvec &x)
 Solve linear equation system by Cholesky factorisation.
 
cvec itpp::ls_solve_chol (const cmat &A, const cvec &b)
 Solve linear equation system by Cholesky factorisation.
 
bool itpp::ls_solve_chol (const cmat &A, const cmat &B, cmat &X)
 Solve linear equation system by Cholesky factorisation.
 
cmat itpp::ls_solve_chol (const cmat &A, const cmat &B)
 Solve linear equation system by Cholesky factorisation.
 
bool itpp::ls_solve_od (const mat &A, const vec &b, vec &x)
 Solves overdetermined linear equation systems.
 
vec itpp::ls_solve_od (const mat &A, const vec &b)
 Solves overdetermined linear equation systems.
 
bool itpp::ls_solve_od (const mat &A, const mat &B, mat &X)
 Solves overdetermined linear equation systems.
 
mat itpp::ls_solve_od (const mat &A, const mat &B)
 Solves overdetermined linear equation systems.
 
bool itpp::ls_solve_od (const cmat &A, const cvec &b, cvec &x)
 Solves overdetermined linear equation systems.
 
cvec itpp::ls_solve_od (const cmat &A, const cvec &b)
 Solves overdetermined linear equation systems.
 
bool itpp::ls_solve_od (const cmat &A, const cmat &B, cmat &X)
 Solves overdetermined linear equation systems.
 
cmat itpp::ls_solve_od (const cmat &A, const cmat &B)
 Solves overdetermined linear equation systems.
 
bool itpp::ls_solve_ud (const mat &A, const vec &b, vec &x)
 Solves underdetermined linear equation systems.
 
vec itpp::ls_solve_ud (const mat &A, const vec &b)
 Solves overdetermined linear equation systems.
 
bool itpp::ls_solve_ud (const mat &A, const mat &B, mat &X)
 Solves underdetermined linear equation systems.
 
mat itpp::ls_solve_ud (const mat &A, const mat &B)
 Solves underdetermined linear equation systems.
 
bool itpp::ls_solve_ud (const cmat &A, const cvec &b, cvec &x)
 Solves underdetermined linear equation systems.
 
cvec itpp::ls_solve_ud (const cmat &A, const cvec &b)
 Solves overdetermined linear equation systems.
 
bool itpp::ls_solve_ud (const cmat &A, const cmat &B, cmat &X)
 Solves underdetermined linear equation systems.
 
cmat itpp::ls_solve_ud (const cmat &A, const cmat &B)
 Solves underdetermined linear equation systems.
 
bool itpp::backslash (const mat &A, const vec &b, vec &x)
 A general linear equation system solver.
 
vec itpp::backslash (const mat &A, const vec &b)
 A general linear equation system solver.
 
bool itpp::backslash (const mat &A, const mat &B, mat &X)
 A general linear equation system solver.
 
mat itpp::backslash (const mat &A, const mat &B)
 A general linear equation system solver.
 
bool itpp::backslash (const cmat &A, const cvec &b, cvec &x)
 A general linear equation system solver.
 
cvec itpp::backslash (const cmat &A, const cvec &b)
 A general linear equation system solver.
 
bool itpp::backslash (const cmat &A, const cmat &B, cmat &X)
 A general linear equation system solver.
 
cmat itpp::backslash (const cmat &A, const cmat &B)
 A general linear equation system solver.
 
vec itpp::forward_substitution (const mat &L, const vec &b)
 Forward substitution of square matrix.
 
void itpp::forward_substitution (const mat &L, const vec &b, vec &x)
 Forward substitution of square matrix.
 
vec itpp::forward_substitution (const mat &L, int p, const vec &b)
 Forward substitution of band matrices.
 
void itpp::forward_substitution (const mat &L, int p, const vec &b, vec &x)
 Forward substitution of band matrices.
 
vec itpp::backward_substitution (const mat &U, const vec &b)
 Backward substitution of square matrix.
 
void itpp::backward_substitution (const mat &U, const vec &b, vec &x)
 Backward substitution of square matrix.
 
vec itpp::backward_substitution (const mat &U, int q, const vec &b)
 Backward substitution of band matrix.
 
void itpp::backward_substitution (const mat &U, int q, const vec &b, vec &x)
 Backward substitution of band matrix.
 

Detailed Description

Function Documentation

◆ ls_solve() [1/8]

ITPP_EXPORT bool itpp::ls_solve ( const mat & A,
const vec & b,
vec & x )

Solve linear equation system by LU factorisation.

Solves the linear system \(Ax=b\), where \(A\) is a \(n \times n\) matrix. Uses the LAPACK routine DGESV.

Definition at line 268 of file ls_solve.cpp.

References it_error.

Referenced by backslash(), backslash(), backslash(), backslash(), ls_solve(), ls_solve(), ls_solve(), and ls_solve().

◆ ls_solve() [2/8]

ITPP_EXPORT vec itpp::ls_solve ( const mat & A,
const vec & b )

Solve linear equation system by LU factorisation.

Solves the linear system \(Ax=b\), where \(A\) is a \(n \times n\) matrix. Uses the LAPACK routine DGESV.

Definition at line 294 of file ls_solve.cpp.

References it_assert_debug, and ls_solve().

◆ ls_solve() [3/8]

bool itpp::ls_solve ( const mat & A,
const mat & B,
mat & X )

Solve multiple linear equations by LU factorisation.

Solves the linear system \(AX=B\). Here \(A\) is a nonsingular \(n \times n\) matrix. Uses the LAPACK routine DGESV.

Definition at line 274 of file ls_solve.cpp.

References it_error.

◆ ls_solve() [4/8]

ITPP_EXPORT mat itpp::ls_solve ( const mat & A,
const mat & B )

Solve multiple linear equations by LU factorisation.

Solves the linear system \(AX=B\). Here \(A\) is a nonsingular \(n \times n\) matrix. Uses the LAPACK routine DGESV.

Definition at line 303 of file ls_solve.cpp.

References it_assert_debug, and ls_solve().

◆ ls_solve() [5/8]

ITPP_EXPORT bool itpp::ls_solve ( const cmat & A,
const cvec & b,
cvec & x )

Solve linear equation system by LU factorisation.

Solves the linear system \(Ax=b\), where \(A\) is a \(n \times n\) matrix. Uses the LAPACK routine ZGESV.

Definition at line 280 of file ls_solve.cpp.

References it_error.

◆ ls_solve() [6/8]

ITPP_EXPORT cvec itpp::ls_solve ( const cmat & A,
const cvec & b )

Solve linear equation system by LU factorisation.

Solves the linear system \(Ax=b\), where \(A\) is a \(n \times n\) matrix. Uses the LAPACK routine ZGESV.

Definition at line 312 of file ls_solve.cpp.

References it_assert_debug, and ls_solve().

◆ ls_solve() [7/8]

ITPP_EXPORT bool itpp::ls_solve ( const cmat & A,
const cmat & B,
cmat & X )

Solve multiple linear equations by LU factorisation.

Solves the linear system \(AX=B\). Here \(A\) is a nonsingular \(n \times n\) matrix. Uses the LAPACK routine ZGESV.

Definition at line 286 of file ls_solve.cpp.

References it_error.

◆ ls_solve() [8/8]

ITPP_EXPORT cmat itpp::ls_solve ( const cmat & A,
const cmat & B )

Solve multiple linear equations by LU factorisation.

Solves the linear system \(AX=B\). Here \(A\) is a nonsingular \(n \times n\) matrix. Uses the LAPACK routine ZGESV.

Definition at line 321 of file ls_solve.cpp.

References it_assert_debug, and ls_solve().

◆ ls_solve_chol() [1/8]

ITPP_EXPORT bool itpp::ls_solve_chol ( const mat & A,
const vec & b,
vec & x )

Solve linear equation system by Cholesky factorisation.

Solves the linear system \(Ax=b\), where \(A\) is a symmetric positive definite \(n \times n\) matrix. Uses the LAPACK routine DPOSV.

Definition at line 128 of file ls_solve.cpp.

References it_error.

Referenced by ls_solve_chol(), ls_solve_chol(), ls_solve_chol(), and ls_solve_chol().

◆ ls_solve_chol() [2/8]

ITPP_EXPORT vec itpp::ls_solve_chol ( const mat & A,
const vec & b )

Solve linear equation system by Cholesky factorisation.

Solves the linear system \(Ax=b\), where \(A\) is a symmetric positive definite \(n \times n\) matrix. Uses the LAPACK routine DPOSV.

Definition at line 154 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_chol().

◆ ls_solve_chol() [3/8]

ITPP_EXPORT bool itpp::ls_solve_chol ( const mat & A,
const mat & B,
mat & X )

Solve linear equation system by Cholesky factorisation.

Solves the linear system \(AX=B\), where \(A\) is a symmetric positive definite \(n \times n\) matrix. Uses the LAPACK routine DPOSV.

Definition at line 134 of file ls_solve.cpp.

References it_error.

◆ ls_solve_chol() [4/8]

ITPP_EXPORT mat itpp::ls_solve_chol ( const mat & A,
const mat & B )

Solve linear equation system by Cholesky factorisation.

Solves the linear system \(AX=B\), where \(A\) is a symmetric positive definite \(n \times n\) matrix. Uses the LAPACK routine DPOSV.

Definition at line 163 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_chol().

◆ ls_solve_chol() [5/8]

ITPP_EXPORT bool itpp::ls_solve_chol ( const cmat & A,
const cvec & b,
cvec & x )

Solve linear equation system by Cholesky factorisation.

Solves the linear system \(Ax=b\), where \(A\) is a Hermitian positive definite \(n \times n\) matrix. Uses the LAPACK routine ZPOSV.

Definition at line 140 of file ls_solve.cpp.

References it_error.

◆ ls_solve_chol() [6/8]

ITPP_EXPORT cvec itpp::ls_solve_chol ( const cmat & A,
const cvec & b )

Solve linear equation system by Cholesky factorisation.

Solves the linear system \(Ax=b\), where \(A\) is a Hermitian positive definite \(n \times n\) matrix. Uses the LAPACK routine ZPOSV.

Definition at line 172 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_chol().

◆ ls_solve_chol() [7/8]

ITPP_EXPORT bool itpp::ls_solve_chol ( const cmat & A,
const cmat & B,
cmat & X )

Solve linear equation system by Cholesky factorisation.

Solves the linear system \(AX=B\), where \(A\) is a Hermitian positive definite \(n \times n\) matrix. Uses the LAPACK routine ZPOSV.

Definition at line 146 of file ls_solve.cpp.

References it_error.

◆ ls_solve_chol() [8/8]

ITPP_EXPORT cmat itpp::ls_solve_chol ( const cmat & A,
const cmat & B )

Solve linear equation system by Cholesky factorisation.

Solves the linear system \(AX=B\), where \(A\) is a Hermitian positive definite \(n \times n\) matrix. Uses the LAPACK routine ZPOSV.

Definition at line 181 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_chol().

◆ ls_solve_od() [1/8]

ITPP_EXPORT bool itpp::ls_solve_od ( const mat & A,
const vec & b,
vec & x )

Solves overdetermined linear equation systems.

Solves the overdetermined linear system \(Ax=b\), where \(A\) is a \(m \times n\) matrix and \(m \geq n\). Uses QR-factorization and is built upon the LAPACK routine DGELS.

Definition at line 424 of file ls_solve.cpp.

References it_error.

Referenced by backslash(), backslash(), backslash(), backslash(), ls_solve_od(), ls_solve_od(), ls_solve_od(), and ls_solve_od().

◆ ls_solve_od() [2/8]

ITPP_EXPORT vec itpp::ls_solve_od ( const mat & A,
const vec & b )

Solves overdetermined linear equation systems.

Solves the overdetermined linear system \(Ax=b\), where \(A\) is a \(m \times n\) matrix and \(m \geq n\). Uses QR-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine DGELS.

Definition at line 450 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_od().

◆ ls_solve_od() [3/8]

ITPP_EXPORT bool itpp::ls_solve_od ( const mat & A,
const mat & B,
mat & X )

Solves overdetermined linear equation systems.

Solves the overdetermined linear system \(AX=B\), where \(A\) is a \(m \times n\) matrix and \(m \geq n\). Uses QR-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine DGELS.

Definition at line 430 of file ls_solve.cpp.

References it_error.

◆ ls_solve_od() [4/8]

ITPP_EXPORT mat itpp::ls_solve_od ( const mat & A,
const mat & B )

Solves overdetermined linear equation systems.

Solves the overdetermined linear system \(AX=B\), where \(A\) is a \(m \times n\) matrix and \(m \geq n\). Uses QR-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine DGELS.

Definition at line 459 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_od().

◆ ls_solve_od() [5/8]

ITPP_EXPORT bool itpp::ls_solve_od ( const cmat & A,
const cvec & b,
cvec & x )

Solves overdetermined linear equation systems.

Solves the overdetermined linear system \(Ax=b\), where \(A\) is a \(m \times n\) matrix and \(m \geq n\). Uses QR-factorization and is built upon the LAPACK routine ZGELS.

Definition at line 436 of file ls_solve.cpp.

References it_error.

◆ ls_solve_od() [6/8]

ITPP_EXPORT cvec itpp::ls_solve_od ( const cmat & A,
const cvec & b )

Solves overdetermined linear equation systems.

Solves the overdetermined linear system \(Ax=b\), where \(A\) is a \(m \times n\) matrix and \(m \geq n\). Uses QR-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine ZGELS.

Definition at line 468 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_od().

◆ ls_solve_od() [7/8]

ITPP_EXPORT bool itpp::ls_solve_od ( const cmat & A,
const cmat & B,
cmat & X )

Solves overdetermined linear equation systems.

Solves the overdetermined linear system \(AX=B\), where \(A\) is a \(m \times n\) matrix and \(m \geq n\). Uses QR-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine ZGELS.

Definition at line 442 of file ls_solve.cpp.

References it_error.

◆ ls_solve_od() [8/8]

ITPP_EXPORT cmat itpp::ls_solve_od ( const cmat & A,
const cmat & B )

Solves overdetermined linear equation systems.

Solves the overdetermined linear system \(AX=B\), where \(A\) is a \(m \times n\) matrix and \(m \geq n\). Uses QR-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine ZGELS.

Definition at line 477 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_od().

◆ ls_solve_ud() [1/8]

ITPP_EXPORT bool itpp::ls_solve_ud ( const mat & A,
const vec & b,
vec & x )

Solves underdetermined linear equation systems.

Solves the underdetermined linear system \(Ax=b\), where \(A\) is a \(m \times n\) matrix and \(m \leq n\). Uses LQ-factorization and is built upon the LAPACK routine DGELS.

Definition at line 585 of file ls_solve.cpp.

References it_error.

Referenced by backslash(), backslash(), backslash(), backslash(), ls_solve_ud(), ls_solve_ud(), ls_solve_ud(), and ls_solve_ud().

◆ ls_solve_ud() [2/8]

ITPP_EXPORT vec itpp::ls_solve_ud ( const mat & A,
const vec & b )

Solves overdetermined linear equation systems.

Solves the underdetermined linear system \(Ax=b\), where \(A\) is a \(m \times n\) matrix and \(m \leq n\). Uses LQ-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine DGELS.

Definition at line 612 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_ud().

◆ ls_solve_ud() [3/8]

ITPP_EXPORT bool itpp::ls_solve_ud ( const mat & A,
const mat & B,
mat & X )

Solves underdetermined linear equation systems.

Solves the underdetermined linear system \(AX=B\), where \(A\) is a \(m \times n\) matrix and \(m \leq n\). Uses LQ-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine DGELS.

Definition at line 591 of file ls_solve.cpp.

References it_error.

◆ ls_solve_ud() [4/8]

ITPP_EXPORT mat itpp::ls_solve_ud ( const mat & A,
const mat & B )

Solves underdetermined linear equation systems.

Solves the underdetermined linear system \(AX=B\), where \(A\) is a \(m \times n\) matrix and \(m \leq n\). Uses LQ-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine DGELS.

Definition at line 621 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_ud().

◆ ls_solve_ud() [5/8]

ITPP_EXPORT bool itpp::ls_solve_ud ( const cmat & A,
const cvec & b,
cvec & x )

Solves underdetermined linear equation systems.

Solves the underdetermined linear system \(Ax=b\), where \(A\) is a \(m \times n\) matrix and \(m \leq n\). Uses LQ-factorization and is built upon the LAPACK routine ZGELS.

Definition at line 597 of file ls_solve.cpp.

References it_error.

◆ ls_solve_ud() [6/8]

ITPP_EXPORT cvec itpp::ls_solve_ud ( const cmat & A,
const cvec & b )

Solves overdetermined linear equation systems.

Solves the underdetermined linear system \(Ax=b\), where \(A\) is a \(m \times n\) matrix and \(m \leq n\). Uses LQ-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine ZGELS.

Definition at line 630 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_ud().

◆ ls_solve_ud() [7/8]

ITPP_EXPORT bool itpp::ls_solve_ud ( const cmat & A,
const cmat & B,
cmat & X )

Solves underdetermined linear equation systems.

Solves the underdetermined linear system \(AX=B\), where \(A\) is a \(m \times n\) matrix and \(m \leq n\). Uses LQ-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine ZGELS.

Definition at line 603 of file ls_solve.cpp.

References it_error.

◆ ls_solve_ud() [8/8]

ITPP_EXPORT cmat itpp::ls_solve_ud ( const cmat & A,
const cmat & B )

Solves underdetermined linear equation systems.

Solves the underdetermined linear system \(AX=B\), where \(A\) is a \(m \times n\) matrix and \(m \leq n\). Uses LQ-factorization and assumes that \(A\) is full rank. Based on the LAPACK routine ZGELS.

Definition at line 639 of file ls_solve.cpp.

References it_assert_debug, and ls_solve_ud().

◆ backslash() [1/8]

ITPP_EXPORT bool itpp::backslash ( const mat & A,
const vec & b,
vec & x )

A general linear equation system solver.

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

Definition at line 651 of file ls_solve.cpp.

References ls_solve(), ls_solve_od(), and ls_solve_ud().

Referenced by arma_estimator(), backslash(), backslash(), backslash(), backslash(), and modified_yule_walker().

◆ backslash() [2/8]

ITPP_EXPORT vec itpp::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), ls_solve_od(A,b) or ls_solve_ud(A,b)

Definition at line 667 of file ls_solve.cpp.

References backslash(), and it_assert_debug.

◆ backslash() [3/8]

ITPP_EXPORT bool itpp::backslash ( const mat & A,
const mat & B,
mat & X )

A general linear equation system solver.

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

Definition at line 677 of file ls_solve.cpp.

References ls_solve(), ls_solve_od(), and ls_solve_ud().

◆ backslash() [4/8]

ITPP_EXPORT mat itpp::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), ls_solve_od(A,B), or ls_solve_ud(A,B).

Definition at line 693 of file ls_solve.cpp.

References backslash(), and it_assert_debug.

◆ backslash() [5/8]

ITPP_EXPORT bool itpp::backslash ( const cmat & A,
const cvec & b,
cvec & x )

A general linear equation system solver.

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

Definition at line 703 of file ls_solve.cpp.

References ls_solve(), ls_solve_od(), and ls_solve_ud().

◆ backslash() [6/8]

ITPP_EXPORT cvec itpp::backslash ( const cmat & A,
const cvec & b )

A general linear equation system solver.

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

Definition at line 719 of file ls_solve.cpp.

References backslash(), and it_assert_debug.

◆ backslash() [7/8]

ITPP_EXPORT bool itpp::backslash ( const cmat & A,
const cmat & B,
cmat & X )

A general linear equation system solver.

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

Definition at line 729 of file ls_solve.cpp.

References ls_solve(), ls_solve_od(), and ls_solve_ud().

◆ backslash() [8/8]

ITPP_EXPORT cmat itpp::backslash ( const cmat & A,
const cmat & B )

A general linear equation system solver.

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

Definition at line 744 of file ls_solve.cpp.

References backslash(), and it_assert_debug.

◆ forward_substitution() [1/4]

ITPP_EXPORT vec itpp::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.

Definition at line 756 of file ls_solve.cpp.

References forward_substitution().

Referenced by forward_substitution(), and forward_substitution().

◆ forward_substitution() [2/4]

ITPP_EXPORT void itpp::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.

Definition at line 766 of file ls_solve.cpp.

References it_assert.

◆ forward_substitution() [3/4]

ITPP_EXPORT vec itpp::forward_substitution ( const mat & L,
int p,
const vec & b )

Forward substitution of band matrices.

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.

Definition at line 787 of file ls_solve.cpp.

References forward_substitution().

◆ forward_substitution() [4/4]

ITPP_EXPORT void itpp::forward_substitution ( const mat & L,
int p,
const vec & b,
vec & x )

Forward substitution of band matrices.

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.

Definition at line 797 of file ls_solve.cpp.

References it_assert.

◆ backward_substitution() [1/4]

ITPP_EXPORT vec itpp::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.

Definition at line 813 of file ls_solve.cpp.

References backward_substitution().

Referenced by backward_substitution(), and backward_substitution().

◆ backward_substitution() [2/4]

ITPP_EXPORT void itpp::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.

Definition at line 821 of file ls_solve.cpp.

References it_assert.

◆ backward_substitution() [3/4]

ITPP_EXPORT vec itpp::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.

Definition at line 842 of file ls_solve.cpp.

References backward_substitution().

◆ backward_substitution() [4/4]

ITPP_EXPORT void itpp::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.

Definition at line 850 of file ls_solve.cpp.

References it_assert.