类 JacobianMatrices

java.lang.Object
org.hipparchus.migration.ode.JacobianMatrices

@Deprecated public class JacobianMatrices extends Object
已过时。
as of 1.0, replaced with VariationalEquation
此类定义了一组用于计算相对于初始状态向量和主要ODE集的某些参数的雅可比矩阵的次级方程

它旨在与主要ODE集一起打包到一个ExpandableODE中,该主要ODE集可以是:

为了计算相对于主要ODE集的某些参数的雅可比矩阵,可以设置以下参数雅可比提供者:

另请参阅:
  • 构造器详细资料

    • JacobianMatrices

      public JacobianMatrices(OrdinaryDifferentialEquation fode, double[] hY, String... parameters) throws MathIllegalArgumentException
      已过时。
      计算雅可比矩阵的次级方程集的简单构造函数。

      参数必须属于由Parameterizable.getParametersNames()给出的受支持参数之一,因此主要的微分方程集必须是Parameterizable

      请注意,每次选择都会清除先前选择的参数。

      参数:
      fode - 要扩展的主要一阶微分方程集
      hY - 用于相对于状态向量进行有限差分计算的步长
      parameters - 要考虑用于雅可比矩阵处理的参数(如果不需要参数雅可比矩阵,则可以为null)
      抛出:
      MathIllegalArgumentException - 如果步长数组hY与方程维度不匹配
    • JacobianMatrices

      public JacobianMatrices(MainStateJacobianProvider jode, String... parameters)
      已过时。
      计算雅可比矩阵的次级方程集的简单构造函数。

      参数必须属于由Parameterizable.getParametersNames()给出的受支持参数之一,因此主要的微分方程集必须是Parameterizable

      请注意,每次选择都会清除先前选择的参数。

      参数:
      jode - 要扩展的主要一阶微分方程集
      parameters - 要考虑用于雅可比矩阵处理的参数(如果不需要参数雅可比矩阵,则可以为null)
  • 方法详细资料

    • registerVariationalEquations

      public void registerVariationalEquations(ExpandableODE expandable) throws MathIllegalArgumentException, JacobianMatrices.MismatchedEquations
      已过时。
      将雅可比矩阵的变分方程注册到可扩展集中。

      此方法必须在setUpInitialState(ODEState)之前调用

      参数:
      expandable - 要注册变分方程的可扩展集
      抛出:
      MathIllegalArgumentException - 如果部分状态的维度与所选方程集的维度不匹配
      JacobianMatrices.MismatchedEquations - 如果可扩展集的主要集与用于构建实例的主要集不匹配
      另请参阅:
    • setUpInitialState

      public ODEState setUpInitialState(ODEState initialState)
      已过时。
      设置初始状态。

      此方法通过覆盖与实例对应的附加状态组件将初始雅可比矩阵数据插入到一个ODE state中。必须在积分方程之前调用此方法。

      此方法必须在之后registerVariationalEquations(ExpandableODE)setInitialMainStateJacobian(double[][])setInitialParameterJacobian(String, double[])之后调用。

      参数:
      initialState - 初始状态,不包括初始雅可比矩阵
      返回:
      初始化良好的初始雅可比矩阵数据的新实例状态
    • addParameterJacobianProvider

      public void addParameterJacobianProvider(NamedParameterJacobianProvider provider)
      已过时。
      添加参数雅可比提供者。
      参数:
      provider - 用于精确计算参数雅可比矩阵的参数雅可比提供者
    • setParameterizedODE

      @Deprecated public void setParameterizedODE(ParametersController pc)
      已过时。
      设置参数雅可比提供者。
      参数:
      pc - 使用有限差分计算参数雅可比矩阵的控制器
    • setParametersController

      public void setParametersController(ParametersController parametersController)
      已过时。
      设置参数雅可比提供者。
      参数:
      parametersController - 使用有限差分计算参数雅可比矩阵的控制器
    • setParameterStep

      public void setParameterStep(String parameter, double hP) throws MathIllegalArgumentException
      已过时。
      设置与参数关联的步长,以便通过有限差分计算雅可比矩阵。

      仅在主ODE集是ParametersController时才需要。

      给定参数的非零值pval,这样的步长的合理值为pval * FastMath.sqrt(Precision.EPSILON)

      这样的步长为零将无法计算参数雅可比矩阵。

      参数:
      parameter - 用于雅可比处理的参数
      hP - 与指定参数相关的雅可比有限差分计算的步长
      抛出:
      MathIllegalArgumentException - 如果不支持该参数
      另请参阅:
    • setInitialMainStateJacobian

      public void setInitialMainStateJacobian(double[][] dYdY0) throws MathIllegalArgumentException
      已过时。
      设置与状态相关的雅可比矩阵的初始值。

      如果未调用此方法,则与状态相关的雅可比矩阵的初始值将设置为单位矩阵。

      必须在setUpInitialState(ODEState)之前调用此方法

      参数:
      dYdY0 - 与状态相关的雅可比矩阵的初始值
      抛出:
      MathIllegalArgumentException - 如果矩阵维度不正确
    • setInitialParameterJacobian

      public void setInitialParameterJacobian(String pName, double[] dYdP) throws MathIllegalArgumentException
      已过时。
      设置与一个参数相关的雅可比矩阵的一列的初始值。

      如果未为某个参数调用此方法,则与该参数相关的雅可比矩阵的一列的初始值将设置为零。

      必须在setUpInitialState(ODEState)之前调用此方法

      参数:
      pName - 参数名称
      dYdP - 与参数相关的雅可比列向量的初始值
      抛出:
      MathIllegalArgumentException - 如果不支持参数
      MathIllegalArgumentException - 如果列向量与状态维度不匹配
    • extractMainSetJacobian

      public double[][] extractMainSetJacobian(ODEState state)
      已过时。
      提取与状态相关的雅可比矩阵。
      参数:
      state - 从中提取雅可比矩阵的状态
      返回:
      与状态相关的雅可比矩阵dY/dY0。
    • extractParameterJacobian

      public double[] extractParameterJacobian(ODEState state, String pName)
      已过时。
      提取与一个参数相关的雅可比矩阵。
      参数:
      state - 从中提取雅可比矩阵的状态
      pName - 计算雅可比矩阵的参数名称
      返回:
      与命名参数相关的雅可比矩阵dY/dP