File: claesy

package info (click to toggle)
ruby-lapack 1.8.1-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster
  • size: 28,552 kB
  • sloc: ansic: 191,612; ruby: 3,934; makefile: 8
file content (81 lines) | stat: -rwxr-xr-x 2,524 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
--- 
:name: claesy
:md5sum: cda88734cca22f111cf3994c8552cfb4
:category: :subroutine
:arguments: 
- a: 
    :type: complex
    :intent: input
- b: 
    :type: complex
    :intent: input
- c: 
    :type: complex
    :intent: input
- rt1: 
    :type: complex
    :intent: output
- rt2: 
    :type: complex
    :intent: output
- evscal: 
    :type: complex
    :intent: output
- cs1: 
    :type: complex
    :intent: output
- sn1: 
    :type: complex
    :intent: output
:substitutions: {}

:fortran_help: "      SUBROUTINE CLAESY( A, B, C, RT1, RT2, EVSCAL, CS1, SN1 )\n\n\
  *  Purpose\n\
  *  =======\n\
  *\n\
  *  CLAESY computes the eigendecomposition of a 2-by-2 symmetric matrix\n\
  *     ( ( A, B );( B, C ) )\n\
  *  provided the norm of the matrix of eigenvectors is larger than\n\
  *  some threshold value.\n\
  *\n\
  *  RT1 is the eigenvalue of larger absolute value, and RT2 of\n\
  *  smaller absolute value.  If the eigenvectors are computed, then\n\
  *  on return ( CS1, SN1 ) is the unit eigenvector for RT1, hence\n\
  *\n\
  *  [  CS1     SN1   ] . [ A  B ] . [ CS1    -SN1   ] = [ RT1  0  ]\n\
  *  [ -SN1     CS1   ]   [ B  C ]   [ SN1     CS1   ]   [  0  RT2 ]\n\
  *\n\n\
  *  Arguments\n\
  *  =========\n\
  *\n\
  *  A       (input) COMPLEX\n\
  *          The ( 1, 1 ) element of input matrix.\n\
  *\n\
  *  B       (input) COMPLEX\n\
  *          The ( 1, 2 ) element of input matrix.  The ( 2, 1 ) element\n\
  *          is also given by B, since the 2-by-2 matrix is symmetric.\n\
  *\n\
  *  C       (input) COMPLEX\n\
  *          The ( 2, 2 ) element of input matrix.\n\
  *\n\
  *  RT1     (output) COMPLEX\n\
  *          The eigenvalue of larger modulus.\n\
  *\n\
  *  RT2     (output) COMPLEX\n\
  *          The eigenvalue of smaller modulus.\n\
  *\n\
  *  EVSCAL  (output) COMPLEX\n\
  *          The complex value by which the eigenvector matrix was scaled\n\
  *          to make it orthonormal.  If EVSCAL is zero, the eigenvectors\n\
  *          were not computed.  This means one of two things:  the 2-by-2\n\
  *          matrix could not be diagonalized, or the norm of the matrix\n\
  *          of eigenvectors before scaling was larger than the threshold\n\
  *          value THRESH (set below).\n\
  *\n\
  *  CS1     (output) COMPLEX\n\
  *  SN1     (output) COMPLEX\n\
  *          If EVSCAL .NE. 0,  ( CS1, SN1 ) is the unit right eigenvector\n\
  *          for RT1.\n\
  *\n\n\
  * =====================================================================\n\
  *\n"