我想知道如何将一个向量放入函数的参数中。让用户输入向量x=[x1 x2]
和系数a, b
。我们的任务是例如绘制线性函数a*x+b
的图形,其中x=[x1 x2]
。我认为开头可能是这样的:
function L = linear([x1 x2], a, b)
....
y = [x1 x2] * a + b
plot ([x1 x2], y)
不幸的是,这一切都是错的。 Matlab仍然报告错误。救命。感谢
答案 0 :(得分:1)
Matlab不允许您为单个输入指定两个变量。这里有两个选择。首先,您可以将x1和x2指定为单独的参数:
function L = linear(x1,x2,a,b)
其次,您可以保留作为单个输入并索引两个变量:
function L = linear(x,a,b)
x1 = x(1);
x2 = x(2);
另一个注意事项 - 在您展示的代码中,您只使用[x1 x2]
并且永远不会将它们分开。您甚至不需要像我在上面的选项2中那样定义x1
和x2
。混淆可能是因为您在调用函数中单独定义它们。在这种情况下,您可以调用函数(不是定义),如您最初描述的那样:linear([x1 x2],a,b);