You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by lu...@apache.org on 2015/11/22 17:22:51 UTC
[math] Simplified ODE test harness.
Repository: commons-math
Updated Branches:
refs/heads/field-ode d75f5090e -> a15e4901b
Simplified ODE test harness.
Project: http://git-wip-us.apache.org/repos/asf/commons-math/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-math/commit/a15e4901
Tree: http://git-wip-us.apache.org/repos/asf/commons-math/tree/a15e4901
Diff: http://git-wip-us.apache.org/repos/asf/commons-math/diff/a15e4901
Branch: refs/heads/field-ode
Commit: a15e4901bb9605c59c188decc3e0857c1a37aa76
Parents: d75f509
Author: Luc Maisonobe <lu...@apache.org>
Authored: Sun Nov 22 17:22:36 2015 +0100
Committer: Luc Maisonobe <lu...@apache.org>
Committed: Sun Nov 22 17:22:36 2015 +0100
----------------------------------------------------------------------
.../apache/commons/math3/ode/TestProblem1.java | 15 ------
.../apache/commons/math3/ode/TestProblem2.java | 15 ------
.../apache/commons/math3/ode/TestProblem3.java | 16 -------
.../apache/commons/math3/ode/TestProblem4.java | 16 -------
.../apache/commons/math3/ode/TestProblem5.java | 15 ++----
.../apache/commons/math3/ode/TestProblem6.java | 15 ------
.../commons/math3/ode/TestProblemAbstract.java | 27 -----------
.../commons/math3/ode/TestProblemFactory.java | 50 --------------------
.../ClassicalRungeKuttaIntegratorTest.java | 11 +++--
.../math3/ode/nonstiff/EulerIntegratorTest.java | 12 +++--
.../math3/ode/nonstiff/GillIntegratorTest.java | 11 +++--
.../ode/nonstiff/LutherIntegratorTest.java | 11 +++--
.../ode/nonstiff/MidpointIntegratorTest.java | 12 +++--
.../nonstiff/ThreeEighthesIntegratorTest.java | 11 +++--
14 files changed, 48 insertions(+), 189 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/TestProblem1.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/TestProblem1.java b/src/test/java/org/apache/commons/math3/ode/TestProblem1.java
index 06d19fd..8344904 100644
--- a/src/test/java/org/apache/commons/math3/ode/TestProblem1.java
+++ b/src/test/java/org/apache/commons/math3/ode/TestProblem1.java
@@ -52,21 +52,6 @@ public class TestProblem1
y = new double[y0.length];
}
- /**
- * Copy constructor.
- * @param problem problem to copy
- */
- public TestProblem1(TestProblem1 problem) {
- super(problem);
- y = problem.y.clone();
- }
-
- /** {@inheritDoc} */
- @Override
-public TestProblem1 copy() {
- return new TestProblem1(this);
- }
-
@Override
public void doComputeDerivatives(double t, double[] y, double[] yDot) {
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/TestProblem2.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/TestProblem2.java b/src/test/java/org/apache/commons/math3/ode/TestProblem2.java
index 64befe2..912c4d8 100644
--- a/src/test/java/org/apache/commons/math3/ode/TestProblem2.java
+++ b/src/test/java/org/apache/commons/math3/ode/TestProblem2.java
@@ -53,21 +53,6 @@ public class TestProblem2
y = new double[y0.length];
}
- /**
- * Copy constructor.
- * @param problem problem to copy
- */
- public TestProblem2(TestProblem2 problem) {
- super(problem);
- y = problem.y.clone();
- }
-
- /** {@inheritDoc} */
- @Override
-public TestProblem2 copy() {
- return new TestProblem2(this);
- }
-
@Override
public void doComputeDerivatives(double t, double[] y, double[] yDot) {
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/TestProblem3.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/TestProblem3.java b/src/test/java/org/apache/commons/math3/ode/TestProblem3.java
index c74bb66..3e714ea 100644
--- a/src/test/java/org/apache/commons/math3/ode/TestProblem3.java
+++ b/src/test/java/org/apache/commons/math3/ode/TestProblem3.java
@@ -67,22 +67,6 @@ public class TestProblem3
this(0.1);
}
- /**
- * Copy constructor.
- * @param problem problem to copy
- */
- public TestProblem3(TestProblem3 problem) {
- super(problem);
- e = problem.e;
- y = problem.y.clone();
- }
-
- /** {@inheritDoc} */
- @Override
-public TestProblem3 copy() {
- return new TestProblem3(this);
- }
-
@Override
public void doComputeDerivatives(double t, double[] y, double[] yDot) {
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/TestProblem4.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/TestProblem4.java b/src/test/java/org/apache/commons/math3/ode/TestProblem4.java
index e5c6219..14e6c45 100644
--- a/src/test/java/org/apache/commons/math3/ode/TestProblem4.java
+++ b/src/test/java/org/apache/commons/math3/ode/TestProblem4.java
@@ -56,22 +56,6 @@ public class TestProblem4
y = new double[y0.length];
}
- /**
- * Copy constructor.
- * @param problem problem to copy
- */
- public TestProblem4(TestProblem4 problem) {
- super(problem);
- a = problem.a;
- y = problem.y.clone();
- }
-
- /** {@inheritDoc} */
- @Override
-public TestProblem4 copy() {
- return new TestProblem4(this);
- }
-
@Override
public EventHandler[] getEventsHandlers() {
return new EventHandler[] { new Bounce(), new Stop() };
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/TestProblem5.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/TestProblem5.java b/src/test/java/org/apache/commons/math3/ode/TestProblem5.java
index 4c3c44a..8bb04e0 100644
--- a/src/test/java/org/apache/commons/math3/ode/TestProblem5.java
+++ b/src/test/java/org/apache/commons/math3/ode/TestProblem5.java
@@ -22,20 +22,13 @@ package org.apache.commons.math3.ode;
* <p>This is the same as problem 1 except integration is done
* backward in time</p>
*/
-public class TestProblem5
- extends TestProblem1 {
+public class TestProblem5 extends TestProblem1 {
/**
* Simple constructor.
*/
- public TestProblem5() {
- super();
- setFinalConditions(2 * t0 - t1);
- }
+ public TestProblem5() {
+ setFinalConditions(2 * t0 - t1);
+ }
- /** {@inheritDoc} */
- @Override
- public TestProblem5 copy() {
- return new TestProblem5();
- }
}
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/TestProblem6.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/TestProblem6.java b/src/test/java/org/apache/commons/math3/ode/TestProblem6.java
index 8530499..6d69158 100644
--- a/src/test/java/org/apache/commons/math3/ode/TestProblem6.java
+++ b/src/test/java/org/apache/commons/math3/ode/TestProblem6.java
@@ -51,21 +51,6 @@ public class TestProblem6
y = new double[y0.length];
}
- /**
- * Copy constructor.
- * @param problem problem to copy
- */
- public TestProblem6(TestProblem6 problem) {
- super(problem);
- y = problem.y.clone();
- }
-
- /** {@inheritDoc} */
- @Override
- public TestProblem6 copy() {
- return new TestProblem6(this);
- }
-
@Override
public void doComputeDerivatives(double t, double[] y, double[] yDot) {
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/TestProblemAbstract.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/TestProblemAbstract.java b/src/test/java/org/apache/commons/math3/ode/TestProblemAbstract.java
index bfb4ecb..e17eda5 100644
--- a/src/test/java/org/apache/commons/math3/ode/TestProblemAbstract.java
+++ b/src/test/java/org/apache/commons/math3/ode/TestProblemAbstract.java
@@ -58,33 +58,6 @@ public abstract class TestProblemAbstract
}
/**
- * Copy constructor.
- * @param problem problem to copy
- */
- protected TestProblemAbstract(TestProblemAbstract problem) {
- n = problem.n;
- calls = problem.calls;
- t0 = problem.t0;
- if (problem.y0 == null) {
- y0 = null;
- } else {
- y0 = problem.y0.clone();
- }
- if (problem.errorScale == null) {
- errorScale = null;
- } else {
- errorScale = problem.errorScale.clone();
- }
- t1 = problem.t1;
- }
-
- /**
- * Copy operation.
- * @return a copy of the instance
- */
- public abstract TestProblemAbstract copy();
-
- /**
* Set the initial conditions
* @param t0 initial time
* @param y0 initial state vector
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/TestProblemFactory.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/TestProblemFactory.java b/src/test/java/org/apache/commons/math3/ode/TestProblemFactory.java
deleted file mode 100644
index 706e140..0000000
--- a/src/test/java/org/apache/commons/math3/ode/TestProblemFactory.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.commons.math3.ode;
-
-/**
- * This class is used in the junit tests for the ODE integrators.
- */
-public class TestProblemFactory {
-
- /** Problems pool. */
- private static final TestProblemAbstract[] pool = {
- new TestProblem1(),
- new TestProblem2(),
- new TestProblem3(),
- new TestProblem4(),
- new TestProblem5(),
- new TestProblem6()
- };
-
- /**
- * Private constructor.
- * This is a utility class, so there are no instance at all.
- */
- private TestProblemFactory() {
- }
-
- /**
- * Get the problems.
- * @return array of problems to solve
- */
- public static TestProblemAbstract[] getProblems() {
- return pool;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/nonstiff/ClassicalRungeKuttaIntegratorTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/nonstiff/ClassicalRungeKuttaIntegratorTest.java b/src/test/java/org/apache/commons/math3/ode/nonstiff/ClassicalRungeKuttaIntegratorTest.java
index c527680..ac31092 100644
--- a/src/test/java/org/apache/commons/math3/ode/nonstiff/ClassicalRungeKuttaIntegratorTest.java
+++ b/src/test/java/org/apache/commons/math3/ode/nonstiff/ClassicalRungeKuttaIntegratorTest.java
@@ -25,10 +25,12 @@ import org.apache.commons.math3.exception.NumberIsTooSmallException;
import org.apache.commons.math3.ode.FirstOrderDifferentialEquations;
import org.apache.commons.math3.ode.FirstOrderIntegrator;
import org.apache.commons.math3.ode.TestProblem1;
+import org.apache.commons.math3.ode.TestProblem2;
import org.apache.commons.math3.ode.TestProblem3;
+import org.apache.commons.math3.ode.TestProblem4;
import org.apache.commons.math3.ode.TestProblem5;
+import org.apache.commons.math3.ode.TestProblem6;
import org.apache.commons.math3.ode.TestProblemAbstract;
-import org.apache.commons.math3.ode.TestProblemFactory;
import org.apache.commons.math3.ode.TestProblemHandler;
import org.apache.commons.math3.ode.events.EventHandler;
import org.apache.commons.math3.ode.sampling.StepHandler;
@@ -133,14 +135,15 @@ public class ClassicalRungeKuttaIntegratorTest {
throws DimensionMismatchException, NumberIsTooSmallException,
MaxCountExceededException, NoBracketingException {
- TestProblemAbstract[] problems = TestProblemFactory.getProblems();
- for (int k = 0; k < problems.length; ++k) {
+ for (TestProblemAbstract pb : new TestProblemAbstract[] {
+ new TestProblem1(), new TestProblem2(), new TestProblem3(),
+ new TestProblem4(), new TestProblem5(), new TestProblem6()
+ }) {
double previousValueError = Double.NaN;
double previousTimeError = Double.NaN;
for (int i = 4; i < 10; ++i) {
- TestProblemAbstract pb = problems[k].copy();
double step = (pb.getFinalTime() - pb.getInitialTime()) * FastMath.pow(2.0, -i);
FirstOrderIntegrator integ = new ClassicalRungeKuttaIntegrator(step);
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/nonstiff/EulerIntegratorTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/nonstiff/EulerIntegratorTest.java b/src/test/java/org/apache/commons/math3/ode/nonstiff/EulerIntegratorTest.java
index eaef55b..54f0330 100644
--- a/src/test/java/org/apache/commons/math3/ode/nonstiff/EulerIntegratorTest.java
+++ b/src/test/java/org/apache/commons/math3/ode/nonstiff/EulerIntegratorTest.java
@@ -25,9 +25,12 @@ import org.apache.commons.math3.exception.NumberIsTooSmallException;
import org.apache.commons.math3.ode.FirstOrderDifferentialEquations;
import org.apache.commons.math3.ode.FirstOrderIntegrator;
import org.apache.commons.math3.ode.TestProblem1;
+import org.apache.commons.math3.ode.TestProblem2;
+import org.apache.commons.math3.ode.TestProblem3;
+import org.apache.commons.math3.ode.TestProblem4;
import org.apache.commons.math3.ode.TestProblem5;
+import org.apache.commons.math3.ode.TestProblem6;
import org.apache.commons.math3.ode.TestProblemAbstract;
-import org.apache.commons.math3.ode.TestProblemFactory;
import org.apache.commons.math3.ode.TestProblemHandler;
import org.apache.commons.math3.ode.events.EventHandler;
import org.apache.commons.math3.ode.sampling.StepHandler;
@@ -54,14 +57,15 @@ public class EulerIntegratorTest {
throws DimensionMismatchException, NumberIsTooSmallException,
MaxCountExceededException, NoBracketingException {
- TestProblemAbstract[] problems = TestProblemFactory.getProblems();
- for (int k = 0; k < problems.length; ++k) {
+ for (TestProblemAbstract pb : new TestProblemAbstract[] {
+ new TestProblem1(), new TestProblem2(), new TestProblem3(),
+ new TestProblem4(), new TestProblem5(), new TestProblem6()
+ }) {
double previousValueError = Double.NaN;
double previousTimeError = Double.NaN;
for (int i = 4; i < 8; ++i) {
- TestProblemAbstract pb = problems[k].copy();
double step = (pb.getFinalTime() - pb.getInitialTime()) * FastMath.pow(2.0, -i);
FirstOrderIntegrator integ = new EulerIntegrator(step);
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/nonstiff/GillIntegratorTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/nonstiff/GillIntegratorTest.java b/src/test/java/org/apache/commons/math3/ode/nonstiff/GillIntegratorTest.java
index e165e20..8d0fb65 100644
--- a/src/test/java/org/apache/commons/math3/ode/nonstiff/GillIntegratorTest.java
+++ b/src/test/java/org/apache/commons/math3/ode/nonstiff/GillIntegratorTest.java
@@ -25,10 +25,12 @@ import org.apache.commons.math3.exception.NumberIsTooSmallException;
import org.apache.commons.math3.ode.FirstOrderDifferentialEquations;
import org.apache.commons.math3.ode.FirstOrderIntegrator;
import org.apache.commons.math3.ode.TestProblem1;
+import org.apache.commons.math3.ode.TestProblem2;
import org.apache.commons.math3.ode.TestProblem3;
+import org.apache.commons.math3.ode.TestProblem4;
import org.apache.commons.math3.ode.TestProblem5;
+import org.apache.commons.math3.ode.TestProblem6;
import org.apache.commons.math3.ode.TestProblemAbstract;
-import org.apache.commons.math3.ode.TestProblemFactory;
import org.apache.commons.math3.ode.TestProblemHandler;
import org.apache.commons.math3.ode.events.EventHandler;
import org.apache.commons.math3.ode.sampling.StepHandler;
@@ -55,14 +57,15 @@ public class GillIntegratorTest {
throws DimensionMismatchException, NumberIsTooSmallException,
MaxCountExceededException, NoBracketingException {
- TestProblemAbstract[] problems = TestProblemFactory.getProblems();
- for (int k = 0; k < problems.length; ++k) {
+ for (TestProblemAbstract pb : new TestProblemAbstract[] {
+ new TestProblem1(), new TestProblem2(), new TestProblem3(),
+ new TestProblem4(), new TestProblem5(), new TestProblem6()
+ }) {
double previousValueError = Double.NaN;
double previousTimeError = Double.NaN;
for (int i = 5; i < 10; ++i) {
- TestProblemAbstract pb = problems[k].copy();
double step = (pb.getFinalTime() - pb.getInitialTime()) * FastMath.pow(2.0, -i);
FirstOrderIntegrator integ = new GillIntegrator(step);
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/nonstiff/LutherIntegratorTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/nonstiff/LutherIntegratorTest.java b/src/test/java/org/apache/commons/math3/ode/nonstiff/LutherIntegratorTest.java
index e3c5fe2..f8e0fd3 100644
--- a/src/test/java/org/apache/commons/math3/ode/nonstiff/LutherIntegratorTest.java
+++ b/src/test/java/org/apache/commons/math3/ode/nonstiff/LutherIntegratorTest.java
@@ -25,10 +25,12 @@ import org.apache.commons.math3.exception.NumberIsTooSmallException;
import org.apache.commons.math3.ode.FirstOrderDifferentialEquations;
import org.apache.commons.math3.ode.FirstOrderIntegrator;
import org.apache.commons.math3.ode.TestProblem1;
+import org.apache.commons.math3.ode.TestProblem2;
import org.apache.commons.math3.ode.TestProblem3;
+import org.apache.commons.math3.ode.TestProblem4;
import org.apache.commons.math3.ode.TestProblem5;
+import org.apache.commons.math3.ode.TestProblem6;
import org.apache.commons.math3.ode.TestProblemAbstract;
-import org.apache.commons.math3.ode.TestProblemFactory;
import org.apache.commons.math3.ode.TestProblemHandler;
import org.apache.commons.math3.ode.events.EventHandler;
import org.apache.commons.math3.ode.sampling.StepHandler;
@@ -133,14 +135,15 @@ public class LutherIntegratorTest {
throws DimensionMismatchException, NumberIsTooSmallException,
MaxCountExceededException, NoBracketingException {
- TestProblemAbstract[] problems = TestProblemFactory.getProblems();
- for (int k = 0; k < problems.length; ++k) {
+ for (TestProblemAbstract pb : new TestProblemAbstract[] {
+ new TestProblem1(), new TestProblem2(), new TestProblem3(),
+ new TestProblem4(), new TestProblem5(), new TestProblem6()
+ }) {
double previousValueError = Double.NaN;
double previousTimeError = Double.NaN;
for (int i = 4; i < 10; ++i) {
- TestProblemAbstract pb = problems[k].copy();
double step = (pb.getFinalTime() - pb.getInitialTime()) * FastMath.pow(2.0, -i);
FirstOrderIntegrator integ = new LutherIntegrator(step);
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/nonstiff/MidpointIntegratorTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/nonstiff/MidpointIntegratorTest.java b/src/test/java/org/apache/commons/math3/ode/nonstiff/MidpointIntegratorTest.java
index 0b01ddf..e8080af 100644
--- a/src/test/java/org/apache/commons/math3/ode/nonstiff/MidpointIntegratorTest.java
+++ b/src/test/java/org/apache/commons/math3/ode/nonstiff/MidpointIntegratorTest.java
@@ -25,9 +25,12 @@ import org.apache.commons.math3.exception.NumberIsTooSmallException;
import org.apache.commons.math3.ode.FirstOrderDifferentialEquations;
import org.apache.commons.math3.ode.FirstOrderIntegrator;
import org.apache.commons.math3.ode.TestProblem1;
+import org.apache.commons.math3.ode.TestProblem2;
+import org.apache.commons.math3.ode.TestProblem3;
+import org.apache.commons.math3.ode.TestProblem4;
import org.apache.commons.math3.ode.TestProblem5;
+import org.apache.commons.math3.ode.TestProblem6;
import org.apache.commons.math3.ode.TestProblemAbstract;
-import org.apache.commons.math3.ode.TestProblemFactory;
import org.apache.commons.math3.ode.TestProblemHandler;
import org.apache.commons.math3.ode.events.EventHandler;
import org.apache.commons.math3.ode.sampling.StepHandler;
@@ -54,14 +57,15 @@ public class MidpointIntegratorTest {
throws DimensionMismatchException, NumberIsTooSmallException,
MaxCountExceededException, NoBracketingException {
- TestProblemAbstract[] problems = TestProblemFactory.getProblems();
- for (int k = 0; k < problems.length; ++k) {
+ for (TestProblemAbstract pb : new TestProblemAbstract[] {
+ new TestProblem1(), new TestProblem2(), new TestProblem3(),
+ new TestProblem4(), new TestProblem5(), new TestProblem6()
+ }) {
double previousValueError = Double.NaN;
double previousTimeError = Double.NaN;
for (int i = 4; i < 10; ++i) {
- TestProblemAbstract pb = problems[k].copy();
double step = (pb.getFinalTime() - pb.getInitialTime()) * FastMath.pow(2.0, -i);
FirstOrderIntegrator integ = new MidpointIntegrator(step);
TestProblemHandler handler = new TestProblemHandler(pb, integ);
http://git-wip-us.apache.org/repos/asf/commons-math/blob/a15e4901/src/test/java/org/apache/commons/math3/ode/nonstiff/ThreeEighthesIntegratorTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ode/nonstiff/ThreeEighthesIntegratorTest.java b/src/test/java/org/apache/commons/math3/ode/nonstiff/ThreeEighthesIntegratorTest.java
index ffc33c4..99212a8 100644
--- a/src/test/java/org/apache/commons/math3/ode/nonstiff/ThreeEighthesIntegratorTest.java
+++ b/src/test/java/org/apache/commons/math3/ode/nonstiff/ThreeEighthesIntegratorTest.java
@@ -25,10 +25,12 @@ import org.apache.commons.math3.exception.NumberIsTooSmallException;
import org.apache.commons.math3.ode.FirstOrderDifferentialEquations;
import org.apache.commons.math3.ode.FirstOrderIntegrator;
import org.apache.commons.math3.ode.TestProblem1;
+import org.apache.commons.math3.ode.TestProblem2;
import org.apache.commons.math3.ode.TestProblem3;
+import org.apache.commons.math3.ode.TestProblem4;
import org.apache.commons.math3.ode.TestProblem5;
+import org.apache.commons.math3.ode.TestProblem6;
import org.apache.commons.math3.ode.TestProblemAbstract;
-import org.apache.commons.math3.ode.TestProblemFactory;
import org.apache.commons.math3.ode.TestProblemHandler;
import org.apache.commons.math3.ode.events.EventHandler;
import org.apache.commons.math3.ode.sampling.StepHandler;
@@ -55,14 +57,15 @@ public class ThreeEighthesIntegratorTest {
throws DimensionMismatchException, NumberIsTooSmallException,
MaxCountExceededException, NoBracketingException {
- TestProblemAbstract[] problems = TestProblemFactory.getProblems();
- for (int k = 0; k < problems.length; ++k) {
+ for (TestProblemAbstract pb : new TestProblemAbstract[] {
+ new TestProblem1(), new TestProblem2(), new TestProblem3(),
+ new TestProblem4(), new TestProblem5(), new TestProblem6()
+ }) {
double previousValueError = Double.NaN;
double previousTimeError = Double.NaN;
for (int i = 4; i < 10; ++i) {
- TestProblemAbstract pb = problems[k].copy();
double step = (pb.getFinalTime() - pb.getInitialTime()) * FastMath.pow(2.0, -i);
FirstOrderIntegrator integ = new ThreeEighthesIntegrator(step);