调用在matlab中创建函数之前的变量

时间:2014-06-23 19:35:05

标签: matlab

我的功能如下:

[function y = testf (x, beta, z)
y = sin (beta*z*x)./(x-z).^beta;]

我的函数名称是ave,但是当我在Matlab中调用ave时出现此错误:

[Input argument "beta" is undefined

Error in ==> ave at 2
y =sin (beta*z*x)./(x-z).^beta;]

我的问题是什么?

1 个答案:

答案 0 :(得分:1)

如果您从Matlab发布源代码和实际错误,这可能会有所帮助。你的问题有点不清楚。但是,它似乎是您的范围的问题。如果在函数外部创建变量,则必须将其传递给该函数才能使函数看到它。

例如:

a = 1
b = 2
myfunction(b):
    return a + b

会失败。该函数不知道a是什么,即使它已经初始化某处。以下工作:

a = 1
b = 2
myfunction(a, b):
    return a + b

修改:删除随机c变量。