在我的 matlab 脚本中,我有一个函数处理程序
F=@(x1,x2)6+2*x1^1+3*x2^2;
这给了我一个名为 F
的匿名函数,它接受 2 个参数并返回值。我还有一个值数组
x = [1 2];
有了上面的内容,我该怎么办
F(x)
换句话说,类似于 F(1, 2)
但我想使用 x
,我不想对值进行硬编码,而且它还需要为了适用于任何维度大小,我不想像上面的示例那样对二维进行硬编码。基本上我正在寻找的是一种将数组转换为参数的方法。
这可以在 matlab 中完成吗?
谢谢
最佳答案
要将数组转换为其参数:首先将数组转换为元胞数组(使用 num2cell
),然后将元胞数组转换为 comma-separated list (使用 {:}
):
xcell = num2cell(x);
F(xcell{:})
关于matlab - 如何在matlab中将数组拆分为参数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22234330/