矩阵维度与bsxfun函数不一致

时间:2015-08-26 02:32:53

标签: matlab matrix

TpAf从1变为2时,我希望找到bsxfun(a,b)}中给定X组的最大值,{ {1}}从0到1不等。此外,我想找到相应的YX值。

我尝试为不同的Y对创建矩阵TpAf。但我的matlab代码中存在Matrix维度问题。

有人可以帮我纠正一下吗?

(X,Y)

请注意,function HyAf clear all hvar=0.1:0.2:1; hl=length(hvar); hfix=1.1*ones(1,hl); a=hvar; b=hfix; HybAfAvar = zeros(hl,4); HybAfAvar(:,1) =hvar; stepX=0.2; X0=1.1; X=X0:stepX:1.8; stepY=0.1; Y0=0.1; Y=Y0:stepY:1; for k=1:hl TpAf = bsxfun(@times,log(1 + (2*a(k).^2*b(k)*(1 - 1./X).*(2./Y - X))./(1 +2*a(k)*(1 - 1./X) + a(k)*b(k)*(2./Y - X))).',Y./2); [HybAfAvar(k,2), ind] =max(max(TpAf)); [i, j] = ind2sub(size(TpAf),find(TpAf==HybAfAvar(k,2))); HybAfAvar(k,3)=Y0+(i-1)*stepY; HybAfAvar(k,4)=X0+(j-1)*stepX; end HybAfAvar stepX可能不同,如果我的代码运行良好,我可能会将这些值更改为非常小的值,例如0.0001。

0 个答案:

没有答案