当前位置:文档之家› 基于MATLAB的光学实验模拟

基于MATLAB的光学实验模拟

基于MATLAB的光学实验模拟
基于MATLAB的光学实验模拟

基于MATLAB的光学实验模拟

摘要:

利用MATLAB软件编程实现了用衍射积分的方法对单缝衍射、杨氏双缝干涉、黑白

光栅衍射的计算机模拟;以及用傅立叶变换方法对简单孔径衍射、黑白光栅及正弦光栅夫

琅和费衍射的模拟。

关键词:

MATLAB;衍射积分;傅立叶变换;计算机模拟

引言:

美国Mathworks公司推出的MA TLAB,是一种集数值计算、符号预算、可视化建模、

仿真和图形处理等多种功能于一体的优秀图形化软件。本文介绍了通过MA TLAB软件编

程实现用衍射积分和傅立叶变换实现夫琅和费衍射计算机模拟的方法。

计算机模拟为衍射实验的验证提供一条简捷、直观的途径。从而加深了对物理原理、

概念和图像的理解。

正文:

大学教学课程中引入计算机模拟技术正日益受到重视,与Basic、C和Fortran相比,用MA TLAB软件做光学试验的模拟,只需要用数学方式表达和描述,省去了大量繁琐的编

程过程。下面来介绍利用MATLAB进行光学模拟的两种方法。

(一)衍射积分方法:

该方法首先是由衍射积分算出接收屏上的光强分布,然后根据该分布调制色彩作图,从而得到衍射图案。

1.单缝衍射。

把单缝看作是np个分立的相干光源,屏幕上任意一点复振幅为np个光源照射结果

的合成,对每个光源,光程差Δ=ypsinΦ,sinΦ=ys/D,光强I=I0(Σcosα)2+(Σsinα)2,其中α=2Δ/λ=πypys/λD

编写程序如下,得到图1

lam=500e-9;

a=1e-3;D=1;

ym=3*lam*D/a;

ny=51;

ys=linspace(-ym,ym,ny);

np=51;

yp=linspace(0,a,np);

for i=1:ny

sinphi=ys(i)/D;

alpha=2*pi*yp*sinphi/lam;

图1 单缝衍射的光强分布 sumcos=sum(cos(alpha));

sumsin=sum(sin(alpha));

B(i,:)=(sumcos^2+sumsin^2)/np^2;

end

N=255;

Br=(B/max(B))*N;

subplot(1,2,1)

image(ym,ys,Br); colormap(gray(N)); subplot(1,2,2) plot(B,ys); 2. 杨氏双缝干涉

两相干光源到接收屏上P 点距离r 1=(D 2+(y-a/2)2)1/2, r 2=(D 2+(y+a/2)2)1/2,相位差

Φ=2π(r 2-r 1)/λ,光强I=4I 0cos 2

(Φ/2) 编写程序如下,得到图2 clear lam=500e-9 a=2e-3;D=1;

ym=5*lam*D/a;xs=ym;

n=101;ys=linspace(-ym,ym,n); for i=1:n

r1=sqrt((ys(i)-a/2).^2+D^2); r2=sqrt((ys(i)+a/2).^2+D^2); phi=2*pi*(r2-r1)./lam;

B(i,:)=sum(4*cos(phi/2).^2); end N=255;

Br=(B/4.0)*N

subplot(1,2,1) image(xs,ys,Br); colormap(gray(N)); subplot(1,2,2) plot(B,ys) 3. 光栅衍射

公式:I=I 0(sin α/α)2(sin(λβ)/sin β)2

α=(πa/λ)sin Φ β=(πd/λ)sin Φ

编写程序如下:得到图3

clear

lam=500e-9;N=2; a=2e-4;D=5;d=5*a; ym=2*lam*D/a;xs=ym; n=1001;

ys=linspace(-ym,ym,n); for i=1:n

sinphi=ys(i)/D;

alpha=pi*a*sinphi/lam; beta=pi*d*sinphi/lam;

B(i,:)=(sin(alpha)./alpha).^2.*(sin(N*beta)./sin(beta)).^2; B1=B/max(B);

end

图2 杨氏双缝干涉的光强分布 图3 黑白光栅衍射光强分布

NC=255;

Br=(B/max(B))*NC; subplot(1,2,1) image(xs,ys,Br); colormap(gray(NC)); subplot(1,2,2) plot(B1,ys);

(二)傅立叶变换方法:

