【问题标题】:Error when plotting in Octave在 Octave 中绘图时出错
【发布时间】:2017-06-03 20:04:44
【问题描述】:

在 Octave 4.0.2 中,我定义了一个函数 S,如下所示:

S = @(x) (Y(k)+((Y(k+1)-Y(k))/h(k)-(2*M(k)+M(k+1))*h(k)/6)*(x-X(k))+M(k)*(k-X(k))^2/2+(M(k+1)-M(k))*(x-X(k))^3/(6*h(k)))

当我调用它来评估区间 [X(k), X(k+1)] 中的数字时,我得到了我期望的结果,但是当我尝试使用以下命令绘制它时:

fplot(S, [X(k), X(k+1)]); hold on;

我收到错误“错误:对于 A^b,A 必须是方阵。使用 .^ 表示元素幂。”

发生了什么事?

【问题讨论】:

    标签: matlab plot octave


    【解决方案1】:

    好的,我发现在将函数传递给 fplot 时,它必须能够获取输入向量并返回输出向量。

    【讨论】:

    • 您可以使用 ezplot 绕过该要求,即使最好也使用矢量化函数。但总的来说,您的问题措辞非常糟糕,您未定义的匿名函数中有 5 件事
    猜你喜欢
    • 2018-06-20
    • 1970-01-01
    • 2014-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-07
    相关资源
    最近更新 更多