|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.commons.math.ode.sampling.AbstractStepInterpolator
org.apache.commons.math.ode.sampling.NordsieckStepInterpolator
public class NordsieckStepInterpolator
This class implements an interpolator for integrators using Nordsieck representation.
This interpolator computes dense output around the current point. The interpolation equation is based on Taylor series formulas.
AdamsBashforthIntegrator,
AdamsMoultonIntegrator,
Serialized Form| Field Summary | |
|---|---|
protected double[] |
stateVariation
State variation. |
| Fields inherited from class org.apache.commons.math.ode.sampling.AbstractStepInterpolator |
|---|
currentState, currentTime, h, interpolatedDerivatives, interpolatedState, interpolatedTime, previousTime |
| Constructor Summary | |
|---|---|
NordsieckStepInterpolator()
Simple constructor. |
|
NordsieckStepInterpolator(NordsieckStepInterpolator interpolator)
Copy constructor. |
|
| Method Summary | |
|---|---|
protected void |
computeInterpolatedStateAndDerivatives(double theta,
double oneMinusThetaH)
Compute the state and derivatives at the interpolated time. |
protected StepInterpolator |
doCopy()
Really copy the finalized instance. |
double[] |
getInterpolatedStateVariation()
Get the state vector variation from current to interpolated state. |
void |
readExternal(java.io.ObjectInput in)
|
void |
reinitialize(double[] y,
boolean forward)
Reinitialize the instance. |
void |
reinitialize(double referenceTime,
double scalingH,
double[] scaled,
Array2DRowRealMatrix nordsieck)
Reinitialize the instance. |
void |
rescale(double scalingH)
Rescale the instance. |
void |
writeExternal(java.io.ObjectOutput out)
|
| Methods inherited from class org.apache.commons.math.ode.sampling.AbstractStepInterpolator |
|---|
copy, doFinalize, finalizeStep, getCurrentTime, getInterpolatedDerivatives, getInterpolatedState, getInterpolatedTime, getPreviousTime, isForward, readBaseExternal, setInterpolatedTime, shift, storeTime, writeBaseExternal |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected double[] stateVariation
| Constructor Detail |
|---|
public NordsieckStepInterpolator()
AbstractStepInterpolator.reinitialize(double[], boolean) method should be called
before using the instance in order to initialize the internal arrays. This
constructor is used only in order to delay the initialization in
some cases.
public NordsieckStepInterpolator(NordsieckStepInterpolator interpolator)
interpolator - interpolator to copy from. The copy is a deep
copy: its arrays are separated from the original arrays of the
instance| Method Detail |
|---|
protected StepInterpolator doCopy()
This method is called by AbstractStepInterpolator.copy() after the
step has been finalized. It must perform a deep copy
to have an new instance completely independent for the
original instance.
doCopy in class AbstractStepInterpolator
public void reinitialize(double[] y,
boolean forward)
Beware that all arrays must be references to integrator arrays, in order to ensure proper update without copy.
reinitialize in class AbstractStepInterpolatory - reference to the integrator array holding the state at
the end of the stepforward - integration direction indicator
public void reinitialize(double referenceTime,
double scalingH,
double[] scaled,
Array2DRowRealMatrix nordsieck)
Beware that all arrays must be references to integrator arrays, in order to ensure proper update without copy.
referenceTime - time at which all arrays are definedscalingH - step size used in the scaled and nordsieck arraysscaled - reference to the integrator array holding the first
scaled derivativenordsieck - reference to the integrator matrix holding the
nordsieck vectorpublic void rescale(double scalingH)
Since the scaled and Nordiseck arrays are shared with the caller, this method has the side effect of rescaling this arrays in the caller too.
scalingH - new step size to use in the scaled and nordsieck arrays
public double[] getInterpolatedStateVariation()
throws DerivativeException
This method is aimed at computing y(tinterpolation) -y(tcurrent) accurately by avoiding the cancellation errors that would occur if the subtraction were performed explicitly.
The returned vector is a reference to a reused array, so it should not be modified and it should be copied if it needs to be preserved across several calls.
AbstractStepInterpolator.getInterpolatedTime()
DerivativeException - if this call induces an automatic
step finalization that throws oneAbstractStepInterpolator.getInterpolatedDerivatives()
protected void computeInterpolatedStateAndDerivatives(double theta,
double oneMinusThetaH)
computeInterpolatedStateAndDerivatives in class AbstractStepInterpolatortheta - normalized interpolation abscissa within the step
(theta is zero at the previous time step and one at the current time step)oneMinusThetaH - time gap between the interpolated time and
the current time
public void writeExternal(java.io.ObjectOutput out)
throws java.io.IOException
writeExternal in interface java.io.ExternalizablewriteExternal in class AbstractStepInterpolatorjava.io.IOException
public void readExternal(java.io.ObjectInput in)
throws java.io.IOException,
java.lang.ClassNotFoundException
readExternal in interface java.io.ExternalizablereadExternal in class AbstractStepInterpolatorjava.io.IOException
java.lang.ClassNotFoundException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||