[討論] 請問如何將單狹縫繞射複製成多狹縫繞射

看板MATLAB作者 (RedSun)時間1年前 (), 編輯推噓2(206)
留言8則, 3人參與, 1年前最新討論串1/1
各位好,我想請問個問題。 請問如何將單狹縫繞射複製成多狹縫繞射 變成2*2個或是 4*4個 試過用迴圈寫,可是一直沒辦法成功 以下是我的單狹縫繞射 clc clear all lambda=632e-9; k=(2*pi)/lambda; a=1e-3; b=4e-3; Io = 100.0; R = 1; Y = (-0.4e-2:1e-5:0.4e-2); Z=Y ; beta = k*b*Y/(2*R*pi); alpha = k*a*Z/(2*R*pi); for i=1:length(Y) for j=1:length(Z) I(i,j)=Io.*((sinc(alpha(j)).^2).*(sinc(beta(i))).^2); end end figure(1) imshow(I) title('Fraunhofer Diffraction','fontsize',14) fh = figure(1); set(fh, 'color', 'white'); ----- Sent from JPTT on my iPhone -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.194.128.204 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1575805529.A.89E.html

12/10 03:17, 1年前 , 1F
Y, Z 可以用meshgrid 或 ndgrid 產生,就可以用矩陣運
12/10 03:17, 1F

12/10 03:17, 1年前 , 2F
算避開for
12/10 03:17, 2F

12/10 03:17, 1年前 , 3F
我對你要的繞射不太理解,不過我猜應該是想更改 Y, Z
12/10 03:17, 3F

12/10 03:17, 1年前 , 4F
產生新的 I 吧?
12/10 03:17, 4F

12/10 03:17, 1年前 , 5F
就一樣的做法加個位移量在 Y, Z 上就可以了吧?
12/10 03:17, 5F

12/10 10:52, 1年前 , 6F
你要的是新的物理公式吧?
12/10 10:52, 6F

12/27 10:37, 1年前 , 7F
多狹縫應該是干涉了吧 不能直接用兩個繞射疊加 你要帶入
12/27 10:37, 7F

12/27 10:37, 1年前 , 8F
相位計算建設性和破壞性干涉
12/27 10:37, 8F
文章代碼(AID): #1TxE9PYU (MATLAB)
文章代碼(AID): #1TxE9PYU (MATLAB)