高斯光束的matlab仿真设计

高斯光束的matlab仿真设计
高斯光束的matlab仿真设计

题目:根据高斯光束数学模型,模拟仿真高斯光束在谐振腔中某一位置处的归一化强度分布并给出其二维、三维强度分布仿真图;用Matlab读取实际激光光斑照片中所记录的强度数据(读取照片中光斑的一个直径所记录的强度数据即可,Matlab读取照片数据命令为imread),用该数据画出图片中激光光斑的强度二维分布图,与之前数学模型仿真图对比。(如同时考虑高斯光束光斑有效截面半径和等相位面特点,仿真高斯光束光强、光斑有效截面半径以及等相位面同时随传播距离z的变化并给出整体仿真图可酌情加分。)

原始光斑如图1所示,用imread命令读入matlab后直接用imshow命令读取即可,

CCD采集的高斯光束光强分布

图1 CCD采集的高斯光束强度分布

读入的数据是一个224 X 244的矩阵,矩阵中的数值代表光强分布。用读入的数据取中间一行(122行)画出强度分布如图2所示。

50100150200

020

40

60

80

100

120

140

160

180

实验测量高斯曲线

图2 实验测量高斯曲线

用理论上的高斯曲线公式画出理论高斯曲线如图3所示。

-40-30-20-10010203040

00.2

0.4

0.6

0.8

1

理论高斯曲线

图3 理论高斯曲线

M文件如下:

A=imread('D:\documents\作业\激光原理与应用\高斯.bmp');

A1=A(:,122);

x1=1:1:224;

x2=-100:1:100;

a2=exp(-x2.^2/10);

figure

imshow(A);

axis off

title('\fontsize{12}CCD采集的高斯光束光强分布');

figure

plot(x2,a2,'linewidth',1,'color','b');

axis([-40 40 0 1.2])

title('\fontsize{12}实验测量高斯曲线')

figure

plot(x1,A1,'linewidth',1,'color','r')

title('\fontsize{12}理论高斯曲线')

axis([50 200 0 180])

画三维强度分布。取图片矩阵的中间层,用mesh命令画出三维图如图4所示。

图4 三维强度分布

由于读入的图片有一行白边,需要手动去除掉,否则三维图会有一边整体竖起来,影响观察。最终的M文件如下。

A=imread('D:\documents\作业\激光原理与应用\高斯.bmp');

[high, width, color] = size(A);

x=1:width;

y=1:high-1;

mesh(x', y', double(A(2:224,:,1)));

grid on

xlabel('x'),ylabel('y'),zlabel('z');

title('三维强度分布');

再用matlab仿真理论上传播过程中高斯光束的变化

这次先给出M文件:

%Gaussian_propagation.m

%Simulation of diffraction of Gaussian Beam

clear;

%Gaussian Beam

%N:sampling number

N=input('Number of samples(enter from 100 to 500)=');

L=10*10^-3;

Ld=input('wavelength of light in [micrometers]=');

Ld=Ld*10^-6;

ko=(2*pi)/Ld;

wo=input('Waist of Gaussian Beam in [mm]=');

wo=wo*10^-3;

z_ray=(ko*wo^2)/2*10^3;

sprintf('Rayleigh range is %f [mm]',z_ray)

z_ray=z_ray*10^-3;

z=input('Propagation length (z) in [mm]');

z=z*10^-3;%dx:step size

dx=L/N;

for n=1:N+1

for m=1:N+1

%Space axis

x(m)=(m-1)*dx-L/2;

y(n)=(n-1)*dx-L/2;

%Gaussian Beam in space domain

Gau(n,m)=exp(-(x(m)^2+y(n)^2)/(wo^2));%Frequency axis

Kx(m)=(2*pi*(m-1))/(N*dx)-((2*pi*(N))/(N*dx))/2;

Ky(n)=(2*pi*(n-1))/(N*dx)-((2*pi*(N))/(N*dx))/2;

%Free space transfer function

H(n,m)=exp(j/(2*ko)*z*(Kx(m)^2+Ky(n)^2));

end

end

%Gaussian Beam in Frequency domain

FGau=fft2(Gau);

FGau=fftshift(FGau);

%Propagated Gaussian beam in Frequency domain

FGau_pro=FGau.*H;

%Peak amplitude of the initial Gaussian beam

Peak_ini=max(max(abs(Gau)));

sprintf('Initial peak amplitude is %f [mm]',Peak_ini)%Propagated Gaussian beam in space

domain

Gau_pro=ifft2(FGau_pro);

Gau_pro=Gau_pro;

%Peak amplitude of the propagated Gaussian beam

Peak_pro=max(max(abs(Gau_pro)));

sprintf('Propagated peak amplitude is %f [mm]',Peak_pro)%Calculated Beam Width [N M]=min(abs(x));

Gau_pro1=Gau_pro(:,M);

[N1 M1]=min(abs(abs(Gau_pro1)-abs(exp(-1)*Peak_pro)));

Bw=dx*abs(M1-M)*10^3;

sprintf('Beam width(numerical) is %f[mm]',Bw)%Theoretical Beam Width

W=(2*z_ray)/ko*(1+(z/z_ray)^2);

W=(W^0.5)*10^3;

sprintf('Beam width(theoretical) is %f[mm]',W)%axis in mm scale

x=x*10^3;

y=y*10^3;

figure(1);

mesh(x,y,abs(Gau))

title('Initial Gaussian Beam')

xlabel('x [mm]')

ylabel('y [mm]')

axis([min(x) max(x) min(y) max(y) 0 1])

axis square

figure(2);

mesh(x,y,abs(Gau_pro))

title('propagated Gaussian Beam')

xlabel('x [mm]')

ylabel('y [mm]')

axis([min(x) max(x) min(y) max(y) 0 1])

axis square

程序主要根据高斯光束的传播规律计算传播过程中任意z处的高斯光强分布。

运行结果:

Number of samples(enter from 100 to 500)=500

