如何将向量置于函数的论证中?

时间:2014-04-17 12:15:54

标签: matlab

我想知道如何将一个向量放入函数的参数中。让用户输入向量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仍然报告错误。救命。感谢

1 个答案:

答案 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中那样定义x1x2。混淆可能是因为您在调用函数中单独定义它们。在这种情况下,您可以调用函数(不是定义),如您最初描述的那样:linear([x1 x2],a,b);