private static class JacobianMatrices.MainStateJacobianWrapper extends java.lang.Object implements MainStateJacobianProvider
| Modifier and Type | Field and Description |
|---|---|
private double[] |
hY
Steps for finite difference computation of the jacobian df/dy w.r.t.
|
private FirstOrderDifferentialEquations |
ode
Raw ODE without jacobians computation skill to be wrapped into a MainStateJacobianProvider.
|
| Constructor and Description |
|---|
JacobianMatrices.MainStateJacobianWrapper(FirstOrderDifferentialEquations ode,
double[] hY)
Wrap a
FirstOrderDifferentialEquations into a MainStateJacobianProvider. |
| Modifier and Type | Method and Description |
|---|---|
void |
computeDerivatives(double t,
double[] y,
double[] yDot)
Get the current time derivative of the state vector.
|
void |
computeMainStateJacobian(double t,
double[] y,
double[] yDot,
double[][] dFdY)
Compute the jacobian matrix of ODE with respect to main state.
|
int |
getDimension()
Get the dimension of the problem.
|
private final FirstOrderDifferentialEquations ode
private final double[] hY
public JacobianMatrices.MainStateJacobianWrapper(FirstOrderDifferentialEquations ode, double[] hY) throws DimensionMismatchException
FirstOrderDifferentialEquations into a MainStateJacobianProvider.ode - original ODE problem, without jacobians computation skillhY - step sizes to compute the jacobian df/dyDimensionMismatchException - if there is a dimension mismatch between
the steps array hY and the equation dimensionpublic int getDimension()
getDimension in interface FirstOrderDifferentialEquationspublic void computeDerivatives(double t,
double[] y,
double[] yDot)
throws MaxCountExceededException,
DimensionMismatchException
computeDerivatives in interface FirstOrderDifferentialEquationst - current value of the independent time variabley - array containing the current value of the state vectoryDot - placeholder array where to put the time derivative of the state vectorMaxCountExceededException - if the number of functions evaluations is exceededDimensionMismatchException - if arrays dimensions do not match equations settingspublic void computeMainStateJacobian(double t,
double[] y,
double[] yDot,
double[][] dFdY)
throws MaxCountExceededException,
DimensionMismatchException
computeMainStateJacobian in interface MainStateJacobianProvidert - 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 vectordFdY - placeholder array where to put the jacobian matrix of the ODE w.r.t. the main state vectorMaxCountExceededException - if the number of functions evaluations is exceededDimensionMismatchException - if arrays dimensions do not match equations settingsCopyright (c) 2003-2015 Apache Software Foundation