wavelength of light in [micrometers]=0.568

Waist of Gaussian Beam in [mm]=1

ans =

Rayleigh range is 5530.972982 [mm]

Propagation length (z) in [mm]100000

ans =

Initial peak amplitude is 1.000000 [mm]

ans =

Propagated peak amplitude is 0.210252 [mm]

ans =

Beam?width(numerical) is 1.940000[mm]

ans =

Beam?width(theoretical) is 18.107635[mm]

>>

束腰半径处的理想高斯光强分布

传播1m处的理想高斯光强分布

传播10m处的理想高斯光强分布

matlab仿真光束的传输特性

一、课程设计题目: 用matlab 仿真光束的传输特性。 二、任务和要求 用matlab 仿真光束通过光学元件的变换。 ① 设透镜材料为k9玻璃,对1064nm 波长的折射率为1.5062,镜片中心厚度为3mm ,凸面曲率半径,设为100mm ,初始光线距离透镜平面20mm 。用matlab 仿真近轴光线(至少10条)经过平凸透镜的焦距,与理论焦距值进行对比,得出误差大小。 ② 已知透镜的结构参数为101=r ,0.11=n ,51=d ,5163.121=='n n (K9玻璃),502-=r ,0.12=' n ,物点A 距第一面顶点的距离为100,由 A 点计算三条沿光轴夹角分别为10、20、30的光线的成像。试用Matlab 对以上三条光线光路和近轴光线光路进行仿真,并得出实际光线的球差大小。 ③ 设半径为1mm 的平面波经凸面曲率半径为25mm ,中心厚度3mm 的平凸透镜。用matlab 仿真平面波在透镜几何焦平面上的聚焦光斑强度分布,计算光斑半径。并与理论光斑半径值进行对比,得出误差大小。(方法:采用波动理论,利用基尔霍夫—菲涅尔衍射积分公式。)