在傅立叶变换光学中我们知道夫琅和费衍射场的强度分布就等于屏函数的功率谱。因此我们可以直接将光屏进行傅立叶变换,再处理得到衍射图样。

物体图像的生成可以直接由矩阵运算生成,也可利用Windows 下的画图工具,生成一幅黑白图像,并调用命令函数imread ()输入图像,输入的图像是一个巨大的二维矩阵,利用MATLAB 函数库中的fft2()命令对该矩阵进行二位离散傅立叶变换,得到图像的频谱,该频谱是一个复数矩阵,然后用取模函数abs ()对该复数矩阵取模,得到振幅谱矩阵,利用函数fftshift ()对取模后的矩阵进行频谱位移,这是因为变换后的二维矩阵的直流分量位于图像的周边角,该函数交换矩阵的1、3象限和2、4象限,使直流分量移到频谱中心,从而使FFT 频谱可视效果与实际图像相吻合。最后利用imshow ()函数将图像显示出来。

编写程序如下: clear a=imread('E:\1.bmp'); grid on figure(1) imshow(a,[]) afft=fft2(a); aabs=abs(afft); aabss=fftshift(aabs); figure(2) imshow(aabss,[]) colormap(gray); colorbar figure(3) plot(aabss) colormap(gray); figure(4) meshc(aabss) maxx1=max(max(aabss)); 输入黑白或灰度的衍射屏图像,得到输出的衍射图样和光强分布。 1. 简单孔径的衍射

(a)圆孔衍射:可以看到光强分布随孔径大小的变化

图4 圆孔的光强分布

(b)矩孔衍射:

(c )三角孔衍射:

2.单缝衍射:

3.黑白光栅衍射:

图7 单缝衍射的光强分布

图5 矩孔衍射的光强分布

图6 三角孔衍射的光强分布

缝宽不变,光栅常数变大:

缝宽变小,光栅常数不变:

可以明显地观察到干涉条纹受衍射因子的调制,以及缺级现象 4.正弦光栅衍射:

我们先设计程序制得一张正弦光栅,用正(余)弦函数作图如下: clear all

xm=10*pi;ys=xm;

xs=linspace(-xm,xm,500); B=cos(xs)+1; N=255; Br=B/2*N

image(xs,ys,Br); colormap(gray(N));

将该图片保存成灰度BMP 文件。调用程序得到衍射图样,只有三个衍射斑,与理论一致。

(三)利用傅立叶方法还可以得到其他有趣的衍射花样,并研究其规律性

图8 黑白光栅衍射的光强分布 图9 正弦光栅衍射的光强分布

每个方孔几何尺寸相同

可以看出,基本衍射图样还是

方孔衍射但是在任意两个方

孔连线的中垂线方向会出现

等间距暗纹,三角形摆放则会

出现类似蜂巢的结构。

两个方向上的光栅衍射叠加,

如果线条不平行则会在每个

中垂线方向都向外发展。

可以看到,

圆孔衍射的图样受到

椭圆孔衍射因子的调制

一些字母和符号也可以

产生很有趣的衍射图样:

----------------------------------------------------------------------------- 参考文献:

[1]:胡守信、李柏年,《基于MATLAB的数学实验》,科学出版社

[2]:张铮、杨文平、石博强、李海鹏,《MATLAB程序设计与实例应用》,中国铁道出版社

基于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 仿真实验报告 课题名称:MATLAB 仿真——图像处理 学院:机电与信息工程学院 专业:电子信息科学与技术 年级班级:2012级电子二班 一、实验目的 1、掌握MATLAB处理图像的相关操作,熟悉相关的函数以及基本的MATLAB语句。 2、掌握对多维图像处理的相关技能,理解多维图像的相关性质 3、熟悉Help 命令的使用,掌握对相关函数的查找,了解Demos下的MATLAB自带的原函数文件。 4、熟练掌握部分绘图函数的应用,能够处理多维图像。 二、实验条件

