1,核心代码

double lam=500e-9;//波长

double N=2;//缝数

double a=2e-4;//光栅常数

double D=1;//屏距

double d=1e-3;//缝宽

double ym=2*lam*D/a;//x轴观察范围

double xs=ym;//y轴观察范围

int n=500;//取样点数

Mm ys=linspace(-ym,ym,n);

Mm B;

B=zeros(10,n);

//计算光强分布

for(int i=1;i<=n;i++)

{

double sinphi=ys.r(i)/D;

double alpha=3.1415926*a*sinphi/lam;

double beta=3.1415926*d*sinphi/lam;

for(int j=1;j<=10;j++)

B(j,i)=(sin(alpha)/alpha)*(sin(alpha)/alpha)*(sin(N*beta)/sin(beta))*(sin(N*beta)/sin(beta));

}

CRect m_client;

//绘制曲线

winaxes(GetDlgItem(IDC_LINE)->m_hWnd );

GetDlgItem(IDC_LINE)->GetClientRect(m_client);

axesposition(0,0,m_client.Width(),m_client.Height());

Mm m_line=plot((CL(ys),B/4));

set(m_line,TM("color"),TM("blue"));

//绘制图像

winaxes(GetDlgItem(IDC_IMAGE)->m_hWnd );

GetDlgItem(IDC_IMAGE)->GetClientRect(m_client);

axesposition(0,0,m_client.Width(),m_client.Height());

imagesc((ys,xs,CL(B)));

//颜色渲染

Mm color;

int colorIndex=64;

color=zeros(colorIndex,3);

for(int k=1;k<=colorIndex;k++)

color.r(k,2)=(double)k/colorIndex;

colormap(color);

drawnow();

exitM();

2,运行结果

光栅衍射C语言程序,基于matcom的光栅衍射仿真程序相关推荐

  1. 共阳极数码时钟c语言程序,基于51单片机C语言数字钟程序.doc

    基于51单片机C语言数字钟程序 基于51单片机C语言数字钟程序 数字电子钟的设计 一. 绪论 (一)引言 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地 ...

  2. 收音机c语言程序,基于单机收音机的C语言程序.doc

    基于单机收音机的C语言程序 单片机源程序 #include //调用单片机头文件 #define uchar unsigned char //无符号字符型 宏定义变量范围0~255 #define u ...

  3. 51单片机的电子钟c语言程序,基于51单片机的电子钟C语言程序

    基于单片机C语言的电子钟程序代码与仿真 基于51单片机的电子钟C语言程序: 程序代码 #include #include #define uchar unsigned char #define uin ...

  4. 步进电机循环脉冲c语言程序,基于C语言的步进电机调速.doc

    课 程 设 计 (论文) 题目 基于C语言的步进电机调速 目 录 0. 前言3 1.基本理论4 2. 方案设计4 2.1 步进电机5 2.2 8255芯片5 3. 硬件电路的工作原理5 3.1 步进电 ...

  5. 单片机按键控制数码管c语言程序,基于单片机的按键控制LED数码管共阴极动态显示电路设计报告(毕业论文).doc...

    基于单片机的按键控制LED数码管共阴极动态显示电路设计报告(毕业论文) 物理与电子工程学院2014级课程设计 PAGE IV 物理与电子工程学院 <单片机原理与接口技术> 课程设计报告书 ...

  6. 烟雾检测电路c语言程序,基于51单片机火灾报警器系统烟雾检测温度检测设计(原理图+程序仿真+论文)...

    课题题目基于单片机的火灾自动报警系统 课题的目的.意义以及和本课题有关的国内外现状分析:1.目的:本系统以单片机为主控单元,能够及时监测到系统故障和环境中有无火灾,火灾一旦发生将实现声光报警,并采取有 ...

  7. 太阳能路灯c语言程序,基于单片机的智能太阳能路灯控制系统的设计方案

    摘要:随着世界能源危机日益严重,利用太阳能成为解决能源问题的一大途径,在此背景下开发智能太阳能路灯意义重大.本文介绍了智能太阳能路灯系统的组成及工作原理,采用LPC935 单片机作为主控制器,结合密封 ...

  8. 液位系统c语言程序,基于STM32的液位控制系统设计

    程训明 董婷婷 摘 要:本文设计一种基于STM32的液位控制系统,该控制系统采用STM32作为控制核心,使用压力传感器采集水箱内的液位,通过串口触摸屏进行液位显示和给定,对水位进行有效的闭环控制.系统 ...

  9. 湿度控制c语言程序,基于51单片机的湿度控制系统设计.doc

    基于51单片机的湿度控制系统设计 基于51单片机的湿度控制系统设计 摘要 关键词:单片机:湿度传感器:ADC0832数模转换 目 录 序 言1 第一章 系统的整体设计方案2 1.1设计内容2 1.2系 ...

最新文章

  1. FreeMarker对应各种数据结构解析
  2. Effective Java 英文 第二版 读书笔记 Item 14:In public classes,use accessor methods,not public fields...
  3. python常用算法有哪些_python常见的排序算法有哪些?
  4. [洛谷P1369]矩形
  5. 不敢摔!三星Galaxy Fold换屏费用可以入手一部华为Mate 30了
  6. vue ---- 动态组件
  7. python都有哪些变量_Python变量作用域有哪些
  8. 《Java遗传算法编程》—— 1.8 参数
  9. 28万个开源项目之番外篇
  10. javaweb从入门到精通教程,7天彻底搞定javaweb
  11. xrd连续扫描和步进扫描_XRD基础性问题
  12. Android 设备管理器 理解和使用
  13. 转载-常用邮箱SMTP服务器地址大全
  14. 【01背包】【DP】精卫填海(黄题)
  15. 红色的反色是青色引申出PS怎么反色之教程
  16. 测试人员在软件测试过程中的职责,到底哪些事情属于测试人员的职责?
  17. PyGmae:有限状态机实践(十二)
  18. 星历表2019最新跟踪
  19. jQuery简介、引入jQuery、jQuery核心函数、jQuery对象、jQuery对象操作class、addclass补充、jQuery对象复制——jQuery
  20. Mapbox网络GIS开发第一步——Mapbox本地化

热门文章

  1. php 日期相减 时分秒,PHP计算两个时间戳间隔的日时分秒的代码实例
  2. boost linux 测试程序,Linux平台下安装 boost 库
  3. idea开发vue项目时,使用@引入组件警告:Module is not installed
  4. 配置NAT超载(NAPT)
  5. 摘抄和总结--确保搞砸人工智能项目的十种方法
  6. 为什么程序员也能成为伟大的CEO
  7. 各种数字显示屏接口:LVDS, DVI, HDMI, DisplayPort, DSI
  8. 讨论简书留言界面的设计
  9. Arcgis Javascript那些事儿(十一)--网络分析服务使用
  10. HTTP版本/层次/响应/状态之高屋建瓴