2、用MATLAB仿真平行光束的衍射强度分布图样。(夫朗和费矩形孔衍射、夫朗和费圆孔衍射、夫朗和费单缝和多缝衍射。) 3、用MATLAB仿真厄米—高斯光束在真空中的传输过程。(包括三维强度分布和平面的灰度图。) 4、(补充题)查找文献,掌握各类空心光束的表达式,采用费更斯-菲涅尔原理推导各类空心光束在真空中传输的光强表达式。用matlab对不同传输距离处的光强进行仿真。 三、理论推导部分 将坐标原点选在透镜中心处,θ1=arcsin(y1/r),由n1*sinθ1=n2*sin θ2可得出θ2=arcsin(n1/n2)*(y1/r),由几何关系可得到θ=θ2-θ1,则出射光线的斜率k=tan(θ2-θ1),当入射直线y=y1时,x1=d-(r -)2^1 r ),并设出射直线为y=k*x+b;由直线经过(x1,y1)即 2^(y

基于Matlab的光学衍射仿真

基于Matlab的光学衍射实验仿真 摘要 光学试验中衍射实验是非常重要的实验. 光的衍射是指光在传播过程中遇到障碍物时能够绕过障碍物的边缘前进的现象, 光的衍射现象为光的波动说提供了有力的证据. 衍射系统一般有光源、衍射屏和接受屏组成, 按照它们相互距离的大小可将衍射分为两大类, 一类是衍射屏与光源和接受屏的距离都是无穷远时的衍射, 称为夫琅禾费衍射, 一类是衍射屏与光源或接受屏的距离为有限远时的衍射称为菲涅尔衍射。 本文用Matlab软件对典型的衍射现象建立了数学模型,对衍射光强分布进行了编程运算,对衍射实验进行了仿真。最后创建了交互式GUI界面,用户可以通过改变输入参数模拟不同条件下的衍射条纹。 本文对于衍射概念、区别、原理及光强分布编程做了详细全面的介绍 关键字:Matlab;衍射;仿真;GUI界面;光学实验

Matlab-based Simulation of Optical Diffraction Experiment Abstract Optical diffraction experiment is a very important experiment. is the diffraction of light propagation of light in the obstacles encountered in the process to bypass the obstacles when the forward edge of the phenomenon of light diffraction phenomenon of the wave theory of light provides a strong Evidence. diffraction systems generally have light, diffraction screen and accept the screen composition, size according to their distance from each other diffraction can be divided into two categories, one is the diffraction screen and the light source and the receiving screen is infinity when the distance between the diffraction Known as Fraunhofer diffraction, one is diffraction screen and the light source or accept a limited away from the screen when the diffraction is called Fresnel diffraction. In this paper, Matlab software on a typical phenomenon of a mathematical model of diffraction, the diffraction intensity distribution of the programming operation, the diffraction experiment is simulated. Finally, create an interactive GUI interface, users can change the input parameters to simulate different conditions of the diffraction pattern. This concept of the diffraction, difference, intensity distribution of programming principles and a detailed comprehensive description Key word: matlab;diffraction; simulation; gui interface; optical experiment

基于matlab干涉系统仿真_

《工程光学》综合性练习一题目:基于matlab的干涉系统仿真 学院精密仪器与光电子工程学院 专业测控技术与仪器

综合练习大作业一 一、要求 3-4人组成小组,对下面给出的各题目利用Matlab等工具进行仿真。 二、仿真题目 1、对于杨氏双缝干涉,改变双缝的缝宽和缝间距,观察干涉图样变化 ①原理图 图中参数 光线波长:lam=500纳米; 双缝距离:d=0.1毫米;(可调) 双缝距接收屏距离:D=1米; 接收屏范围:xs:-0.005~0.005 ys:-0.005~0.005 光源振幅:AI=A2=1; (单位振幅,可调) ②matlab代码: clear; lam=500e-9; %设定波长lam(500纳米) d=0.5e-3; %设定两缝之间距离d(0.5毫米) D=1; %双缝到接收屏距离D(1米) A1=1; %初始两光源均为单位振幅 A2=1; xm=0.005; ym=xm; %接受屏的范围ym,xm(0.01*0.01矩形) n=1001; xs=linspace(-xm,xm,n); %用线性采样法生成两个一位数组xs,ys %(n为总点数) ys=linspace(-ym,ym,n); L1=sqrt((xs-d/2).^2+ys.^2+D^2);%光屏上点(xs,ys)距光源1距离r1 L2=sqrt((xs+d/2).^2+ys.^2+D^2);%光屏上点(xs,ys)距光源2距离r2 E1=A1./sqrt(L1).*exp(1i*L1*2*pi/lam);%光源1在接受屏上复振幅E1 E2=A2./sqrt(L2).*exp(1i*L2*2*pi/lam);%光源2在接受屏上复振幅E2 E=E1+E2; %复振幅叠加为合成振幅E

高斯光束的matlab仿真复习进程

高斯光束的m a t l a b 仿真

题目:根据高斯光束数学模型,模拟仿真高斯光束在谐振腔中某一位置处的归一化强度分布并给出其二维、三维强度分布仿真图;用Matlab读取实际激光光斑照片中所记录的强度数据(读取照片中光斑的一个直径所记录的强度数据即可,Matlab读取照片数据命令为imread),用该数据画出图片中激光光斑的强度二维分布图,与之前数学模型仿真图对比。(如同时考虑高斯光束光斑有效截面半径和等相位面特点,仿真高斯光束光强、光斑有效截面半径以及等相位面同时随传播距离z的变化并给出整体仿真图可酌情加分。) 原始光斑如图1所示,用imread命令读入matlab后直接用imshow命令读取即可, CCD采集的高斯光束光强分布 图1 CCD采集的高斯光束强度分布 读入的数据是一个224 X 244的矩阵,矩阵中的数值代表光强分布。用读入的数据取中间一行(122行)画出强度分布如图2所示。

图2 实验测量高斯曲线 用理论上的高斯曲线公式画出理论高斯曲线如图3所示。 图3 理论高斯曲线 50 100150200 020406080100120140160 180实验测量高斯曲线 -40 -30-20-10010203040 00.2 0.4 0.6 0.8 1 理论高斯曲线

M文件如下: A=imread('D:\documents\作业\激光原理与应用\高斯.bmp'); A1=A(:,122); x1=1:1:224; x2=-100:1:100; a2=exp(-x2.^2/10); figure imshow(A); axis off title('\fontsize{12}CCD采集的高斯光束光强分布'); figure plot(x2,a2,'linewidth',1,'color','b'); axis([-40 40 0 1.2]) title('\fontsize{12}实验测量高斯曲线') figure plot(x1,A1,'linewidth',1,'color','r') title('\fontsize{12}理论高斯曲线') axis([50 200 0 180]) 画三维强度分布。取图片矩阵的中间层,用mesh命令画出三维图如图4所示。 图4 三维强度分布 由于读入的图片有一行白边,需要手动去除掉,否则三维图会有一边整体竖起来,影响观察。最终的M文件如下。 A=imread('D:\documents\作业\激光原理与应用\高斯.bmp'); [high, width, color] = size(A); x=1:width; y=1:high-1; mesh(x', y', double(A(2:224,:,1))); grid on xlabel('x'),ylabel('y'),zlabel('z'); title('三维强度分布');

基于MATLAB的物理光学实验仿真平台构建

毕业设计(论文)开题报告题目:基于Matlab的物理光学实验仿真平台构建 院(系)光电工程学院 专业光信息科学与技术 班级120110 姓名闫武娟 学号120110127 导师刘王云 年月日

开题报告填写要求 1.开题报告作为毕业设计(论文)答辩委员会对学生答辩资格审查的依据材料之一。 此报告应在指导教师指导下,由学生在毕业设计(论文)工作前期内完成。2.开题报告内容必须按教务处统一设计的电子文档标准格式(可从教务处网页上下载)填写并打印(禁止打印在其它纸上后剪贴),完成后应及时交给指导教师审阅。3.开题报告字数应在1500字以上,参考文献应不少于15篇(不包括辞典、手册,其中外文文献至少3篇),文中引用参考文献处应标出文献序号,“参考文献”应按附件中《参考文献“注释格式”》的要求书写。 4.年、月、日的日期一律用阿拉伯数字书写,例:“2005年11月26日”。

这些仿真平台的使用不仅方便了教学,而且也使学生更容易理解物理光实验的基本原理,加深对理论知识的理解与记忆。 2.课题研究的主要内容和拟采用的研究方案、研究方法 2.1课题研究的主要内容 (1). 在光的干涉基本理论基础上,实现两束平面波、球面波的干涉实验,杨氏双缝和杨氏双孔干涉实验,平行平板的等倾干涉实验,楔形平板的等厚干涉实验,牛顿环干涉实验,迈克尔逊干涉实验以及平行平板的多光束干涉实验。 (2). 在菲涅尔衍射及夫琅和费衍射基本理论基础上,实现矩孔、单缝、圆孔、双缝、多缝、平面光栅及闪耀光栅的衍射实验。 2.2 研究方法及方案 物理光学实验可分为两大类:干涉与衍射。光的干涉有光源、干涉装置和干涉图形三个基本要素;衍射分为菲涅尔衍射和夫琅禾费衍射。光学领域的大部分图像及曲线分布都可以用MATLAB 软件加以计算和实现[16], 以杨氏双缝干涉为例,简述实验方案 杨氏双缝干涉模型是典型的分波面干涉,其干涉装置图如图所示,用一个单缝与一个双缝,从同一波面上分出两个同相位的单色光,进而获得相干光源并观察分析干涉图样。 图1.1杨氏双缝干涉实验装置图 2.2.1数学建模 根据干涉的基本原理,点光源S 发出的光波经双缝分解为次波源S 1、S 2,这两个次波源发出的光波在空间相干叠加,继而在其后的接收屏形成一系列明暗相间的干涉条纹。 设入射光波波长为λ,两个次波源的强度相同,且间距为d (1)位相差的计算: 221)2 (y d x r ++ =222)2 - (y d x r +=(2.1) )(*12r r n -=?(2.2)

工程光学matlab仿真设计

工程光学仿真实验报告 1、氏双缝干涉实验 (1)氏干涉模型 氏双缝干涉实验装置如图1所示: S 发出的光 波射到光屏上的两个小孔S1 和S2 , S1 和S2 相 距很近,且到S 等距;从S1 和S2 分别发散出的光 波是由同一光波分出来的,所以是相干光波,它们在距离光屏为D 的屏幕上叠加,形成一定的干涉图 样。 图1.1 氏双缝干涉 假设S 是单色点光源,考察屏幕上某一点P ,从S1 和S2 发出的光波在该点叠加 产生的光强度为: I = I1 + I2 + 2 I1 I2 cos δ (1-1) 式中, I1 和I2 分别是两光波在屏幕上的光强度, 若实验装置中S1 和S2 两个缝 大小相等, 则有 I1 = I2 =I0 (1-2) δ= 2π(r2 - r1)/λ(1-3) (1-3) 2221)2/(D y d x r +++= (1-4) 2222)2/(D y d x r ++-= (1-5) 可得 xd r r 22 122=- (1-6) 因此光程差:12r r -=? (1-7) 则可以得到条纹的强度变化规律- 强度分布公式: ]/)([cos 1220λπd r r I I -= (1-8) (2)仿真程序 clear; Lambda=650; %设定波长,以Lambda 表示波长 Lambda=Lambda*1e-9; d=input('输入两个缝的间距 )'); %设定两缝之间的距离,以d 表示两缝之间距离 d=d*0.001; Z=0.5; %设定从缝到屏幕之间的距离,用Z 表示

yMax=5*Lambda*Z/d;xs=yMax; %设定y方向和x方向的围 Ny=101;ys=linspace(-yMax,yMax,Ny);%产生一个一维数组ys,Ny是此次采样总点数 %采样的围从- ymax到ymax,采样的数组命名为ys %此数组装的是屏幕上的采样点的纵坐标 for i=1:Ny %对屏幕上的全部点进行循环计算,则要进行Ny次计算L1=sqrt((ys(i)-d/2).^2+Z^2); L2=sqrt((ys(i)+d/2).^2+Z^2); %屏上没一点到双缝的距离L1和L2 Phi=2*pi*(L2-L1)/Lambda; %计算相位差 B(i,:)=4*cos(Phi/2).^2; %建立一个二维数组,用来装该点的光强的值 end%结束循环 NCLevels=255; %确定使用的灰度等级为255级 Br=(B/4.0)*NCLevels; %定标:使最大光强(4. 0)对应于最大灰度级(白色) subplot(1,4,1),image(xs,ys,Br); %用subplot创建和控制多坐标轴 colormap(gray(NCLevels)); %用灰度级颜色图设置色图和明暗 subplot(1,4,2),plot(B(:),ys); %把当前窗口对象分成2块矩形区域 %在第2块区域创建新的坐标轴 %把这个坐标轴设定为当前坐标轴 %然后绘制以( b (: ) , ys)为坐标相连的线title('氏双缝干涉'); (3)仿真图样及分析 a)双缝间距2mm b)双缝间距4mm