MATLAB调试环境以及相关图像处理的基本MATLAB语句,会使用Help命令进行相关函数查找 三、实验内容 1、nddemo.m函数文件的相关介绍 Manipulating Multidimensional Arrays MATLAB supports arrays with more than two dimensions. Multidimensional arrays can be numeric, character, cell, or structure arrays. Multidimensional arrays can be used to represent multivariate data. MATLAB provides a number of functions that directly support multidimensional arrays. Contents : ●Creating multi-dimensional arrays 创建多维数组 ●Finding the dimensions寻找尺寸 ●Accessing elements 访问元素 ●Manipulating multi-dimensional arrays操纵多维数组 ●Selecting 2D matrices from multi-dimensional arrays从多维数组中选择二维矩 阵 (1)、Creating multi-dimensional arrays Multidimensional arrays in MATLAB are created the same way as two-dimensional arrays. For example, first define the 3 by 3 matrix, and then add a third dimension. The CAT function is a useful tool for building multidimensional arrays. B = cat(DIM,A1,A2,...) builds a multidimensional array by concatenating(联系起来)A1, A2 ... along the dimension DIM. Calls to CAT can be nested(嵌套). (2)、Finding the dimensions SIZE and NDIMS return the size and number of dimensions of matrices. (3)、Accessing elements To access a single element of a multidimensional array, use integer subscripts(整数下标). (4)、Manipulating multi-dimensional arrays

Matlab通信系统仿真实验报告

Matlab通信原理仿真 学号: 2142402 姓名:圣斌

实验一Matlab 基本语法与信号系统分析 一、实验目的: 1、掌握MATLAB的基本绘图方法; 2、实现绘制复指数信号的时域波形。 二、实验设备与软件环境: 1、实验设备:计算机 2、软件环境:MATLAB R2009a 三、实验内容: 1、MATLAB为用户提供了结果可视化功能,只要在命令行窗口输入相应的命令,结果就会用图形直接表示出来。 MATLAB程序如下: x = -pi::pi; y1 = sin(x); y2 = cos(x); %准备绘图数据 figure(1); %打开图形窗口 subplot(2,1,1); %确定第一幅图绘图窗口 plot(x,y1); %以x,y1绘图 title('plot(x,y1)'); %为第一幅图取名为’plot(x,y1)’ grid on; %为第一幅图绘制网格线 subplot(2,1,2) %确定第二幅图绘图窗口 plot(x,y2); %以x,y2绘图 xlabel('time'),ylabel('y') %第二幅图横坐标为’time’,纵坐标为’y’运行结果如下图: 2、上例中的图形使用的是默认的颜色和线型,MATLAB中提供了多种颜色和线型,并且可以绘制出脉冲图、误差条形图等多种形式图: MATLAB程序如下: x=-pi:.1:pi; y1=sin (x); y2=cos (x); figure (1); %subplot (2,1,1); plot (x,y1); title ('plot (x,y1)'); grid on %subplot (2,1,2); plot (x,y2);

基于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的物理光学实验仿真平台构建

毕业设计(论文)开题报告题目:基于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仿真实验全部

