我的教授给了我一个简单的练习,即定义一个特殊的功能。这是我的功能
function [a,b,c] = PHUN([x,y],[z,t,w])
a = x
b = ((y+z)^2)*t
c = z/w + x
然而,matlab声明我在第一行使用了无效语法。所以,我想,也许有一种特殊的方式可以输入矢量输入。我已尝试使用向量输入(或参数)定义函数的几次搜索,但尚未成功。我想知道是否有人可以帮助我。
答案 0 :(得分:1)
您可以像传递变量一样传递矢量作为参数。然后适当地在函数体中访问它们。您的功能可以重写如下:
function [a,b,c] = PHUN(X,Y)
a = X(1)
b = ((X(2)+Y(1))^2)*Y(2)
c = Y(1)/Y(3) + X(1)
或者如果你想保留原始变量:
function [a,b,c] = PHUN(X,Y)
Z = num2cell([X,Y]);
[x,y,z,t,w] = Z{:};
a = x
b = ((y+z)^2)*t
c = z/w + x