高斯光束的matlab仿真

题目:根据高斯光束数学模型,模拟仿真高斯光束在谐振腔中某一位置处的归一化强度分布并给出其二维、三维强度分布仿真图;用Matlab读取实际激光光斑照片中所记录的强度数据(读取照片中光斑的一个直径所记录的强度数据即可,Matlab读取照片数据命令为imread),用该数据画出图片中激光光斑的强度二维分布图,与之前数学模型仿真图对比。(如同时考虑高斯光束光斑有效截面半径和等相位面特点,仿真高斯光束光强、光斑有效截面半径以及等相位面同时随传播距离z的变化并给出整体仿真图可酌情加分。) 原始光斑如图1所示,用imread命令读入matlab后直接用imshow命令读取即可, CCD采集的高斯光束光强分布 图1 CCD采集的高斯光束强度分布 读入的数据是一个224 X 244的矩阵,矩阵中的数值代表光强分布。用读入的数据取中间一行(122行)画出强度分布如图2所示。

图2 实验测量高斯曲线 用理论上的高斯曲线公式画出理论高斯曲线如图3所示。 图3 理论高斯曲线 50 100150200 020406080100120140160 180实验测量高斯曲线 -40 -30-20-10010203040 00.2 0.4 0.6 0.8 1 理论高斯曲线

M文件如下: A=imread('D:\documents\作业\激光原理与应用\高斯.bmp'); A1=A(:,122); x1=1:1:224; x2=-100:1:100; a2=exp(-x2.^2/10); figure imshow(A); axis off title('\fontsize{12}CCD采集的高斯光束光强分布'); figure plot(x2,a2,'linewidth',1,'color','b'); axis([-40 40 0 1.2]) title('\fontsize{12}实验测量高斯曲线') figure plot(x1,A1,'linewidth',1,'color','r') title('\fontsize{12}理论高斯曲线') axis([50 200 0 180]) 画三维强度分布。取图片矩阵的中间层,用mesh命令画出三维图如图4所示。 图4 三维强度分布 由于读入的图片有一行白边,需要手动去除掉,否则三维图会有一边整体竖起来,影响观察。最终的M文件如下。 A=imread('D:\documents\作业\激光原理与应用\高斯.bmp'); [high, width, color] = size(A); x=1:width; y=1:high-1; mesh(x', y', double(A(2:224,:,1))); grid on xlabel('x'),ylabel('y'),zlabel('z'); title('三维强度分布');

matlab光学仿真

MATLAB光学仿真实验报告

