找回密码
 注册
关于网站域名变更的通知
查看: 444|回复: 1
打印 上一主题 下一主题

MATLAB源程序代码分享:杨氏双孔干涉实验的MATLAB计算模拟

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-19 11:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

) E$ c3 q3 U, M" T3 w/ g& u+ eMATLAB源程序代码分享:杨氏双孔干涉实验的MATLAB计算模拟2 {$ S7 J: G6 S
%% 定义实验的参数. S! F# ^# i& z" M. ]
clear;clc;close all$ X' ], T% |+ h+ H  ^! X# b& T3 L1 n; h
lambda=3000e-9;     % 光的波长7 b. q5 l% H( F
d=7e-5;             % 双孔的距离
2 ^- l( t- x3 r: w  ~- M* XD=1.2;              % 屏幕距双孔的距离/ u9 G" U$ L/ C6 S
1 N+ _  i0 ~7 p: d
%% 定义观察屏幕的范围, 并计算各个观测点的坐标值
, [+ @9 j9 _- p! c! y' Mxa=-2;           % 最小的横坐标值
0 x" y6 H! [& c' l+ ^% y6 R! vxb=2;            % 最大的横坐标值! H5 ]% R- f8 C  I! e9 @. F
ya=-0.5;         % 最小的纵坐标值
) H5 }$ g: v$ G$ _1 r# p: byb=0.5;          % 最大的纵坐标值3 W1 J8 j4 r7 |3 v. A& i
n1=1000;         % x 方向等分份数
$ F! X7 v" q# M6 y; nn2=1000;         % y 方向等分份数- N! z) w0 n1 _$ E. u% u- s" ?; V
: u2 i$ B, i' L5 G
x=linspace(xa,xb,n1);     % x 坐标7 m5 A! M# j' e& @
y=linspace(ya,yb,n2);     % y 坐标! s1 ]6 u' K1 E! b; L& T
[xx,yy]=meshgrid(x,y);    % 网格化处理, 得到观测点的坐标值
7 v6 i5 }4 f$ a/ b# a/ f) P- N* j# I( n; o, z$ E, ?
%% 计算各个观测点处的光强
' ~) `1 O6 X* `0 b; \k=2*pi/lambda;                     % 计算波数
& {% |4 ^* O6 ]* Qr1=sqrt((xx-d/2).^2+yy.^2+D^2);    % 观测点到孔 1 的距离
- P$ ^+ Z6 f8 U' [1 A  ~r2=sqrt((xx+d/2).^2+yy.^2+D^2);    % 观测点到孔 2 的距离! v; }7 D4 z$ I/ V' W6 Y: l$ R# M4 n, ^
I=(cos(k*r1)./r1+cos(k*r2)./r2).^2+(sin(k*r1)./r1+sin(k*r2)./r2).^2;   % 计算观测点处的光强! h5 i( z7 [1 i' X+ G
I=I/(max(max(I)));     % 归一化处理
1 r9 g+ b7 o1 p* M, d& e4 U7 S; p* o& y
%% 绘制杨氏双孔干涉条纹
5 L' t7 ]3 w# O1 O' G3 S/ M7 e/ e" I5 Vfigure& q3 I2 `2 a& ~7 k, }; T, r( j6 x% {
set(gcf,'units','normalized','position',[0.2 0.2 0.6 0.6]);  % 设置 figure 窗口的位置和尺寸
% L  |. F( w2 O5 K8 J* Vsubplot(2,1,1)  O7 h' r) P5 V# q
image([xa xb],[ya yb],I*255)     % 显示条纹在屏幕上的二维图像
. O" b( m% r9 Q1 f8 Wcolormap(gray(255))              % 图像显示为黑白, 图像的灰度值为 255 级0 N  i1 g( j5 T" E, [' Z
axis equal
  W) S$ h* X' v2 paxis([xa xb ya yb]): O4 B/ y( {) [) i
xlabel('x (m)')
- C2 K+ A* j% u8 u9 h  t- V0 E( q* wylabel('y (m)')
; Y$ p0 O. J( v0 D  B/ Ytitle('杨氏双孔干涉条纹')
- z- W4 c6 ~  y, N
% r$ S0 w- `" ~; f6 n9 X%% 绘制光强分布的三维图
4 E0 p* p% H9 @' ]0 z' Rsubplot(2,1,2)0 T+ s5 _. u6 U/ N. D7 G
mesh(xx,yy,I)
% P1 E+ P2 @' Lxlabel('x (m)')% s! c$ U/ e2 E: ~* x# e. D# e. G2 g
ylabel('y (m)')/ g/ Z- U; h- s9 b2 n
zlabel('光强')3 y; O- _& {' `! s. X* z
title('光强分布')

该用户从未签到

2#
发表于 2020-3-19 18:16 | 只看该作者
杨氏双孔干涉实验的MATLAB计算模拟1 N5。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-21 03:37 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表