35 #ifndef TEMPLATE_LAPACK_LASQ6_HEADER
36 #define TEMPLATE_LAPACK_LASQ6_HEADER
40 integer *pp, Treal *dmin__, Treal *dmin1, Treal *dmin2,
41 Treal *dn, Treal *dnm1, Treal *dnm2)
125 if (*n0 - *i0 - 1 <= 0) {
130 j4 = (*i0 << 2) + *pp - 3;
136 i__1 = (*n0 - 3) << 2;
137 for (j4 = *i0 << 2; j4 <= i__1; j4 += 4) {
138 z__[j4 - 2] = d__ + z__[j4 - 1];
139 if (z__[j4 - 2] == 0.) {
144 }
else if (safmin * z__[j4 + 1] < z__[j4 - 2] && safmin * z__[j4
145 - 2] < z__[j4 + 1]) {
146 temp = z__[j4 + 1] / z__[j4 - 2];
147 z__[j4] = z__[j4 - 1] * temp;
150 z__[j4] = z__[j4 + 1] * (z__[j4 - 1] / z__[j4 - 2]);
151 d__ = z__[j4 + 1] * (d__ / z__[j4 - 2]);
155 d__1 = emin, d__2 = z__[j4];
160 i__1 = ( *n0 - 3 ) << 2;
161 for (j4 = *i0 << 2; j4 <= i__1; j4 += 4) {
162 z__[j4 - 3] = d__ + z__[j4];
163 if (z__[j4 - 3] == 0.) {
168 }
else if (safmin * z__[j4 + 2] < z__[j4 - 3] && safmin * z__[j4
169 - 3] < z__[j4 + 2]) {
170 temp = z__[j4 + 2] / z__[j4 - 3];
171 z__[j4 - 1] = z__[j4] * temp;
174 z__[j4 - 1] = z__[j4 + 2] * (z__[j4] / z__[j4 - 3]);
175 d__ = z__[j4 + 2] * (d__ / z__[j4 - 3]);
179 d__1 = emin, d__2 = z__[j4 - 1];
189 j4 = ( ( *n0 - 2 ) << 2) - *pp;
190 j4p2 = j4 + (*pp << 1) - 1;
191 z__[j4 - 2] = *dnm2 + z__[j4p2];
192 if (z__[j4 - 2] == 0.) {
194 *dnm1 = z__[j4p2 + 2];
197 }
else if (safmin * z__[j4p2 + 2] < z__[j4 - 2] && safmin * z__[j4 - 2] <
199 temp = z__[j4p2 + 2] / z__[j4 - 2];
200 z__[j4] = z__[j4p2] * temp;
201 *dnm1 = *dnm2 * temp;
203 z__[j4] = z__[j4p2 + 2] * (z__[j4p2] / z__[j4 - 2]);
204 *dnm1 = z__[j4p2 + 2] * (*dnm2 / z__[j4 - 2]);
210 j4p2 = j4 + (*pp << 1) - 1;
211 z__[j4 - 2] = *dnm1 + z__[j4p2];
212 if (z__[j4 - 2] == 0.) {
217 }
else if (safmin * z__[j4p2 + 2] < z__[j4 - 2] && safmin * z__[j4 - 2] <
219 temp = z__[j4p2 + 2] / z__[j4 - 2];
220 z__[j4] = z__[j4p2] * temp;
223 z__[j4] = z__[j4p2 + 2] * (z__[j4p2] / z__[j4 - 2]);
224 *dn = z__[j4p2 + 2] * (*dnm1 / z__[j4 - 2]);
229 z__[(*n0 << 2) - *pp] = emin;
int integer
Definition: template_blas_common.h:38
int template_lapack_lasq6(integer *i0, integer *n0, Treal *z__, integer *pp, Treal *dmin__, Treal *dmin1, Treal *dmin2, Treal *dn, Treal *dnm1, Treal *dnm2)
Definition: template_lapack_lasq6.h:39
#define minMACRO(a, b)
Definition: template_blas_common.h:44
Treal template_lapack_lamch(const char *cmach, Treal dummyReal)
Definition: template_lapack_lamch.h:199