目录 一、实验目的 (3) 二、实验内容 (3) 三、实验原理 (3) 四.实验结果(各种干涉图样,) (4) 1.平面波与球面波之间的相互干涉 (4) (1)平面波与平面波方向相对的干涉 (4) (2)球面波与球面波 (5) (3)球面波与平面波 (6) 2.双缝干涉 (7) (1)经典杨氏双缝干涉 (7) (2)接收屏在侧面,且二者连线与干涉面垂直 (7) 3.多孔干涉 (8) (1)三孔干涉 (8) (2)四个孔干涉 (9) 4.多个不同方向的平面波 (10) 5.牛顿环与电磁波传播 (10) (1)牛顿环 (10) (2)模拟电磁波动画 (11) 五,实验总结与感想 (11)

一、实验目的 通过对光学现象的仿真,加深对各种光学现象本质的理解,同时,学会利用MATLAB,这种有效工具研究物理光学。 二、实验内容 这次由于时间关系,只研究了光的干涉现象,不过干涉内容很多,按照老师给的实验的提示内容,我每个都做了。并且自己还加了一些内容。按先后顺序非别如下: 1.平面波与球面波之间的相互干涉 (1)平面波与平面波方向相对的干涉,并且调整角度,方向相对干涉。 (2)球面波与球面波,这个研究的比较多,我分别研究了两个光源,三个,四个以及六个光源在与之共面的平面上的干涉,得到许多精美的图案。 (3)球面波与平面波 2.经典的杨氏双缝干涉 由于杨氏干涉比较重要,所以研究的时间相对较长,这个我为了更好的调整参数,采用了先输入数据的方法,之后才运行得到结果,我还增加了研究非单色光的研究。 另外,我还研究了与两个点光源连线相垂直的屏上的干涉,虽然这个不属于杨氏干涉,但是原理其实差不多。 3.多孔干涉 这部分其实原理差不多,只需要设置对参数。这部分分别研究了三孔和四孔的干涉,并且干涉屏的位置也不一样,分为与孔面平行和与孔面平行,总共四中情况,从中自己也找到了规律。 4.多个不同方向的平面波 这部分研究了三个不同方向的片面波与四个方向的平面波,从中得到一些图案,找到了规律。 5.模拟电磁波传播动画(代码借鉴一本参考书的)与牛顿环 为了加深对电磁波传播的理解,做了个模拟电磁波传播的动画,另外,还做了个牛顿环干涉。 三、实验原理 MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括

圆孔矩孔的菲涅尔衍射模拟(matlab实现)-工程光学(20200607000913)

工程光学综合练习-----圆孔、矩孔的菲涅尔衍射模拟

圆孔和矩孔的菲涅尔衍射模拟 一、原理 由惠更斯-菲涅尔原理可知接收屏上的P点的复振幅可以表示为 其中为衍射屏上的复振幅分布, 为倾斜因子。根据基尔霍夫对此公式的 完善,有 设衍射屏上点的坐标为(x1, y1),接收屏上点的坐标为(x, y),衍射屏与接收屏间距离为z1,当满足菲涅尔近似条件时,即 此时可得到菲涅尔衍射的计算公式 把上式指数项中的二次项展开,并改写成傅里叶变换的形式,可以写成上式为菲涅尔衍射的傅里叶变换表达式,它表明除了积分号前面的一个与 x1、y1无关的振幅和相位因子外,菲涅尔衍射的复振幅分布是孔径平面的复振 幅分布和一个二次相位因子乘积的傅里叶变换。 相对于夫琅和费衍射而言,菲涅尔衍射的观察屏距衍射屏不太远。在菲涅尔衍射中,输入变量和输出变量分别为衍射孔径平面的光场分布和观察平面的光场 以及光强分布,考虑到这三个量都是二维分布,而且Matlab主要应用于矩阵数值运算,所以本程序选择用二维矩阵来存储衍射孔径平面和观察平面的场分布,并分别以矩阵的列数和行数来对应平面的直角坐标值(x, y)以及(x1, y1)。 二、圆孔菲涅尔衍射 用MATLAB分别构造表示衍射屏和接收屏的二维矩阵。注意使两矩阵阶次相同,考虑到运算量的要求,采样点数不能过多,所以每个屏的x和y方向各取200到300点进行运算。根据式(4),选取合适的衍射屏和接收屏尺寸和相距的

距离,模拟结果如下: 取典型的He-Ne激光器波长=632.8nm,固定衍射屏和接收屏尺寸和相距的 距离,分别取不同的圆孔半径,得到以下三组衍射图样,其圆孔半径分别为12mm,20mm,50mm 图 1(r=12mm) 图 2(r=20mm)

工程光学matlab仿真

工程光学仿真实验报告1、杨氏双缝干涉实验 (1)杨氏干涉模型 屏 图 , 0(1-8) 2 1 (2)仿真程序 clear; Lambda=650; %设定波长,以Lambda表示波长 Lambda=Lambda*1e-9; d=input('输入两个缝的间距 )'); %设定两缝之间的距离,以d表示两缝之间距离 d=d*0.001; Z=0.5; %设定从缝到屏幕之间的距离,用Z表示 yMax=5*Lambda*Z/d;xs=yMax; %设定y方向和x方向的范围

