首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MATLAB -输入参数不足

MATLAB -输入参数不足
EN

Stack Overflow用户
提问于 2017-03-13 08:38:02
回答 2查看 1.8K关注 0票数 0

我是MATLAB的新手。我编写的代码实际上是基本的。我靠它来实现CFD的数值方法。我试图找出f的位置,如下图所示-f在右边

我在编辑器中编写了一个代码来计算给定的x值和给定的n度的f。

代码语言:javascript
运行
复制
function result = myFunc(n,x)
    % C = [1, 1./[1:n]];
    % above expression means the following:
    C = [1];
    vec = [1:n];
    C = [C, 1./vec];
    a = [1, x.^vec];
    result = C.*a;
end

当我从命令窗口调用myFunc时(如上面所示),我得到了一个错误(如上面所示)。我在这里看到了一些帖子,上面写着点击绿色运行按钮。我可以这样做,但我也想使用命令窗口来完成它。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-13 13:13:09

我认为您需要了解MATLAB是如何处理函数调用的。MATLAB在使用命令提示符时使用文件名。通过在命令提示符中调用"myFunc“,MATLAB在MATLAB路径上搜索名为myFunc.m的文件,并运行该文件中的第一个函数(如果文件中定义了一个函数)。传递给myFunc()的参数将直接传递给函数。清洗:

假设文件foo.m包含以下内容

代码语言:javascript
运行
复制
function bar(input)
    print input
end

写作时

代码语言:javascript
运行
复制
foo("Hello World");

MATLAB搜索文件foo.m,找到函数栏(输入),并使用给定的参数"Hello“调用函数。"Hello“出现在命令提示符中。然而,打电话

代码语言:javascript
运行
复制
bar("Hello World")

将导致错误,因为路径上没有文件bar.m。

强烈建议将文件中的第一个函数命名为与文件名本身相同的函数。但这并不是必需的。

希望这能帮点忙

票数 1
EN

Stack Overflow用户

发布于 2017-03-13 08:52:31

在运行myFunc时,您丢失了输入参数。

你在你的职能中说过

代码语言:javascript
运行
复制
 results = myFunc(n,x)

这意味着每当您调用myFunc时,都必须有这些变量。

下一次输入

代码语言:javascript
运行
复制
 results = myFunc(10,2)

或者任何其他的数字,它应该可以工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42759361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档