使用
定义一个函数f = inline('x+P1*P2-P3',3);
可以计算f(1,2,3,4)
,f(0,1,2,1)
等
我应该如何编写函数f
,以便我可以使用1:4
或[2,3,6,4]
等向量作为输入?
答案 0 :(得分:5)
发布的代码可以使用,因为弃用的inline
:
inline(expr,n)
其中n
是标量,构造一个内联函数,其输入参数为x
,P1
,P2
,....
注意:" inline
将在以后的版本中删除。请改用Anonymous Functions。"
注意到该注释,您可以通过执行以下操作复制已发布代码的行为:
f = @(x,P1,P2,P3) x+P1*P2-P3;
您还可以通过拥有x
并将其编入索引在匿名函数的正文中来获得所需的行为:
f = @(x) x(1)+x(2)*x(3)-x(4);
答案 1 :(得分:0)
我刚刚从这两个答案中学到了:
关键字为Comma-Separated Lists。人们可以简单地使用
f = inline('x+P1*P2-P3',3);
a = [1,2,3,4]; % or a = 1:4;
c = num2cell(a);
f(c{:})