(Specifications) This
interface provides different methods to construct a tridiagonal
matrix. Only
the non-zero elements of are stored, i.e.
tridiagonal
matrix from rank-1 arrays: integer, parameter :: n
real(dp), allocatable :: dl(:), dv(:), du(:)
type(tridiagonal_rdp_type) :: A
integer :: i
dl = [(i, i=1, n-1)]; dv = [(2*i, i=1, n)]; du = [(3*i, i=1, n)]
A = Tridiagonal(dl, dv, du)
tridiagonal
matrix with constant diagonals: integer, parameter :: n
real(dp), parameter :: a = 1.0_dp, b = 1.0_dp, c = 2.0_dp
type(tridiagonal_rdp_type) :: A
A = Tridiagonal(a, b, c, n)
Construct a tridiagonal
matrix with constant elements.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=dp), | intent(in) | :: | dl |
Tridiagonal matrix elements. |
||
complex(kind=dp), | intent(in) | :: | dv |
Tridiagonal matrix elements. |
||
complex(kind=dp), | intent(in) | :: | du |
Tridiagonal matrix elements. |
||
integer(kind=ilp), | intent(in) | :: | n |
Matrix dimension. |
||
type(linalg_state_type), | intent(out) | :: | err |
Error handling. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix with constant elements.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=sp), | intent(in) | :: | dl |
Tridiagonal matrix elements. |
||
complex(kind=sp), | intent(in) | :: | dv |
Tridiagonal matrix elements. |
||
complex(kind=sp), | intent(in) | :: | du |
Tridiagonal matrix elements. |
||
integer(kind=ilp), | intent(in) | :: | n |
Matrix dimension. |
||
type(linalg_state_type), | intent(out) | :: | err |
Error handling. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix with constant elements.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | dl |
Tridiagonal matrix elements. |
||
real(kind=dp), | intent(in) | :: | dv |
Tridiagonal matrix elements. |
||
real(kind=dp), | intent(in) | :: | du |
Tridiagonal matrix elements. |
||
integer(kind=ilp), | intent(in) | :: | n |
Matrix dimension. |
||
type(linalg_state_type), | intent(out) | :: | err |
Error handling. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix with constant elements.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=sp), | intent(in) | :: | dl |
Tridiagonal matrix elements. |
||
real(kind=sp), | intent(in) | :: | dv |
Tridiagonal matrix elements. |
||
real(kind=sp), | intent(in) | :: | du |
Tridiagonal matrix elements. |
||
integer(kind=ilp), | intent(in) | :: | n |
Matrix dimension. |
||
type(linalg_state_type), | intent(out) | :: | err |
Error handling. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix with constant elements.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=dp), | intent(in) | :: | dl |
Tridiagonal matrix elements. |
||
complex(kind=dp), | intent(in) | :: | dv |
Tridiagonal matrix elements. |
||
complex(kind=dp), | intent(in) | :: | du |
Tridiagonal matrix elements. |
||
integer(kind=ilp), | intent(in) | :: | n |
Matrix dimension. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix with constant elements.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=sp), | intent(in) | :: | dl |
Tridiagonal matrix elements. |
||
complex(kind=sp), | intent(in) | :: | dv |
Tridiagonal matrix elements. |
||
complex(kind=sp), | intent(in) | :: | du |
Tridiagonal matrix elements. |
||
integer(kind=ilp), | intent(in) | :: | n |
Matrix dimension. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix with constant elements.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | dl |
Tridiagonal matrix elements. |
||
real(kind=dp), | intent(in) | :: | dv |
Tridiagonal matrix elements. |
||
real(kind=dp), | intent(in) | :: | du |
Tridiagonal matrix elements. |
||
integer(kind=ilp), | intent(in) | :: | n |
Matrix dimension. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix with constant elements.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=sp), | intent(in) | :: | dl |
Tridiagonal matrix elements. |
||
real(kind=sp), | intent(in) | :: | dv |
Tridiagonal matrix elements. |
||
real(kind=sp), | intent(in) | :: | du |
Tridiagonal matrix elements. |
||
integer(kind=ilp), | intent(in) | :: | n |
Matrix dimension. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix from the rank-1 arrays
dl
, dv
and du
.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=dp), | intent(in) | :: | dl(:) |
Tridiagonal matrix elements. |
||
complex(kind=dp), | intent(in) | :: | dv(:) |
Tridiagonal matrix elements. |
||
complex(kind=dp), | intent(in) | :: | du(:) |
Tridiagonal matrix elements. |
||
type(linalg_state_type), | intent(out) | :: | err |
Error handling. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix from the rank-1 arrays
dl
, dv
and du
.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=sp), | intent(in) | :: | dl(:) |
Tridiagonal matrix elements. |
||
complex(kind=sp), | intent(in) | :: | dv(:) |
Tridiagonal matrix elements. |
||
complex(kind=sp), | intent(in) | :: | du(:) |
Tridiagonal matrix elements. |
||
type(linalg_state_type), | intent(out) | :: | err |
Error handling. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix from the rank-1 arrays
dl
, dv
and du
.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | dl(:) |
Tridiagonal matrix elements. |
||
real(kind=dp), | intent(in) | :: | dv(:) |
Tridiagonal matrix elements. |
||
real(kind=dp), | intent(in) | :: | du(:) |
Tridiagonal matrix elements. |
||
type(linalg_state_type), | intent(out) | :: | err |
Error handling. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix from the rank-1 arrays
dl
, dv
and du
.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=sp), | intent(in) | :: | dl(:) |
Tridiagonal matrix elements. |
||
real(kind=sp), | intent(in) | :: | dv(:) |
Tridiagonal matrix elements. |
||
real(kind=sp), | intent(in) | :: | du(:) |
Tridiagonal matrix elements. |
||
type(linalg_state_type), | intent(out) | :: | err |
Error handling. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix from the rank-1 arrays
dl
, dv
and du
.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=dp), | intent(in) | :: | dl(:) |
Tridiagonal matrix elements. |
||
complex(kind=dp), | intent(in) | :: | dv(:) |
Tridiagonal matrix elements. |
||
complex(kind=dp), | intent(in) | :: | du(:) |
Tridiagonal matrix elements. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix from the rank-1 arrays
dl
, dv
and du
.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=sp), | intent(in) | :: | dl(:) |
Tridiagonal matrix elements. |
||
complex(kind=sp), | intent(in) | :: | dv(:) |
Tridiagonal matrix elements. |
||
complex(kind=sp), | intent(in) | :: | du(:) |
Tridiagonal matrix elements. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix from the rank-1 arrays
dl
, dv
and du
.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | dl(:) |
Tridiagonal matrix elements. |
||
real(kind=dp), | intent(in) | :: | dv(:) |
Tridiagonal matrix elements. |
||
real(kind=dp), | intent(in) | :: | du(:) |
Tridiagonal matrix elements. |
Corresponding Tridiagonal matrix.
Construct a tridiagonal
matrix from the rank-1 arrays
dl
, dv
and du
.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=sp), | intent(in) | :: | dl(:) |
Tridiagonal matrix elements. |
||
real(kind=sp), | intent(in) | :: | dv(:) |
Tridiagonal matrix elements. |
||
real(kind=sp), | intent(in) | :: | du(:) |
Tridiagonal matrix elements. |
Corresponding Tridiagonal matrix.