【问题标题】:Error with fde12 multiple initial conditions in MATLABMATLAB中的fde12多个初始条件错误
【发布时间】:2013-04-28 02:10:32
【问题描述】:

当我给出alpha>1 的值时,例如alpha=1.05,它给出了错误:

??? Error using ==> fde12 at 114
A not sufficient number of assigned initial conditions.
Order ALPHA = 1.050000 requires 2 initial conditions. See FDE12

当我将 y0 作为 2 个初始条件的向量时,它会给出错误的输出。我认为的原因是我从 ODE45 返回的两个值中为同一组参数提供了初始条件。我知道第二个初始条件必须仅从 fde12 迭代而来,但不知道该怎么做。

【问题讨论】:

    标签: matlab differential-equations


    【解决方案1】:

    y0的格式在函数描述中给出(调用help fde12):

    初始条件集合 Y0 是一个有行数的矩阵 等于问题的大小(因此等于 FDEFUN 的输出)和取决于 ALPHA 的列数和 由m给出。

    其中 m 是大于 ALPHA 的最小整数

    例如,您需要具有两个初始条件的行而不是向量(列)。

    【讨论】:

    • 问题是我在起点只有一个初始条件。一个初始条件足以求解 alpha
    • fde12 方法求解方程:"D^ALPHA Y(t) = FDEFUN(T,Y(T)), Y^(k)(T0) = Y0(:,k+1), k=0,...,m-1,其中 m 是大于 ALPHA 的最小整数,而 D^ALPHA 是根据 Caputo 定义的分数导数。”似乎不能随意选择 alpha 值,而应该根据初始方程设置 alpha。尝试查看 fde12 帮助中给出的参考论文。
    • 这正好回答了我的问题。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 2017-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-13
    • 1970-01-01
    相关资源
    最近更新 更多