2 #include "../gmx_lapack.h"
5 F77_FUNC(slasq5
,SLASQ5
)(int *i0
,
23 static float emin
, temp
;
27 if (*n0
- *i0
- 1 <= 0) {
31 j4
= (*i0
<< 2) + *pp
- 3;
41 for (j4
= *i0
<< 2; j4
<= i__1
; j4
+= 4) {
42 z__
[j4
- 2] = d__
+ z__
[j4
- 1];
43 temp
= z__
[j4
+ 1] / z__
[j4
- 2];
44 d__
= d__
* temp
- *tau
;
47 z__
[j4
] = z__
[j4
- 1] * temp
;
54 for (j4
= *i0
<< 2; j4
<= i__1
; j4
+= 4) {
55 z__
[j4
- 3] = d__
+ z__
[j4
];
56 temp
= z__
[j4
+ 2] / z__
[j4
- 3];
57 d__
= d__
* temp
- *tau
;
60 z__
[j4
- 1] = z__
[j4
] * temp
;
69 j4
= 4*(*n0
- 2) - *pp
;
70 j4p2
= j4
+ (*pp
<< 1) - 1;
71 z__
[j4
- 2] = *dnm2
+ z__
[j4p2
];
72 z__
[j4
] = z__
[j4p2
+ 2] * (z__
[j4p2
] / z__
[j4
- 2]);
73 *dnm1
= z__
[j4p2
+ 2] * (*dnm2
/ z__
[j4
- 2]) - *tau
;
79 j4p2
= j4
+ (*pp
<< 1) - 1;
80 z__
[j4
- 2] = *dnm1
+ z__
[j4p2
];
81 z__
[j4
] = z__
[j4p2
+ 2] * (z__
[j4p2
] / z__
[j4
- 2]);
82 *dn
= z__
[j4p2
+ 2] * (*dnm1
/ z__
[j4
- 2]) - *tau
;
90 for (j4
= *i0
<< 2; j4
<= i__1
; j4
+= 4) {
91 z__
[j4
- 2] = d__
+ z__
[j4
- 1];
95 z__
[j4
] = z__
[j4
+ 1] * (z__
[j4
- 1] / z__
[j4
- 2]);
96 d__
= z__
[j4
+ 1] * (d__
/ z__
[j4
- 2]) - *tau
;
100 d__1
= emin
, d__2
= z__
[j4
];
101 emin
= (d__1
<d__2
) ? d__1
: d__2
;
105 for (j4
= *i0
<< 2; j4
<= i__1
; j4
+= 4) {
106 z__
[j4
- 3] = d__
+ z__
[j4
];
110 z__
[j4
- 1] = z__
[j4
+ 2] * (z__
[j4
] / z__
[j4
- 3]);
111 d__
= z__
[j4
+ 2] * (d__
/ z__
[j4
- 3]) - *tau
;
115 d__1
= emin
, d__2
= z__
[j4
- 1];
116 emin
= (d__1
<d__2
) ? d__1
: d__2
;
122 j4
= 4*(*n0
- 2) - *pp
;
123 j4p2
= j4
+ (*pp
<< 1) - 1;
124 z__
[j4
- 2] = *dnm2
+ z__
[j4p2
];
128 z__
[j4
] = z__
[j4p2
+ 2] * (z__
[j4p2
] / z__
[j4
- 2]);
129 *dnm1
= z__
[j4p2
+ 2] * (*dnm2
/ z__
[j4
- 2]) - *tau
;
136 j4p2
= j4
+ (*pp
<< 1) - 1;
137 z__
[j4
- 2] = *dnm1
+ z__
[j4p2
];
141 z__
[j4
] = z__
[j4p2
+ 2] * (z__
[j4p2
] / z__
[j4
- 2]);
142 *dn
= z__
[j4p2
+ 2] * (*dnm1
/ z__
[j4
- 2]) - *tau
;
150 z__
[(*n0
<< 2) - *pp
] = emin
;