37 #ifndef TEMPLATE_LAPACK_LASQ6_HEADER 38 #define TEMPLATE_LAPACK_LASQ6_HEADER 42 integer *pp, Treal *dmin__, Treal *dmin1, Treal *dmin2,
43 Treal *dn, Treal *dnm1, Treal *dnm2)
127 if (*n0 - *i0 - 1 <= 0) {
132 j4 = (*i0 << 2) + *pp - 3;
138 i__1 = (*n0 - 3) << 2;
139 for (j4 = *i0 << 2; j4 <= i__1; j4 += 4) {
140 z__[j4 - 2] = d__ + z__[j4 - 1];
141 if (z__[j4 - 2] == 0.) {
146 }
else if (safmin * z__[j4 + 1] < z__[j4 - 2] && safmin * z__[j4
147 - 2] < z__[j4 + 1]) {
148 temp = z__[j4 + 1] / z__[j4 - 2];
149 z__[j4] = z__[j4 - 1] * temp;
152 z__[j4] = z__[j4 + 1] * (z__[j4 - 1] / z__[j4 - 2]);
153 d__ = z__[j4 + 1] * (d__ / z__[j4 - 2]);
157 d__1 = emin, d__2 = z__[j4];
162 i__1 = ( *n0 - 3 ) << 2;
163 for (j4 = *i0 << 2; j4 <= i__1; j4 += 4) {
164 z__[j4 - 3] = d__ + z__[j4];
165 if (z__[j4 - 3] == 0.) {
170 }
else if (safmin * z__[j4 + 2] < z__[j4 - 3] && safmin * z__[j4
171 - 3] < z__[j4 + 2]) {
172 temp = z__[j4 + 2] / z__[j4 - 3];
173 z__[j4 - 1] = z__[j4] * temp;
176 z__[j4 - 1] = z__[j4 + 2] * (z__[j4] / z__[j4 - 3]);
177 d__ = z__[j4 + 2] * (d__ / z__[j4 - 3]);
181 d__1 = emin, d__2 = z__[j4 - 1];
191 j4 = ( ( *n0 - 2 ) << 2) - *pp;
192 j4p2 = j4 + (*pp << 1) - 1;
193 z__[j4 - 2] = *dnm2 + z__[j4p2];
194 if (z__[j4 - 2] == 0.) {
196 *dnm1 = z__[j4p2 + 2];
199 }
else if (safmin * z__[j4p2 + 2] < z__[j4 - 2] && safmin * z__[j4 - 2] <
201 temp = z__[j4p2 + 2] / z__[j4 - 2];
202 z__[j4] = z__[j4p2] * temp;
203 *dnm1 = *dnm2 * temp;
205 z__[j4] = z__[j4p2 + 2] * (z__[j4p2] / z__[j4 - 2]);
206 *dnm1 = z__[j4p2 + 2] * (*dnm2 / z__[j4 - 2]);
212 j4p2 = j4 + (*pp << 1) - 1;
213 z__[j4 - 2] = *dnm1 + z__[j4p2];
214 if (z__[j4 - 2] == 0.) {
219 }
else if (safmin * z__[j4p2 + 2] < z__[j4 - 2] && safmin * z__[j4 - 2] <
221 temp = z__[j4p2 + 2] / z__[j4 - 2];
222 z__[j4] = z__[j4p2] * temp;
225 z__[j4] = z__[j4p2 + 2] * (z__[j4p2] / z__[j4 - 2]);
226 *dn = z__[j4p2 + 2] * (*dnm1 / z__[j4 - 2]);
231 z__[(*n0 << 2) - *pp] = emin;
int integer
Definition: template_blas_common.h:40
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:41
#define minMACRO(a, b)
Definition: template_blas_common.h:46
Treal template_lapack_lamch(const char *cmach, Treal dummyReal)
Definition: template_lapack_lamch.h:202