Ny=101;ys=linspace(-yMax,yMax,Ny);%产生一个一维数组ys,Ny 是此次采样总点数 %采样的范围从- ymax 到ymax,采样的数组命名为ys %此数组装的是屏幕上的采样点的纵坐标 for i=1:Ny %对屏幕上的全部点进行循环计算,则要进行Ny 次计算 L1=sqrt((ys(i)-d/2).^2+Z^2); L2=sqrt((ys(i)+d/2).^2+Z^2); %屏上没一点到双缝的距离L1和L2 Phi=2*pi*(L2-L1)/Lambda; %计算相位差 B(i,:)=4*cos(Phi/2).^2; %建立一个二维数组,用来装该点的光强的值 end %结束循环 NCLevels=255; %确定使用的灰度等级为255级 Br=(B/4.0)*NCLevels; %定标:使最大光强(4. 0)对应于最大灰度级(白色) subplot(1,4,1),image(xs,ys,Br); %用subplot 创建和控制多坐标轴 colormap(gray(NCLevels)); %用灰度级颜色图设置色图和明暗 subplot(1,4,2),plot(B(:),ys); %把当前窗口对象分成2块矩形区域 %在第2块区域创建新的坐标轴 %把这个坐标轴设定为当前坐标轴 %然后绘制以( b (: ) , ys)为坐标相连的线 title('杨氏双缝干涉'); (3)仿真图样及分析 a)双缝间距2mm b)双缝间距4mm c)双缝间距6mm d)双缝间距8mm 图1.2改变双缝间距的条纹变化 由上面四幅图可以看出,随着双缝之间的距离增大,条纹边缘坐标减小,也就是条纹 间距减小,和理论公式d D e /λ=推导一致。如果增大双缝的缝宽,会使光强I 增加,能够 看到条纹变亮。 二、杨氏双孔干涉实验 1、杨氏双孔干涉 杨氏双孔干涉实验是两个点光源干涉实 验的典型代表。如图2所示。当光穿过这两个 离得很近小孔后在空间叠加后发生干涉, 并 在像屏上呈现出清晰的明暗相间的条纹。 由 于双孔发出的波是两组同频率同相位的球面 波, 故在双孔屏的光射空间会发生干涉。 于是, 在图2中两屏之间的空间里, 如果一点P 处于 两相干的球面波同时到达 波 峰 (或波谷)的位置, 叠加后振幅达到最高, 图2.1 杨氏双孔干涉 表现为干涉波的亮点; 反之, 当P 处处于一个球面波的波峰以及另一个球面波的波谷时候, 叠加后振幅为零,变现是暗纹。

基于matlab高斯光束经透射型体光栅后的光束传输特性分析(附源程序)

目录 1 基本原理 (1) 1.1耦合波理论 (1) 1.2高斯光波的基本理论 (9) 2 建立模型描述 (10) 3仿真结果及分析 (10) 3.1角度选择性的模拟 (10) 3.2波长选择性的模拟 (13) 3.3单色发散光束经透射型布拉格体光栅的特性 (15) 3.4多色平面波经透射型布拉格体光栅的特性 (17) 4 调试过程及结论 (18) 5 心得体会 (20) 6 思考题 (20) 7 参考文献 (20) 8 附录 (21)

高斯光束经透射型体光栅后的光束传输 特性分析 1 基本原理 1.1耦合波理论 耦合波理论分析方法基于厚全息光栅产生的布拉格衍射光。当入射波被削弱且产生强衍射效率时,耦合波理论分析方法适用耦合波理论分析方法适用于透射光栅。 1.1.1耦合波理论研究的假设条件及模型 耦合波理论研究的假设条件: (1) 单色波入射体布拉格光栅; (2) 入射波以布拉格角度或近布拉格角度入射; (3)入射波垂直偏振与入射平面; (4)在体光栅中只有两个光波:入射光波 R 和衍射光波 S; (5)仅有入射光波 R 和衍射光波 S 遵守布拉格条件,其余的衍射能级违背布拉格 条件,可被忽略; (6)其余的衍射能级仅对入射光波 R 和衍射光波 S 的能量交换有微小影响; (7)将耦合波理论限定于厚布拉格光栅中; 图1为用于耦合波理论分析的布拉格光栅模型。z 轴垂直于介质平面,x 轴在介质平面内,平行于介质边界,y 轴垂直于纸面。边界面垂直于入射面,与介质边界成Φ角。光栅矢量K垂直于边界平面,其大小为2/ =Λ,Λ为光栅周期,θ为入射角。 Kπ 图1布拉格光栅模型

用matlab实现杨氏双缝干涉的实验仿真

用MATLAB实现杨氏双缝干涉实验仿真摘要: 实验室中,做普通光学实验,受到仪器和场所的限制;实验参数的改变引起干涉图样的改变不明显,难以体现实验的特征。本文利用MA TLAB仿真杨氏双缝干涉实验,创建用户界面,实现人机交互,输入不同实验参数,使干涉现象直观表现出来。 关键词: MATLAB;杨氏双缝干涉实验;用户界面设计;程序编写;仿真。 1. 引言: 在计算机迅猛发展的今天,光学实验的仿真越来越多的受科研工作者和教育工作者关注。其应用主要有两个方面:一是科学计算方面,利用仿真实验的结果指导实际实验,减少和避免贵重仪器的损害;二是在光学教学方面,将抽象难懂的光学概念和规律,由仿真实验过程直观的描述,使学生对学习感兴趣。在科学计算方面,国外的光学实验仿真是模拟设计和优化光学系统的过程中发展起来的,在这方面美国走在最前,其中最具代表性的是劳伦斯利和弗莫尔实验光传输模拟计算机软件Prop92及大型总体优化设计软件CHAINOP和PROPSUITE;另外法国也开发完成其具有自身特点的光传输软件Miro。在光学教学方面,国外已有相关的配有光盘演示光学实验的教材。我国用于科学研究的光学实验计算机数值仿真软件随开发较晚,但也已经取得了显著成绩。特别是1999年,神光——III原型装置TLL分系统集成实验的启动为高功率固体激光驱动器的计算机数值模拟的研究创造了条件。目前已基本完成SG99光传输模拟计算软件的开发,推出的标准版本基本能稳定运行。目前该软件已经应用于神光——III主机可行性论证的工作中。计算机仿真具有观测方便,过程可控等优点,可以减少系统对外界条件对实验本身的限制,方便设置不同的参数,借助计算机的高数运算能力,可以反复改变输入的实验条件系统参数,大大提高实验效率。MATLAB是MatlabWorks公司于1982年推出的一套高性能的数值计算和可视化软件。具有可扩展性,易学易用性,高效性等优势。 通过对目前计算机仿真光学实验的现状和相关研究的分析,本文将用Matlab 编程实现杨氏双缝干涉实验的仿真。利用Matlab GUI建立用户界面,实现人机

