T
- the type of the field elementspublic interface FieldSecondaryEquations<T extends RealFieldElement<T>>
In some cases users may need to integrate some problem-specific equations along with a primary set of differential equations. One example is optimal control where adjoined parameters linked to the minimized Hamiltonian must be integrated.
This interface allows users to add such equations to a primary set of first order differential equations
thanks to the FieldExpandableODE.addSecondaryEquations(FieldSecondaryEquations)
method.
FirstOrderFieldDifferentialEquations
,
FieldExpandableODE
Modifier and Type | Method and Description |
---|---|
T[] |
computeDerivatives(T t,
T[] primary,
T[] primaryDot,
T[] secondary)
Compute the derivatives related to the secondary state parameters.
|
int |
getDimension()
Get the dimension of the secondary state parameters.
|
void |
init(T t0,
T[] primary0,
T[] secondary0,
T finalTime)
Initialize equations at the start of an ODE integration.
|
int getDimension()
void init(T t0, T[] primary0, T[] secondary0, T finalTime)
This method is called once at the start of the integration. It may be used by the equations to initialize some internal data if needed.
t0
- value of the independent time variable at integration startprimary0
- array containing the value of the primary state vector at integration startsecondary0
- array containing the value of the secondary state vector at integration startfinalTime
- target time for the integrationT[] computeDerivatives(T t, T[] primary, T[] primaryDot, T[] secondary) throws MaxCountExceededException, DimensionMismatchException
t
- current value of the independent time variableprimary
- array containing the current value of the primary state vectorprimaryDot
- array containing the derivative of the primary state vectorsecondary
- array containing the current value of the secondary state vectorMaxCountExceededException
- if the number of functions evaluations is exceededDimensionMismatchException
- if arrays dimensions do not match equations settingsCopyright © 2003–2016 The Apache Software Foundation. All rights reserved.