MATLAB仿真及其在光学课程中的应用课件第四章 MATLAB在信息光学中的应用举例
基于MATLAB的尝试教学法在光学教学中的应用-2019年精选文档

基于MATLAB的尝试教学法在光学教学中的应用光学是高校光电技术行业的一门重要的专业基础课,尤其是光学部分的干涉和衍射,无论在理论研究还是在高校光学教学中都占有重要的地位。
由于光学课程中的物理概念繁多、数学推导繁琐,物理规律抽象,虽然现在的光学教学中也引入了多媒体教学,但多媒体课件不够生动形象,而学生在学习过程中,一直都是被动的接受,所以教学效果不是很理想。
因此,本文提出,把尝试教学法与MATLAB相结合,应用到光学教学中,并给出了一个教学实例。
实验证明,该方法有效地调动了学生的学习主动性,教学效果良好,同时也对学生所学知识进行了知识的巩固与拓宽。
一、尝试教学法简介尝试教学法,是给学生创造一定条件或情境,让学生积极主动探索、独立思考、发现问题、分析问题和解决问题,以培养学生的探索精神和自学能力为主要目标的教学方法。
它不同于以往的注入式教法,它充分发挥学生在课堂教学活动中的主体作用,一开始就要求学生进行尝试练习,把学生推到主动的地位;尝试练习中遇到困难,学生便会主动地自学课本或寻求教师的帮助,学习成为学生自身的需要。
尝试教学法秉承着“先练后讲,先学后导”的教学模式,使学生成为教学的主导,自主的学习课本知识,主动的查找相关资料,主动与别人探讨,主动思考,解决问题。
调动了学生学习的积极主动性,开拓了学生解决问题的能力,同时为以后的工作和学术研究打下了良好的主动探索的精神。
二、教学实例光的干涉是光学的一个主要问题,是每个学习光学的学生必须掌握的基本内容,而光的时间相干性更是一个比较抽象的概念,学生理解困难,为此,我们通过简单的杨氏双缝干涉,采用尝试教学法,利用matlab的可视化,直观化功能,来进行学习。
设计题目如下:原理如图1所示:S1和S2两狭缝,间距为d=0.4mm,OP为观察屏,观察屏距狭缝距离为D=50cm,光通过两狭缝后,在观察屏上形成干涉条纹。
1、当两束同频率,同初始相位,振动方向相同的单色光的光强相同时,求双缝干涉的干涉强度、干涉条纹。
信息光学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/1e6k=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('衍射后的图样');figuremeshz(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<m&m<a&-b<n&n<b)=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/1e6k=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('衍射后的图样');figuremeshz(X,Y,abs(G));title('夫琅禾费衍射强度分布')。
Matlab在信息光学中应用

精选完整ppt课件
48
缝宽对夫瑯禾菲衍射的影响
精选完整ppt课件
49
缝宽对夫瑯禾菲衍射的影响代码
• igure; • for k=1:4; • u=zeros(50,50); • u(20:30,25:(24+k))=1; • subplot(2,4,k);imshow(u); • end; • for k=5:8; • u=zeros(50,50); • u(20:30,25:(20+k))=1; • u=fft2(u,256,256);u=fftshift(u); • subplot(2,4,k);imshow(log(abs(u)),[-1 1]);title('夫瑯禾费衍射'); • end;
• [x1,map]=imread('j2.bmp');subplot(2,3,2);imshow (x1);x1=fft2(x1,256,256);x1=fftshift(x1);subplot(2, 3,5);imshow(log(abs(x1)),[-1 5]);
• [x1,map]=imread('j3.bmp');subplot(2,3,3);imshow (x1);x1=fft2(x1,256,256);x1=fftshift(x1);subplot(2, 3,6);imshow(log(abs(x1)),[-1 5]);
• xlabel('kasinθ');
• ylabel('光强I/I0');
• title('多缝缝衍射强度分布');
• lgray=zeros(100,3);
• for i=0:99
•
matlab仿真及其在光学课程中的应用

