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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
, s+ R$ |1 t% R
MATLAB源程序代码分享:杨氏双孔干涉实验的MATLAB计算模拟
: L9 q6 D3 S7 j0 h0 S( S%% 定义实验的参数8 g9 ~+ p. Q" s
clear;clc;close all4 j% L2 L5 n. P
lambda=3000e-9;     % 光的波长
( f: R9 E: X# p# V5 l- X8 D" r7 F5 p. bd=7e-5;             % 双孔的距离2 W5 l( ^* c  g" Z. A& Y# _
D=1.2;              % 屏幕距双孔的距离9 I+ ]& k% C7 Z0 [* J5 N  u
5 Z4 N* D. g: }; `( q+ i
%% 定义观察屏幕的范围, 并计算各个观测点的坐标值3 j6 t4 Z% s0 z( k2 H) z( u
xa=-2;           % 最小的横坐标值" P: F! Q% T7 U
xb=2;            % 最大的横坐标值
% ?* H2 F: p/ q; ?3 x# L5 h' O( eya=-0.5;         % 最小的纵坐标值
6 M8 f2 N2 I& f, h  d: i6 q/ myb=0.5;          % 最大的纵坐标值  X7 |' a, c1 I: I
n1=1000;         % x 方向等分份数
6 [9 e; U" F- c. \) F+ yn2=1000;         % y 方向等分份数
' B- o9 t/ c% h6 W9 x: f; V5 K6 \! b% f5 x
x=linspace(xa,xb,n1);     % x 坐标
6 P+ H( y9 o" S3 f& ~y=linspace(ya,yb,n2);     % y 坐标# t; @8 U/ q$ I2 H( h( [7 v
[xx,yy]=meshgrid(x,y);    % 网格化处理, 得到观测点的坐标值! {+ e5 s1 R) {8 I/ J! O0 @% Z

; `6 q( b% Z% x# B6 {, [7 s9 B%% 计算各个观测点处的光强0 b7 F5 J2 ]( b7 ]4 j$ I
k=2*pi/lambda;                     % 计算波数8 C% o/ M4 o8 C( i6 ?1 q( P
r1=sqrt((xx-d/2).^2+yy.^2+D^2);    % 观测点到孔 1 的距离' T/ H! L! a6 O6 ^- L; [1 c  |
r2=sqrt((xx+d/2).^2+yy.^2+D^2);    % 观测点到孔 2 的距离
+ H) T: n" }; G7 U# UI=(cos(k*r1)./r1+cos(k*r2)./r2).^2+(sin(k*r1)./r1+sin(k*r2)./r2).^2;   % 计算观测点处的光强4 I' l0 t" S& }4 Q7 X# b" x7 B9 _
I=I/(max(max(I)));     % 归一化处理
5 D4 b7 d* S% E5 V
$ m! N7 F8 _+ I%% 绘制杨氏双孔干涉条纹1 ^, p& w/ n5 a) J8 C3 s/ h
figure2 A! b5 B/ Y# X
set(gcf,'units','normalized','position',[0.2 0.2 0.6 0.6]);  % 设置 figure 窗口的位置和尺寸5 ^/ f3 [- k6 T. {5 y' W* u# X
subplot(2,1,1)3 c& \; \- I- c- Y, Y9 S9 L' Q
image([xa xb],[ya yb],I*255)     % 显示条纹在屏幕上的二维图像/ O, Z+ D- u/ S  h8 Y
colormap(gray(255))              % 图像显示为黑白, 图像的灰度值为 255 级
2 C0 \: ?1 k' v0 h1 X' \; Jaxis equal
8 D/ D/ P; _9 G0 `9 V2 ~3 h# @axis([xa xb ya yb])
. F/ c. J  F* y1 B. G" Fxlabel('x (m)')
3 ]; P; K. B4 B$ eylabel('y (m)'); M! Q% M. W4 w/ I- r9 G4 i4 [
title('杨氏双孔干涉条纹')
9 c1 y3 o7 i, s% s8 l- r5 u+ I9 U: ?+ |
%% 绘制光强分布的三维图
: Y6 e& L+ X3 ]: t/ Y; L! qsubplot(2,1,2)
7 l& I1 `: a) Q) K& G* R9 J; Fmesh(xx,yy,I)
7 x" v/ ~4 Q' a2 |5 _7 I1 \& yxlabel('x (m)')) O3 N& y- ^) ~
ylabel('y (m)')% A6 V; |- D% Z9 `1 k% q" K+ W
zlabel('光强')" I. p# ~6 U! Y3 U) r' j
title('光强分布')

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-4 09:35 , Processed in 0.125000 second(s), 24 queries , Gzip On.

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

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

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