实验一 MATLAB 及仿真实验(控制系统的时域分析) 一、实验目的 学习利用MATLAB 进行控制系统时域分析,包括典型响应、判断系统稳定性和分析系统的动态特性; 二、预习要点 1、 系统的典型响应有哪些 2、 如何判断系统稳定性 3、 系统的动态性能指标有哪些 三、实验方法 (一) 四种典型响应 1、 阶跃响应: 阶跃响应常用格式: 1、)(sys step ;其中sys 可以为连续系统,也可为离散系统。 2、),(Tn sys step ;表示时间范围0---Tn 。 3、),(T sys step ;表示时间范围向量T 指定。 4、),(T sys step Y =;可详细了解某段时间的输入、输出情况。 2、 脉冲响应: 脉冲函数在数学上的精确定义:0 ,0)(1)(0 ?==?∞ t x f dx x f 其拉氏变换为:) ()()()(1)(s G s f s G s Y s f === 所以脉冲响应即为传函的反拉氏变换。 脉冲响应函数常用格式: ① )(sys impulse ; ② ); ,();,(T sys impulse Tn sys impulse ③ ),(T sys impulse Y = (二) 分析系统稳定性 有以下三种方法: 1、 利用pzmap 绘制连续系统的零极点图; 2、 利用tf2zp 求出系统零极点; 3、 利用roots 求分母多项式的根来确定系统的极点 (三) 系统的动态特性分析 Matlab 提供了求取连续系统的单位阶跃响应函数step 、单位脉冲响应函数impulse 、零输入响应函数initial 以及任意输入下的仿真函数lsim.

工程光学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光学仿真实验报告

目录 一、实验目的 (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 Simulink系统建模与仿真 实验报告

MATLAB/Simulink 电力系统建模与仿真 实验报告 姓名:****** 专业:电气工程及其自动化 班级:******************* 学号:*******************

实验一无穷大功率电源供电系统三相短路仿真 1.1 无穷大功率电源供电系统仿真模型构建 运行MATLAB软件,点击Simulink模型构建,根据电路原理图,添加下列模块: (1)无穷大功率电源模块(Three-phase source) (2)三相并联RLC负荷模块(Three-Phase Parallel RLC Load) (3)三相串联RLC支路模块(Three-Phase Series RLC Branch) (4)三相双绕组变压器模块(Three-Phase Transformer (Two Windings)) (5)三相电压电流测量模块(Three-Phase V-I Measurement) (6)三相故障设置模块(Three-Phase Fault) (7)示波器模块(Scope) (8)电力系统图形用户界面(Powergui) 按电路原理图连接线路得到仿真图如下: 1.2 无穷大功率电源供电系统仿真参数设置 1.2.1 电源模块 设置三相电压110kV,相角0°,频率50Hz,接线方式为中性点接地的Y形接法,电源电阻0.00529Ω,电源电感0.000140H,参数设置如下图:

1.2.2 变压器模块 变压器模块参数采用标幺值设置,功率20MVA,频率50Hz,一次测采用Y型连接,一次测电压110kV,二次侧采用Y型连接,二次侧电压11kV,经过标幺值折算后的绕组电阻为0.0033,绕组漏感为0.052,励磁电阻为909.09,励磁电感为106.3,参数设置如下图: 1.2.3 输电线路模块 根据给定参数计算输电线路参数为:电阻8.5Ω,电感0.064L,参数设置如下图: 1.2.4 三相电压电流测量模块 此模块将在变压器低压侧测量得到的电压、电流信号转变成Simulink信号,相当于电压、电流互感器的作用,勾选“使用标签(Use a label)”以便于示波器观察波形,设置电压标签“Vabc”,电流标签“Iabc”,参数设置如下图:

圆孔矩孔的菲涅尔衍射模拟(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仿真实验

增量调制MATLAB仿真实验

增量调制(DM)实验 一、实验目的 (1)进一步掌握MATLAB的应用。 (2)进一步掌握计算机仿真方法。 (3)学会用MATLAB软件进行增量调制(DM)仿真实验。 二、实验原理 增量调制是由PCM发展而来的模拟信号数字化的一种编码方式,它是PCM的一种特例。增量调制编码基本原理是指用一位编码,这一位码不是表示信号抽样值的大小,而是表示抽样幅度的增量特性,即采用一位二进制数码“1”或“0”来表示信号在抽样时刻的值相对于前一个抽样时刻的值是增大还是减小,增大则输出“1”码,减小则输出“0”码。输出的“1”,“0”只是表示信号相对于前一个时刻的增减,不表示信号的绝对值。 增量调制最主要的特点就是它所产生的二进制代码表示模拟信号前后两个抽样值的差别(增加、还是减少)而不是代表抽样值本身的大小,因此把它称为增量调制。在增量调制系统的发端调制后的二进制代码1和0只表示信号这一个抽样时刻相对于前一个抽样时刻是增加(用1码)还是减少(用0码)。收端译码器每收到一个1码,译码器的输出相对于前一个时刻的值上升一个量化阶,而收到一个0码,译码器的输出相对于前一个时刻的值下降一个量化阶。 增量调制(DM)是DPCM的一种简化形式。在增量调制方式下,采用1比特量化器,即用1位二进制码传输样值的增量信息,预测器是

一个单位延迟器,延迟一个采样时间间隔。预测滤波器的分子系数向量是[0,1],分母系数为1。当前样值与预测器输出的前一样值相比较,如果其差值大于零,则发1码,如果小于零则发0码。 三、实验内容 增量调制系统框图如图一所示,其中量化器是一个零值比较器,根据输入的电平极性,输出为 δ,预测器是一个单位延迟器,其输出为前一个采样时刻的解码样值,编码器也是一个零值比较器,若其输入为负值,则编码输出为0,否则输出为1。解码器将输入1,0符号转换为 δ,然后与预测值相加后得出解码样值输出,同时也作为预测器的输入 输入样值 e n e n =δsgn(e n ) 传输 n ) n n-1+δsgn(e n ) x n + - + + 预测输出 + n-1 + 预测输出 解码样值输出 x n-1 预测输入x n =x n-1+δsgn(e n ) 图一 增量调制原理框图 设输入信号为: x(t)=sin2π50t+0.5sin 2π150t 增量调制的采样间隔为1ms,量化阶距δ=0.4,单位延迟器初始值为0。建立仿真模型并求出前20个采样点使客商的编码输出序列以 解码 编码 二电平量化 单位延迟 单位 延迟

控制理论实验报告MATLAB仿真实验解析

实验报告 课程名称:控制理论(乙) 指导老师:林峰 成绩:__________________ 实验名称:MATLAB 仿真实验 实验类型:________________同组学生姓名:__________ 一、实验目的和要求(必填) 二、实验内容和原理(必填) 三、主要仪器设备(必填) 四、操作方法和实验步骤 五、实验数据记录和处理 六、实验结果与分析(必填) 七、讨论、心得 实验九 控制系统的时域分析 一、 实验目的: 1.用计算机辅助分析的办法,掌握系统的时域分析方法。 2.熟悉Simulink 仿真环境。 二、实验原理及方法: 系统仿真实质上就是对系统模型的求解,对控制系统来说,一般模型可转化成某个微分方程或差分方程表示,因此在仿真过程中,一般以某种数值算法从初态出发,逐步计算系统的响应,最后绘制出系统的响应曲线,进而可分析系统的性能。控制系统最常用的时域分析方法是,当输入信号为单位阶跃和单位冲激函数时,求出系统的输出响应,分别称为单位阶跃响应和单位冲激响应。在MATLAB 中,提供了求取连续系统的单位阶跃响应函数step ,单位冲激响应函数impulse ,零输入响应函数initial 等等。 二、实验内容: 二阶系统,其状态方程模型为 ? 1x -0.5572 -0.7814 1x 1 = + u ? 2x 0.7814 0 2x 0 1x y = [1.9691 6.4493] +[0] u 2x 四、实验要求: 1.编制MATLAB 程序,画出单位阶跃响应曲线、冲击响应曲线、系统的零输入响应、斜坡输入响应; (1)画出系统的单位阶跃响应曲线; A=[-0.5572 -0.7814;0.7814 0 ]; B=[1;0];

高频电子线路Matlab仿真实验

高频电子线路Matlab 仿真实验要求 1. 仿真题目 (1) 线性频谱搬移电路仿真 根据线性频谱搬移原理,仿真普通调幅波。 基本要求:载波频率为8kHz ,调制信号频率为400Hz ,调幅度为0.3;画出调制信号、载波信号、已调信号波形,以及对应的频谱图。 扩展要求1:根据你的学号更改相应参数和代码完成仿真上述仿真;载波频率改为学号的后5位,调制信号改为学号后3位,调幅度设为最后1位/10。(学号中为0的全部替换为1,例如学号2010101014,则载波为11114Hz ,调制信号频率为114,调幅度为0.4)。 扩展要求2:根据扩展要求1的条件,仿真设计相应滤波器,并获取DSB-SC 和SSB 的信号和频谱。 (2) 调频信号仿真 根据调频原理,仿真调频波。 基本要求:载波频率为30KHz ,调制信号为1KHz ,调频灵敏度32310f k π=??,仿真调制信号,瞬时角频率,瞬时相位偏移的波形。 扩展要求:调制信号改为1KHz 的方波,其它条件不变,完成上述仿真。 2. 说明 (1) 仿真的基本要求每位同学都要完成,并且记入实验基本成绩。 (2) 扩展要求可以选择完成。

1.0 >> ma = 0.3; >> omega_c = 2 * pi * 8000; >> omega = 2 * pi * 400; >> t = 0 : 5 / 400 / 1000 : 5 / 400; >> u_cm = 1; >> fc = cos(omega_c * t); >> fa = cos(omega * t); >> u_am = u_cm * (1 + fa).* fc; >> U_c =fft(fc,1024); >> U_o =fft(fa,1024); >> U_am =fft(u_am, 1024); >> figure(1); >> subplot(321);plot(t, fa, 'k');title('调制信号');grid;axis([0 2/400 -1.5 1.5]); >> subplot(323);plot(t, fc, 'k');title('高频载波');grid;axis([0 2/400 -1.5 1.5]); >> subplot(325);plot(t, u_am, 'k');title('已调信号');grid;axis([0 2/400 -3 3]); >> fs = 5000; >> w1 = (0:511)/512*(fs/2)/1000; >> subplot(322);plot(w1, abs([U_am(1:512)']),'k');title('调制信号频谱');grid;axis([0 0.7 0 500]); >> subplot(324);plot(w1, abs([U_c(1:512)']),'k');title('高频载波频谱');grid;axis([0 0.7 0 500]); >> subplot(326);plot(w1, abs([U_am(1:512)']),'k');title('已调信号频谱');grid;axis([0 0.7 0 500]); 1.1 >> ma = 0.8; >> omega_c = 2 * pi * 11138; >> omega = 2 * pi * 138; >> t = 0 : 5 / 400 / 1000 : 5 / 400; >> u_cm = 1; >> fc = cos(omega_c * t);

MATLAB仿真实验报告

MATLA仿真实验报告 学院:计算机与信息学院 课程:—随机信号分析 姓名: 学号: 班级: 指导老师: 实验一

题目:编写一个产生均值为1,方差为4的高斯随机分布函数程序, 求最大值,最小值,均值和方差,并于理论值比较。 解:具体的文件如下,相应的绘图结果如下图所示 G仁random( 'Normal' ,0,4,1,1024); y=max(G1) x=mi n(G1) m=mea n(G1) d=var(G1) plot(G1);

实验二 题目:编写一个产生协方差函数为CC)=4e":的平稳高斯过程的程序,产生样本函数。估计所产生样本的时间自相关函数和功率谱密度,并求统计自相关函数和功率谱密度,最后将结果与理论值比较。 解:具体的文件如下,相应的绘图结果如下图所示。 N=10000; Ts=0.001; sigma=2; beta=2; a=exp(-beta*Ts); b=sigma*sqrt(1-a*a); w=normrnd(0,1,[1,N]); x=zeros(1,N); x(1)=sigma*w(1); for i=2:N x(i)=a*x(i-1)+b*w(i); end %polt(x); Rxx=xcorr(x0)/N; m=[-N+1:N-1]; Rxx0=(sigma A2)*exp(-beta*abs(m*Ts)); y=filter(b,a,x) plot(m*Ts,RxxO, 'b.' ,m*Ts,Rxx, 'r');

periodogram(y,[],N,1/Ts); 文件旧硯化)插入(1〕 ZMCD 克闻〔D ]窗口曲) Frequency (Hz) 50 100 150 200 250 300 350 400 450 500 NH---.HP)&UO 二 balj/ 」- □歹

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

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

Matlab 编程方法及仿真实验

《现代机械工程基础实验》之机械工程控制基础综合实验报告 姓名 学号 班级 山东建筑大学机电工程学院 2012.06.04~06

第一部分 Matlab 编程方法及仿真实验 实验1. 三维曲面的绘制(略) 实验2. 系统零极点绘制例:求部分分式展开式和)(t g 一个线性定常系统的传递函数是 1 5422 3)(2 3 ++++= s s s s s G (1) 使用MATLAB 建立传递函数,并确定它的极点和零点,写出)(s G 的部分分式展开式并绘制 系统的脉冲响应。 实验结果:零点-0.6667 极点-0.8796 + 1.1414i -0.8796 - 1.1414i -0.2408 实验3. 系统的阶跃响应 例. )(s G 的阶跃响应 对例2中由(1)式给出的传递函数)(s G ,增加一个0=s 处的极点,使用impulse 命令绘制其拉普拉斯反变换式曲线,得到阶跃响应图。将该响应与对)(s G 使用step 命令所得到的响应比较,确定系统的DC 增益。利用初值定理和终值定理来校验结果。 实验结果:DC 增益= 2

实验4. 双输入反馈系统单位阶跃响应 考虑一个如图1所示的反馈系统,它既有参考输入也有干扰输入,其中对象和传感器的传递函数是 )12)(15.0(4)(++=s s s G p ,105.01 )(+=s s H 控制器是一个增益为80,有一个在3-=s 处的零点,极点/零点比15=α超前控制器。推导 两个独立的MATLAB 模型,其中一个模型的输入为)(s R ,另一个输入为)(s D 。使用这些模型确定闭环零点和极点,并在同一坐标系内绘制它们的阶跃响应。 D (s ) 图1 具有参考和干扰输入的反馈系统方框图 实验结果: 参考输入的CL 极点:-49.3658 -7.3336 + 7.9786i -7.3336 - 7.9786i -3.4670 参考输入的DC 增益:320 干扰输入的CL 零点:-45 干扰输入的CL 极点:-49.3658 -7.3336 + 7.9786i -7.3336 - 7.9786i -3.4670 干扰输入的DC 增益:4 -20

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

相关主题
文本预览
相关文档 最新文档