Module containing functions to solve linear systems AX=B.
Calculates the solution X to a system of linear equations AX=B where A is a complex banded matrix and B is a complex vector.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(banded_matrix_t), | intent(in) | :: | bandmatrix | the banded A-matrix on the left-hand side |
||
complex(kind=dp), | intent(in) | :: | vector(:) | the B-vector on the right-hand side |
the solution vector X
Calculates the solution X to a system of linear equations AX=B where A is a complex banded matrix and B is a complex vector. Uses the LU factorisation of A and pivoting information from zgbtrf.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(banded_matrix_t), | intent(in) | :: | bandmatrix | the banded A-matrix on the left-hand side |
||
complex(kind=dp), | intent(in) | :: | vector(:) | the B-vector on the right-hand side |
||
complex(kind=dp), | intent(in) | :: | LU(:,:) | the LU factorisation of A, from zgbtrf |
||
integer, | intent(in) | :: | ipiv(:) | the pivoting information from zgbtrf |
the solution vector X
Calculates the LU factorisation of a complex banded matrix A. Uses the LAPACK routine zgbtrf.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(banded_matrix_t), | intent(in) | :: | bandmatrix | the banded A-matrix on the left-hand side |
||
complex(kind=dp), | intent(out), | allocatable | :: | LU(:,:) | the LU factorisation of A |
|
integer, | intent(out), | allocatable | :: | ipiv(:) | the pivoting information after factorisation |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | info | |||
character(len=*), | intent(in) | :: | routine_name |