《用matlab实现氢原子的sp杂化轨道可视化》由会员分享,可在线阅读,更多相关《用matlab实现氢原子的sp杂化轨道可视化(5页珍藏版)》请在金锄头文库上搜索。
1、用matlab实现氢原子的sp杂化轨道可视化作者:W.C.众所周知,数学软件matlab有许多的应用,其中在量子化学上,其可用于分子或者原 子轨道的可视化。.公式提要:此处只是简单提一提,方便读者可以大体上直接阅读懂代码,如果读者希望进一步了解相关知识请自行翻阅课本对于sp轨道的杂化,我们有如下公式:标 sp) = &(/( 25)+ 矶 1如)=&机2$)-欧(2妇对于原子的s,p轨道书上也都有具体的公式,此处不再详述。二. m程序代码:这里我们以氢原子为例:X = 0:0.1:36.0;Y = 0:0.0175:2*pi;r,theta=meshgrid(X,Y); %构建一个X,Y的矩阵
2、用于绘图xigma = r;%定义西格玛(虽然为了需要与r值相等)Psi_1 =1./2.”(1./2).*(1./4./pi)./2.”(3./2).*(2-xigma).*exp(-xigma./2) + (3./4./pi).”(1./2).*cos(thet a)./2./6.”(1./2).*xigma.*exp(-xigma./2);%这是Psi 1的方程Psi_2 =1./2.”(1./2).*(1./4./pi)./2.”(3./2).*(2-xigma).*exp(-xigma./2)-(3./4./pi).”(1./2).*cos(thet a)./2./6.”(1./2)
3、.*xigma.*exp(-xigma./2);%这是Psi 2的方程subplot(2,2,1),mesh(r.*cos(theta),r.*sin(theta),Psi_1),title(psi_1)subplot(2,2,3),mesh(r.*cos(theta),r.*sin(theta),Psi_2),title(psi_2)% subplot函数用于构建在一个Figure中的多个图同时显示,前面的两个参数用于描述总共有a*b个子图, 后面的一个参数描述后面的图形为第几个图,顺序从左到右% mesh为绘制三维曲面图的函数,此处因为参数是r,cos(theta),故我们让x=r*cos
4、(theta),y=r*sin(theta)即可绘图(此法不用在前面做矩阵转换)% title函数为曲面的名称,在图片正上方subplot(2,2,2),contour(r.*cos(theta)./1.0,r.*sin(theta)./1.0,Psi_1,30),title(psi_1contour)subplot(2,2,4),contour(r.*cos(theta)./1.0,r.*sin(theta)./1.0,Psi_2,30),title(psi_2 contour)% contour为等高线函数,其参数与meshl类似,最后一个参数30是让等高线总计有30条%我们可以知道波函数
5、的取值应该只与r/a0的值有关系,所以我们让a0=1,则r值也为r/a0值,而这步 化简操作并不会影响到具体的波函数值三. 不足与分析:1. Matlab导出的jpg png图形是在函数生成之后的图形编辑器里面的及时观察图形, 甚至会受到运行窗口的拉伸缩放影响。2. 其次,如果不加观察命令直接用手拖动可能较难实现水平与竖直方向上的观察。3. 以jpg,png导出的图形清晰度较差。四. 自我推销:苯宝宝这么好,生成的代码使用MATLAB的发布功能直接复制下来的,很好看吧;上 的文档也直接是word大家可以直接复制的,多么方便快扔出你的财富值,把苯宝宝 带回家吧当然本人也是大一本科,很多东西也是不太会,希望大家如果有疑问可以与我讨论。