This interface overloads the solve interface from stdlib_linalg
for solving a linear system where is a Toeplitz
matrix. It also enables to solve a linear system with multiple
right-hand sides.
To solve a system with being of type Toeplitz:
x = solve(A, b)
A : Matrix of Toeplitz type.
It is an intent(in) argument.
b : Rank-1 or rank-2 array defining the right-hand side(s).
It is an intent(in) argument.
x : Solution of the linear system.
It has the same type and shape as b.
Note
Under the hood, a gmres solver is being used along with a
Circulant preconditioner. By design, gmres is run until a
relative tolerance of is reached.
Solve the linear system , where A is Toeplitz and B
is a rank-2 array. The solution matrix X has the same dimension
and kind as the right-hand side matrix B.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(Toeplitz), | intent(in) | :: | A |
Coefficient matrix. |
||
| real(kind=dp), | intent(in) | :: | B(:,:) |
Right-hand side vectors. |
Solution vectors.
Solve the linear system where is Toeplitz and b
a standard rank-1 array. The solution vector x has the same
dimension and kind as the right-hand side vector b.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(Toeplitz), | intent(in) | :: | A |
Coefficient matrix. |
||
| real(kind=dp), | intent(in) | :: | b(:) |
Right-hand side vector. |
Solution vector.