Package org.hipparchus.ode
Interface ODEJacobiansProvider
-
- All Superinterfaces:
NamedParameterJacobianProvider
,OrdinaryDifferentialEquation
,Parameterizable
public interface ODEJacobiansProvider extends OrdinaryDifferentialEquation, NamedParameterJacobianProvider
Interface expandingfirst order differential equations
in order to compute exactly the Jacobian matrices forpartial derivatives equations
.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description double[][]
computeMainStateJacobian(double t, double[] y, double[] yDot)
Compute the Jacobian matrix of ODE with respect to state.default double[]
computeParameterJacobian(double t, double[] y, double[] yDot, String paramName)
Compute the Jacobian matrix of ODE with respect to one parameter.default List<String>
getParametersNames()
Get the names of the supported parameters.default boolean
isSupported(String name)
Check if a parameter is supported.-
Methods inherited from interface org.hipparchus.ode.OrdinaryDifferentialEquation
computeDerivatives, getDimension, init
-
-
-
-
Method Detail
-
computeMainStateJacobian
double[][] computeMainStateJacobian(double t, double[] y, double[] yDot) throws MathIllegalArgumentException, MathIllegalStateException
Compute the Jacobian matrix of ODE with respect to state.- Parameters:
t
- current value of the independent time variabley
- array containing the current value of the main state vectoryDot
- array containing the current value of the time derivative of the main state vector- Returns:
- Jacobian matrix of the ODE w.r.t. the main state vector
- Throws:
MathIllegalStateException
- if the number of functions evaluations is exceededMathIllegalArgumentException
- if arrays dimensions do not match equations settings
-
getParametersNames
default List<String> getParametersNames()
Get the names of the supported parameters.The default implementation has no parameters at all.
- Specified by:
getParametersNames
in interfaceParameterizable
- Returns:
- parameters names
- See Also:
Parameterizable.isSupported(String)
-
isSupported
default boolean isSupported(String name)
Check if a parameter is supported.Supported parameters are those listed by
Parameterizable.getParametersNames()
.The default implementation supports no parameters at all.
- Specified by:
isSupported
in interfaceParameterizable
- Parameters:
name
- parameter name to check- Returns:
- true if the parameter is supported
- See Also:
Parameterizable.getParametersNames()
-
computeParameterJacobian
default double[] computeParameterJacobian(double t, double[] y, double[] yDot, String paramName) throws MathIllegalArgumentException
Compute the Jacobian matrix of ODE with respect to one parameter.If the parameter does not belong to the collection returned by
Parameterizable.getParametersNames()
, the Jacobian will be set to 0, but no errors will be triggered.The default implementation supports no parameters at all.
- Specified by:
computeParameterJacobian
in interfaceNamedParameterJacobianProvider
- Parameters:
t
- current value of the independent time variabley
- array containing the current value of the main state vectoryDot
- array containing the current value of the time derivative of the main state vectorparamName
- name of the parameter to consider- Returns:
- Jacobian matrix of the ODE with respect to the parameter
- Throws:
MathIllegalArgumentException
- if arrays dimensions do not match equations settings
-
-