MA02FD

Hyperbolic plane rotation

[Specification] [Arguments] [Method] [References] [Comments] [Example]

Purpose

  To compute the coefficients c and s (c^2 + s^2 = 1) for a modified
  hyperbolic plane rotation, such that,

      y1 := 1/c * x1 - s/c * x2 = sqrt(x1^2 - x2^2),
      y2 :=  -s * y1 +  c  * x2 = 0,

  given two real numbers x1 and x2, satisfying either x1 = x2 = 0,
  or abs(x2) < abs(x1).

Specification
      SUBROUTINE MA02FD( X1, X2, C, S, INFO )
C     .. Scalar Arguments ..
      DOUBLE PRECISION  X1, X2, C, S
      INTEGER           INFO

Arguments

Input/Output Parameters

  X1      (input/output) DOUBLE PRECISION
          On entry, the real number x1.
          On exit, the real number y1.

  X2      (input) DOUBLE PRECISION
          The real number x2.
          The values x1 and x2 should satisfy either x1 = x2 = 0, or
          abs(x2) < abs(x1).

  C       (output) DOUBLE PRECISION
          The cosines c of the modified hyperbolic plane rotation.

  S       (output) DOUBLE PRECISION
          The sines s of the modified hyperbolic plane rotation.

Error Indicator
  INFO    INTEGER
          = 0:  succesful exit;
          = 1:  if abs(x2) >= abs(x1) and either x1 <> 0 or x2 <> 0.

Further Comments
  None
Example

Program Text

  None
Program Data
  None
Program Results
  None

Return to Supporting Routines index