通过卡普(Cash Karp)方法求解带初始条件的常微分方程。


icon

输入/输出

  • c1dstr.png X(变量名)

    X是变量字符串数组。

  • cdbl.png 开始时间

    起始时间是常微分方程(ODE)的开始点。默认值为0。

  • cdbl.png 结束时间

    结束时间是待测时间区间的结束点。默认值为1.0。

  • cdbl.png h(步长)

    h是算法开始时的步长。Cash Karp算法的步长可以调整。默认值为0.1。

  • c1ddbl.png X0

    X0是描述开始条件的向量,x[10], …, x[n0]。

    X0X的分量一一对应。

  • cdbl.png 精度

    精度用于控制解法的精度。默认值为0.0,用于指定计算值与实际值之间的最大偏差。

  • cstr.png 时间

    时间是时间变量的字符串表示。默认的变量为t。

  • c1dstr.png F(X,t) (常微分方程右侧 作为X和t的函数)

    F(X,t)该一维数组用于表示微分方程的右端项。公式可包含任意数量的有效变量

  • i1ddbl.png 时间

    时间是用于表示时间步长的一维数组。ODE Cash Karp在开始时间结束时间之间可以产生随机的时间步长。

  • i2ddbl.png X值(解)

    X值是解向量x[10], …, x[n]组成的二维数组。

    顶层索引是时间数组中指定的时间步长,底层索引是元素x[10], …, x[n]。

  • iu32.png 时钟滴答

    计时是用于整个计算的时间,以毫秒为单位。

  • ii32.png 错误

    错误返回VI的任何错误或警告。使用错误的XX0F(X,t)输入会导致错误。将错误连接至错误代码至错误簇转换VI,可将错误代码或警告转换为错误簇。

  • 卡普法会自动调节步长,计算效率高于欧拉方法和库塔方法。卡普方法内嵌库塔公式,是五阶方法,分为六步。

    其中

    tn + 1 = tn + h

    The a2, …, a6b21, …, b65c1, …, c6以及c1*, …, c6*是确定的实数。该选项可确定方法的效果。

    你可以借助 精度 值、旧的步长 h、差值Δ=|X(tn +1)- X*(tn +1)|,以及以下公式来确定实际步长hnew

    注: 时间中的最后一个元素可能大于结束时间。这是Cash Karp方法的一个属性。该方法十分精确,但是步长无法控制。为保证结束时间中指定的点有效,最后步长可能较长。

    下图为常微分方程组解的三维表示。

    在前面板上输入方程和边界条件:

    • 开始时间0.00
    • 结束时间40.00
    • X0: [0.6, 0.6, 0.6]
    • F(X,t): [10*(y - x), x*(28 - z) - y, x*y - (8/3)*z]
    • X: [x, y, z]

    范例

    请参考LabVIEW附带的下列范例文件。

    • labview\examples\Mathematics\Differential Equations - ODE\Planar Three Body Problem.vi