首页 > 解决方案 > 如何从 Matlab 中的 arrayfun 获取多个值

问题描述

我有以下示例代码。

clear
clc
a = 1:1000;
b = linspace(100,200,1000);     
x1 = arrayfun( @(v,w) fminsearch(@(x) (x(1)-v).^2 + (x(2)-w).^2, [1;1]), a, b, 'UniformOutput', false);

并且 x1 返回 1*1000 个单元格,每个单元格都给了我最小化器 v 和 w,它最小化了给定 v 和 w 的反对函数。

但是,我想获得 2 1000 双而不是 1 1000 单元格。

有什么办法可以让 x1 变成 2*1000?

提前致谢。

标签: matlab

解决方案


推荐阅读