org.apache.commons.math.ode
Class TestProblem3

java.lang.Object
  extended by org.apache.commons.math.ode.TestProblemAbstract
      extended by org.apache.commons.math.ode.TestProblem3
All Implemented Interfaces:
org.apache.commons.math.ode.FirstOrderDifferentialEquations

public class TestProblem3
extends TestProblemAbstract

This class is used in the junit tests for the ODE integrators.

This specific problem is the following differential equation :

    y1'' = -y1/r^3  y1 (0) = 1-e  y1' (0) = 0
    y2'' = -y2/r^3  y2 (0) = 0    y2' (0) =sqrt((1+e)/(1-e))
    r = sqrt (y1^2 + y2^2), e = 0.9
 
This is a two-body problem in the plane which can be solved by Kepler's equation
   y1 (t) = ...
 


Field Summary
 
Fields inherited from class org.apache.commons.math.ode.TestProblemAbstract
calls, errorScale, n, t0, t1, y0
 
Constructor Summary
TestProblem3()
          Simple constructor.
TestProblem3(double e)
          Simple constructor.
TestProblem3(TestProblem3 problem)
          Copy constructor.
 
Method Summary
 double[] computeTheoreticalState(double t)
          Compute the theoretical state at the specified time.
 TestProblem3 copy()
          Copy operation.
 void doComputeDerivatives(double t, double[] y, double[] yDot)
           
 
Methods inherited from class org.apache.commons.math.ode.TestProblemAbstract
computeDerivatives, getCalls, getDimension, getErrorScale, getEventsHandlers, getFinalTime, getInitialState, getInitialTime, setErrorScale, setFinalConditions, setInitialConditions
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TestProblem3

public TestProblem3(double e)
Simple constructor.

Parameters:
e - eccentricity

TestProblem3

public TestProblem3()
Simple constructor.


TestProblem3

public TestProblem3(TestProblem3 problem)
Copy constructor.

Parameters:
problem - problem to copy
Method Detail

copy

public TestProblem3 copy()
Copy operation.

Specified by:
copy in class TestProblemAbstract
Returns:
a copy of the instance

doComputeDerivatives

public void doComputeDerivatives(double t,
                                 double[] y,
                                 double[] yDot)
Specified by:
doComputeDerivatives in class TestProblemAbstract

computeTheoreticalState

public double[] computeTheoreticalState(double t)
Description copied from class: TestProblemAbstract
Compute the theoretical state at the specified time.

Specified by:
computeTheoreticalState in class TestProblemAbstract
Parameters:
t - time at which the state is required
Returns:
state vector at time t


Copyright © 2003-2010 Apache Software Foundation. All Rights Reserved.