# ztpt03.f - Man Page

TESTING/LIN/ztpt03.f

## Synopsis

### Functions/Subroutines

subroutine **ztpt03** (uplo, trans, diag, n, nrhs, ap, scale, cnorm, tscal, x, ldx, b, ldb, work, resid)**ZTPT03**

## Function/Subroutine Documentation

### subroutine ztpt03 (character uplo, character trans, character diag, integer n, integer nrhs, complex*16, dimension( * ) ap, double precision scale, double precision, dimension( * ) cnorm, double precision tscal, complex*16, dimension( ldx, * ) x, integer ldx, complex*16, dimension( ldb, * ) b, integer ldb, complex*16, dimension( * ) work, double precision resid)

**ZTPT03**

**Purpose:**

ZTPT03 computes the residual for the solution to a scaled triangular system of equations A*x = s*b, A**T *x = s*b, or A**H *x = s*b, when the triangular matrix A is stored in packed format. Here A**T denotes the transpose of A, A**H denotes the conjugate transpose of A, s is a scalar, and x and b are N by NRHS matrices. The test ratio is the maximum over the number of right hand sides of norm(s*b - op(A)*x) / ( norm(op(A)) * norm(x) * EPS ), where op(A) denotes A, A**T, or A**H, and EPS is the machine epsilon.

**Parameters***UPLO*UPLO is CHARACTER*1 Specifies whether the matrix A is upper or lower triangular. = 'U': Upper triangular = 'L': Lower triangular

*TRANS*TRANS is CHARACTER*1 Specifies the operation applied to A. = 'N': A *x = s*b (No transpose) = 'T': A**T *x = s*b (Transpose) = 'C': A**H *x = s*b (Conjugate transpose)

*DIAG*DIAG is CHARACTER*1 Specifies whether or not the matrix A is unit triangular. = 'N': Non-unit triangular = 'U': Unit triangular

*N*N is INTEGER The order of the matrix A. N >= 0.

*NRHS*NRHS is INTEGER The number of right hand sides, i.e., the number of columns of the matrices X and B. NRHS >= 0.

*AP*AP is COMPLEX*16 array, dimension (N*(N+1)/2) The upper or lower triangular matrix A, packed columnwise in a linear array. The j-th column of A is stored in the array AP as follows: if UPLO = 'U', AP((j-1)*j/2 + i) = A(i,j) for 1<=i<=j; if UPLO = 'L', AP((j-1)*(n-j) + j*(j+1)/2 + i-j) = A(i,j) for j<=i<=n.

*SCALE*SCALE is DOUBLE PRECISION The scaling factor s used in solving the triangular system.

*CNORM*CNORM is DOUBLE PRECISION array, dimension (N) The 1-norms of the columns of A, not counting the diagonal.

*TSCAL*TSCAL is DOUBLE PRECISION The scaling factor used in computing the 1-norms in CNORM. CNORM actually contains the column norms of TSCAL*A.

*X*X is COMPLEX*16 array, dimension (LDX,NRHS) The computed solution vectors for the system of linear equations.

*LDX*LDX is INTEGER The leading dimension of the array X. LDX >= max(1,N).

*B*B is COMPLEX*16 array, dimension (LDB,NRHS) The right hand side vectors for the system of linear equations.

*LDB*LDB is INTEGER The leading dimension of the array B. LDB >= max(1,N).

*WORK*WORK is COMPLEX*16 array, dimension (N)

*RESID*RESID is DOUBLE PRECISION The maximum over the number of right hand sides of norm(op(A)*x - s*b) / ( norm(op(A)) * norm(x) * EPS ).

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **160** of file **ztpt03.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.

## Referenced By

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

Tue Nov 28 2023 12:08:43 Version 3.12.0 LAPACK