MATLAB的平面波和球面波干涉代码
时间: 2024-06-13 12:05:15 浏览: 308
以下是MATLAB中平面波和球面波干涉的代码:
平面波干涉:
```matlab
clc;
clear all;
close all;
lambda=0.01; %波长
d=0.05; %距离
k=2*pi/lambda; %波数
x=-0.1:0.001:0.1; %x轴范围
y=-0.1:0.001:0.1; %y轴范围
[X,Y]=meshgrid(x,y);
r1=sqrt((X-d/2).^2+Y.^2); %到第一个点的距离
r2=sqrt((X+d/2).^2+Y.^2); %到第二个点的距离
I=4*cos(k*r1-k*r2); %干涉强度
figure;
mesh(x,y,I); %绘制网格图
xlabel('x');
ylabel('y');
zlabel('I');
title('平面波干涉');
```
球面波干涉:
```matlab
clc;
clear all;
close all;
lambda=0.01; %波长
d=0.05; %距离
k=2*pi/lambda; %波数
x=-0.1:0.001:0.1; %x轴范围
y=-0.1:0.001:0.1; %y轴范围
[X,Y]=meshgrid(x,y);
r1=sqrt((X-d/2).^2+Y.^2); %到第一个点的距离
r2=sqrt((X+d/2).^2+Y.^2); %到第二个点的距离
I=4*cos(k*r1-k*r2)./(r1.*r2); %干涉强度
figure;
mesh(x,y,I); %绘制网格图
xlabel('x');
ylabel('y');
zlabel('I');
title('球面波干涉');
```
阅读全文