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
|
---
:name: slartg
:md5sum: 52b75639a9de491257810faa309579ab
:category: :subroutine
:arguments:
- f:
:type: real
:intent: input
- g:
:type: real
:intent: input
- cs:
:type: real
:intent: output
- sn:
:type: real
:intent: output
- r:
:type: real
:intent: output
:substitutions: {}
:fortran_help: " SUBROUTINE SLARTG( F, G, CS, SN, R )\n\n\
* Purpose\n\
* =======\n\
*\n\
* SLARTG generate a plane rotation so that\n\
*\n\
* [ CS SN ] . [ F ] = [ R ] where CS**2 + SN**2 = 1.\n\
* [ -SN CS ] [ G ] [ 0 ]\n\
*\n\
* This is a slower, more accurate version of the BLAS1 routine SROTG,\n\
* with the following other differences:\n\
* F and G are unchanged on return.\n\
* If G=0, then CS=1 and SN=0.\n\
* If F=0 and (G .ne. 0), then CS=0 and SN=1 without doing any\n\
* floating point operations (saves work in SBDSQR when\n\
* there are zeros on the diagonal).\n\
*\n\
* If F exceeds G in magnitude, CS will be positive.\n\
*\n\n\
* Arguments\n\
* =========\n\
*\n\
* F (input) REAL\n\
* The first component of vector to be rotated.\n\
*\n\
* G (input) REAL\n\
* The second component of vector to be rotated.\n\
*\n\
* CS (output) REAL\n\
* The cosine of the rotation.\n\
*\n\
* SN (output) REAL\n\
* The sine of the rotation.\n\
*\n\
* R (output) REAL\n\
* The nonzero component of the rotated vector.\n\
*\n\
* This version has a few statements commented out for thread safety\n\
* (machine parameters are computed on each entry). 10 feb 03, SJH.\n\
*\n\n\
* =====================================================================\n\
*\n"
|