Skip to content

Commit f717760

Browse files
author
Thomas Weise
committed
Fixed Some Bug with Uninitialized Variables, Removed Useless Class
1 parent 6f0c6f2 commit f717760

12 files changed

+35
-193
lines changed

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/Transformation.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,15 +80,15 @@ public boolean isLongArithmeticAccurate() {
8080
* the data element
8181
* @return the transformation function
8282
*/
83-
public final TransformationFunction use(final IDataElement element) {
83+
public final UnaryFunction use(final IDataElement element) {
8484
UnaryFunction useFunction;
8585

8686
useFunction = ((this.m_func instanceof ICloneable)
8787
? ((UnaryFunction) (((ICloneable) (this.m_func)).clone()))
8888
: this.m_func);
8989

9090
Transformation.__use(useFunction, element);
91-
return new TransformationFunction(this, useFunction);
91+
return useFunction;
9292
}
9393

9494
/**

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/TransformationFunction.java

Lines changed: 0 additions & 149 deletions
This file was deleted.

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/_DataBasedConstant.java

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -101,13 +101,6 @@ final void _update(final IDataElement element) {
101101
}
102102
}
103103

104-
/** clear this property constant's numerical value */
105-
final void _clear() {
106-
this.m_longVal = Long.MIN_VALUE;
107-
this.m_doubleVal = Double.NaN;
108-
this.m_state = BasicNumber.STATE_EMPTY;
109-
}
110-
111104
/** {@inheritDoc} */
112105
@Override
113106
public final int getState() {

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/aggregation2D/Aggregation2D.java

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
import org.optimizationBenchmarking.evaluator.attributes.functions.FunctionAttribute;
1313
import org.optimizationBenchmarking.evaluator.attributes.functions.NamedParameterTransformationParser;
1414
import org.optimizationBenchmarking.evaluator.attributes.functions.Transformation;
15-
import org.optimizationBenchmarking.evaluator.attributes.functions.TransformationFunction;
1615
import org.optimizationBenchmarking.evaluator.data.spec.EAttributeType;
1716
import org.optimizationBenchmarking.evaluator.data.spec.IElementSet;
1817
import org.optimizationBenchmarking.evaluator.data.spec.IExperiment;
@@ -24,6 +23,7 @@
2423
import org.optimizationBenchmarking.utils.document.spec.IComplexText;
2524
import org.optimizationBenchmarking.utils.document.spec.IMath;
2625
import org.optimizationBenchmarking.utils.hash.HashUtils;
26+
import org.optimizationBenchmarking.utils.math.functions.UnaryFunction;
2727
import org.optimizationBenchmarking.utils.math.functions.basic.Identity;
2828
import org.optimizationBenchmarking.utils.math.matrix.IMatrix;
2929
import org.optimizationBenchmarking.utils.math.matrix.processing.ColumnTransformedMatrix;
@@ -225,9 +225,8 @@ final IMatrix _computeInstanceRuns(final IInstanceRuns data,
225225
final IMatrix result;
226226
final DimensionTransformation xIn, yIn;
227227
final Transformation yOut;
228-
final TransformationFunction xFunction, yInputFunction,
229-
yOutputFunction;
230-
final boolean useX, useY;
228+
final UnaryFunction xFunction, yInputFunction, yOutputFunction;
229+
boolean doTransform;
231230
IMatrix current;
232231
CallableMatrixIteration2DBuilder<IMatrix> builder;
233232
ScalarAggregate aggregate;
@@ -241,24 +240,32 @@ final IMatrix _computeInstanceRuns(final IInstanceRuns data,
241240
name = null;
242241
}
243242

243+
doTransform = false;
244244
xIn = this.getXAxisTransformation();
245-
xFunction = xIn.use(data);
246-
useX = (!(xFunction.isIdentityTransformation()));
245+
if (xIn.isIdentityTransformation()) {
246+
xFunction = Identity.INSTANCE;
247+
} else {
248+
doTransform = true;
249+
xFunction = xIn.use(data);
250+
}
247251

248252
yIn = this.getYAxisInputTransformation();
249-
yInputFunction = yIn.use(data);
250-
useY = (!(yInputFunction.isIdentityTransformation()));
253+
if (yIn.isIdentityTransformation()) {
254+
yInputFunction = Identity.INSTANCE;
255+
} else {
256+
yInputFunction = yIn.use(data);
257+
doTransform = true;
258+
}
251259

252260
runs = data.getData();
253261
i = runs.size();
254262
matrices = new IMatrix[i];
255263

256264
for (; (--i) >= 0;) {
257265
current = runs.get(i).selectColumns(this.m_xIndex, this.m_yIndex);
258-
if (useX || useY) {
266+
if (doTransform) {
259267
current = new ColumnTransformedMatrix(current, //
260-
useX ? xFunction : Identity.INSTANCE, //
261-
useY ? yInputFunction : Identity.INSTANCE).copy();
268+
xFunction, yInputFunction).copy();
262269
}
263270
matrices[i] = current.copy();
264271
}

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/ecdf/ECDF.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
import org.optimizationBenchmarking.evaluator.attributes.functions.FunctionAttribute;
1212
import org.optimizationBenchmarking.evaluator.attributes.functions.NamedParameterTransformationParser;
1313
import org.optimizationBenchmarking.evaluator.attributes.functions.Transformation;
14-
import org.optimizationBenchmarking.evaluator.attributes.functions.TransformationFunction;
1514
import org.optimizationBenchmarking.evaluator.data.spec.EAttributeType;
1615
import org.optimizationBenchmarking.evaluator.data.spec.IDimension;
1716
import org.optimizationBenchmarking.evaluator.data.spec.IElementSet;
@@ -41,6 +40,7 @@
4140
import org.optimizationBenchmarking.utils.document.spec.IText;
4241
import org.optimizationBenchmarking.utils.hash.HashUtils;
4342
import org.optimizationBenchmarking.utils.math.NumericalTypes;
43+
import org.optimizationBenchmarking.utils.math.functions.UnaryFunction;
4444
import org.optimizationBenchmarking.utils.math.matrix.IMatrix;
4545
import org.optimizationBenchmarking.utils.math.matrix.processing.iterator2D.CallableMatrixIteration2DBuilder;
4646
import org.optimizationBenchmarking.utils.math.matrix.processing.iterator2D.EIterationDirection;
@@ -507,7 +507,7 @@ final IMatrix _computeInstanceRuns(final IInstanceRuns data,
507507
final Logger logger) {
508508
final _List list;
509509
final DimensionTransformation xIn, yIn;
510-
TransformationFunction yInFunc, xInFunc, yOutFunc;
510+
UnaryFunction yInFunc, xInFunc, yOutFunc;
511511
final IDimension timeDim, goalDim;
512512
final IMatrix result;
513513
String name;

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/ecdf/_DoubleTimeDoubleGoal.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package org.optimizationBenchmarking.evaluator.attributes.functions.ecdf;
22

3-
import org.optimizationBenchmarking.evaluator.attributes.functions.TransformationFunction;
43
import org.optimizationBenchmarking.evaluator.data.spec.IDataPoint;
54
import org.optimizationBenchmarking.evaluator.data.spec.IDimension;
65
import org.optimizationBenchmarking.evaluator.data.spec.IRun;
@@ -28,8 +27,8 @@ final class _DoubleTimeDoubleGoal extends _Doubles {
2827
* the goal
2928
*/
3029
_DoubleTimeDoubleGoal(final IDimension timeDim, final IDimension goalDim,
31-
final EComparison criterion,
32-
final TransformationFunction goalTransform, final double goal) {
30+
final EComparison criterion, final UnaryFunction goalTransform,
31+
final double goal) {
3332
super(timeDim, goalDim, criterion, goalTransform);
3433
this.m_goal = goal;
3534
}

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/ecdf/_DoubleTimeLongGoal.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package org.optimizationBenchmarking.evaluator.attributes.functions.ecdf;
22

3-
import org.optimizationBenchmarking.evaluator.attributes.functions.TransformationFunction;
43
import org.optimizationBenchmarking.evaluator.data.spec.IDataPoint;
54
import org.optimizationBenchmarking.evaluator.data.spec.IDimension;
65
import org.optimizationBenchmarking.evaluator.data.spec.IRun;
@@ -28,8 +27,8 @@ final class _DoubleTimeLongGoal extends _Doubles {
2827
* the goal
2928
*/
3029
_DoubleTimeLongGoal(final IDimension timeDim, final IDimension goalDim,
31-
final EComparison criterion,
32-
final TransformationFunction goalTransform, final long goal) {
30+
final EComparison criterion, final UnaryFunction goalTransform,
31+
final long goal) {
3332
super(timeDim, goalDim, criterion, goalTransform);
3433
this.m_goal = goal;
3534
}

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/ecdf/_Doubles.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import java.util.Arrays;
44

5-
import org.optimizationBenchmarking.evaluator.attributes.functions.TransformationFunction;
65
import org.optimizationBenchmarking.evaluator.data.spec.IDimension;
76
import org.optimizationBenchmarking.utils.comparison.EComparison;
87
import org.optimizationBenchmarking.utils.math.functions.UnaryFunction;
@@ -30,8 +29,7 @@ abstract class _Doubles extends _List {
3029
* the goal transformation
3130
*/
3231
_Doubles(final IDimension timeDim, final IDimension goalDim,
33-
final EComparison criterion,
34-
final TransformationFunction goalTransform) {
32+
final EComparison criterion, final UnaryFunction goalTransform) {
3533
super(timeDim, goalDim, criterion, goalTransform);
3634
this.m_data = new double[1024];
3735
this.m_last = (this.m_isTimeIncreasing ? Double.NEGATIVE_INFINITY

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/ecdf/_List.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package org.optimizationBenchmarking.evaluator.attributes.functions.ecdf;
22

3-
import org.optimizationBenchmarking.evaluator.attributes.functions.TransformationFunction;
43
import org.optimizationBenchmarking.evaluator.data.spec.IDimension;
54
import org.optimizationBenchmarking.evaluator.data.spec.IRun;
65
import org.optimizationBenchmarking.utils.comparison.EComparison;
76
import org.optimizationBenchmarking.utils.math.functions.UnaryFunction;
7+
import org.optimizationBenchmarking.utils.math.functions.basic.Identity;
88
import org.optimizationBenchmarking.utils.math.matrix.impl.DoubleMatrix1D;
99

1010
/** a list */
@@ -53,8 +53,7 @@ abstract class _List {
5353
* the goal transformation
5454
*/
5555
_List(final IDimension timeDim, final IDimension goalDim,
56-
final EComparison criterion,
57-
final TransformationFunction goalTransform) {
56+
final EComparison criterion, final UnaryFunction goalTransform) {
5857
super();
5958
this.m_timeIndex = timeDim.getIndex();
6059
this.m_goalIndex = goalDim.getIndex();
@@ -63,7 +62,7 @@ abstract class _List {
6362

6463
setTransform: {
6564

66-
if (goalTransform.isIdentityTransformation()) {
65+
if (goalTransform instanceof Identity) {
6766
setNoTransform: {
6867
switcher: switch (criterion) {
6968
case LESS_OR_EQUAL: {

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/ecdf/_LongTimeDoubleGoal.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package org.optimizationBenchmarking.evaluator.attributes.functions.ecdf;
22

3-
import org.optimizationBenchmarking.evaluator.attributes.functions.TransformationFunction;
43
import org.optimizationBenchmarking.evaluator.data.spec.IDataPoint;
54
import org.optimizationBenchmarking.evaluator.data.spec.IDimension;
65
import org.optimizationBenchmarking.evaluator.data.spec.IRun;
@@ -28,8 +27,8 @@ final class _LongTimeDoubleGoal extends _Longs {
2827
* the goal
2928
*/
3029
_LongTimeDoubleGoal(final IDimension timeDim, final IDimension goalDim,
31-
final EComparison criterion,
32-
final TransformationFunction goalTransform, final double goal) {
30+
final EComparison criterion, final UnaryFunction goalTransform,
31+
final double goal) {
3332
super(timeDim, goalDim, criterion, goalTransform);
3433
this.m_goal = goal;
3534
}

src/main/java/org/optimizationBenchmarking/evaluator/attributes/functions/ecdf/_LongTimeLongGoal.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package org.optimizationBenchmarking.evaluator.attributes.functions.ecdf;
22

3-
import org.optimizationBenchmarking.evaluator.attributes.functions.TransformationFunction;
43
import org.optimizationBenchmarking.evaluator.data.spec.IDataPoint;
54
import org.optimizationBenchmarking.evaluator.data.spec.IDimension;
65
import org.optimizationBenchmarking.evaluator.data.spec.IRun;
@@ -28,8 +27,8 @@ final class _LongTimeLongGoal extends _Longs {
2827
* the goal
2928
*/
3029
_LongTimeLongGoal(final IDimension timeDim, final IDimension goalDim,
31-
final EComparison criterion,
32-
final TransformationFunction goalTransform, final long goal) {
30+
final EComparison criterion, final UnaryFunction goalTransform,
31+
final long goal) {
3332
super(timeDim, goalDim, criterion, goalTransform);
3433
this.m_goal = goal;
3534
}

0 commit comments

Comments
 (0)