NAG FL Interface
f06ulf (zlantb)

Settings help

FL Name Style:


FL Specification Language:


1 Purpose

f06ulf returns, via the function name, the value of the 1-norm, the -norm, the Frobenius norm, or the maximum absolute value of the elements of a complex n×n triangular band matrix.

2 Specification

Fortran Interface
Function f06ulf ( norm, uplo, diag, n, k, ab, ldab, work)
Real (Kind=nag_wp) :: f06ulf
Integer, Intent (In) :: n, k, ldab
Real (Kind=nag_wp), Intent (Inout) :: work(*)
Complex (Kind=nag_wp), Intent (In) :: ab(ldab,*)
Character (1), Intent (In) :: norm, uplo, diag
C Header Interface
#include <nag.h>
double  f06ulf_ (const char *norm, const char *uplo, const char *diag, const Integer *n, const Integer *k, const Complex ab[], const Integer *ldab, double work[], const Charlen length_norm, const Charlen length_uplo, const Charlen length_diag)
The routine may be called by the names f06ulf or nagf_blas_zlantb.

3 Description

None.

4 References

None.

5 Arguments

1: norm Character(1) Input
On entry: specifies the value to be returned.
norm='1' or 'O'
The 1-norm.
norm='I'
The -norm.
norm='F' or 'E'
The Frobenius (or Euclidean) norm.
norm='M'
The value maxi,j|aij| (not a norm).
Constraint: norm='1', 'O', 'I', 'F', 'E' or 'M'.
2: uplo Character(1) Input
On entry: specifies whether A is upper or lower triangular.
uplo='U'
A is upper triangular.
uplo='L'
A is lower triangular.
Constraint: uplo='U' or 'L'.
3: diag Character(1) Input
On entry: specifies whether A has nonunit or unit diagonal elements.
diag='N'
The diagonal elements are stored explicitly.
diag='U'
The diagonal elements are assumed to be 1, and are not referenced.
Constraint: diag='N' or 'U'.
4: n Integer Input
On entry: n, the order of the matrix A.
When n=0, f06ulf returns zero.
Constraint: n0.
5: k Integer Input
On entry: k, the number of subdiagonals or superdiagonals of the matrix A.
Constraint: k0.
6: ab(ldab,*) Complex (Kind=nag_wp) array Input
Note: the second dimension of the array ab must be at least n.
On entry: the n×n triangular band matrix A
The matrix is stored in rows 1 to k+1, more precisely,
  • if uplo='U', the elements of the upper triangle of A within the band must be stored with element Aij in ab(k+1+i-j,j)​ for ​max(1,j-k)ij;
  • if uplo='L', the elements of the lower triangle of A within the band must be stored with element Aij in ab(1+i-j,j)​ for ​jimin(n,j+k).
If diag='U', the diagonal elements of A are assumed to be 1, and are not referenced.
7: ldab Integer Input
On entry: the first dimension of the array ab as declared in the (sub)program from which f06ulf is called.
Constraint: ldabk+1.
8: work(*) Real (Kind=nag_wp) array Workspace
Note: the dimension of the array work must be at least max(1,n) if norm='I', and at least 1 otherwise.

6 Error Indicators and Warnings

None.

7 Accuracy

Not applicable.

8 Parallelism and Performance

Background information to multithreading can be found in the Multithreading documentation.
f06ulf is not threaded in any implementation.

9 Further Comments

None.

10 Example

None.