NAG Library Routine Document

f06bef (drotj)

1
Purpose

f06bef generates a real Jacobi plane rotation.

2
Specification

Fortran Interface
Subroutine f06bef ( job, x, y, z, c, s)
Real (Kind=nag_wp), Intent (Inout):: x, y, z
Real (Kind=nag_wp), Intent (Out):: c, s
Character (1), Intent (In):: job
C Header Interface
#include <nagmk26.h>
void  f06bef_ (const char *job, double *x, double *y, double *z, double *c, double *s, const Charlen length_job)

3
Description

f06bef generates a real Jacobi plane rotation with parameters c and s, which diagonalizes a given 2 by 2 real symmetric matrix:
c s -s c x y y z c -s s c = a 0 0 b .  

4
References

None.

5
Arguments

1:     job – Character(1)Input
On entry: specifies the property which determines the precise form of the rotation.
job='B'
c1/2.
job='S'
0c1/2.
job='M'
ab.
Constraint: job='B', 'S' or 'M'.
2:     x – Real (Kind=nag_wp)Input/Output
On entry: the value x, the 1,1  element of the input matrix.
On exit: the value a.
3:     y – Real (Kind=nag_wp)Input/Output
On entry: the value y, the 1,2  or 2,1  element of the input matrix.
On exit: the value t, the tangent of the rotation.
4:     z – Real (Kind=nag_wp)Input/Output
On entry: the value z. the 2,2  element of the input matrix.
On exit: the value b.
5:     c – Real (Kind=nag_wp)Output
On exit: the value c, the cosine of the rotation.
6:     s – Real (Kind=nag_wp)Output
On exit: the value s, the sine of the rotation.

6
Error Indicators and Warnings

None.

7
Accuracy

Not applicable.

8
Parallelism and Performance

f06bef is not threaded in any implementation.

9
Further Comments

None.

10
Example

None.