东北石油大学
课 程 设 计
2014年 3月 14日
东北石油大学课程设计任务书
课程 计算物理和MATLAB 课程设计
题目 MC 方法模拟理想气体分子的麦克斯韦速率分布 专业
应物 姓名 学号主要内容、基本要求、主要参考资料等 主要内容:
麦克斯韦速率分布函数为
m υ-m 32
f (υ) =4π() e 2kT 2
2πkT
2
通过利用M-C 的方法模拟麦克斯韦速率分布图。
基本要求:
1、给出M-C 研究麦克斯韦速率分布的方法及步骤。
2、画出M-C 的模拟图,且与理论值相比较。
主要参考资料:
[1]马文蔚,解希顺等. 物理学[M],高等教育出版社,2007.
[2]张志涌. 精通MATLAB6.5[M]. 北京:北京航空航天大学出版社,2003. [3]彭芳麟. 计算物理基础[M],高等教育出版社,2009.
完成期限 2014.2.28-2014.3.14 指导教师 专业负责人
2014年 2 月 28 日
目 录
目 录 ............................................................................................................................. 1 第1章 概述 ................................................................................................................. 2 第2章 MATLAB 的基础知识 . ................................................................................... 3
2.1 Matlab基本命令 .............................................................................................. 3 2.2 Matlab与绘图有关的基本命令 ...................................................................... 3 第3章 麦克斯韦速率分布的数学描述 ..................................................................... 5
3.1 速率分布和分布函数 ................................................... 错误!未定义书签。 3.2 理想气体分子的麦克斯韦速率分布律 ......................................................... 6 第4章 Matlab 仿真实验及结果讨论 ......................................................................... 7 第5章 结论 ................................................................................................................. 8 参考文献 ....................................................................................................................... 9
第1章 概述
引言麦克斯韦速率分布律是分子动理论的重要结论之一, 它是研究气体分子碰撞、大量分子热运动服从统计规律性等问题的重要理论依据, 正确理解它对学习热学非常有用。但是由于推导困难、公式复杂、曲线难画, 麦克斯韦速率分布律学习起来比较费力, 成了热学理论教学中的一个难点。Matlab 是由美国的MathWorks 公司于20世纪80年代中期出品的一款商业数学软件, 由于优秀的数值计算能力和卓越的数据可视能力, 使其很快在数学软件中大放异彩, 与Mathematica 、Maple 、MathCAD 一起并称为四大数学软件。通过Matlab 的图形用户界面(Graphical User Interfaces,GUI) 可以设计出一个界面友好、方便人机交互的图形界面程序。在物理教学中, 适当利用Matlab GUI 建立直观的物理图像, 有助于学生更好地理解物理概念, 提高学习兴趣, 调动学习积极性
在分子物理学和热学中可知,由大量分子组成的气体,因分子间的频繁碰撞,各个分子的速度大小和方向瞬息万变。任一时刻,某个分子具有多大的运动速率完全是偶然的,可以是零到无穷大之间的任何值。1859年,英国物理学家麦克斯韦(J.C.Maxwell )从理论上导出了气体分子速率分布律——麦克斯韦速率分布律。
利用MATLAB 软件灵活的数值计算与符号计算、简单的语句表达、简洁完善的图形绘制、丰富的工具箱函数和简易的扩展功能,将复杂的数学公式绘制成曲线,并研究单个参数的影响。
第2章 Matlab 的基础知识
2.1 Matlab 基本命令
表2-1 MATLAB基本命令
2.2 Matlab 与绘图有关的基本命令
表2-2 常用作图命令和函数
在线条多于一条时,若用户没有指定使用颜色,则plot 循环使用由当前坐标轴颜色顺序属性(current axes ColorOrder property)定义的颜色,以区别不同的线条。在用完上述属性值后,plot 又循环使用由坐标轴线型顺序属性(axes LineStyleOrder property)定义的线型,以区别不同的线条。用法 plot(X,Y) 当X,Y 均为实数向量,且为同维向量(可以不是同型向量),X=[x(i)],Y=[y(i)],则plot(X,Y)先描出点(x(i),y(i)),然后用直线依次相连;若X ,Y 为复数向量,则不考虑虚数部分。若X ,Y 均为同维同型实数矩阵,X = [X(i)],Y = [Y(i)],其中X(i),Y(i)为列向量,则plot(X,Y)依次画出plot(X(i),Y(i)),矩阵有几列就有几条线;若X ,Y 中一个为向量,另一个为矩阵,且向量的维数等于矩阵的行数或者列数,则矩阵按向量的方向分解成几个向量,再与向量配对分别画出,矩阵可分解成几个向量就有几条线;在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。 plot(Y) 若Y 为实数向量,Y 的维数为m ,则plot(Y)等价于plot(X,Y),其中x=1:m ;若y 为实数矩阵,则把y 按列的方向分解成几个列向量,而y 的行数为n ,则plot(Y)等价于plot(X,Y)其中x=[1;2;…;n];在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。plot(X1,Y1,X2,Y2,…),其中Xi 与Yi 成对出现,pl ot(X1,Y1,X2,Y2,…)将分别按顺序取两数据Xi 与Yi 进行画图。若其中仅仅有Xi 或Yi 是矩阵,其余的为向量,向量维数与矩阵的维数匹配,则按匹配的方向来分解矩阵,再分别将配对的向量画出。plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2…) 将按顺序分别画出由三参数定义Xi,Yi,LineSpeci 的线条。其中参数LineSpeci 指明了线条的类型,标记符号,和画线用的颜色。在plot 命令中我们可以混合使用三参数和二参数的形式。
第3章 麦克斯韦速率分布的数学描述
气体中个别分子的速度具有怎样的数值和方向完全是偶然的,但就大量分子的整体来看,在一定的条件下,气体分子的速度分布也遵从一定的统计规律。这个规律也叫麦克斯韦速率分布律。
3.1 速率分布和分布函数
为了描述平衡态下气体分子的速率分布,先将分子速率范围0~∞分成许多相
等的速率区间∆v ,然后通过试验或理论推导找出分布在各个速率区间v ~v +∆v 内的分子数∆N 与总分子数N 0的比率
∆N
。这些比率便给出了分子的速率分布。下表N 0
给出了00C 时空气分子的速率分布:
-1
m ⋅s 由表可知,300~500的分子数占总数的比率最大。其余的分子数占总
分子数的比率都比较小。为了精确地描述分子速率分布,应将速率区间取得足够小,使∆v →0。这时可将∆v 表示为微分dv ,以dN 表示分布在v ~v +∆v 的分子数,比率
dN
是速率v 的函数,而且可以认为与dv 成正比,因而可表示为 N 0
dN
=f (v ) dv
N 0
速率分布函数物理意义:速率在v 附近单位速率区间内的分子数占总分子数的百分比,或者说为某一分子的速率在v 附近单位速率区间内的概率。
分布在有限速率区间v 1~v 2内的分子数为
V 2
∆N =⎰d N
=
V 1
⎰N f (v ) d v
分布在整个速率区间0~∞的分子数显然为分子总数N 0,所以
∞
⎰N f (v ) d v
00
=
N
归一化条件
∞
⎰f (v ) dv =1
3.2 理想分子气体的麦克斯韦速率分布律
麦克斯韦速率分布律指出,在平衡状态下,理想气体分子速率分布在区间
v ~dv
内的分子数占总分子数的百分比为
dN N
麦克斯韦速率分布函数为
=4π
m () e 2πkT
3
-m
2kT
2
v dv
2
T 为气体的热力学温度,m 为气体分子的质量,k 为玻尔兹曼常量。可得
m υ2-2kT
m
f (υ) =π42πkT
32
e )
2
第4章 MATLAB 仿真实验及结果讨论
先把麦克斯韦速率分布律列成一个子程序,以便经常调用,并把一些常用的常数也放在其中,这样主程序就简单了许多。在主程序中,定义变量的数值(如:T,mu 和v 等的数值大小或取值范围),然后调用maxwell (T,mu,v )函数进行数值计算,并利用plot (v,y )函数将计算结果绘制成图形。如此三遍,便可以绘制出如上所示的三条不同条件下的麦克斯韦速率分布律曲线。
由图可以知道,速率分布曲线的形状与气体温度T 和分子质量u 有关。温度升高时,分子热运动加剧,即速率较大的分子数占总分子数的百分率增大。另外,分布曲线还需满足归一化条件,所以温度升高时,分布曲线向右移动,f (v ) 的极大值减小,曲线变得较为平坦。
M 文件:
function f=maxwell(T,mu,v) %mu--分子量,千克. 摩尔~1 %v--分子速度 %T--气体的绝对温度 R=8.31;
%气体常数 %玻尔兹曼常数 %阿伏伽德罗常数
%分子质量 %麦克斯韦分布律
k=1.381*10^(-23); NA=6.022*10^23; m=mu/NA;
[*]程序主体: clear
T=200;mu=28e-3; v=eps:1500;
f=4*pi*(m/(2*pi*k*T))^(3/2).*exp(-m*v.^2./(2*k*T)).*v.*v;
%给出T,mv %给出自变量数组
y=maxwell(T,mu,v);
%调用M 函数文件
plot(v,y),hold on v1=400:600;
%画出分布曲线
%给定速度范围 %该范围的分布 %求该范围概率积分
y1=maxwell(T,mu,v1); trapz(y1)
fill([v1,600,400],[y1,0,0],'b')
T=300;mu=28e-3;y=maxwell(T,mu,v);plot(v,y) %改变T ,画曲线 T=200;mu=2e-3;y=maxwell(T,mu,v);plot(v,y) %改变mu ,画曲线 gtext('T=300,\mu=28*10^{-3}'), gtext('T=200,\mu=28*10^{-3}'), gtext('T=200,\mu=2*10^{-3}'), hold off ans =0.3326
麦克斯韦速率分布曲线
%此语句可以生成希 腊字母及上标(指
数)
(f(v)为纵轴,v 为横轴)
第5章 结论
由上可以看出,MATLAB 软件在分子物理学和热学方面有很大用处,它可以方便、快捷、清晰形象地解决分子物理学和热学中的一些复杂问题,将数值计算和绘图这类问题变成数字化,只需更改几个数字就可以得到其他的结果。在实际应用中,更多复杂的问题都可以用MATLAB 来进行方便快捷的解决,根据实际情况,灵活应用MATLAB 。
参考文献
1] 刘勍,温志贤.MA TLAB 基础及应用[M ]南京:东南大学出版社,2011. [2] 王少杰,顾牡. 新编基础物理学[M ]北京:科学出版社,2009.
[3] 孙冻梅.MATLAB 在力学热学教学中的应用[J ]《教育教学论坛》,2013年06期 [4] 刘卫国.MATLAB 程序设计与应用(第二版)[M ]北京:高等教育出版社,2006. [5] 张世功.MATLAB 用于物理实验常见的数据处理[J ]大学物理实验,2007,20(4)85—86. [6] 陈扬.MA TLAB6.x 图形编程与图像处理. 西安:西安电子科技大学出版社,2002. [7] 吴利华.MATLAB 在大学物理实验教学中的应用[J ]实验科学与技术,2009,7(2):101- 103. [8] 蔡旭辉等.MA TLAB 基础与应用教程[M].北京:人民邮电出版社,2011 [9] 王沫然. MATLAB与科学计算[M ]. 北京:电子工业出版社,2006.
东北石油大学课程设计成绩评价表
指导教师: 年 月 日
东北石油大学
课 程 设 计
2014年 3月 14日
东北石油大学课程设计任务书
课程 计算物理和MATLAB 课程设计
题目 MC 方法模拟理想气体分子的麦克斯韦速率分布 专业
应物 姓名 学号主要内容、基本要求、主要参考资料等 主要内容:
麦克斯韦速率分布函数为
m υ-m 32
f (υ) =4π() e 2kT 2
2πkT
2
通过利用M-C 的方法模拟麦克斯韦速率分布图。
基本要求:
1、给出M-C 研究麦克斯韦速率分布的方法及步骤。
2、画出M-C 的模拟图,且与理论值相比较。
主要参考资料:
[1]马文蔚,解希顺等. 物理学[M],高等教育出版社,2007.
[2]张志涌. 精通MATLAB6.5[M]. 北京:北京航空航天大学出版社,2003. [3]彭芳麟. 计算物理基础[M],高等教育出版社,2009.
完成期限 2014.2.28-2014.3.14 指导教师 专业负责人
2014年 2 月 28 日
目 录
目 录 ............................................................................................................................. 1 第1章 概述 ................................................................................................................. 2 第2章 MATLAB 的基础知识 . ................................................................................... 3
2.1 Matlab基本命令 .............................................................................................. 3 2.2 Matlab与绘图有关的基本命令 ...................................................................... 3 第3章 麦克斯韦速率分布的数学描述 ..................................................................... 5
3.1 速率分布和分布函数 ................................................... 错误!未定义书签。 3.2 理想气体分子的麦克斯韦速率分布律 ......................................................... 6 第4章 Matlab 仿真实验及结果讨论 ......................................................................... 7 第5章 结论 ................................................................................................................. 8 参考文献 ....................................................................................................................... 9
第1章 概述
引言麦克斯韦速率分布律是分子动理论的重要结论之一, 它是研究气体分子碰撞、大量分子热运动服从统计规律性等问题的重要理论依据, 正确理解它对学习热学非常有用。但是由于推导困难、公式复杂、曲线难画, 麦克斯韦速率分布律学习起来比较费力, 成了热学理论教学中的一个难点。Matlab 是由美国的MathWorks 公司于20世纪80年代中期出品的一款商业数学软件, 由于优秀的数值计算能力和卓越的数据可视能力, 使其很快在数学软件中大放异彩, 与Mathematica 、Maple 、MathCAD 一起并称为四大数学软件。通过Matlab 的图形用户界面(Graphical User Interfaces,GUI) 可以设计出一个界面友好、方便人机交互的图形界面程序。在物理教学中, 适当利用Matlab GUI 建立直观的物理图像, 有助于学生更好地理解物理概念, 提高学习兴趣, 调动学习积极性
在分子物理学和热学中可知,由大量分子组成的气体,因分子间的频繁碰撞,各个分子的速度大小和方向瞬息万变。任一时刻,某个分子具有多大的运动速率完全是偶然的,可以是零到无穷大之间的任何值。1859年,英国物理学家麦克斯韦(J.C.Maxwell )从理论上导出了气体分子速率分布律——麦克斯韦速率分布律。
利用MATLAB 软件灵活的数值计算与符号计算、简单的语句表达、简洁完善的图形绘制、丰富的工具箱函数和简易的扩展功能,将复杂的数学公式绘制成曲线,并研究单个参数的影响。
第2章 Matlab 的基础知识
2.1 Matlab 基本命令
表2-1 MATLAB基本命令
2.2 Matlab 与绘图有关的基本命令
表2-2 常用作图命令和函数
在线条多于一条时,若用户没有指定使用颜色,则plot 循环使用由当前坐标轴颜色顺序属性(current axes ColorOrder property)定义的颜色,以区别不同的线条。在用完上述属性值后,plot 又循环使用由坐标轴线型顺序属性(axes LineStyleOrder property)定义的线型,以区别不同的线条。用法 plot(X,Y) 当X,Y 均为实数向量,且为同维向量(可以不是同型向量),X=[x(i)],Y=[y(i)],则plot(X,Y)先描出点(x(i),y(i)),然后用直线依次相连;若X ,Y 为复数向量,则不考虑虚数部分。若X ,Y 均为同维同型实数矩阵,X = [X(i)],Y = [Y(i)],其中X(i),Y(i)为列向量,则plot(X,Y)依次画出plot(X(i),Y(i)),矩阵有几列就有几条线;若X ,Y 中一个为向量,另一个为矩阵,且向量的维数等于矩阵的行数或者列数,则矩阵按向量的方向分解成几个向量,再与向量配对分别画出,矩阵可分解成几个向量就有几条线;在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。 plot(Y) 若Y 为实数向量,Y 的维数为m ,则plot(Y)等价于plot(X,Y),其中x=1:m ;若y 为实数矩阵,则把y 按列的方向分解成几个列向量,而y 的行数为n ,则plot(Y)等价于plot(X,Y)其中x=[1;2;…;n];在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。plot(X1,Y1,X2,Y2,…),其中Xi 与Yi 成对出现,pl ot(X1,Y1,X2,Y2,…)将分别按顺序取两数据Xi 与Yi 进行画图。若其中仅仅有Xi 或Yi 是矩阵,其余的为向量,向量维数与矩阵的维数匹配,则按匹配的方向来分解矩阵,再分别将配对的向量画出。plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2…) 将按顺序分别画出由三参数定义Xi,Yi,LineSpeci 的线条。其中参数LineSpeci 指明了线条的类型,标记符号,和画线用的颜色。在plot 命令中我们可以混合使用三参数和二参数的形式。
第3章 麦克斯韦速率分布的数学描述
气体中个别分子的速度具有怎样的数值和方向完全是偶然的,但就大量分子的整体来看,在一定的条件下,气体分子的速度分布也遵从一定的统计规律。这个规律也叫麦克斯韦速率分布律。
3.1 速率分布和分布函数
为了描述平衡态下气体分子的速率分布,先将分子速率范围0~∞分成许多相
等的速率区间∆v ,然后通过试验或理论推导找出分布在各个速率区间v ~v +∆v 内的分子数∆N 与总分子数N 0的比率
∆N
。这些比率便给出了分子的速率分布。下表N 0
给出了00C 时空气分子的速率分布:
-1
m ⋅s 由表可知,300~500的分子数占总数的比率最大。其余的分子数占总
分子数的比率都比较小。为了精确地描述分子速率分布,应将速率区间取得足够小,使∆v →0。这时可将∆v 表示为微分dv ,以dN 表示分布在v ~v +∆v 的分子数,比率
dN
是速率v 的函数,而且可以认为与dv 成正比,因而可表示为 N 0
dN
=f (v ) dv
N 0
速率分布函数物理意义:速率在v 附近单位速率区间内的分子数占总分子数的百分比,或者说为某一分子的速率在v 附近单位速率区间内的概率。
分布在有限速率区间v 1~v 2内的分子数为
V 2
∆N =⎰d N
=
V 1
⎰N f (v ) d v
分布在整个速率区间0~∞的分子数显然为分子总数N 0,所以
∞
⎰N f (v ) d v
00
=
N
归一化条件
∞
⎰f (v ) dv =1
3.2 理想分子气体的麦克斯韦速率分布律
麦克斯韦速率分布律指出,在平衡状态下,理想气体分子速率分布在区间
v ~dv
内的分子数占总分子数的百分比为
dN N
麦克斯韦速率分布函数为
=4π
m () e 2πkT
3
-m
2kT
2
v dv
2
T 为气体的热力学温度,m 为气体分子的质量,k 为玻尔兹曼常量。可得
m υ2-2kT
m
f (υ) =π42πkT
32
e )
2
第4章 MATLAB 仿真实验及结果讨论
先把麦克斯韦速率分布律列成一个子程序,以便经常调用,并把一些常用的常数也放在其中,这样主程序就简单了许多。在主程序中,定义变量的数值(如:T,mu 和v 等的数值大小或取值范围),然后调用maxwell (T,mu,v )函数进行数值计算,并利用plot (v,y )函数将计算结果绘制成图形。如此三遍,便可以绘制出如上所示的三条不同条件下的麦克斯韦速率分布律曲线。
由图可以知道,速率分布曲线的形状与气体温度T 和分子质量u 有关。温度升高时,分子热运动加剧,即速率较大的分子数占总分子数的百分率增大。另外,分布曲线还需满足归一化条件,所以温度升高时,分布曲线向右移动,f (v ) 的极大值减小,曲线变得较为平坦。
M 文件:
function f=maxwell(T,mu,v) %mu--分子量,千克. 摩尔~1 %v--分子速度 %T--气体的绝对温度 R=8.31;
%气体常数 %玻尔兹曼常数 %阿伏伽德罗常数
%分子质量 %麦克斯韦分布律
k=1.381*10^(-23); NA=6.022*10^23; m=mu/NA;
[*]程序主体: clear
T=200;mu=28e-3; v=eps:1500;
f=4*pi*(m/(2*pi*k*T))^(3/2).*exp(-m*v.^2./(2*k*T)).*v.*v;
%给出T,mv %给出自变量数组
y=maxwell(T,mu,v);
%调用M 函数文件
plot(v,y),hold on v1=400:600;
%画出分布曲线
%给定速度范围 %该范围的分布 %求该范围概率积分
y1=maxwell(T,mu,v1); trapz(y1)
fill([v1,600,400],[y1,0,0],'b')
T=300;mu=28e-3;y=maxwell(T,mu,v);plot(v,y) %改变T ,画曲线 T=200;mu=2e-3;y=maxwell(T,mu,v);plot(v,y) %改变mu ,画曲线 gtext('T=300,\mu=28*10^{-3}'), gtext('T=200,\mu=28*10^{-3}'), gtext('T=200,\mu=2*10^{-3}'), hold off ans =0.3326
麦克斯韦速率分布曲线
%此语句可以生成希 腊字母及上标(指
数)
(f(v)为纵轴,v 为横轴)
第5章 结论
由上可以看出,MATLAB 软件在分子物理学和热学方面有很大用处,它可以方便、快捷、清晰形象地解决分子物理学和热学中的一些复杂问题,将数值计算和绘图这类问题变成数字化,只需更改几个数字就可以得到其他的结果。在实际应用中,更多复杂的问题都可以用MATLAB 来进行方便快捷的解决,根据实际情况,灵活应用MATLAB 。
参考文献
1] 刘勍,温志贤.MA TLAB 基础及应用[M ]南京:东南大学出版社,2011. [2] 王少杰,顾牡. 新编基础物理学[M ]北京:科学出版社,2009.
[3] 孙冻梅.MATLAB 在力学热学教学中的应用[J ]《教育教学论坛》,2013年06期 [4] 刘卫国.MATLAB 程序设计与应用(第二版)[M ]北京:高等教育出版社,2006. [5] 张世功.MATLAB 用于物理实验常见的数据处理[J ]大学物理实验,2007,20(4)85—86. [6] 陈扬.MA TLAB6.x 图形编程与图像处理. 西安:西安电子科技大学出版社,2002. [7] 吴利华.MATLAB 在大学物理实验教学中的应用[J ]实验科学与技术,2009,7(2):101- 103. [8] 蔡旭辉等.MA TLAB 基础与应用教程[M].北京:人民邮电出版社,2011 [9] 王沫然. MATLAB与科学计算[M ]. 北京:电子工业出版社,2006.
东北石油大学课程设计成绩评价表
指导教师: 年 月 日