Matlab数字衍射光学实验讲义(一)

实验注意事项(必读) 1.没有弄清楚实验内容者,禁止接触实验仪器。 2.注意激光安全。绝对不可用眼直视激光束,或借助有聚光性的光学组件观察激光束,以免损伤眼睛。 3.注意用电安全。He-Ne激光器电源有高压输出,严禁接触电源输出和激光头的输入端,避免触电。 4.注意保持卫生。严禁用手或其他物品接触所有光学元件(透镜、反射镜、分光镜等)的光学表面;特别是 在调整光路中,要避免手指碰到光学表面。 5.光学支架上的调整螺丝,只可微量调整。过度的调整,不仅损坏器材,且使防震功能大减。 6.实验完成后,将实验所用仪器摆放整齐,清理一下卫生。

Matlab数字衍射光学实验一 计算机仿真过程是以仿真程序的运行来实现的。仿真程序运行时,首先要对描述系统特性的模型设置一定的参数值,并让模型中的某些变量在指定的范围内变化,通过计算可以求得这种变量在不断变化的过程中,系统运动的具体情况及结果。仿真程序在运行过程中具有以下多种功能: 1)计算机可以显示出系统运动时的整个过程和在这个过程中所产生的各种现象和状态。具有观测方便,过程可控制等优点; 2)可减少系统外界条件对实验本身的限制,方便地设置不同的系统参数,便于研究和发现系统运动的特性; 3)借助计算机的高速运算能力,可以反复改变输入的实验条件、系统参数,大大提高实验效率。因此.计算机仿真具有良好的可控制性(参数可根据需要调整)、无破坏性(不会因为设计上的不合理导致器件的损坏或事故的发生)、可复现性(排除多种随机因素的影响,如温度、湿度等)、易观察性(能够观察某些在实际实验当中无法或者难以观察的现象和难以实现的测量,捕捉稍纵即逝的物理现象,可以记录物理过程的每一个细节)和经济性(不需要贵重的仪器设备)等特点。 Matlab是MathWorks公司于1982年推出的一套高性能的数值计算和可视化软件。它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便、界面友好的用户环境。它还包括了ToolBox(工具箱)的各类问题的求解工具,可用来求解特定学科的问题。Matlab的长处在于数值计算,能处理大量的数据,而且效率比较高。MathWorths公司在此基础上开拓了符号计算、文字处理、可视化建模和实时控制能力,增强了Matlab的市场竞争力,使Matlab成为市场主流的数值计算软件。Matlab产品族支持概念设计、算法开发、建模仿真、实时实现的理想的集成环境。其主要功能有:数据分析、数值和符号计算、工程与科学绘图、控制系统设计、数字图像信号处理、财务工程,建模、仿真、原型开发,应用开发,图形用户界面。 在光学仪器设计和优化过程中,计算机的数值仿真已经成为不可缺少的手段。通过仿真计算,可以大幅度节省实验所耗费的人力物力,特别是在一些重复实验工作强度较大且对实验器材、实验环境等要求较苛刻的情况下。如在大型激光仪器的建造过程中,结合基准实验的仿真计算结果可为大型激光器的设计和优化提供依据。仿真光学实验也可应用于基础光学教学。光学内容比较抽象,如不借助实验,很难理解,如光的干涉、菲涅耳衍射、夫琅禾费衍射等。传统的光学实验需要专门的实验仪器和实验环境。其操作比较烦琐,误差大现象也不明显,对改变参数多次观察现象也多有不便。MATLAB是当今国际上公认的在科技领域方面最为优秀的应用软件和开发环境。利用它对光学实验仿真可避免传统实验中的缺点,强大的功能使光学实验变得简便准确。基于MATLAB的科学可视化功能对光学仿真实验现象进行计算机模拟的效果更加准确明显。 1.实验目的: 掌握基本的Matlab编程语言,了解其编程特点;模拟几种常用函数,了解其编程过程及图像显示命令函数,掌握Matlab画图方法;通过设计制作一系列光学研究物体掌握其编程方法;掌握光波的matlab编程原理及方法,初步了解Matlab

圆孔矩孔的菲涅尔衍射模拟(matlab实现)-工程光学.docx

XX大学XXXX学院 工程光学综合练习?…圆孔、矩孔的菲涅尔衍射模拟