Matlab仿真及其在光学课程中的应用引言光学是物理学的一门重要分支,研究光的传播、发射、吸收和激发等现象。
在光学课程中,学生需要深入理解光的性质和行为,并通过实验与仿真来加深对光学原理的理解。
Matlab是一种强大的数学工具,它在光学仿真中有着广泛的应用。
本文将介绍Matlab在光学课程中的应用,并探讨其在光学仿真中的优势和局限性。
Matlab在光学课程中的应用1. 光的传播模拟在光学课程中,我们经常需要研究光在不同介质中的传播行为。
Matlab的光线传播仿真工具箱提供了一套丰富的函数和工具,可以模拟光的传播路径、光束的变化和光的干涉等现象。
通过这些仿真工具,学生可以直观地观察到光在不同介质中的传播速度、折射角度和波长变化等重要现象,加深对光的传播行为的理解。
2. 光学元件设计与优化在光学器件的设计与优化中,Matlab可以帮助我们建立光学系统的数学模型,并通过优化算法来提高设计的性能。
例如,在透镜的设计中,我们可以使用Matlab中的光学元件模拟工具箱来建立透镜的材料、形状和尺寸等参数,并通过优化算法来优化透镜的成像性能。
这样的仿真过程可以使学生深入了解光学器件的设计过程,并提高他们的设计和优化能力。
3. 光学散射模拟光学散射是光在介质中遇到微观颗粒或界面时发生的现象,对于理解大气中的光传播、材料的散射特性等具有重要意义。
Matlab提供了多种模拟光学散射现象的工具和函数,可以帮助学生研究光在不同介质中的散射行为。
通过这些仿真工具,学生可以模拟不同尺寸和形状的颗粒对光的散射效应,并探索散射对光的传播的影响,深入理解光学散射的机理和特性。
Matlab光学仿真的优势和局限性1. 优势•丰富的功能和工具:Matlab提供了许多功能强大的工具箱和函数,用于光学仿真。
这些工具箱包括光线传播仿真工具箱、光学元件模拟工具箱等,可以满足不同仿真需求。
•易于学习和使用:Matlab具有简洁、直观的界面和易于学习的语法,使得初学者可以快速上手,并且能够更加专注于光学问题的研究。
MATLAB仿真及其在光学课程中的应用课件第三章 MATLAB在光学原理中的应用举例

• k1=5; %波1波数
振幅
0
• k2=4; %波2波数 -0.5
• t=0.1:0.2:1.3; %对时间进行等间隔取点
-1
• a=1;
%波动振幅
0
• x=0:0.001:5; %对传播方向x轴进行等间隔取点
• A2=a*cos(k2*x-w2*t(end)); %A2波动函数
• A1=a*cos(k1*x-w1*t(end)); %A1波动函数
第三章 MATLAB在光学原理 中的应用举例
3.1 平面电磁波在不同媒介分界面上的 入射、反射和折射
• 3.1.1 电矢量平行入射面的反射系数和振幅透 射系数
反射系数为:
rp n2 cosi n1 n2 cosi n1
1 (n1 / n2 )2 sin2 i 1 (n1 / n2 )2 sin2 i
0
1
2
3
4
图3-10 单色光双缝干涉实验结果
• 【例3-2-5】模拟非单色光的双缝干涉实验。 • MATALB程序见M文件
x 10-3 -1
• plot(x,A1,'-',x,A2,':')
• set(gcf,'color',[1 1 1]);
• set(gca,'YTick',[-1:0.5:1]);
• set(gca,'XTick',[0:1:5]); • xlabel('变量X') • ylabel('振幅') • title('两列单色平面波的模拟') • legend('光波1','光波2')
《MATLAB仿真及其在光学课程中的应用(第3版)》教学课件—02MATLAB的基本语法

• 2.1.4 元胞数组
• 元胞是元胞数组(CellArray)的基本组成部分。元胞 数组与数值数组相似,以下标来区分,单元元胞数组由元 胞和元胞内容两部分组成。与一般的数值数组不同,元胞 可以存放任何类型、任何大小的数组,而且同一个元胞数 组中各元胞的内容可以不同。创建元胞数组有用花括号{ } 直接赋值生成元胞数组和函数cell创建元胞数组这两种方 法。元胞数组的运算函数如书中表2-6所示。
• 【例2-1-3】元胞数组创建与显示实例。 • MATLAB语句: • a={'MATLAB成绩',91,['笔试46';'上机45']} %用括号{}直接赋值 • b=cell(2);b{1,1}='class';b{1,2}='no020305'; • b{2,1}='name mary'; b{2,2}=['Computer is 95'] %函数cell创建元胞
MATLAB语句:
• >>student=struct('number','02110875','name','王玲','sex','女 ','age','21',...
• 'class','03','department','02')
• 运行语句,输出结果:
• student =
•
number: '02110875'
• MATLAB为关系运算和逻辑运算提供了关系操作符和 逻辑操作符,如书中表2-4和表2-5所示。
《2024年基于Matlab的光学实验仿真》范文

