用Mathematica模拟光的衍射
用Mathematica模拟光的衍射[20200408101232]
摘要
波动光学中很大一部分是光的衍射,人们借助光的衍射原理,在工业设计上取的了巨大的成就,同时还解决了现实中复杂的问题。加深对光学现象理解是很有现实意义的。光的衍射根据衍射孔与接收屏,衍射孔与光源的距离可近似分为夫琅禾费衍射和菲涅尔衍射,本文主要讲夫琅禾费衍射。
在光的衍射理论基础上,利用Mathematica仿真软件的数值运算、绘图功能和程序编写功能,并根据标量夫琅禾费衍射理论编程实现了圆孔夫琅禾费衍射、三角孔夫琅禾费衍射、矩形孔夫琅禾费衍射、单缝夫琅禾费颜色的仿真得出了衍射图样,同时和理论相结合,对光的衍射加以分析和理解。这对于光的衍射的教学和学习有很好的辅助作用。文章还简单介绍了光的衍射概念、原理、分类、衍射数学模型。
*查看完整论文请 +Q: 3 5 1 9 1 6 0 7 2
关键字:仿真夫琅禾费衍射Mathematica软件衍射图样
目录
摘要 I
第一章 绪论 1
1.1引言 1
1.2 Mathematica仿真软件知识 2
1.2.1 Mathematica软件介绍 2
1.2.2 Mathematica的操作注意点 2
1.2.3 Mathematica应用基础 3
1.2.4 Mathematica的主要特点 4
1.3本文主要仿真目标 5
第二章 衍射的基础知识 6
2.1光的衍射 6
2.1.1光的衍射定义 6
2.2.2 光的衍射分类 6
2.2夫琅禾费衍射 8
2.2.1矩形孔夫琅禾费衍射 9
2.2.2 夫琅禾费单缝衍射 10
2.2.3圆孔的夫琅禾费衍射 11
第三章 夫琅禾费衍射仿真实现 12
3.1圆孔夫琅禾费衍射 12
3.2矩形孔夫琅禾费衍射 18
3.2.1正方形孔夫琅禾费衍射 18
3.2.2长方形孔夫琅禾费衍射 19
3.2.3多个矩形孔夫琅禾费衍射 20
3.3 夫琅禾费单缝衍射 22
3.4 三角形孔夫琅禾费衍射 23
第四章 论文小结 27
参考文献 28
附录 29
致谢 33
第一章 绪论
1.1引言
在很久以前,人们便对光有了认识,在生产生活中利用光解决了很多问题,直到现在。光学随着人类社会的不断发展而日趋完善。掌握光学是学习许多科目的前提,有助于人们发展和认识客观世界规律,并把这些规律应用与现实生活中。最近几十年,光学与其他科学技术联系更加紧密,而且取得了很多成就,电光源、X射线光源、激光在众多领域的应用,同步辐射光源、同时全息摄影术、光导纤维等等光学方面新技术的出现,使人们对光学的研究热情高涨。
但凡学习过光学知识的人,尤其是光学专业的同学,都知道光的衍射和光的干涉是波动光学的两部分。利用波动光学的原理,人们已经在各个领域内取得不错的成就,对光的衍射研究的热情也日趋高涨,光的衍射在生物学、通信行业等等得到广泛的应用。我们知道在学习光学知识的时候,我们感到吃力,很难或者不能理解,这是因为光学内容很抽象,虽然光学现象存在不过现实中很难见到。往往需要借助实验,但是光学实验室要求很高,现阶段还不能使光学实验室普及,还有就是在实验室要受到授课时间的限制[1-3]。
在传统的教学中,教师们经常播放幻灯片或直接黑板上讲述衍射的各种知识。这种教学方式必定让学生感到倍感枯燥,因为内容太抽象而导致学生很难理解。为了优化教学模式很多方法被提出,计算机仿真学也在此时被广大科技人员和在校师生认可,采用计算机仿真配合理论知识,把光学现象形象、立体的展现在出来,以加深学生对光学内容的理解并提高学习兴趣。本次实验的目的就是使用Mathematica系统在光的衍射理论基础上进行仿真,观察仿真结果是否与理论结果一致[2]。
随着人类社会的发展,传统的计算思考模式已经难以满足社会发展的需求。那么怎么办呢?后来人们发现计算机可以替人迅速有效的解决许多问题。发现在现实生活中人们解决不了的问题,利用计算机仿真不失为一个有效的解决方法。现在,计算机仿真学是计算机科学技术研究和开发的主要阵地之一。人们使用计算机做数据计算和处理的同时,也在其他非数据处理领域处应用并解决了问题。不仅仅是在科研技术层次,计算机仿真系统更加面向大众化,企业、个人都在使用并成功解决一些复杂问题。在这种趋势下,越来越多的计算机仿真软件发行出世。因为行业不同,所以每个计算机仿真软件侧重点也不同。在众多仿真系统中,Mathematica软件则是一个较为出色的计算机仿真模拟软件,其本身集聚了各种功能,所以应用范围也比较广,尤其是在教学科研方面,是一种极佳的辅助工具[4]。
1.2 Mathematica仿真软件知识
1.2.1 Mathematica软件介绍
Mathematica系统是一款集数符运算、图形显示、程序编写等等在一身相对完善的科学仿真系统。自从Wolfram公发行了第一版以来,该公司一直增加着Mathematica系统的功能,使之趋向完善[5]。
Mathematica已经在工程、计算机科学领域、科研教育范围内得到广泛的使用,因此受到很大推广。虽然从事科研工作的人是使用Mathematica的主要人群, 在学校教学中也有很多老师和学生在使用Mathematica。教学中的许多计算是非常麻烦或琐碎的,所以要借助Mathematica仿真软件进行指导或辅助。尤其是要解决大量手工推导的问时,很有必要借助Mathematica的运算功能。软件本身基于C语言开发了一套完善的编程语言,利用这个语言写程序可以解决很多问题,而且其编程方式和我们的书写习惯相同,这使得Mathematica软件编程语言相对于其他的计算机语言更加具有优势。
Mathematica包含了大约一百多种的作图函数,可以使数据可视化,通过观察图像我们可以掌握一些从函数表达式中看不清楚的特征,使用Mathematica还可以做一些极限、积分、微分等等的问题。所以使用Mathematica软件模拟光的衍射使衍射图样形象显示出来是非常合适的。
从高中生到研究生和社会中的科研工作者数以百万计的人都可以使用它。此外,随着学教育部门要求加强学生对仿真工具的使用,Mathematica在校园内的应用肯定是越来越多越来越广泛的,学生和教师利用它解决物理、数学、化学等等计算领域中的问题。成为了一个著名的工具[6]。
1.2.2 Mathematica的操作注意点
(1)区别于其他的计算机语言的是,其定义的变量可以不首先标明变量的类型。自定义变量都要以英文大小写开头,后面可以有数字,长度不限。而且代码中大小写不同的话,其代表意义不同。
(2)Mathematica本身就定义很多常量,在自定义常量是要避免这些系统常量。
(3) 在输入语句时,以“;”表示结束。
(4)Mathematica的启动与大部分软件一样,需要注意的是若要运行程序,则必须按Shift + Enter键,否则程序不会执行。
(5)设置变量时,因为表面上看各个单元是独立的,但是,各个单元使用的变量,包括输出结果却是公共的。不同单元的程序因为变量共用的原因,可以相互联系和干扰的。若有不需要的变量,必须清除其值,使用函数Clear[]。
(6)实验中要处理很多次数据,有时计算结果比较慢,要有耐心,本次做光的衍射便是需要很长时间的。
1.2.3 Mathematica应用基础[7,8]
(1)数值运算和符号运算是Mathematica应用的一个很重要的部分,同时也是Mathematica仿真系统的主要功能之一。利用Mathematica进行数值计算,在很多情况下,就像使用计算器一样,只不过比任何计算器的功能都要强大的多。
(2)函数是数学中最基本的概念之一。Mathematica系统提供常用的基本函数,方便使用。同时也为使用者提供了定义函数的工具,使用者可以根据自己的需要定义相关函数解决相关问题。
(3)作图是该软件另一项主要功能之一,可以做出各种函数图像,还可以做出二维和三维图像。
摘要
波动光学中很大一部分是光的衍射,人们借助光的衍射原理,在工业设计上取的了巨大的成就,同时还解决了现实中复杂的问题。加深对光学现象理解是很有现实意义的。光的衍射根据衍射孔与接收屏,衍射孔与光源的距离可近似分为夫琅禾费衍射和菲涅尔衍射,本文主要讲夫琅禾费衍射。
在光的衍射理论基础上,利用Mathematica仿真软件的数值运算、绘图功能和程序编写功能,并根据标量夫琅禾费衍射理论编程实现了圆孔夫琅禾费衍射、三角孔夫琅禾费衍射、矩形孔夫琅禾费衍射、单缝夫琅禾费颜色的仿真得出了衍射图样,同时和理论相结合,对光的衍射加以分析和理解。这对于光的衍射的教学和学习有很好的辅助作用。文章还简单介绍了光的衍射概念、原理、分类、衍射数学模型。
*查看完整论文请 +Q: 3 5 1 9 1 6 0 7 2
关键字:仿真夫琅禾费衍射Mathematica软件衍射图样
目录
摘要 I
第一章 绪论 1
1.1引言 1
1.2 Mathematica仿真软件知识 2
1.2.1 Mathematica软件介绍 2
1.2.2 Mathematica的操作注意点 2
1.2.3 Mathematica应用基础 3
1.2.4 Mathematica的主要特点 4
1.3本文主要仿真目标 5
第二章 衍射的基础知识 6
2.1光的衍射 6
2.1.1光的衍射定义 6
2.2.2 光的衍射分类 6
2.2夫琅禾费衍射 8
2.2.1矩形孔夫琅禾费衍射 9
2.2.2 夫琅禾费单缝衍射 10
2.2.3圆孔的夫琅禾费衍射 11
第三章 夫琅禾费衍射仿真实现 12
3.1圆孔夫琅禾费衍射 12
3.2矩形孔夫琅禾费衍射 18
3.2.1正方形孔夫琅禾费衍射 18
3.2.2长方形孔夫琅禾费衍射 19
3.2.3多个矩形孔夫琅禾费衍射 20
3.3 夫琅禾费单缝衍射 22
3.4 三角形孔夫琅禾费衍射 23
第四章 论文小结 27
参考文献 28
附录 29
致谢 33
第一章 绪论
1.1引言
在很久以前,人们便对光有了认识,在生产生活中利用光解决了很多问题,直到现在。光学随着人类社会的不断发展而日趋完善。掌握光学是学习许多科目的前提,有助于人们发展和认识客观世界规律,并把这些规律应用与现实生活中。最近几十年,光学与其他科学技术联系更加紧密,而且取得了很多成就,电光源、X射线光源、激光在众多领域的应用,同步辐射光源、同时全息摄影术、光导纤维等等光学方面新技术的出现,使人们对光学的研究热情高涨。
但凡学习过光学知识的人,尤其是光学专业的同学,都知道光的衍射和光的干涉是波动光学的两部分。利用波动光学的原理,人们已经在各个领域内取得不错的成就,对光的衍射研究的热情也日趋高涨,光的衍射在生物学、通信行业等等得到广泛的应用。我们知道在学习光学知识的时候,我们感到吃力,很难或者不能理解,这是因为光学内容很抽象,虽然光学现象存在不过现实中很难见到。往往需要借助实验,但是光学实验室要求很高,现阶段还不能使光学实验室普及,还有就是在实验室要受到授课时间的限制[1-3]。
在传统的教学中,教师们经常播放幻灯片或直接黑板上讲述衍射的各种知识。这种教学方式必定让学生感到倍感枯燥,因为内容太抽象而导致学生很难理解。为了优化教学模式很多方法被提出,计算机仿真学也在此时被广大科技人员和在校师生认可,采用计算机仿真配合理论知识,把光学现象形象、立体的展现在出来,以加深学生对光学内容的理解并提高学习兴趣。本次实验的目的就是使用Mathematica系统在光的衍射理论基础上进行仿真,观察仿真结果是否与理论结果一致[2]。
随着人类社会的发展,传统的计算思考模式已经难以满足社会发展的需求。那么怎么办呢?后来人们发现计算机可以替人迅速有效的解决许多问题。发现在现实生活中人们解决不了的问题,利用计算机仿真不失为一个有效的解决方法。现在,计算机仿真学是计算机科学技术研究和开发的主要阵地之一。人们使用计算机做数据计算和处理的同时,也在其他非数据处理领域处应用并解决了问题。不仅仅是在科研技术层次,计算机仿真系统更加面向大众化,企业、个人都在使用并成功解决一些复杂问题。在这种趋势下,越来越多的计算机仿真软件发行出世。因为行业不同,所以每个计算机仿真软件侧重点也不同。在众多仿真系统中,Mathematica软件则是一个较为出色的计算机仿真模拟软件,其本身集聚了各种功能,所以应用范围也比较广,尤其是在教学科研方面,是一种极佳的辅助工具[4]。
1.2 Mathematica仿真软件知识
1.2.1 Mathematica软件介绍
Mathematica系统是一款集数符运算、图形显示、程序编写等等在一身相对完善的科学仿真系统。自从Wolfram公发行了第一版以来,该公司一直增加着Mathematica系统的功能,使之趋向完善[5]。
Mathematica已经在工程、计算机科学领域、科研教育范围内得到广泛的使用,因此受到很大推广。虽然从事科研工作的人是使用Mathematica的主要人群, 在学校教学中也有很多老师和学生在使用Mathematica。教学中的许多计算是非常麻烦或琐碎的,所以要借助Mathematica仿真软件进行指导或辅助。尤其是要解决大量手工推导的问时,很有必要借助Mathematica的运算功能。软件本身基于C语言开发了一套完善的编程语言,利用这个语言写程序可以解决很多问题,而且其编程方式和我们的书写习惯相同,这使得Mathematica软件编程语言相对于其他的计算机语言更加具有优势。
Mathematica包含了大约一百多种的作图函数,可以使数据可视化,通过观察图像我们可以掌握一些从函数表达式中看不清楚的特征,使用Mathematica还可以做一些极限、积分、微分等等的问题。所以使用Mathematica软件模拟光的衍射使衍射图样形象显示出来是非常合适的。
从高中生到研究生和社会中的科研工作者数以百万计的人都可以使用它。此外,随着学教育部门要求加强学生对仿真工具的使用,Mathematica在校园内的应用肯定是越来越多越来越广泛的,学生和教师利用它解决物理、数学、化学等等计算领域中的问题。成为了一个著名的工具[6]。
1.2.2 Mathematica的操作注意点
(1)区别于其他的计算机语言的是,其定义的变量可以不首先标明变量的类型。自定义变量都要以英文大小写开头,后面可以有数字,长度不限。而且代码中大小写不同的话,其代表意义不同。
(2)Mathematica本身就定义很多常量,在自定义常量是要避免这些系统常量。
(3) 在输入语句时,以“;”表示结束。
(4)Mathematica的启动与大部分软件一样,需要注意的是若要运行程序,则必须按Shift + Enter键,否则程序不会执行。
(5)设置变量时,因为表面上看各个单元是独立的,但是,各个单元使用的变量,包括输出结果却是公共的。不同单元的程序因为变量共用的原因,可以相互联系和干扰的。若有不需要的变量,必须清除其值,使用函数Clear[]。
(6)实验中要处理很多次数据,有时计算结果比较慢,要有耐心,本次做光的衍射便是需要很长时间的。
1.2.3 Mathematica应用基础[7,8]
(1)数值运算和符号运算是Mathematica应用的一个很重要的部分,同时也是Mathematica仿真系统的主要功能之一。利用Mathematica进行数值计算,在很多情况下,就像使用计算器一样,只不过比任何计算器的功能都要强大的多。
(2)函数是数学中最基本的概念之一。Mathematica系统提供常用的基本函数,方便使用。同时也为使用者提供了定义函数的工具,使用者可以根据自己的需要定义相关函数解决相关问题。
(3)作图是该软件另一项主要功能之一,可以做出各种函数图像,还可以做出二维和三维图像。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/gdxx/280.html