dlaqtr.f man page

dlaqtr.f

Synopsis

Functions/Subroutines

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.

Function/Subroutine 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

```          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 Tennessee

Univ. of California Berkeley

NAG Ltd.

Date:

December 2016

Definition at line 167 of file dlaqtr.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.

Referenced By

The man page dlaqtr(3) is an alias of dlaqtr.f(3).

Tue Nov 14 2017 Version 3.8.0 LAPACK