《基于Matlab的光学实验仿真》篇一一、引言光学实验是物理学、光学工程和光学科学等领域中重要的研究手段。
然而,传统的光学实验通常需要使用大量的物理设备和器材,而且往往因为各种因素的影响(如设备误差、环境干扰等)而存在一定程度的误差。
为了更好地研究光学原理、优化光学设计、减少实验成本和降低实验风险,基于Matlab的光学实验仿真逐渐成为了研究的热点。
本文旨在介绍基于Matlab的光学实验仿真的原理、方法和应用。
二、Matlab光学实验仿真的原理Matlab是一种强大的数学计算软件,具有丰富的函数库和强大的数据处理能力。
在光学实验仿真中,Matlab可以通过建立光学系统的数学模型,模拟光在介质中的传播、反射、折射、干涉、衍射等过程,从而实现对光学系统的性能进行预测和优化。
三、Matlab光学实验仿真的方法基于Matlab的光学实验仿真主要包括以下几个步骤:1. 建立光学系统的数学模型。
根据光学系统的原理和结构,建立光在介质中传播的数学模型,包括光的传播路径、光线的反射和折射等。
2. 编写仿真程序。
利用Matlab的编程语言,根据数学模型编写仿真程序,实现光在介质中的传播过程的模拟。
3. 设置仿真参数。
根据实验需要,设置仿真参数,如光源的波长、光线的入射角、介质的折射率等。
4. 运行仿真程序。
运行仿真程序,得到光在介质中传播的模拟结果。
5. 分析结果。
对模拟结果进行分析,得出光学系统的性能参数,如光线的传播轨迹、光强分布等。
四、Matlab光学实验仿真的应用基于Matlab的光学实验仿真可以广泛应用于光学设计、光学测量和光学教学等领域。
1. 光学设计。
在光学设计中,可以利用Matlab进行光学系统的性能预测和优化。
通过建立光学系统的数学模型,模拟光在介质中的传播过程,可以预测光学系统的性能参数,如焦距、像差等。
同时,通过优化设计参数,可以优化光学系统的性能,提高光学系统的成像质量和稳定性。
2. 光学测量。
现代信息光学(matlab)

