MATLAB中的未定义变量

时间:2011-10-22 01:36:49

标签: matlab function-call

我是MATLAB的新手。我已经编写了一个代码来对数据进行上采样。执行时总是会抛出特定错误(下面)

???输入参数“n”未定义。 ==>中的错误上升到7点 毫米=分钟(n)的

但是当我写这篇文章的时候。输出[n1,y] = upsamp([1,2,3,4,5,6], - 1:4,3)命令窗口,它显示正确的上采样数据及其数字。

然后为什么错误突然出现?或者我只需单击运行按钮,错误就会显示在命令窗口中。

请帮我调试一下这个错误:

我的代码是

function[n1,y]=upsamp(n,x,I)

mm=min(n)
mx=max(n)
n1=mm*I:(mx*I+I-1)
x1=x'
x1=[x1,zeros(length(x),I-1)]
x1=x1'
y=(x1(:))'

subplot(2,1,1)
stem(n,x)
title('original sequence ')
xlabel('Range')
ylabel('sequence')

subplot(2,1,2)
stem(n1,y)
title(' unsampling')
xlabel('Range')
ylabel('sequence')

end

3 个答案:

答案 0 :(得分:3)

正如其他人所说,如果你想运行一个接受输入参数的函数,你必须使用任何必需的参数从命令提示符手动调用它。

否则,如果您想使用编辑器中的运行按钮(F5),请考虑创建run configuration(可以在smart {{3}中使用它们})

run_configuration

答案 1 :(得分:1)

“运行”按钮仅用于脚本(即只是顶部没有“功能”的简单语句列表)。这是一个函数,所以它只能从你描述的matlab命令行调用。

答案 2 :(得分:0)

运行按钮调用没有参数的函数。

由于函数的参数是非可选的,因此会出错。

从交互式命令窗口调用您的函数,或编写提供适当参数的简短脚本,并使用带有该脚本的“运行”按钮。您仍然可以单步进入您的功能。