我在MATLAB中有两个变量的函数。我想修复一个变量,获取结果函数的最大值,然后更改变量的值并再次获得最大值,依此类推。如何在一步或一个向量中获得所有最终的最大值?第二个变量的变化是连续变量,而不是离散变量。
答案 0 :(得分:0)
这项工作的一些变化适合你?
function main
clear all, close all
sizer = floor(rand(1) .* 10 + 1)
X = ceil(rand(sizer,1) .* 10)
Y = floor(rand(sizer,1) .* 10)
Z = Zmax(X, Y, sizer)
function Z = Zmax(X, Y, sizer)
Z = zeros(size(sizer));
for i = 1:1:sizer
Z(i) = max([X(i), Y(i)]);
end
Z = Z';
end
end
您可能需要将此添加到Zmax,因为您的第二个变量具有连续变化:http://www.mathworks.com/help/curvefit/fnval.html
答案 1 :(得分:0)
谢谢你们,但是要解决这个问题。我只是在循环中改变变量并将相应的最大值存储在一个数组中。这份工作对我来说.. :))