Base type used to define a SymTridiagonal matrix of size [n, n]
with diagonals given by rank-1 arrays dv (size n) and ev
(size n-1).
This interface provides different methods to construct a
SymTridiagonal matrix. Only the non-zero elements of are
stored, i.e.
SymTridiagonal matrix filled with zeros: integer, parameter :: n = 100
type(SymTridiagonal) :: A
A = SymTridiagonal(n)
SymTridiagonal matrix from rank-1 arrays: integer, parameter :: n
real(dp), allocatable :: ev(:), dv(:)
type(SymTridiagonal) :: A
integer :: i
dv = [(i, i=1, n)]; ev = [(2*i, i=1, n)]
A = Tridiagonal(dv, ev)
SymTridiagonal matrix with constant diagonals: integer, parameter :: n
real(dp), parameter :: d = 1.0_dp, e = 2.0_dp
type(SymTridiagonal) :: A
A = SymTridiagonal(d, e, n)
Note
Only double precision is currently supported for this matrix type.
Note
If is known to be symmetric positive definite, it can be
constructed as A = SymTridiagonal(dv, ev, ifposdef=.true.):w
Construct a SymTridiagonal matrix from the rank-1 arrays
dv and ev.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | dv(:) |
SymTridiagonal elements of the matrix. |
||
| real(kind=dp), | intent(in) | :: | ev(:) |
SymTridiagonal elements of the matrix. |
||
| logical(kind=lk), | intent(in), | optional | :: | isposdef |
Whether |
Symmetric Tridiagonal matrix.
Construct a SymTridiagonal matrix with constant diagonal
elements.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | d |
SymTridiagonal elements of the matrix. |
||
| real(kind=dp), | intent(in) | :: | e |
SymTridiagonal elements of the matrix. |
||
| integer(kind=ilp), | intent(in) | :: | n |
Dimension of the matrix. |
||
| logical(kind=lk), | intent(in), | optional | :: | isposdef |
Whether |
Symmetric Tridiagonal matrix.
Construct a SymTridiagonal matrix filled with zeros.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=ilp), | intent(in) | :: | n |
Dimension of the matrix. |
Symmetric Tridiagonal matrix.