Restored some double casts to improve ensure correctness does not depend on order of operations or literal conversion, dropped uneccesary parens.

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@764208 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Phil Steitz 2009-04-11 15:30:02 +00:00
parent b6703d294c
commit 4095d7a029
1 changed files with 8 additions and 8 deletions

View File

@ -124,9 +124,9 @@ public class SimpleRegression implements Serializable {
} else { } else {
double dx = x - xbar; double dx = x - xbar;
double dy = y - ybar; double dy = y - ybar;
sumXX += dx * dx * n / (n + 1.0); sumXX += dx * dx * (double) n / (n + 1d);
sumYY += dy * dy * n / (n + 1.0); sumYY += dy * dy * (double) n / (n + 1d);
sumXY += dx * dy * n / (n + 1.0); sumXY += dx * dy * (double) n / (n + 1d);
xbar += dx / (n + 1.0); xbar += dx / (n + 1.0);
ybar += dy / (n + 1.0); ybar += dy / (n + 1.0);
} }
@ -157,9 +157,9 @@ public class SimpleRegression implements Serializable {
if (n > 0) { if (n > 0) {
double dx = x - xbar; double dx = x - xbar;
double dy = y - ybar; double dy = y - ybar;
sumXX -= dx * dx * n / (n - 1.0); sumXX -= dx * dx * (double) n / (n - 1d);
sumYY -= dy * dy * n / (n - 1.0); sumYY -= dy * dy * (double) n / (n - 1d);
sumXY -= dx * dy * n / (n - 1.0); sumXY -= dx * dy * (double) n / (n - 1d);
xbar -= dx / (n - 1.0); xbar -= dx / (n - 1.0);
ybar -= dy / (n - 1.0); ybar -= dy / (n - 1.0);
sumX -= x; sumX -= x;
@ -468,7 +468,7 @@ public class SimpleRegression implements Serializable {
*/ */
public double getInterceptStdErr() { public double getInterceptStdErr() {
return Math.sqrt( return Math.sqrt(
getMeanSquareError() * ((1d / n) + (xbar * xbar) / sumXX)); getMeanSquareError() * ((1d / (double) n) + (xbar * xbar) / sumXX));
} }
/** /**
@ -589,7 +589,7 @@ public class SimpleRegression implements Serializable {
* @return the intercept of the regression line * @return the intercept of the regression line
*/ */
private double getIntercept(double slope) { private double getIntercept(double slope) {
return (sumY - slope * sumX) / (n); return (sumY - slope * sumX) / n;
} }
/** /**