类 JacobianMatrices
次级方程
。
它旨在与主要ODE集一起打包到一个ExpandableODE
中,该主要ODE集可以是:
为了计算相对于主要ODE集的某些参数的雅可比矩阵,可以设置以下参数雅可比提供者:
- 另请参阅:
-
嵌套类概要
-
构造器概要
构造器说明JacobianMatrices
(MainStateJacobianProvider jode, String... parameters) 已过时。计算雅可比矩阵的次级方程集的简单构造函数。JacobianMatrices
(OrdinaryDifferentialEquation fode, double[] hY, String... parameters) 已过时。计算雅可比矩阵的次级方程集的简单构造函数。 -
方法概要
修饰符和类型方法说明void
已过时。添加参数雅可比提供者。double[][]
extractMainSetJacobian
(ODEState state) 已过时。提取相对于状态的雅可比矩阵。double[]
extractParameterJacobian
(ODEState state, String pName) 已过时。提取相对于一个参数的雅可比矩阵。void
registerVariationalEquations
(ExpandableODE expandable) 已过时。将雅可比矩阵的变分方程注册到可扩展集中。void
setInitialMainStateJacobian
(double[][] dYdY0) 已过时。设置相对于状态的雅可比矩阵的初始值。void
setInitialParameterJacobian
(String pName, double[] dYdP) 已过时。设置相对于一个参数的雅可比矩阵的一列的初始值。void
已过时。void
setParametersController
(ParametersController parametersController) 已过时。设置参数雅可比提供者。void
setParameterStep
(String parameter, double hP) 已过时。设置与参数相关联的步长,以便通过有限差分计算雅可比矩阵。setUpInitialState
(ODEState initialState) 已过时。设置初始状态。
-
构造器详细资料
-
JacobianMatrices
public JacobianMatrices(OrdinaryDifferentialEquation fode, double[] hY, String... parameters) throws MathIllegalArgumentException 已过时。计算雅可比矩阵的次级方程集的简单构造函数。参数必须属于由
Parameterizable.getParametersNames()
给出的受支持参数之一,因此主要的微分方程集必须是Parameterizable
。请注意,每次选择都会清除先前选择的参数。
- 参数:
-
fode
- 要扩展的主要一阶微分方程集 -
hY
- 用于相对于状态向量进行有限差分计算的步长 -
parameters
- 要考虑用于雅可比矩阵处理的参数(如果不需要参数雅可比矩阵,则可以为null) - 抛出:
-
MathIllegalArgumentException
- 如果步长数组hY
与方程维度不匹配
-
JacobianMatrices
已过时。计算雅可比矩阵的次级方程集的简单构造函数。参数必须属于由
Parameterizable.getParametersNames()
给出的受支持参数之一,因此主要的微分方程集必须是Parameterizable
。请注意,每次选择都会清除先前选择的参数。
- 参数:
-
jode
- 要扩展的主要一阶微分方程集 -
parameters
- 要考虑用于雅可比矩阵处理的参数(如果不需要参数雅可比矩阵,则可以为null)
-
-
方法详细资料
-
registerVariationalEquations
public void registerVariationalEquations(ExpandableODE expandable) throws MathIllegalArgumentException, JacobianMatrices.MismatchedEquations 已过时。将雅可比矩阵的变分方程注册到可扩展集中。此方法必须在
setUpInitialState(ODEState)
之前调用- 参数:
-
expandable
- 要注册变分方程的可扩展集 - 抛出:
-
MathIllegalArgumentException
- 如果部分状态的维度与所选方程集的维度不匹配 -
JacobianMatrices.MismatchedEquations
- 如果可扩展集的主要集与用于构建实例的主要集不匹配 - 另请参阅:
-
setUpInitialState
已过时。设置初始状态。此方法通过覆盖与实例对应的附加状态组件将初始雅可比矩阵数据插入到一个
ODE state
中。必须在积分方程之前调用此方法。此方法必须在之后
registerVariationalEquations(ExpandableODE)
,setInitialMainStateJacobian(double[][])
和setInitialParameterJacobian(String, double[])
之后调用。- 参数:
-
initialState
- 初始状态,不包括初始雅可比矩阵 - 返回:
- 初始化良好的初始雅可比矩阵数据的新实例状态
-
addParameterJacobianProvider
已过时。添加参数雅可比提供者。- 参数:
-
provider
- 用于精确计算参数雅可比矩阵的参数雅可比提供者
-
setParameterizedODE
已过时。as of 1.0, replaced withsetParametersController(ParametersController)
设置参数雅可比提供者。- 参数:
-
pc
- 使用有限差分计算参数雅可比矩阵的控制器
-
setParametersController
已过时。设置参数雅可比提供者。- 参数:
-
parametersController
- 使用有限差分计算参数雅可比矩阵的控制器
-
setParameterStep
已过时。设置与参数关联的步长,以便通过有限差分计算雅可比矩阵。仅在主ODE集是
ParametersController
时才需要。给定参数的非零值pval,这样的步长的合理值为
pval * FastMath.sqrt(Precision.EPSILON)
。这样的步长为零将无法计算参数雅可比矩阵。
- 参数:
-
parameter
- 用于雅可比处理的参数 -
hP
- 与指定参数相关的雅可比有限差分计算的步长 - 抛出:
-
MathIllegalArgumentException
- 如果不支持该参数 - 另请参阅:
-
setInitialMainStateJacobian
已过时。设置与状态相关的雅可比矩阵的初始值。如果未调用此方法,则与状态相关的雅可比矩阵的初始值将设置为单位矩阵。
必须在
setUpInitialState(ODEState)
之前调用此方法- 参数:
-
dYdY0
- 与状态相关的雅可比矩阵的初始值 - 抛出:
-
MathIllegalArgumentException
- 如果矩阵维度不正确
-
setInitialParameterJacobian
public void setInitialParameterJacobian(String pName, double[] dYdP) throws MathIllegalArgumentException 已过时。设置与一个参数相关的雅可比矩阵的一列的初始值。如果未为某个参数调用此方法,则与该参数相关的雅可比矩阵的一列的初始值将设置为零。
必须在
setUpInitialState(ODEState)
之前调用此方法- 参数:
-
pName
- 参数名称 -
dYdP
- 与参数相关的雅可比列向量的初始值 - 抛出:
-
MathIllegalArgumentException
- 如果不支持参数 -
MathIllegalArgumentException
- 如果列向量与状态维度不匹配
-
extractMainSetJacobian
已过时。提取与状态相关的雅可比矩阵。- 参数:
-
state
- 从中提取雅可比矩阵的状态 - 返回:
- 与状态相关的雅可比矩阵dY/dY0。
-
extractParameterJacobian
已过时。提取与一个参数相关的雅可比矩阵。- 参数:
-
state
- 从中提取雅可比矩阵的状态 -
pName
- 计算雅可比矩阵的参数名称 - 返回:
- 与命名参数相关的雅可比矩阵dY/dP
-
VariationalEquation