MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [求助]请大家帮忙看看这个for 的问题, 谢谢各位高手的帮助! (https://www.labfans.com/bbs/showthread.php?t=3321)

hata7451321 2008-05-28 20:17

[求助]请大家帮忙看看这个for 的问题, 谢谢各位高手的帮助!
 
请大家帮忙看看这个for 的问题, 谢谢各位高手的帮助!

求救!!

core_radius=31.25;
nco=1.45;
ncl=1.44;
wavelength=850*(10^-3);
nd=(nco^2-ncl^2)/(2*(nco^2));
totalmgn=((2*pi*core_radius*nco)/wavelength)*((nd/2)^(1/2));
totalmgn=round(totalmgn);
azimuthno1=0:1:(totalmgn-1);
radialno1=0:1:floor((totalmgn-1)/2);
[lm,nm]=meshgrid(azimuthno1,radialno1);
LM=reshape(lm,1,[]);
NM=reshape(nm,1,[]);
Q=2.*NM+LM+1;
MGN=[1:3];
for i=1:1:length(MGN)
QQ(i,:)=find(Q==MGN(i))
end

??? Subscripted assignment dimension mismatch. 这个是错误信息

fgabertb 2008-05-30 13:36

QQ(i,:)=find(Q==MGN(i))

這行不對了

因為每一個row 的長度不會一樣長 所以沒法構成矩陣 錯在這邊

如果把 find() 拿掉 就可以跑了

不過我是不懂你最後需要的是啥:smile:

zhanhuichong 2008-05-31 16:48

QQ(i,:)=find(Q==MGN(i))
错误下表没法统一
使用cell{i}=find(Q==MGN(i))就好了


所有时间均为北京时间。现在的时间是 03:05

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.