Solves a triangular system of equations of the form op(A)X=αB or Xop(A)=αB where A is a triangular matrix (either upper or lower) for the unknown X.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(in) | :: | lside |
Set to true to solve op(A)X=αB; else, set to false to solve Xop(A)=αB. |
||
logical, | intent(in) | :: | upper |
Set to true if A is upper triangular; else, set to false if A is lower triangular. |
||
logical, | intent(in) | :: | trans |
Set to true if op(A)=AT; else, set to false if op(A)=A. |
||
logical, | intent(in) | :: | nounit |
Set to true if A is unit-triangular (ones on the diagonal); else, false if A is not unit-triangular. |
||
real(kind=real64), | intent(in) | :: | alpha |
The scalar multiplier α. |
||
real(kind=real64), | intent(in), | dimension(:,:) | :: | a |
If lside is true, the M-by-M triangular matrix A; else, A is N-by-N if lside is false. |
|
real(kind=real64), | intent(inout), | dimension(:,:) | :: | b |
On input, the M-by-N matrix B. On output, the M-by-N solution matrix X. |
|
class(errors), | intent(inout), | optional, | target | :: | err |
The error object to be updated. |
Solves a triangular system of equations of the form op(A)X=αB or Xop(A)=αB where A is a triangular matrix (either upper or lower) for the unknown X.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(in) | :: | lside |
Set to true to solve op(A)X=αB; else, set to false to solve Xop(A)=αB. |
||
logical, | intent(in) | :: | upper |
Set to true if A is upper triangular; else, set to false if A is lower triangular. |
||
logical, | intent(in) | :: | trans |
Set to true if op(A)=AH; else, set to false if op(A)=A. |
||
logical, | intent(in) | :: | nounit |
Set to true if A is unit-triangular (ones on the diagonal); else, false if A is not unit-triangular. |
||
complex(kind=real64), | intent(in) | :: | alpha |
The scalar multiplier α. |
||
complex(kind=real64), | intent(in), | dimension(:,:) | :: | a |
If lside is true, the M-by-M triangular matrix A; else, A is N-by-N if lside is false. |
|
complex(kind=real64), | intent(inout), | dimension(:,:) | :: | b |
On input, the M-by-N matrix B. On output, the M-by-N solution matrix X. |
|
class(errors), | intent(inout), | optional, | target | :: | err |
The error object to be updated. |
Solves the triangular system op(A)→x=→b where A is a triangular matrix.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(in) | :: | upper |
Set to true if A is upper triangular; else, set to false if A is lower triangular. |
||
logical, | intent(in) | :: | trans |
Set to true if op(A)=AT; else, set to false if op(A)=A. |
||
logical, | intent(in) | :: | nounit |
Set to true if A is unit-triangular (ones on the diagonal); else, false if A is not unit-triangular. |
||
real(kind=real64), | intent(in), | dimension(:,:) | :: | a |
The N-by-N triangular matrix A. |
|
real(kind=real64), | intent(inout), | dimension(:) | :: | x |
On input, the N-element vector →b. On output, the N-element solution vector →x. |
|
class(errors), | intent(inout), | optional, | target | :: | err |
The error object to be updated. |
Solves the triangular system op(A)→x=→b where A is a triangular matrix.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(in) | :: | upper |
Set to true if A is upper triangular; else, set to false if A is lower triangular. |
||
logical, | intent(in) | :: | trans |
Set to true if op(A)=AT; else, set to false if op(A)=A. |
||
logical, | intent(in) | :: | nounit |
Set to true if A is unit-triangular (ones on the diagonal); else, false if A is not unit-triangular. |
||
complex(kind=real64), | intent(in), | dimension(:,:) | :: | a |
The N-by-N triangular matrix A. |
|
complex(kind=real64), | intent(inout), | dimension(:) | :: | x |
On input, the N-element vector →b. On output, the N-element solution vector →x. |
|
class(errors), | intent(inout), | optional, | target | :: | err |
The error object to be updated. |