org.simulator.math.odes
Class FirstOrderSolver
java.lang.Object
org.simulator.math.odes.AbstractDESSolver
org.simulator.math.odes.AdaptiveStepsizeIntegrator
org.simulator.math.odes.FirstOrderSolver
- All Implemented Interfaces:
- Serializable, Cloneable, EventHandler, DelayValueHolder, DESSolver
- Direct Known Subclasses:
- AdamsBashforthSolver, AdamsMoultonSolver, DormandPrince54Solver, DormandPrince853Solver, GraggBulirschStoerSolver, HighamHall54Solver
public abstract class FirstOrderSolver
- extends AdaptiveStepsizeIntegrator
This class is the superclass of the wrapper classes for the solvers of the Apache Math library.
- Since:
- 0.9
- Version:
- $Rev: 205 $
- Author:
- Roland Keller
- See Also:
- Serialized Form
Methods inherited from class org.simulator.math.odes.AbstractDESSolver |
additionalResults, addPropertyChangeListener, computeDelayedValue, computeSteadyState, eventOccurred, firePropertyChange, g, getName, getSerialversionuid, getStepSize, inBetweenSteps, initResultMatrix, initResultMatrix, initResultMatrix, isIncludeIntermediates, isNonnegative, isUnstable, processEvents, processEventsAndRules, processRules, removePropertyChangeListener, reset, resetState, setIncludeIntermediates, setNonnegative, setUnstableFlag, solve, solve, solve, solve |
integrator
protected AbstractIntegrator integrator
- The integrator used.
FirstOrderSolver
public FirstOrderSolver()
- default constructor
FirstOrderSolver
public FirstOrderSolver(double stepSize)
- Parameters:
stepSize
-
FirstOrderSolver
public FirstOrderSolver(double stepSize,
boolean nonnegative)
- Parameters:
stepSize
- nonnegative
- the nonnegative flag of the super class- See Also:
AbstractDESSolver
FirstOrderSolver
public FirstOrderSolver(FirstOrderSolver firstOrderSolver)
- clone constructor
- Parameters:
firstOrderSolver
-
setStepSize
public void setStepSize(double stepSize)
- Description copied from interface:
DESSolver
- Set the integration step size.
- Specified by:
setStepSize
in interface DESSolver
- Overrides:
setStepSize
in class AbstractDESSolver
clone
public abstract FirstOrderSolver clone()
- Specified by:
clone
in interface DESSolver
- Specified by:
clone
in class AbstractDESSolver
- Returns:
- the cloned solver
computeChange
public double[] computeChange(DESystem DES,
double[] y,
double t,
double stepSize,
double[] change,
boolean steadyState)
throws DerivativeException
- Description copied from class:
AbstractDESSolver
- Computes the change for a given system at the current time with the
current setting for the integration step size.
- Specified by:
computeChange
in class AbstractDESSolver
- Parameters:
DES
- The system to be simulated.y
- The current state of the system.t
- The current simulation time.stepSize
- The current integration step size.change
- The vector for the resulting change of the system.
- Returns:
- The change.
- Throws:
DerivativeException
createIntegrator
protected abstract void createIntegrator()
- initialization function of the integrator
getIntegrator
public AbstractIntegrator getIntegrator()
- Returns:
- integrator
hasSolverEventProcessing
protected boolean hasSolverEventProcessing()
- Specified by:
hasSolverEventProcessing
in class AbstractDESSolver
- Returns:
- Does the solver do the event processing itself?