org.apache.commons.math4.ode.sampling

## Class NordsieckStepInterpolator

• ### Field Summary

Fields
Modifier and Type Field and Description
protected double[] stateVariation
State variation.
• ### Fields inherited from class org.apache.commons.math4.ode.sampling.AbstractStepInterpolator

currentState, h, interpolatedDerivatives, interpolatedPrimaryDerivatives, interpolatedPrimaryState, interpolatedSecondaryDerivatives, interpolatedSecondaryState, interpolatedState, interpolatedTime
• ### Constructor Summary

Constructors
Constructor and Description
NordsieckStepInterpolator()
Simple constructor.
NordsieckStepInterpolator(NordsieckStepInterpolator interpolator)
Copy constructor.
• ### Method Summary

All Methods
Modifier and Type Method and Description
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(ObjectInput in)
void reinitialize(double[] y, boolean forward, EquationsMapper primaryMapper, EquationsMapper[] secondaryMappers)
Reinitialize the instance.
void reinitialize(double time, double stepSize, double[] scaledDerivative, Array2DRowRealMatrix nordsieckVector)
Reinitialize the instance.
void rescale(double stepSize)
Rescale the instance.
void writeExternal(ObjectOutput out)
• ### Methods inherited from class org.apache.commons.math4.ode.sampling.AbstractStepInterpolator

copy, doFinalize, finalizeStep, getCurrentTime, getGlobalCurrentTime, getGlobalPreviousTime, getInterpolatedDerivatives, getInterpolatedSecondaryDerivatives, getInterpolatedSecondaryState, getInterpolatedState, getInterpolatedTime, getPreviousTime, isForward, readBaseExternal, setInterpolatedTime, setSoftCurrentTime, setSoftPreviousTime, shift, storeTime, writeBaseExternal
• ### Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
• ### Field Detail

• #### stateVariation

protected double[] stateVariation
State variation.
• ### Constructor Detail

• #### NordsieckStepInterpolator

public NordsieckStepInterpolator(NordsieckStepInterpolator interpolator)
Copy constructor.
Parameters:
interpolator - interpolator to copy from. The copy is a deep copy: its arrays are separated from the original arrays of the instance
• ### Method Detail

• #### doCopy

protected StepInterpolator doCopy()
Really copy the finalized instance.

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.

Specified by:
doCopy in class AbstractStepInterpolator
Returns:
a copy of the finalized instance
• #### reinitialize

public void reinitialize(double[] y,
boolean forward,
EquationsMapper primaryMapper,
EquationsMapper[] secondaryMappers)
Reinitialize the instance.

Beware that all arrays must be references to integrator arrays, in order to ensure proper update without copy.

Overrides:
reinitialize in class AbstractStepInterpolator
Parameters:
y - reference to the integrator array holding the state at the end of the step
forward - integration direction indicator
primaryMapper - equations mapper for the primary equations set
secondaryMappers - equations mappers for the secondary equations sets
• #### reinitialize

public void reinitialize(double time,
double stepSize,
double[] scaledDerivative,
Array2DRowRealMatrix nordsieckVector)
Reinitialize the instance.

Beware that all arrays must be references to integrator arrays, in order to ensure proper update without copy.

Parameters:
time - time at which all arrays are defined
stepSize - step size used in the scaled and Nordsieck arrays
scaledDerivative - reference to the integrator array holding the first scaled derivative
nordsieckVector - reference to the integrator matrix holding the Nordsieck vector
• #### rescale

public void rescale(double stepSize)
Rescale the instance.

Since the scaled and Nordsieck arrays are shared with the caller, this method has the side effect of rescaling this arrays in the caller too.

Parameters:
stepSize - new step size to use in the scaled and Nordsieck arrays
• #### getInterpolatedStateVariation

public double[] getInterpolatedStateVariation()
throws MaxCountExceededException
Get the state vector variation from current to interpolated state.

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.

Returns:
state vector at time AbstractStepInterpolator.getInterpolatedTime()
Throws:
MaxCountExceededException - if the number of functions evaluations is exceeded
See Also:
AbstractStepInterpolator.getInterpolatedDerivatives()
• #### computeInterpolatedStateAndDerivatives

protected void computeInterpolatedStateAndDerivatives(double theta,
double oneMinusThetaH)
Compute the state and derivatives at the interpolated time. This is the main processing method that should be implemented by the derived classes to perform the interpolation.
Specified by:
computeInterpolatedStateAndDerivatives in class AbstractStepInterpolator
Parameters:
theta - 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
• #### writeExternal

public void writeExternal(ObjectOutput out)
throws IOException
Specified by:
writeExternal in interface Externalizable
Specified by:
writeExternal in class AbstractStepInterpolator
Throws:
IOException
• #### readExternal

public void readExternal(ObjectInput in)
throws IOException,
ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Specified by:
readExternal in class AbstractStepInterpolator
Throws:
IOException
ClassNotFoundException

Copyright © 2003–2016 The Apache Software Foundation. All rights reserved.