If
,
is assumed to have a row spike, with nonzero elements
, for
. The rotations are applied from the left:
where
,
is a rotation in the
plane and
with
.
If
,
is assumed to have a column spike, with nonzero elements
, for
. The rotations are applied from the right:
where
,
is a rotation in the
plane and
with
.
None.
- 1: SIDE – CHARACTER(1)Input
On entry: specifies whether
is operated on from the left or the right.
- is pre-multiplied from the left.
- is post-multiplied from the right.
Constraint:
or .
- 2: N – INTEGERInput
On entry: , the order of the matrix .
Constraint:
.
- 3: K1 – INTEGERInput
- 4: K2 – INTEGERInput
On entry: the values
and
.
If or or , an immediate return is effected.
- 5: C() – REAL (KIND=nag_wp) arrayOutput
On exit: holds , the cosine of the rotation , for .
- 6: S() – COMPLEX (KIND=nag_wp) arrayInput/Output
-
Note: the dimension of the array
S
must be at least
.
On entry: the nonzero elements of the spike of :
must hold if , and if , for .
On exit: holds , the sine of the rotation , for ; holds , the th diagonal element of , if , or , the th diagonal element of , if .
- 7: A(LDA,) – COMPLEX (KIND=nag_wp) arrayInput/Output
-
Note: the second dimension of the array
A
must be at least
.
On entry: the upper triangular part of the by upper spiked matrix . The imaginary parts of the diagonal elements must be zero, except for the element if , or the element if .
On exit: the upper triangular matrix . The imaginary parts of the diagonal elements are set to zero.
- 8: LDA – INTEGERInput
On entry: the first dimension of the array
A as declared in the (sub)program from which F06TSF is called.
Constraint:
.
None.
Not applicable.
None.
None.