• 大小: 1KB
    文件类型: .rar
    金币: 2
    下载: 2 次
    发布日期: 2021-01-06
  • 语言: Matlab
  • 标签: matlab;  

资源简介

激光束通过圆孔的衍射的传输程序,希望可以帮到大家 。

资源截图

代码片段和文件信息

clear
%程序基本参数单位m
lamta=632.8e-9;
k=2*pi/lamta;
dx=10e-5;
dy=10e-5;
xd=512;
yd=512;
z=0.05;
c1=2;
c2=2;
[mn]=meshgrid(linspace(-xd/2xd/2-1xd)linspace(-yd/2yd/2-1yd));
dfx=1/(xd*dx);
dfy=1/(xd*dy);
I64=zeros(xdyd);
I641=zeros(xdyd);
xxd1=xd/8;
yyd1=xd/4;
r=xxd1/2;
a=xxd1;
D1=((m-a).^2+(n).^2).^(1/2);
D2=((m+a).^2+(n).^2).^(1/2);
i1=find((D1<=r|D2<=r));
I641(i1)=1;
I642=zeros(xdyd);
B1=ones(xxd1yyd1);
I642([(xd/2-xxd1/2+1):(xd/2+xxd1/2)][(yd/2-yyd1/2+1):(yd/2+yyd1/2)])=B1;
I64=I641+I642;
i2=find(I64>=1);
I64(i2)=1;
figure(1)
imagesc(I64)
colormap(gray)
axis square
axis off


%离散光波表达式
R=zeros(xdyd);
switch c1
    case 1
        R=exp(-j*k*((dx*m).^2+(dy*n).^2)/2*z);%球面波
    case 2
        %%%用平行光照射irradiated by parallel light
        the

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2668  2003-12-18 19:33  raceway.m

----------- ---------  ---------- -----  ----

                 2668                    1


评论

共有 条评论