F06TMF performs a Unitary similarity transformation (as a sequence of plane rotations) of a complex Hermitian matrix.
F06TMF performs the transformation
where
A is an
n by
n complex Hermitian matrix, and
P is a complex unitary matrix defined as a sequence of plane rotations,
Pk, applied in planes
k1 to
k2.
The
2 by
2 plane rotation part of
Pk is assumed to have the form
with
ck real.
None.
- 1: UPLO – CHARACTER(1)Input
On entry: specifies whether the upper or lower triangular part of
A is stored.
- UPLO='U'
- The upper triangular part of A is stored.
- UPLO='L'
- The lower triangular part of A is stored.
Constraint:
UPLO='U' or 'L'.
- 2: PIVOT – CHARACTER(1)Input
On entry: specifies the plane rotated by
Pk.
- PIVOT='V' (variable pivot)
- Pk rotates the k,k+1 plane.
- PIVOT='T' (top pivot)
- Pk rotates the k1,k+1 plane.
- PIVOT='B' (bottom pivot)
- Pk rotates the k,k2 plane.
Constraint:
PIVOT='V', 'T' or 'B'.
- 3: DIRECT – CHARACTER(1)Input
On entry: specifies the sequence direction.
- DIRECT='F' (forward sequence)
- P=Pk2-1⋯Pk1+1Pk1.
- DIRECT='B' (backward sequence)
- P=Pk1Pk1+1⋯Pk2-1.
Constraint:
DIRECT='F' or 'B'.
- 4: N – INTEGERInput
On entry: n, the order of the matrix A.
Constraint:
N≥0.
- 5: K1 – INTEGERInput
- 6: K2 – INTEGERInput
On entry: the values
k1 and
k2.
If K1<1 or K2≤K1 or K2>N, an immediate return is effected.
- 7: C(*) – REAL (KIND=nag_wp) arrayInput
-
Note: the dimension of the array
C
must be at least
K2-K1.
On entry: Ck must hold ck, the cosine of the rotation Pk, for k=k1,…,k2-1.
- 8: S(*) – COMPLEX (KIND=nag_wp) arrayInput
-
Note: the dimension of the array
S
must be at least
K2-K1.
On entry: Sk must hold sk, the sine of the rotation Pk, for k=k1,…,k2-1.
- 9: A(LDA,*) – COMPLEX (KIND=nag_wp) arrayInput/Output
-
Note: the second dimension of the array
A
must be at least
max1,N.
On entry: the
n by
n Hermitian matrix
A.
- If UPLO='U', the upper triangular part of A must be stored and the elements of the array below the diagonal are not referenced.
- If UPLO='L', the lower triangular part of A must be stored and the elements of the array above the diagonal are not referenced.
On exit: the transformed matrix A. The imaginary parts of the diagonal elements are set to zero.
- 10: LDA – INTEGERInput
On entry: the first dimension of the array
A as declared in the (sub)program from which F06TMF is called.
Constraint:
LDA≥ max1,N .
None.
Not applicable.
None.
None.