LAPACK  3.4.2 LAPACK: Linear Algebra PACKage
slaqtr.f File Reference

Go to the source code of this file.

## Functions/Subroutines

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.

## Function/Subroutine Documentation

 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:
 [in] LTRAN ``` 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.``` [in] LREAL ``` LREAL is LOGICAL On entry, LREAL specifies the input matrix structure: = .FALSE., the input is complex = .TRUE., the input is real``` [in] N ``` N is INTEGER On entry, N specifies the order of T+i*B. N >= 0.``` [in] 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.``` [in] LDT ``` LDT is INTEGER The leading dimension of the matrix T. LDT >= max(1,N).``` [in] 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.``` [in] W ``` W is REAL On entry, W is the diagonal element of the matrix B. If LREAL = .TRUE., W is not referenced.``` [out] SCALE ``` SCALE is REAL On exit, SCALE is the scale factor.``` [in,out] 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.``` [out] WORK ` WORK is REAL array, dimension (N)` [out] 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.```
Date:
September 2012

Definition at line 165 of file slaqtr.f.

Here is the call graph for this function:

Here is the caller graph for this function: