This is an automated email from the ASF dual-hosted git repository. aherbert pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-math.git
commit e97c3288a54f28a2fd2fb24140fc520098321aec Author: Alex Herbert <aherb...@apache.org> AuthorDate: Wed Aug 18 16:41:10 2021 +0100 Sonar fix: Cast operands to double before assigning result to double --- .../examples/sofm/chineserings/ChineseRingsClassifier.java | 2 +- .../java/org/apache/commons/math4/legacy/core/MathArrays.java | 2 +- .../legacy/analysis/integration/gauss/HermiteRuleFactory.java | 10 +++++----- .../legacy/analysis/integration/gauss/LaguerreRuleFactory.java | 2 +- .../math4/legacy/analysis/polynomials/PolynomialsUtils.java | 2 +- .../legacy/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java | 2 +- .../math4/legacy/stat/inference/KolmogorovSmirnovTest.java | 4 ++-- .../math4/legacy/stat/interval/ClopperPearsonInterval.java | 8 ++++---- .../commons/math4/legacy/stat/regression/SimpleRegression.java | 4 ++-- 9 files changed, 18 insertions(+), 18 deletions(-) diff --git a/commons-math-examples/examples-sofm/chinese-rings/src/main/java/org/apache/commons/math4/examples/sofm/chineserings/ChineseRingsClassifier.java b/commons-math-examples/examples-sofm/chinese-rings/src/main/java/org/apache/commons/math4/examples/sofm/chineserings/ChineseRingsClassifier.java index 08836c2..b85c496 100644 --- a/commons-math-examples/examples-sofm/chinese-rings/src/main/java/org/apache/commons/math4/examples/sofm/chineserings/ChineseRingsClassifier.java +++ b/commons-math-examples/examples-sofm/chinese-rings/src/main/java/org/apache/commons/math4/examples/sofm/chineserings/ChineseRingsClassifier.java @@ -78,7 +78,7 @@ class ChineseRingsClassifier { = LearningFactorFunctionFactory.exponentialDecay(1e-1, 5e-2, numSamplesPerTask / 2); - final double numNeurons = Math.sqrt(sofm.getNumberOfRows() * sofm.getNumberOfColumns()); + final double numNeurons = Math.sqrt((double) sofm.getNumberOfRows() * sofm.getNumberOfColumns()); final NeighbourhoodSizeFunction neighbourhood = NeighbourhoodSizeFunctionFactory.exponentialDecay(0.5 * numNeurons, 0.2 * numNeurons, diff --git a/commons-math-legacy-core/src/main/java/org/apache/commons/math4/legacy/core/MathArrays.java b/commons-math-legacy-core/src/main/java/org/apache/commons/math4/legacy/core/MathArrays.java index ba72623..00d3c48 100644 --- a/commons-math-legacy-core/src/main/java/org/apache/commons/math4/legacy/core/MathArrays.java +++ b/commons-math-legacy-core/src/main/java/org/apache/commons/math4/legacy/core/MathArrays.java @@ -244,7 +244,7 @@ public final class MathArrays { checkEqualLength(p1, p2); double sum = 0; for (int i = 0; i < p1.length; i++) { - final double dp = p1[i] - p2[i]; + final double dp = (double) p1[i] - p2[i]; sum += dp * dp; } return AccurateMath.sqrt(sum); diff --git a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/integration/gauss/HermiteRuleFactory.java b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/integration/gauss/HermiteRuleFactory.java index 79dc3cd..30cb26a 100644 --- a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/integration/gauss/HermiteRuleFactory.java +++ b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/integration/gauss/HermiteRuleFactory.java @@ -74,8 +74,8 @@ public class HermiteRuleFactory extends BaseRuleFactory<Double> { final Double[] points = new Double[numberOfPoints]; final Double[] weights = new Double[numberOfPoints]; - final double sqrtTwoTimesLastNumPoints = AccurateMath.sqrt(2 * lastNumPoints); - final double sqrtTwoTimesNumPoints = AccurateMath.sqrt(2 * numberOfPoints); + final double sqrtTwoTimesLastNumPoints = AccurateMath.sqrt(2.0 * lastNumPoints); + final double sqrtTwoTimesNumPoints = AccurateMath.sqrt(2.0 * numberOfPoints); // Find i-th root of H[n+1] by bracketing. final int iMax = numberOfPoints / 2; @@ -95,7 +95,7 @@ public class HermiteRuleFactory extends BaseRuleFactory<Double> { double hb = H1 * b; for (int j = 1; j < numberOfPoints; j++) { // Compute H[j+1](a) and H[j+1](b) - final double jp1 = j + 1; + final double jp1 = j + 1.0; final double s = AccurateMath.sqrt(2 / jp1); final double sm = AccurateMath.sqrt(j / jp1); final double hpa = s * a * ha - sm * hma; @@ -120,7 +120,7 @@ public class HermiteRuleFactory extends BaseRuleFactory<Double> { hc = H1 * c; for (int j = 1; j < numberOfPoints; j++) { // Compute H[j+1](c) - final double jp1 = j + 1; + final double jp1 = j + 1.0; final double s = AccurateMath.sqrt(2 / jp1); final double sm = AccurateMath.sqrt(j / jp1); final double hpc = s * c * hc - sm * hmc; @@ -159,7 +159,7 @@ public class HermiteRuleFactory extends BaseRuleFactory<Double> { if (numberOfPoints % 2 != 0) { double hm = H0; for (int j = 1; j < numberOfPoints; j += 2) { - final double jp1 = j + 1; + final double jp1 = j + 1.0; hm = -AccurateMath.sqrt(j / jp1) * hm; } final double d = sqrtTwoTimesNumPoints * hm; diff --git a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/integration/gauss/LaguerreRuleFactory.java b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/integration/gauss/LaguerreRuleFactory.java index 76fd2c3..28f0a1f 100644 --- a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/integration/gauss/LaguerreRuleFactory.java +++ b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/integration/gauss/LaguerreRuleFactory.java @@ -65,7 +65,7 @@ public class LaguerreRuleFactory extends BaseRuleFactory<Double> { final RealMatrix c = MatrixUtils.createRealMatrix(degree, degree); for (int i = 0; i < degree; i++) { - c.setEntry(i, i, 2 * i + 1); + c.setEntry(i, i, 2.0 * i + 1); if (i + 1 < degree) { // subdiagonal c.setEntry(i+1, i, -(i + 1)); diff --git a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/polynomials/PolynomialsUtils.java b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/polynomials/PolynomialsUtils.java index 6430d31..9842a05 100644 --- a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/polynomials/PolynomialsUtils.java +++ b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/analysis/polynomials/PolynomialsUtils.java @@ -370,7 +370,7 @@ public final class PolynomialsUtils { // case, the lock object is an immutable field that belongs to this // class. synchronized (coefficients) { - final int maxDegree = (int) AccurateMath.floor(AccurateMath.sqrt(2 * coefficients.size())) - 1; + final int maxDegree = (int) AccurateMath.floor(AccurateMath.sqrt(2.0 * coefficients.size())) - 1; if (degree > maxDegree) { computeUpToDegree(degree, maxDegree, generator, coefficients); } diff --git a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java index cfee773..a5b8e35 100644 --- a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java +++ b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java @@ -719,7 +719,7 @@ public class CMAESOptimizer if (isActiveCMA) { // Adapt covariance matrix C active CMA negccov = (1 - ccovmu) * 0.25 * mueff / - (AccurateMath.pow(dimension + 2, 1.5) + 2 * mueff); + (AccurateMath.pow(dimension + 2.0, 1.5) + 2 * mueff); // keep at least 0.66 in all directions, small popsize are most // critical final double negminresidualvariance = 0.66; diff --git a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/inference/KolmogorovSmirnovTest.java b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/inference/KolmogorovSmirnovTest.java index 741b4ca..b189a5f 100644 --- a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/inference/KolmogorovSmirnovTest.java +++ b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/inference/KolmogorovSmirnovTest.java @@ -619,7 +619,7 @@ public class KolmogorovSmirnovTest { double sum2 = 0; kTerm2 = 0; for (k = 1; k < MAXIMUM_PARTIAL_SUM_COUNT; k++) { - kTerm2 = k * k; + kTerm2 = (double) k * k; increment = PI_SQUARED * kTerm2 * AccurateMath.exp(-PI_SQUARED * kTerm2 / twoZ2); sum2 += increment; if (AccurateMath.abs(increment) < PG_SUM_RELATIVE_ERROR * AccurateMath.abs(sum2)) { @@ -656,7 +656,7 @@ public class KolmogorovSmirnovTest { } sum2 = 0; for (k = 1; k < MAXIMUM_PARTIAL_SUM_COUNT; k++) { - kTerm2 = k * k; + kTerm2 = (double) k * k; kTerm4 = kTerm2 * kTerm2; increment = (-pi4 * kTerm4 + 3 * PI_SQUARED * kTerm2 * z2) * AccurateMath.exp(-PI_SQUARED * kTerm2 / twoZ2); diff --git a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/interval/ClopperPearsonInterval.java b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/interval/ClopperPearsonInterval.java index 8131a36..20f4913 100644 --- a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/interval/ClopperPearsonInterval.java +++ b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/interval/ClopperPearsonInterval.java @@ -40,16 +40,16 @@ public class ClopperPearsonInterval implements BinomialConfidenceInterval { final double alpha = 0.5 * (1 - confidenceLevel); if (numberOfSuccesses > 0) { - final FDistribution distributionLowerBound = new FDistribution(2 * (numberOfTrials - numberOfSuccesses + 1), - 2 * numberOfSuccesses); + final FDistribution distributionLowerBound = new FDistribution(2.0 * (numberOfTrials - numberOfSuccesses + 1), + 2.0 * numberOfSuccesses); final double fValueLowerBound = distributionLowerBound.inverseCumulativeProbability(1 - alpha); lowerBound = numberOfSuccesses / (numberOfSuccesses + (numberOfTrials - numberOfSuccesses + 1) * fValueLowerBound); } if (numberOfSuccesses < numberOfTrials) { - final FDistribution distributionUpperBound = new FDistribution(2 * (numberOfSuccesses + 1), - 2 * (numberOfTrials - numberOfSuccesses)); + final FDistribution distributionUpperBound = new FDistribution(2.0 * (numberOfSuccesses + 1), + 2.0 * (numberOfTrials - numberOfSuccesses)); final double fValueUpperBound = distributionUpperBound.inverseCumulativeProbability(1 - alpha); upperBound = (numberOfSuccesses + 1) * fValueUpperBound / (numberOfTrials - numberOfSuccesses + (numberOfSuccesses + 1) * fValueUpperBound); diff --git a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/regression/SimpleRegression.java b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/regression/SimpleRegression.java index 849c7be..c4b18dd 100644 --- a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/regression/SimpleRegression.java +++ b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/stat/regression/SimpleRegression.java @@ -698,7 +698,7 @@ public class SimpleRegression implements Serializable, UpdatingMultipleLinearReg alpha, 0, 1); } // No advertised NotStrictlyPositiveException here - will return NaN above - TDistribution distribution = new TDistribution(n - 2); + TDistribution distribution = new TDistribution(n - 2d); return getSlopeStdErr() * distribution.inverseCumulativeProbability(1d - alpha / 2d); } @@ -730,7 +730,7 @@ public class SimpleRegression implements Serializable, UpdatingMultipleLinearReg return Double.NaN; } // No advertised NotStrictlyPositiveException here - will return NaN above - TDistribution distribution = new TDistribution(n - 2); + TDistribution distribution = new TDistribution(n - 2d); return 2d * (1.0 - distribution.cumulativeProbability( AccurateMath.abs(getSlope()) / getSlopeStdErr())); }