圆孔和矩孔的菲涅尔衍射模拟 一、原理 由恵更斯?菲涅尔原理町知接收屏上的 P点的复振幅可以表示为 其中F(Q)为衍射屏上的复振幅分布,K(B)为倾斜因子。根据基尔霍夫对此公式的完善,有 设衍射屏上点的坐标为(χ17yj,接收屏上点的坐标为(χ,y),衍射屏与接收屏间距离为“,当满足菲涅尔近似条件时,即 上式为菲涅尔衍射的傅里叶变换表达式,它表明除了积分号前面的一个与xl、yl无关的振幅和相位因子外,菲涅尔衍射的复振幅分布是孔径平面的复振幅分布和一个二次和位因子乘积的傅里叶变换。 相对于夫琅和费衍射而言,菲涅尔衍射的观察屏距衍射屏不太远。在菲涅尔衍射中,输入变最和输出变最分别为衍射孔径平面的光场分布利观察平面的光场以及光强分布,考虑到这三个量都是二维分布,而且MatIab主要应用于矩阵数值运第所以本程序选择用二维矩阵來存储衍射孔径平面和观察平而的场分布,并分别以矩阵的列数和行数來对应平面的直角坐标值(x,y)以及(x h yι)o 用MATLAB分别构造表示衍射屏和接收屏的二维矩阵。注意使两矩阵阶次相冋,考虑到运算最的要求,釆样点数不能过多,所以每个屏的X和y方向各取200到300点进行运算。根据式(4),选取合适的衍射屏和接收屏尺寸和相距 E(P) = C —K(θ)ciσ 把上式指数项中的二次项展开,并改写成傅里叶变换的形式,可以写成

的距离,模拟结果如下: 取典型的He-Ne激光器波长λ=632.8nm,固定衍射屏和接收屏尺寸和相距的距离,分别取不同的圆孔半径,得到以下三组衍射图样,其圆孔半径分别为12 mm ■ 2Omm, 5Omm 图 1 (r=12mm) 图 2 (r=20mm) 园礼形状 ?J 103 2CD 253 Tn 1DO 2C0 3□□ 衍射园洋 圆孔形状 3C0 2£0 2C0 1∞ 1Γ∩ E O 100 2C0 300 轨射區存 2UJ -200

MATLAB 高斯光束传播轨迹的模拟

B1:高斯光束传播轨迹的模拟 设计任务: 作图表示高斯光束的传播轨迹 (1)基模高斯光束在自由空间的传播轨迹; (2)基模高斯光束经单透镜变换前后的传播轨迹; (3)基模高斯光束经调焦望远镜变换前后的传播轨迹。 function varargout = B1(varargin) % B1 M-file for B1.fig % B1, by itself, creates a new B1 or raises the existing % singleton*. % % H = B1 returns the handle to a new B1 or the handle to % the existing singleton*. % % B1('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in B1.M with the given input arguments. % % B1('Property','Value',...) creates a new B1 or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before B1_OpeningFunction gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to B1_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDA TA, GUIHANDLES % Copyright 2002-2003 The MathWorks, Inc. % Edit the above text to modify the response to help B1 % Last Modified by GUIDE v2.5 21-Oct-2010 17:52:32 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @B1_OpeningFcn, ... 'gui_OutputFcn', @B1_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []);

信息光学matlab仿真

%圆孔的夫琅禾费衍射: N=512; r=3; %衍射圆孔的半径 I=zeros(N,N); [m,n]=meshgrid(linspace(-N/16,N/16-1,N)); D=(m.^2+n.^2).^(1/2); I(find(D<=r))=1; subplot(1,2,1),imshow(I); title('生成的衍射圆孔'); % 夫琅禾费衍射的实现过程 L=500; [X,Y]=meshgrid(linspace(-L/2,L/2,N)); lamda_1=630; % 输入衍射波长; lamda=lamda_1/1e6 k=2*pi/lamda; z=1000000; % 衍射屏距离衍射孔的距离h=exp(1j*k*z)*exp((1j*k*(X.^2+Y.^2))/(2*z))/(1j*lamda*z);%脉冲相应 H =fftshift(fft2(h)); %传递函数 B=fftshift(fft2(I)); %孔径频谱 G=fftshift(ifft2(H.*B)); subplot(1,2,2),imshow(log(1+abs(G)),[]); title('衍射后的图样'); figure meshz(X,Y,abs(G)); title('夫琅禾费衍射强度分布')

%单缝的夫琅禾费衍射: N=512; a=25; % 单缝的宽度 b=1000;% 单缝的长度 I=zeros(N,N); [m,n]=meshgrid(linspace(-N/4,N/4,N)); I(-a

Matlab在光学信息处理仿真实验中的应用_谢嘉宁

收稿日期:2004202213 基金项目:佛山科学技术学院校级科研课题经费资助 作者简介:谢嘉宁(1971-),女,广东潮州人,佛山科学技术学院物理系讲师,光学工程硕士,主要从事光学实验教学与 光信息处理的研究. Matlab 在光学信息处理仿真实验中的应用 谢嘉宁1,陈伟成1,赵建林2,陈国杰1,张潞英1 (1.佛山科学技术学院物理系,广东佛山528000;2.西北工业大学应用物理系,陕西西安710072) 摘 要:提出了一种利用计算机并通过Matlab 软件仿真光学信息处理实验的方法,其特点是可以随意改变物理参量,克服了光学实验上难以实现的操作.文中分别给出了光栅衍射、空间滤波、图像边缘增强、相关识别等实验的部分仿真结果. 关键词:Matlab ;计算机仿真;CAI 中图分类号:O4239 文献标识码:A 文章编号:100524642(2004)0620023203 1 引 言 光学信息处理是以光子传递信息,以光学或光电子器件进行操作运算,利用光的透射、干涉和衍射等光学现象来实现对输入信息的各种变换或处理.因此,它也是一门基于实验的科学.随着计算机的广泛使用,计算机仿真实验得到了大量研究,各类CAI 软件应运而生,给光学信息处理的研究和教学带来极大方便.但笔者在调研中发现,大部分的仿真程序由VB ,C 和Fortran 等高级语言编写[1~3].使用这些语言编程,需要编者具有良好的计算机编程能力并花费较多的时间.因此,本文探讨利用Matlab 软件实现对光学信息处理实验的计算机仿真方法. Matlab 作为科学计算软件,主要适用于矩阵 运算和信息处理领域的分析设计,它使用方便、输入简捷,运算高效、内容丰富,并且有大量的函数库可供使用[4].与Basic ,C 和Fortran 相比,用Matlab 编写程序,其问题的提出和解决只需以数 学方式表达和描述,不需要大量繁琐的编程过程,因此特别适合工程计算和教学软件的编写.本仿真实验系统实现了多种衍射屏的夫琅和费衍射、空间滤波、图像边缘增强、相关识别等实验的仿真.2 仿真系统的总体设计 本系统采用Matlab5.3编写,在Pentium 以上个人计算机上、Matlab 环境下运行.为了方便 用户使用,本系统的实验项目模块设置如图1所示.主界面的程序为OIP000.m ,界面如图2所 示.四大系统子模块是该窗体的子窗体模块,分别为OIP1.m ,OIP2.m ,OIP3.m 和OIP4.m ,通过单击主界面上相应的按钮即可启动相应的子窗体,在每一级子窗体界面上有相关的参量选择和操作 . 图1 系统模块功能图 图2 仿真实验系统主界面 第24卷 第6期 2004年6月 物 理 实 验 PHYSICS EXPERIM EN TA TION Vol.24 No.6  J un.,2004

相关文档
最新文档