代码如下:
clear
close all
lambda_red = 632.8e-9; % 红光波长
lambda_purple = 400e-9; % 紫光波长
d1 = 0.05e-3; % 双缝间距
I1 = 0.1; % 第一个单缝光强
I2 = 0.1; % 第二个单缝光强
L = 10; % 双缝到屏幕距离
H = 0.2; % 屏幕高度
d = 0.2e-3; % 单缝宽度
ScreenX = 3000; % 屏幕像素宽度
ScreenY = 350; % 屏幕像素高度
% 生成坐标轴
x = linspace(-H/2, H/2, 1048);
theta_temp = atan(x/L);
delta_theta_red = 2*pi*x*d/lambda_red/L;
delta_theta_purple = 2*pi*x*d/lambda_purple/L;
% 计算混合光干涉图像
I_red = I1 + I2 + 2*sqrt(I1*I2)*cos(delta_theta_red);
I_purple = I1 + I2 + 2*sqrt(I1*I2)*cos(delta_theta_purple);
I_mixed = 0.5*I_red + 0.5*I_purple; % 红光和紫光光强平均
% 调整亮度并显示干涉图像
II_red = repmat(I_red, [ScreenY 1]);
III_red = nthroot(II_red, 1);
subplot(2, 2, 1);
imshow(III_red)
colormap('hot')
title('Red light interference pattern')
II_purple = repmat(