%##########################%

%名称:等厚干涉模拟 %

%作者:程序猿__int64Ago %

%时间:2011-12-16 %

%##########################%

clear %清内存

lamda=632.8e-9; %设定入射光波长

n=1; %缝隙折射率

R=5; %柱透镜半径

ym=5e-3; %设定屏幕的范围,根据实际情况调整

xs=ym; %x方向无变化,单一值

N=1000; %条纹柔和度

ys=linspace(-ym,ym,N); %y轴上坐标离散

for i=1:N %依次求干涉光强

hm=R-sqrt(R^2-ys(i)^2); %柱透镜与底面间隙

delta=2*n*hm+lamda/2; %光程差

phi=2*pi*delta/lamda; %相位差

I(i,:)=4*cos(phi/2).^2; %干涉光强

end %求光强结束

M=255; %设定灰度等级

II=(I/4.0)*M; %设定黑白条纹对比度

subplot(1,2,1); %分割figure1×2,并且在第一块上作图

image(xs,ys,II); %画干涉条纹

colormap(gray(M)); %二维光强分布灰度图

title('光强分布灰度图') %列出标题

subplot(1,2,2); %分割figure1×2,并且在第二块上作图

plot(I,ys); %一维光强分布曲线图

title('光强分布曲线图') %列出标题

%##########################%

%名称:多缝夫朗禾费衍射模拟 %

%作者:程序猿__int64Ago %

%时间:2011-12-16 %

%##########################%

clear %清内存

lamda=500e-9; %设定入射光波长

a=10e-6; %缝宽

d=25e-6; %光栏常数

N0=6; %缝数

D=5; %缝到像面的距离(这个随意,几乎不影响)

ym=1*lamda*D/a; %设定屏幕的范围,根据实际情况调整

xs=ym; %x方向无变化,单一值

N=1000; %条纹柔和度(不能太大)

ys=linspace(-ym,ym,N); %y轴上坐标离散

for i=1:N %依次求衍涉光强

sintheta=ys(i)/D; %以下由书上公式

alpha=pi*a*sintheta/lamda;

beta=pi*d*sintheta/lamda;

I(i,:)=(sin(alpha)./alpha).^2.*...

(sin(N0*beta)./sin(beta)).^2; %上一行续行

end %求光强结束

M=255; %设定灰度等级

II=(I/max(I))*M; %设定黑白条纹对比度

subplot(1,2,1); %分割figure1×2,并且在第一块上作图

image(xs,ys,II); %画干涉条纹

colormap(gray(M)); %二维光强分布灰度图

title('光强分布灰度图') %列出标题

subplot(1,2,2); %分割figure1×2,并且在第二块上作图

plot(I,ys); %一维光强分布曲线图

title('光强分布曲线图') %列出标题

matlab做干涉,matlab模拟干涉衍射 | 学步园相关推荐

  1. layui上传图片列表展示_layui怎么做图片在列表中显示 | 学步园

    layui table中显示图片的方法: 图片需要用到模板.templet: 注意div不可省略,48px指的是div的高度,如果要决定img图片的高度,需要单独设计style ',style:'he ...

  2. 怎么样用matlab做视频,MATLAB:使用writeVideo制作视频

    我目前正在尝试使用MATLAB中的writeVideo函数制作视频.我使用GUIDE制作了一个GUI,其中包含一个滑块,一些复选框和一个单轴(标记为axes1).当我移动滑块时,轴会绘制根据滑块值改变 ...

  3. 如何用matlab做表格,matlab用excel数据做表格-如何向matlab中导入excel表格 利用表格数据做出图......

    matlab如何从excel表格中读取数据? 工具:matlab 2018b 1.打开matlab击主页下入数据,可以导入excel数据此将自己命名huitushuju文件导入: 2.点击打开按钮,即 ...

  4. matlab角点坐标获取,MatLab角点检测(harris经典程序) | 学步园

    这是源博客的出处,鄙人转过来是为了更好的保存!供大家一起学习!已将原始的博客的文章的位置附在上面! 至于代码的完整性和可运行性需要大家去自己考量! %MatLab角点检测程序harris. ori_i ...

  5. MATLAB递归将数字一个个输出,数米粒个数和每个米粒面积的matlab算法实现(递归)。 | 学步园...

    使用Matlab软件自带的rice.png图片进行处理. 不知道使用的函数利用help function-name 或者 lookfor function-name 查看 这里是实现的主要代码段 %T ...

  6. matlab写出函数表达式,matlab 由状态空间表达式求传递函数 笔记 | 学步园

    1 内容 有一个两输入两输出线性系统 ,求该系统的传递函数表达式子. 2 求解 2.1 相关函数 状态空间表达式的传递函数用ss2tf函数来求解 函数原型 [b,a] = ss2tf(A,B,C,D, ...

  7. matlab clabel函数用法,CLabel的用法 | 学步园

    DDX_Control(pDX, IDC_STATIC_CONNSTATE, m_labConnState); IDC_STATIC_CONNSTATE  是某静态控件的ID,设置这个静态控件的控制变 ...

  8. matlab radiogroup,RadioGroup和CheckBox的使用 | 学步园

    1.布局文件: android:layout_width="fill_parent" android:layout_height="fill_parent" a ...

  9. matlab怎么计算行列式,Matlab 线性代数(一)–行列式与方程组求解 | 学步园

    1. %用克莱姆法则求解方程组 clear n=input('方程个数=') A=input('系数矩阵A=') b=input('常数列向量b=') if((size(A)~=[n,n])|(siz ...

最新文章

  1. ribbon设置url级别的超时时间
  2. boost库之tcp client 回调不正常
  3. LeetCode之Reverse Integer
  4. fernflower idea内置的反编译工具
  5. python列表_Python列表列表的所有组合
  6. Vue获取DOM元素的属性值
  7. 面试题 04.06. 后继者
  8. IPD+CMMI企业产品开发系统性解决方案
  9. centos服务器如何设置代理上网?
  10. c# PropertyGrid 自定义属性排序
  11. 【数据分析 —— 认识数据】
  12. Recoil 的使用
  13. Java基础面试题简单总结
  14. c语言提纲,C语言复习提纲
  15. Aop介绍 ,aop使用 aop解释
  16. 远离那些聪明,却不厚道的人
  17. 三国志战略版:斩首骑——张辽与王元姬不得不说的故事
  18. java ssm集装箱码头TOS系统调度模块的设计与实现
  19. 几种线程安全的Map
  20. matlab错误使用meshline47,matlab里mesh出错Z 必须为矩阵,不能是标量或矢量怎么解决...

热门文章

  1. ubuntu下载软件包下载中断,并弹出“下载额外数据不成功”的通知。解决办法
  2. GTA4侠盗猎车手4:自由城之章 Mac
  3. 实现对easyui-datagrid的数据行批量修改(包括修改内容和删除)
  4. 14、JVM监控及诊断工具-命令行篇
  5. echarts 仪表盘教程
  6. [Unity workflows] Unity 5.6.1f1 与 Docker 和 Bitrise 的持续集成
  7. 整体认知主要依靠周边视觉而非中央视觉
  8. 如何在雅特力 AT32F403A 上运行 RT-Thread
  9. 骚话--大部分来源于抖音评论
  10. 基于元路径的利用多级社会背景信息的虚假新闻检测