【问题标题】:Not enough input arguments for xdotxdot 的输入参数不足
【发布时间】:2015-03-26 01:51:31
【问题描述】:

我经常收到以下错误,即我的代码没有足够的输入参数,如下所示。错误发生在xdot(1,1) 行。该脚本是主脚本的功能。我应该怎么做才能纠正这个问题?

function xdot = ILS_Mdl(x,Psi_c)

global Ta Ka Tau g Vt Kr Kv Kd 

xdot(1,1) = x(2);

【问题讨论】:

    标签: matlab


    【解决方案1】:

    这个错误很明显。这意味着您正在尝试在没有任何输入参数的情况下运行该函数。我的猜测是您正试图通过按下编辑器中的“播放”按钮来运行此代码。不要那样做……为了所有 MATLAB 和神圣的爱……请不要那样做。在您作为 MATLAB 开发人员的余下时间中,请忽略该播放按钮。播放按钮本质上是尝试在没有输入参数的情况下运行您的脚本,因此这就是您收到该错误的原因。

    我唯一会考虑按下“播放”按钮的情况是,如果您的文件只是一个脚本文件......在这种情况下......那没关系......但是在函数脚本文件的播放按钮上不可用。

    实际上在命令提示符下运行该函数,或者从尝试运行该代码的任何脚本中调用它。因此,要么进入你的 MATLAB 命令提示符,要么进入你的脚本并实际输入:

    xdot = ILS_Mdl(x,Psi_c);
    

    确保xPsi_c 在运行上述代码之前 之前首先定义,所以它真的是:​​

    %// Define x, and Psi_c here
    x = [1 2 3];
    Psi_c = 4;
    
    xdot = ILS_Mdl(x, Psi_c);
    

    xdot 应包含一个 5 元素向量,用于计算您的预期结果。

    【讨论】:

    • 您好,谢谢您的回复。该函数的最终输出会生成一个图表,但是如果我手动输入代码以运行,我的代码不会绘制图表吗?不确定我是否在这里清楚。感谢您的帮助!
    • @Bamboozled - 请发布您的整个代码。在如此简陋的背景下,很难看出你实际上在做什么。
    • 如果您手动运行该函数,则不应绘制图形。 ILS_Mdl 只返回一个 5 元素向量。
    • 这是否意味着为了获得最终输出,我必须使用播放按钮来运行整个代码?而不是手动输入命令并仅获取该特定部分的输出
    • 是的。如果这只是一个脚本,您可以安全地使用播放按钮。不要将 play 用于函数脚本文件。但是,当您运行上述代码时,xdot 应该是您工作区中的一个变量,它将为您提供所需的内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    • 2013-12-25
    相关资源
    最近更新 更多