现代信息光学(matlab)信息光学是一门研究光学与信息技术相结合的交叉学科,是光学和信息科学技术的融合领域。
信息光学是指利用光学原理和技术,研究并开发一系列新型器件、系统和技术,以满足信息处理、通信、显示和存储等领域的需求。
作为信息技术与光学学科的交叉学科,信息光学将光学、物理学、信息科学、电子工程等学科的基本理论和方法综合应用到信息处理与传输、高密度存储、显示技术和生物医学成像等新领域。
在现代信息光学的研究与应用中,Matlab作为一种强大的数学计算软件,发挥了重要的作用。
Matlab具有易于使用的界面、丰富的数学函数库和强大的绘图能力,可用于进行复杂的数学计算、图像处理、信号处理、模拟仿真等工作,对信息光学领域的理论研究和技术应用提供了有力的支持。
下面将从几个方面介绍现代信息光学中Matlab的应用:一、光学系统设计与分析1、Matlab在光学系统的参数优化和性能分析中的应用。
光学系统的设计需要考虑多种因素,如光学元件的性能、系统的分辨率、成像质量等。
Matlab可以通过数学模型分析复杂的光学系统,进行光学元件的参数优化和光学系统的性能分析,为光学系统的设计提供重要的参考和支持。
2、Matlab在光学成像系统的模拟仿真中的应用。
光学成像系统的设计和性能评价需要进行大量的模拟仿真工作,Matlab具有强大的仿真能力,可以模拟光学系统的成像过程,分析成像质量、分辨率等参数,为光学成像系统的设计和优化提供重要的帮助。
二、光学信号处理与图像处理1、Matlab在光学信号处理中的应用。
光学信号处理是信息光学领域中的一个重要分支,涉及到光学信号的采集、处理、传输和显示等方面。
Matlab中丰富的信号处理工具箱可以应用于光学信号的采集、滤波、频谱分析、信噪比分析等工作,为光学信号处理提供了重要的工具和支持。
2、Matlab在图像处理中的应用。
图像处理是信息光学领域中的另一个重要分支,涉及到数字图像的获取、处理、分析和显示等方面。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4.1 信息光学函数
• 4.1.1 矩形函数 • 1.一维矩形函数 • 一般形式矩形函数的表达式:
h
hrect
(
x
a
x0
)
h
/
2
0
| x x0 | 1/ 2 a
| x x0 | 1/ 2 a
| x x0 | 1/ 2 a
在MATLAB中,一维矩形函数可用函数rectpuls( )来实现。
• 【例4-1-3】用MATLAB画出标准阶跃函数。
• ◆ MATLAB程序如下:
1.2
• x=-3:0.01:3;
1
0.8
• y=heaviside(x); 0.6
step(x)
• plot(x,y,'k','LineWidth',2)
0.4
• axis([-3 3 -0.2 1.2])
0.2
• xlabel('x'); • ylabel('step(x)‘)
(a)三角孔原始图像 (b)傅里叶变换后的图像 (c)空间频谱 图4-8 三角孔衍射的光强分布和振幅谱
(a)矩形孔原始图像 (b)傅里叶变换后的图像 (c)空间频谱 图4-9 矩形孔衍射的光强分布和振幅谱
4.3 卷积定理
• 【例4-3-1】卷积定理的仿真。
• ◆MATLAB见M文件
• ◆仿真结果见书图4-11
0
0
-1
-0.5
0
0.5
1
0
1
2
3
x
x
(a)单位矩形函数 (b)一般形式矩形函数
图4-1 一维矩形函数
• 2.二维矩形函数 • 二维矩形函数的一般表达式为:
【例4-1-2】用MATLAB画出中心位于(0,1),边长为2×3的均 匀照明矩形孔的振幅透射系数。 ◆ MATLAB见M文件
1
0.8
0.6
Z
a b (x x0 ) / a ( y y0 ) / b
在MATLAB中,一维sinc函数可用函数sinc( )来实现。
• 【例4-1-5】用MATLAB画出中心在原点处的一维和二维sinc 函数图形。
• ◆ MATLAB见M文件
(a)sinc函数一维图形
(b)sinc函数二维图形
图4-5 中心在原点处的一维和二维sinc函数图形
0
-0.2-3
-2
-1
0
1
2
3
x
图4-3 阶跃函数图形
• 4.1.3 符号函数 • 符号函数的定义:
1 x a0
sgn(
x a
)
0
1
x a0 x a0
在MATLAB中,符号函数可用函数sign()来实现。
• 【例4-1-4】用MATLAB画出中心在原点处的符号函数图形。
• ◆ MATLAB程序如下:
图4-15 输出全息透镜图像
• 4.4.2 二元傅里叶变换全息图 • 【例4-5-2】二元傅里叶变换计算全息图的制作。 • MATLAB见M文件
图4-16 MATLAB绘制 的字符“E”
图4-17 字符“E”的MATLAB 模拟计算全息图
图4-18 字符“E”的MATLAB 模拟计算全息图的再现图像
-2 -1.5 -1 -0.5
0
0.5
1
1.5
2
x
图4-4 符号函数图形
• 4.1.4 sinc函数
•
一维 sinc函数的定义为:
sin c( x x0 )= sin (x x0 ) / a
a
(x x0 ) / a
二维 sinc函数的定义为: sin c( x , y ) sin (x x0 ) / a sin ( y y0) / b
g2 P
He-Ne Laser
g1 激光光束 M
图4-10 卷积定理光路图
4.4 傅里叶透镜的仿真
• 【例4-4-1】傅里叶透镜成像的仿真。 • ◆MATLAB见M文件 • ◆仿真结果见书图4-13
4.5 计算全息
• 4.5.1 全息透镜 • 【例4-5-1】全息透镜的仿真。 • MATLAB见M文件
0.4
0.2
0 4
2
3
2
Y0 -2
1
-1
0X
-2
-4 -3
图4-2 二维矩形函数图形
• 4.1.2 阶跃函数 • 一般形式的阶跃函数定义为:
0
step(
x-x0 a
)
1 1
2
x a x0 / a x a x0 / a x a x0 / a
在MATLAB中,阶跃函数可用海维赛德函数heaviside来实现。
• 【例4-1-1】用MATLAB画出中心在原点的单位矩形脉冲和中 心在1.5、脉宽为2、高度为1.5的矩形脉冲。
• ◆ ATLAB程序见M文件
rect(x) h*rect((x-x0)/w)
单位矩形函数
一般形式矩形函数 1.6
1.4 1
1.2
0.8 1
0.6
0.8
0.4
0.6
0.4 0.2
0.2
• x=-2:0.01:2; • y=sign(x); • plot(x,y,'k','LineWidth',2) • axis([-2 2 -1.1 1.1]) • xlabel('x'); ylabel('sgn(x)‘)
sgn(x)
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
• 4.1.5 高斯函数 • 一维高斯函数的定义:
Gaus(
x
x0 a
)
exp
x
x0 a
2
二维高斯函数的定义:Gaus(x a Nhomakorabea,
y b
)
exp
x a
2
y b
2
• 【例4-1-6】用MATLAB画出一维和二维高斯函数图形。 • ◆ MATLAB见M文件
(a)高斯函数一维图形
(b)高斯函数二维图形
图4-6 中心在原点处的一维和二维高斯函数图形
4.2 傅里叶变换
• 【例4-2-1】利用MATLAB语言绘制圆孔输入物。 • ◆ MATLAB见M文件
思考:怎样绘制方 孔、十字、三角孔 等物体?
图4-7 圆孔输入物
• 【例4-2-2】三角孔和矩形孔的傅里叶频谱观察。 • ◆ MATLAB见M文件