You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ah...@apache.org on 2021/08/18 15:41:16 UTC
[commons-math] 02/02: Sonar fix: Cast operands to double before
assigning result to double
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 <ah...@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()));
}