From d05af200a5d3becd4e2f87798ab6ab05694b0f8d Mon Sep 17 00:00:00 2001 From: Thomas Capricelli Date: Thu, 20 Aug 2009 23:56:13 +0200 Subject: [PATCH] some more trivial fixes to f2c generated code --- unsupported/Eigen/src/NonLinear/hybrd.h | 64 +++++++++---------------- unsupported/Eigen/src/NonLinear/hybrj.h | 50 +++++++------------ unsupported/Eigen/src/NonLinear/lmder.h | 52 +++++++------------- unsupported/Eigen/src/NonLinear/lmdif.h | 52 +++++++------------- unsupported/Eigen/src/NonLinear/lmstr.h | 59 ++++++++--------------- 5 files changed, 94 insertions(+), 183 deletions(-) diff --git a/unsupported/Eigen/src/NonLinear/hybrd.h b/unsupported/Eigen/src/NonLinear/hybrd.h index 5c56c0576..54131aa82 100644 --- a/unsupported/Eigen/src/NonLinear/hybrd.h +++ b/unsupported/Eigen/src/NonLinear/hybrd.h @@ -9,8 +9,7 @@ int hybrd_template(minpack_func_nn fcn, void *p, int n, Scalar *x, Scalar * /* Initialized data */ /* System generated locals */ - int fjac_dim1, fjac_offset; - Scalar d__1, d__2; + int fjac_offset; /* Local variables */ int i__, j, l, jm1, iwa[1]; @@ -39,8 +38,7 @@ int hybrd_template(minpack_func_nn fcn, void *p, int n, Scalar *x, Scalar * --diag; --fvec; --x; - fjac_dim1 = ldfjac; - fjac_offset = 1 + fjac_dim1 * 1; + fjac_offset = 1 + ldfjac; fjac -= fjac_offset; --r__; @@ -149,17 +147,17 @@ L70: /* L80: */ } for (j = 1; j <= n; ++j) { - if (fjac[j + j * fjac_dim1] == 0.) { + if (fjac[j + j * ldfjac] == 0.) { goto L110; } sum = 0.; for (i__ = j; i__ <= n; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * qtf[i__]; + sum += fjac[i__ + j * ldfjac] * qtf[i__]; /* L90: */ } - temp = -sum / fjac[j + j * fjac_dim1]; + temp = -sum / fjac[j + j * ldfjac]; for (i__ = j; i__ <= n; ++i__) { - qtf[i__] += fjac[i__ + j * fjac_dim1] * temp; + qtf[i__] += fjac[i__ + j * ldfjac] * temp; /* L100: */ } L110: @@ -177,7 +175,7 @@ L110: goto L140; } for (i__ = 1; i__ <= jm1; ++i__) { - r__[l] = fjac[i__ + j * fjac_dim1]; + r__[l] = fjac[i__ + j * ldfjac]; l = l + n - i__; /* L130: */ } @@ -198,12 +196,9 @@ L140: if (mode == 2) { goto L170; } - for (j = 1; j <= n; ++j) { - /* Computing MAX */ - d__1 = diag[j], d__2 = wa2[j]; - diag[j] = max(d__1,d__2); - /* L160: */ - } + /* Computing MAX */ + for (j = 1; j <= n; ++j) + diag[j] = max(diag[j], wa2[j]); L170: /* beginning of the inner loop. */ @@ -257,11 +252,8 @@ L190: /* compute the scaled actual reduction. */ actred = -1.; - if (fnorm1 < fnorm) { - /* Computing 2nd power */ - d__1 = fnorm1 / fnorm; - actred = 1. - d__1 * d__1; - } + if (fnorm1 < fnorm) /* Computing 2nd power */ + actred = 1. - ei_abs2(fnorm1 / fnorm); /* compute the scaled predicted reduction. */ @@ -278,11 +270,8 @@ L190: } temp = ei_enorm(n, &wa3[1]); prered = 0.; - if (temp < fnorm) { - /* Computing 2nd power */ - d__1 = temp / fnorm; - prered = 1. - d__1 * d__1; - } + if (temp < fnorm) /* Computing 2nd power */ + prered = 1. - ei_abs2(temp / fnorm); /* compute the ratio of the actual to the predicted */ /* reduction. */ @@ -304,11 +293,8 @@ L190: L230: ncfail = 0; ++ncsuc; - if (ratio >= p5 || ncsuc > 1) { - /* Computing MAX */ - d__1 = delta, d__2 = pnorm / p5; - delta = max(d__1,d__2); - } + if (ratio >= p5 || ncsuc > 1) /* Computing MAX */ + delta = max(delta, pnorm / p5); if (fabs(ratio - 1.) <= p1) { delta = pnorm / p5; } @@ -361,26 +347,20 @@ L260: info = 2; } /* Computing MAX */ - d__1 = p1 * delta; - if (p1 * max(d__1,pnorm) <= epsilon() * xnorm) { + if (p1 * max(p1 * delta, pnorm) <= epsilon() * xnorm) info = 3; - } - if (nslow2 == 5) { + if (nslow2 == 5) info = 4; - } - if (nslow1 == 10) { + if (nslow1 == 10) info = 5; - } - if (info != 0) { + if (info != 0) goto L300; - } /* criterion for recalculating jacobian approximation */ /* by forward differences. */ - if (ncfail == 2) { + if (ncfail == 2) goto L290; - } /* calculate the rank one modification to the jacobian */ /* and update qtf if necessary. */ @@ -388,7 +368,7 @@ L260: for (j = 1; j <= n; ++j) { sum = 0.; for (i__ = 1; i__ <= n; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * wa4[i__]; + sum += fjac[i__ + j * ldfjac] * wa4[i__]; /* L270: */ } wa2[j] = (sum - wa3[j]) / pnorm; diff --git a/unsupported/Eigen/src/NonLinear/hybrj.h b/unsupported/Eigen/src/NonLinear/hybrj.h index ee207e75d..1aaae9f97 100644 --- a/unsupported/Eigen/src/NonLinear/hybrj.h +++ b/unsupported/Eigen/src/NonLinear/hybrj.h @@ -10,8 +10,7 @@ int hybrj_template(minpack_funcder_nn fcn, void *p, int n, Scalar *x, Scalar * /* Initialized data */ /* System generated locals */ - int fjac_dim1, fjac_offset; - Scalar d__1, d__2; + int fjac_offset; /* Local variables */ int i__, j, l, jm1, iwa[1]; @@ -40,8 +39,7 @@ int hybrj_template(minpack_funcder_nn fcn, void *p, int n, Scalar *x, Scalar * --diag; --fvec; --x; - fjac_dim1 = ldfjac; - fjac_offset = 1 + fjac_dim1 * 1; + fjac_offset = 1 + ldfjac; fjac -= fjac_offset; --r__; @@ -144,17 +142,17 @@ L70: /* L80: */ } for (j = 1; j <= n; ++j) { - if (fjac[j + j * fjac_dim1] == 0.) { + if (fjac[j + j * ldfjac] == 0.) { goto L110; } sum = 0.; for (i__ = j; i__ <= n; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * qtf[i__]; + sum += fjac[i__ + j * ldfjac] * qtf[i__]; /* L90: */ } - temp = -sum / fjac[j + j * fjac_dim1]; + temp = -sum / fjac[j + j * ldfjac]; for (i__ = j; i__ <= n; ++i__) { - qtf[i__] += fjac[i__ + j * fjac_dim1] * temp; + qtf[i__] += fjac[i__ + j * ldfjac] * temp; /* L100: */ } L110: @@ -172,7 +170,7 @@ L110: goto L140; } for (i__ = 1; i__ <= jm1; ++i__) { - r__[l] = fjac[i__ + j * fjac_dim1]; + r__[l] = fjac[i__ + j * ldfjac]; l = l + n - i__; /* L130: */ } @@ -193,12 +191,8 @@ L140: if (mode == 2) { goto L170; } - for (j = 1; j <= n; ++j) { - /* Computing MAX */ - d__1 = diag[j], d__2 = wa2[j]; - diag[j] = max(d__1,d__2); - /* L160: */ - } + for (j = 1; j <= n; ++j) /* Computing MAX */ + diag[j] = max(diag[j], wa2[j]); L170: /* beginning of the inner loop. */ @@ -252,11 +246,8 @@ L190: /* compute the scaled actual reduction. */ actred = -1.; - if (fnorm1 < fnorm) { - /* Computing 2nd power */ - d__1 = fnorm1 / fnorm; - actred = 1. - d__1 * d__1; - } + if (fnorm1 < fnorm) /* Computing 2nd power */ + actred = 1. - ei_abs2(fnorm1 / fnorm); /* compute the scaled predicted reduction. */ @@ -273,11 +264,8 @@ L190: } temp = ei_enorm(n, &wa3[1]); prered = 0.; - if (temp < fnorm) { - /* Computing 2nd power */ - d__1 = temp / fnorm; - prered = 1. - d__1 * d__1; - } + if (temp < fnorm) /* Computing 2nd power */ + prered = 1. - ei_abs2(temp / fnorm); /* compute the ratio of the actual to the predicted */ /* reduction. */ @@ -299,11 +287,8 @@ L190: L230: ncfail = 0; ++ncsuc; - if (ratio >= p5 || ncsuc > 1) { - /* Computing MAX */ - d__1 = delta, d__2 = pnorm / p5; - delta = max(d__1,d__2); - } + if (ratio >= p5 || ncsuc > 1) /* Computing MAX */ + delta = max(delta, pnorm / p5); if (fabs(ratio - 1.) <= p1) { delta = pnorm / p5; } @@ -356,8 +341,7 @@ L260: info = 2; } /* Computing MAX */ - d__1 = p1 * delta; - if (p1 * max(d__1,pnorm) <= epsilon() * xnorm) { + if (p1 * max(p1 * delta, pnorm) <= epsilon() * xnorm) { info = 3; } if (nslow2 == 5) { @@ -382,7 +366,7 @@ L260: for (j = 1; j <= n; ++j) { sum = 0.; for (i__ = 1; i__ <= n; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * wa4[i__]; + sum += fjac[i__ + j * ldfjac] * wa4[i__]; /* L270: */ } wa2[j] = (sum - wa3[j]) / pnorm; diff --git a/unsupported/Eigen/src/NonLinear/lmder.h b/unsupported/Eigen/src/NonLinear/lmder.h index 1e8289557..e58f3de2e 100644 --- a/unsupported/Eigen/src/NonLinear/lmder.h +++ b/unsupported/Eigen/src/NonLinear/lmder.h @@ -10,8 +10,7 @@ int lmder_template(minpack_funcder_mn fcn, void *p, int m, int n, Scalar *x, /* Initialized data */ /* System generated locals */ - int fjac_dim1, fjac_offset; - Scalar d__1, d__2, d__3; + int fjac_offset; /* Local variables */ int i__, j, l; @@ -34,8 +33,7 @@ int lmder_template(minpack_funcder_mn fcn, void *p, int m, int n, Scalar *x, --ipvt; --diag; --x; - fjac_dim1 = ldfjac; - fjac_offset = 1 + fjac_dim1 * 1; + fjac_offset = 1 + ldfjac; fjac -= fjac_offset; /* Function Body */ @@ -148,21 +146,21 @@ L80: /* L90: */ } for (j = 1; j <= n; ++j) { - if (fjac[j + j * fjac_dim1] == 0.) { + if (fjac[j + j * ldfjac] == 0.) { goto L120; } sum = 0.; for (i__ = j; i__ <= m; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * wa4[i__]; + sum += fjac[i__ + j * ldfjac] * wa4[i__]; /* L100: */ } - temp = -sum / fjac[j + j * fjac_dim1]; + temp = -sum / fjac[j + j * ldfjac]; for (i__ = j; i__ <= m; ++i__) { - wa4[i__] += fjac[i__ + j * fjac_dim1] * temp; + wa4[i__] += fjac[i__ + j * ldfjac] * temp; /* L110: */ } L120: - fjac[j + j * fjac_dim1] = wa1[j]; + fjac[j + j * ldfjac] = wa1[j]; qtf[j] = wa4[j]; /* L130: */ } @@ -180,12 +178,11 @@ L120: } sum = 0.; for (i__ = 1; i__ <= j; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * (qtf[i__] / fnorm); + sum += fjac[i__ + j * ldfjac] * (qtf[i__] / fnorm); /* L140: */ } /* Computing MAX */ - d__2 = gnorm, d__3 = fabs(sum / wa2[l]); - gnorm = max(d__2,d__3); + gnorm = max(gnorm, fabs(sum / wa2[l])); L150: /* L160: */ ; @@ -206,12 +203,8 @@ L170: if (mode == 2) { goto L190; } - for (j = 1; j <= n; ++j) { - /* Computing MAX */ - d__1 = diag[j], d__2 = wa2[j]; - diag[j] = max(d__1,d__2); - /* L180: */ - } + for (j = 1; j <= n; ++j) + diag[j] = max( diag[j], wa2[j]); L190: /* beginning of the inner loop. */ @@ -251,11 +244,8 @@ L200: /* compute the scaled actual reduction. */ actred = -1.; - if (p1 * fnorm1 < fnorm) { - /* Computing 2nd power */ - d__1 = fnorm1 / fnorm; - actred = 1. - d__1 * d__1; - } + if (p1 * fnorm1 < fnorm) /* Computing 2nd power */ + actred = 1. - ei_abs2(fnorm1 / fnorm); /* compute the scaled predicted reduction and */ /* the scaled directional derivative. */ @@ -265,7 +255,7 @@ L200: l = ipvt[j]; temp = wa1[l]; for (i__ = 1; i__ <= j; ++i__) { - wa3[i__] += fjac[i__ + j * fjac_dim1] * temp; + wa3[i__] += fjac[i__ + j * ldfjac] * temp; /* L220: */ } /* L230: */ @@ -273,15 +263,8 @@ L200: temp1 = ei_enorm(n, &wa3[1]) / fnorm; temp2 = sqrt(par) * pnorm / fnorm; /* Computing 2nd power */ - d__1 = temp1; - /* Computing 2nd power */ - d__2 = temp2; - prered = d__1 * d__1 + d__2 * d__2 / p5; - /* Computing 2nd power */ - d__1 = temp1; - /* Computing 2nd power */ - d__2 = temp2; - dirder = -(d__1 * d__1 + d__2 * d__2); + prered = temp1 * temp1 + temp2 * temp2 / p5; + dirder = -(temp1 * temp1 + temp2 * temp2); /* compute the ratio of the actual to the predicted */ /* reduction. */ @@ -306,8 +289,7 @@ L200: temp = p1; } /* Computing MIN */ - d__1 = delta, d__2 = pnorm / p1; - delta = temp * min(d__1,d__2); + delta = temp * min(delta, pnorm/p1); par /= temp; goto L260; L240: diff --git a/unsupported/Eigen/src/NonLinear/lmdif.h b/unsupported/Eigen/src/NonLinear/lmdif.h index 26296b631..d6f06935b 100644 --- a/unsupported/Eigen/src/NonLinear/lmdif.h +++ b/unsupported/Eigen/src/NonLinear/lmdif.h @@ -11,8 +11,7 @@ int lmdif_template(minpack_func_mn fcn, void *p, int m, int n, Scalar *x, /* Initialized data */ /* System generated locals */ - int fjac_dim1, fjac_offset; - Scalar d__1, d__2, d__3; + int fjac_offset; /* Local variables */ int i__, j, l; @@ -36,8 +35,7 @@ int lmdif_template(minpack_func_mn fcn, void *p, int m, int n, Scalar *x, --ipvt; --diag; --x; - fjac_dim1 = ldfjac; - fjac_offset = 1 + fjac_dim1 * 1; + fjac_offset = 1 + ldfjac; fjac -= fjac_offset; /* Function Body */ @@ -150,21 +148,21 @@ L80: /* L90: */ } for (j = 1; j <= n; ++j) { - if (fjac[j + j * fjac_dim1] == 0.) { + if (fjac[j + j * ldfjac] == 0.) { goto L120; } sum = 0.; for (i__ = j; i__ <= m; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * wa4[i__]; + sum += fjac[i__ + j * ldfjac] * wa4[i__]; /* L100: */ } - temp = -sum / fjac[j + j * fjac_dim1]; + temp = -sum / fjac[j + j * ldfjac]; for (i__ = j; i__ <= m; ++i__) { - wa4[i__] += fjac[i__ + j * fjac_dim1] * temp; + wa4[i__] += fjac[i__ + j * ldfjac] * temp; /* L110: */ } L120: - fjac[j + j * fjac_dim1] = wa1[j]; + fjac[j + j * ldfjac] = wa1[j]; qtf[j] = wa4[j]; /* L130: */ } @@ -182,12 +180,11 @@ L120: } sum = 0.; for (i__ = 1; i__ <= j; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * (qtf[i__] / fnorm); + sum += fjac[i__ + j * ldfjac] * (qtf[i__] / fnorm); /* L140: */ } /* Computing MAX */ - d__2 = gnorm, d__3 = fabs(sum / wa2[l]); - gnorm = max(d__2,d__3); + gnorm = max(gnorm, fabs(sum / wa2[l])); L150: /* L160: */ ; @@ -208,12 +205,8 @@ L170: if (mode == 2) { goto L190; } - for (j = 1; j <= n; ++j) { - /* Computing MAX */ - d__1 = diag[j], d__2 = wa2[j]; - diag[j] = max(d__1,d__2); - /* L180: */ - } + for (j = 1; j <= n; ++j) /* Computing MAX */ + diag[j] = max(diag[j], wa2[j]); L190: /* beginning of the inner loop. */ @@ -253,11 +246,8 @@ L200: /* compute the scaled actual reduction. */ actred = -1.; - if (p1 * fnorm1 < fnorm) { - /* Computing 2nd power */ - d__1 = fnorm1 / fnorm; - actred = 1. - d__1 * d__1; - } + if (p1 * fnorm1 < fnorm) /* Computing 2nd power */ + actred = 1. - ei_abs2(fnorm1 / fnorm); /* compute the scaled predicted reduction and */ /* the scaled directional derivative. */ @@ -267,7 +257,7 @@ L200: l = ipvt[j]; temp = wa1[l]; for (i__ = 1; i__ <= j; ++i__) { - wa3[i__] += fjac[i__ + j * fjac_dim1] * temp; + wa3[i__] += fjac[i__ + j * ldfjac] * temp; /* L220: */ } /* L230: */ @@ -275,15 +265,8 @@ L200: temp1 = ei_enorm(n, &wa3[1]) / fnorm; temp2 = sqrt(par) * pnorm / fnorm; /* Computing 2nd power */ - d__1 = temp1; - /* Computing 2nd power */ - d__2 = temp2; - prered = d__1 * d__1 + d__2 * d__2 / p5; - /* Computing 2nd power */ - d__1 = temp1; - /* Computing 2nd power */ - d__2 = temp2; - dirder = -(d__1 * d__1 + d__2 * d__2); + prered = temp1 * temp1 + temp2 * temp2 / p5; + dirder = -(temp1 * temp1 + temp2 * temp2); /* compute the ratio of the actual to the predicted */ /* reduction. */ @@ -308,8 +291,7 @@ L200: temp = p1; } /* Computing MIN */ - d__1 = delta, d__2 = pnorm / p1; - delta = temp * min(d__1,d__2); + delta = temp * min(delta, pnorm / p1); par /= temp; goto L260; L240: diff --git a/unsupported/Eigen/src/NonLinear/lmstr.h b/unsupported/Eigen/src/NonLinear/lmstr.h index 6be32e094..b9e94e1ac 100644 --- a/unsupported/Eigen/src/NonLinear/lmstr.h +++ b/unsupported/Eigen/src/NonLinear/lmstr.h @@ -10,8 +10,7 @@ int lmstr_template(minpack_funcderstr_mn fcn, void *p, int m, int n, Scalar *x, /* Initialized data */ /* System generated locals */ - int fjac_dim1, fjac_offset; - Scalar d__1, d__2, d__3; + int fjac_offset; /* Local variables */ int i__, j, l; @@ -35,8 +34,7 @@ int lmstr_template(minpack_funcderstr_mn fcn, void *p, int m, int n, Scalar *x, --ipvt; --diag; --x; - fjac_dim1 = ldfjac; - fjac_offset = 1 + fjac_dim1 * 1; + fjac_offset = 1 + ldfjac; fjac -= fjac_offset; /* Function Body */ @@ -104,7 +102,7 @@ L40: for (j = 1; j <= n; ++j) { qtf[j] = 0.; for (i__ = 1; i__ <= n; ++i__) { - fjac[i__ + j * fjac_dim1] = 0.; + fjac[i__ + j * ldfjac] = 0.; /* L50: */ } /* L60: */ @@ -127,11 +125,11 @@ L40: sing = FALSE_; for (j = 1; j <= n; ++j) { - if (fjac[j + j * fjac_dim1] == 0.) { + if (fjac[j + j * ldfjac] == 0.) { sing = TRUE_; } ipvt[j] = j; - wa2[j] = ei_enorm(j, &fjac[j * fjac_dim1 + 1]); + wa2[j] = ei_enorm(j, &fjac[j * ldfjac + 1]); /* L80: */ } if (! sing) { @@ -140,21 +138,21 @@ L40: qrfac(n, n, &fjac[fjac_offset], ldfjac, TRUE_, &ipvt[1], n, &wa1[1], & wa2[1], &wa3[1]); for (j = 1; j <= n; ++j) { - if (fjac[j + j * fjac_dim1] == 0.) { + if (fjac[j + j * ldfjac] == 0.) { goto L110; } sum = 0.; for (i__ = j; i__ <= n; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * qtf[i__]; + sum += fjac[i__ + j * ldfjac] * qtf[i__]; /* L90: */ } - temp = -sum / fjac[j + j * fjac_dim1]; + temp = -sum / fjac[j + j * ldfjac]; for (i__ = j; i__ <= n; ++i__) { - qtf[i__] += fjac[i__ + j * fjac_dim1] * temp; + qtf[i__] += fjac[i__ + j * ldfjac] * temp; /* L100: */ } L110: - fjac[j + j * fjac_dim1] = wa1[j]; + fjac[j + j * ldfjac] = wa1[j]; /* L120: */ } L130: @@ -204,12 +202,11 @@ L170: } sum = 0.; for (i__ = 1; i__ <= j; ++i__) { - sum += fjac[i__ + j * fjac_dim1] * (qtf[i__] / fnorm); + sum += fjac[i__ + j * ldfjac] * (qtf[i__] / fnorm); /* L180: */ } /* Computing MAX */ - d__2 = gnorm, d__3 = (d__1 = sum / wa2[l], abs(d__1)); - gnorm = max(d__2,d__3); + gnorm = max(gnorm, abs(sum/wa2[l])); L190: /* L200: */ ; @@ -230,12 +227,8 @@ L210: if (mode == 2) { goto L230; } - for (j = 1; j <= n; ++j) { - /* Computing MAX */ - d__1 = diag[j], d__2 = wa2[j]; - diag[j] = max(d__1,d__2); - /* L220: */ - } + for (j = 1; j <= n; ++j) /* Computing MAX */ + diag[j] = max(diag[j], wa2[j]); L230: /* beginning of the inner loop. */ @@ -275,11 +268,8 @@ L240: /* compute the scaled actual reduction. */ actred = -1.; - if (p1 * fnorm1 < fnorm) { - /* Computing 2nd power */ - d__1 = fnorm1 / fnorm; - actred = 1. - d__1 * d__1; - } + if (p1 * fnorm1 < fnorm) /* Computing 2nd power */ + actred = 1. - ei_abs2(fnorm1 / fnorm); /* compute the scaled predicted reduction and */ /* the scaled directional derivative. */ @@ -289,7 +279,7 @@ L240: l = ipvt[j]; temp = wa1[l]; for (i__ = 1; i__ <= j; ++i__) { - wa3[i__] += fjac[i__ + j * fjac_dim1] * temp; + wa3[i__] += fjac[i__ + j * ldfjac] * temp; /* L260: */ } /* L270: */ @@ -297,15 +287,8 @@ L240: temp1 = ei_enorm(n, &wa3[1]) / fnorm; temp2 = sqrt(par) * pnorm / fnorm; /* Computing 2nd power */ - d__1 = temp1; - /* Computing 2nd power */ - d__2 = temp2; - prered = d__1 * d__1 + d__2 * d__2 / p5; - /* Computing 2nd power */ - d__1 = temp1; - /* Computing 2nd power */ - d__2 = temp2; - dirder = -(d__1 * d__1 + d__2 * d__2); + prered = temp1 * temp1 + temp2 * temp2 / p5; + dirder = -(temp1 * temp1 + temp2 * temp2); /* compute the ratio of the actual to the predicted */ /* reduction. */ @@ -330,8 +313,8 @@ L240: temp = p1; } /* Computing MIN */ - d__1 = delta, d__2 = pnorm / p1; - delta = temp * min(d__1,d__2); + delta = temp * min(delta, pnorm / p1); + par /= temp; goto L300; L280: