?? ex672.m
字號:
%《MATLAB及其在理工課程中的應用指南》第六章例6-7-2程序
% 單色光的單縫衍射
% 西安電子科技大學出版社出版 陳懷琛編著 1999年10月初版,2004年11月第二版
%
clear; % 清工作空間,輸入波長,縫寬,和屏幕距離
Lambda = input('輸入光的波長(單位為 nm): (書上取500) ');
Lambda = Lambda * 1e-9; % 將nm換 變為 m
aWidth = input('輸入縫寬 (單位為 mm): (書上取0.2或1或2) ');
aWidth = aWidth * 0.001; % 將mm 變換為 m
Z = input('輸入縫到屏的距離 (單位為 m): (書上取1) ');
ymax = 3*Lambda*Z/aWidth; % 屏幕范圍(沿y向)
Ny = 51; % 屏幕上的點數(沿y向)
ys = linspace(-ymax,ymax,Ny);
NPoints = 51; % 縫上的點數(沿y向)
yPoint = linspace(-aWidth/2,aWidth/2,NPoints); % 把縫上的點數設成數組
for j=1:Ny % 對屏幕上y向各點作循環
% 對光縫中各點作循環,計算縫點到屏幕位置的距離
L = sqrt((ys(j)-yPoint).^2 + Z^2 ); % L是一個數組
Phi = 2*pi.*(L-Z)./Lambda; % 計算相對于屏幕中心的相位差,也是一個數組
% 求每個分量的累加和
SumCos = sum(cos(Phi)); % 數組求和
SumSin = sum(sin(Phi));
% 求屏幕上的歸一化光強;
B(j) = (SumCos^2 + SumSin^2)/NPoints^2;
end
plot(ys,B,'*',ys,B);grid % 屏幕上光強與位置的關系曲線
axis([-ymax, ymax, 0.0, 1.0]);
set(gcf,'color','w') % 置圖形背景色為白色
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -