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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

4 B! Q: s" w* v! i6 n5 u& l" u) TMATLAB源程序代码分享:杨氏双孔干涉实验的MATLAB计算模拟
; v5 O1 Y; h8 L) E# T%% 定义实验的参数3 ]% k& h/ |, T1 z& T
clear;clc;close all9 q) K5 H- f7 e% t
lambda=3000e-9;     % 光的波长% o3 v! C! v9 n1 L& y
d=7e-5;             % 双孔的距离
) f; a3 e0 P3 ~! tD=1.2;              % 屏幕距双孔的距离
- H7 ]. O  p) \* d8 R; R2 W* I$ ?' c, l( @7 Q' f$ R5 M6 q
%% 定义观察屏幕的范围, 并计算各个观测点的坐标值
! _( J: ]" Q! N; b7 W: B+ uxa=-2;           % 最小的横坐标值
+ Y, j# W8 e* L+ x9 o, Ixb=2;            % 最大的横坐标值
2 q  ~5 s( e3 e* z" A- i6 G& y3 sya=-0.5;         % 最小的纵坐标值2 u' s/ |8 i" A) e
yb=0.5;          % 最大的纵坐标值
/ `7 d, g( V" Mn1=1000;         % x 方向等分份数
1 I; H5 y7 W5 Y" I+ ~n2=1000;         % y 方向等分份数! }' n  r7 P* p3 G- h* Z
4 a- ~- r+ o$ t
x=linspace(xa,xb,n1);     % x 坐标: V9 K$ F( ?* e1 X( C" {
y=linspace(ya,yb,n2);     % y 坐标
% ^& v6 i- e" x8 w[xx,yy]=meshgrid(x,y);    % 网格化处理, 得到观测点的坐标值5 o! U( c0 P; s+ m; u
- P7 L, |2 G9 S; {  ^4 F
%% 计算各个观测点处的光强
! J7 b# T4 h) Yk=2*pi/lambda;                     % 计算波数
! v' Q3 k5 p- m  g# Or1=sqrt((xx-d/2).^2+yy.^2+D^2);    % 观测点到孔 1 的距离
; b$ E; Z; C+ G3 W' t! A9 [) Ir2=sqrt((xx+d/2).^2+yy.^2+D^2);    % 观测点到孔 2 的距离. ?$ h2 D# K: f
I=(cos(k*r1)./r1+cos(k*r2)./r2).^2+(sin(k*r1)./r1+sin(k*r2)./r2).^2;   % 计算观测点处的光强; b  S* d/ h8 o  r9 R' z0 _$ N
I=I/(max(max(I)));     % 归一化处理
! D& r' A- T9 _7 o$ W8 k$ ^$ V
; W  M& ]( v- T" S( ^  Z%% 绘制杨氏双孔干涉条纹$ k) M# j% n3 L! t8 W, Q
figure
, }% w- \3 Z. Wset(gcf,'units','normalized','position',[0.2 0.2 0.6 0.6]);  % 设置 figure 窗口的位置和尺寸
* Z6 N( _& G6 E7 Csubplot(2,1,1)
+ q3 i- D. n. D  rimage([xa xb],[ya yb],I*255)     % 显示条纹在屏幕上的二维图像( |; C2 T& x* W' e
colormap(gray(255))              % 图像显示为黑白, 图像的灰度值为 255 级; j, ~2 W' e) ?3 H
axis equal
7 A- g+ z, x9 m, Y5 Qaxis([xa xb ya yb])
- o( B, h4 j6 E$ s% i( Exlabel('x (m)')
, W: T( x9 [2 _1 S3 `' tylabel('y (m)')
* u; }3 Z8 k% A; f1 f+ btitle('杨氏双孔干涉条纹')
- S3 {' `+ O+ ?' ]- Z5 m3 {% {" ^& f! r$ B# Q! R# f) r3 `6 @
%% 绘制光强分布的三维图# O% W( X9 w2 b+ n; {
subplot(2,1,2)' ^4 x% c: Y3 a% W3 @6 y# D
mesh(xx,yy,I)
, {+ X; _: h, E( B+ dxlabel('x (m)')
1 V7 `" I0 N2 Bylabel('y (m)')
. h8 x- R5 a# G8 Bzlabel('光强')+ ?7 v6 O/ e1 @+ T# w3 M; q8 }
title('光强分布')

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-6 11:17 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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