matlab - 如何在matlab中将数组拆分为参数值?

标签 matlab function

在我的 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/

相关文章:

c++ - 用c++和mex输出一个矩阵

javascript - 将 JavaScript 数组传递给函数

javascript - QT-Quick 中的 Javascript 中的 openDatabaseSync

arrays - 如何根据条件将新值添加到matlab表中?

postgresql - 在函数postgres中分配参数

function - +1 和 -1 的区别

python - Python 如何将表达式作为函数的参数?

optimization - MATLAB 中排序向量的速度增强

c - 通过 mex 传回数组

excel - RMS 误差、AME、文本文件的相关性以及在 matlab 中导出 excel 中的汇总统计数据