table of contents
| laqtr(3) | Library Functions Manual | laqtr(3) |
NAME¶
laqtr - laqtr: quasi-triangular solve
SYNOPSIS¶
Functions¶
subroutine DLAQTR (ltran, lreal, n, t, ldt, b, w, scale, x,
work, info)
DLAQTR solves a real quasi-triangular system of equations, or a complex
quasi-triangular system of special form, in real arithmetic. subroutine
SLAQTR (ltran, lreal, n, t, ldt, b, w, scale, x, work, info)
SLAQTR solves a real quasi-triangular system of equations, or a complex
quasi-triangular system of special form, in real arithmetic.
Detailed Description¶
Function Documentation¶
subroutine DLAQTR (logical ltran, logical lreal, integer n, double precision, dimension( ldt, * ) t, integer ldt, double precision, dimension( * ) b, double precision w, double precision scale, double precision, dimension( * ) x, double precision, dimension( * ) work, integer info)¶
DLAQTR solves a real quasi-triangular system of equations, or a complex quasi-triangular system of special form, in real arithmetic.
Purpose:
!> !> DLAQTR solves the real quasi-triangular system !> !> op(T)*p = scale*c, if LREAL = .TRUE. !> !> or the complex quasi-triangular systems !> !> op(T + iB)*(p+iq) = scale*(c+id), if LREAL = .FALSE. !> !> in real arithmetic, where T is upper quasi-triangular. !> If LREAL = .FALSE., then the first diagonal block of T must be !> 1 by 1, B is the specially structured matrix !> !> B = [ b(1) b(2) ... b(n) ] !> [ w ] !> [ w ] !> [ . ] !> [ w ] !> !> op(A) = A or A**T, A**T denotes the transpose of !> matrix A. !> !> On input, X = [ c ]. On output, X = [ p ]. !> [ d ] [ q ] !> !> This subroutine is designed for the condition number estimation !> in routine DTRSNA. !>
Parameters
!> LTRAN is LOGICAL !> On entry, LTRAN specifies the option of conjugate transpose: !> = .FALSE., op(T+i*B) = T+i*B, !> = .TRUE., op(T+i*B) = (T+i*B)**T. !>
LREAL
!> LREAL is LOGICAL !> On entry, LREAL specifies the input matrix structure: !> = .FALSE., the input is complex !> = .TRUE., the input is real !>
N
!> N is INTEGER !> On entry, N specifies the order of T+i*B. N >= 0. !>
T
!> T is DOUBLE PRECISION array, dimension (LDT,N) !> On entry, T contains a matrix in Schur canonical form. !> If LREAL = .FALSE., then the first diagonal block of T mu !> be 1 by 1. !>
LDT
!> LDT is INTEGER !> The leading dimension of the matrix T. LDT >= max(1,N). !>
B
!> B is DOUBLE PRECISION array, dimension (N) !> On entry, B contains the elements to form the matrix !> B as described above. !> If LREAL = .TRUE., B is not referenced. !>
W
!> W is DOUBLE PRECISION !> On entry, W is the diagonal element of the matrix B. !> If LREAL = .TRUE., W is not referenced. !>
SCALE
!> SCALE is DOUBLE PRECISION !> On exit, SCALE is the scale factor. !>
X
!> X is DOUBLE PRECISION array, dimension (2*N) !> On entry, X contains the right hand side of the system. !> On exit, X is overwritten by the solution. !>
WORK
!> WORK is DOUBLE PRECISION array, dimension (N) !>
INFO
!> INFO is INTEGER !> On exit, INFO is set to !> 0: successful exit. !> 1: the some diagonal 1 by 1 block has been perturbed by !> a small number SMIN to keep nonsingularity. !> 2: the some diagonal 2 by 2 block has been perturbed by !> a small number in DLALN2 to keep nonsingularity. !> NOTE: In the interests of speed, this routine does not !> check the inputs for errors. !>
Author
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Definition at line 163 of file dlaqtr.f.
subroutine SLAQTR (logical ltran, logical lreal, integer n, real, dimension( ldt, * ) t, integer ldt, real, dimension( * ) b, real w, real scale, real, dimension( * ) x, real, dimension( * ) work, integer info)¶
SLAQTR solves a real quasi-triangular system of equations, or a complex quasi-triangular system of special form, in real arithmetic.
Purpose:
!> !> SLAQTR solves the real quasi-triangular system !> !> op(T)*p = scale*c, if LREAL = .TRUE. !> !> or the complex quasi-triangular systems !> !> op(T + iB)*(p+iq) = scale*(c+id), if LREAL = .FALSE. !> !> in real arithmetic, where T is upper quasi-triangular. !> If LREAL = .FALSE., then the first diagonal block of T must be !> 1 by 1, B is the specially structured matrix !> !> B = [ b(1) b(2) ... b(n) ] !> [ w ] !> [ w ] !> [ . ] !> [ w ] !> !> op(A) = A or A**T, A**T denotes the transpose of !> matrix A. !> !> On input, X = [ c ]. On output, X = [ p ]. !> [ d ] [ q ] !> !> This subroutine is designed for the condition number estimation !> in routine STRSNA. !>
Parameters
!> LTRAN is LOGICAL !> On entry, LTRAN specifies the option of conjugate transpose: !> = .FALSE., op(T+i*B) = T+i*B, !> = .TRUE., op(T+i*B) = (T+i*B)**T. !>
LREAL
!> LREAL is LOGICAL !> On entry, LREAL specifies the input matrix structure: !> = .FALSE., the input is complex !> = .TRUE., the input is real !>
N
!> N is INTEGER !> On entry, N specifies the order of T+i*B. N >= 0. !>
T
!> T is REAL array, dimension (LDT,N) !> On entry, T contains a matrix in Schur canonical form. !> If LREAL = .FALSE., then the first diagonal block of T must !> be 1 by 1. !>
LDT
!> LDT is INTEGER !> The leading dimension of the matrix T. LDT >= max(1,N). !>
B
!> B is REAL array, dimension (N) !> On entry, B contains the elements to form the matrix !> B as described above. !> If LREAL = .TRUE., B is not referenced. !>
W
!> W is REAL !> On entry, W is the diagonal element of the matrix B. !> If LREAL = .TRUE., W is not referenced. !>
SCALE
!> SCALE is REAL !> On exit, SCALE is the scale factor. !>
X
!> X is REAL array, dimension (2*N) !> On entry, X contains the right hand side of the system. !> On exit, X is overwritten by the solution. !>
WORK
!> WORK is REAL array, dimension (N) !>
INFO
!> INFO is INTEGER !> On exit, INFO is set to !> 0: successful exit. !> 1: the some diagonal 1 by 1 block has been perturbed by !> a small number SMIN to keep nonsingularity. !> 2: the some diagonal 2 by 2 block has been perturbed by !> a small number in SLALN2 to keep nonsingularity. !> NOTE: In the interests of speed, this routine does not !> check the inputs for errors. !>
Author
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Definition at line 163 of file slaqtr.f.
Author¶
Generated automatically by Doxygen for LAPACK from the source code.
| Version 3.12.0 | LAPACK |