计算机在化学中的应用课程教学探讨
2011-09-25刘清芝杨爱萍杨登峰
刘清芝 杨爱萍 杨登峰
(青岛农业大学化学与药学院 山东青岛 266109)
为了培养化学专业学生掌握与化学专业有关的计算机应用技术,全国许多高等院校的化学专业开设了计算机在化学中的应用课程。该课程对学生有很大吸引力,但由于课程中涉及到的一些计算机代码或计算机处理技术较为枯燥,在学习过程中,学生往往会失去兴趣。因而,合理设计授课内容,运用恰当的教学方法,提高学生对该课程的学习兴趣,在兴趣中学习掌握知识是应该在教学工作中加以注意的。作者结合自己在该课程中的教学实践,对如何提高该课程教学效果的途径和方法进行了初步探讨。
1 以兴趣引导学习
“兴趣是最好的老师”这句话用于计算机在化学中的应用这门课程上是很合适的。作为一门选修课,要让学生积极主动地学习并掌握课程内容,最重要的就是要调动他们学习的兴趣,而怎样调动他们的兴趣则是对教师教学能力的考验。作者主要在3方面作了一些工作,实践证明效果良好。
1.1 授课内容与化学专业知识紧密结合
对于化学专业的学生,有机化学、物理化学、无机化学、分析化学是必修的4大化学基础课程,每门课程都能与计算机的应用相关。例如物理化学中方程求根、化学反应平衡浓度和平衡常数的计算等,因为使用了计算机,精确度和效率都可以得到大幅度提高;又如在分析化学中,计算机在一元线性回归,多元线性回归,线性拟合等方面有广泛的应用。学生在化学基础理论学习过程中,掌握了化学的基本原理以及解决相关问题的基本方法,对于计算过程复杂,处理困难的问题,学生则会采用简化的模型来处理,但这样进行处理的结果不会很理想。而若不采用简化模型,则计算效率低,而且复杂的计算易引起学生的厌烦情绪,以后再遇到类似的问题就容易有抵触心理。
根据化学课程对计算机应用的需求,作者在计算机在化学中的应用课程中安排了以下几部分内容。
1.1.1 C++编程语言
化学是一门经常与数据打交道的学科,离不开方程的求值、数据的分析等。例如吉布斯自由能的计算,由于有现成的模型可用,在变量确定的情况下,学生用计算器即可计算出结果。但如果模型包含多个变量,且变量不确定,在一定范围内取值,计算量会呈指数增加。例如:f(x)=(sin2x)e-ay-b|z|(1 f=sin(M_PI*2x/180)*pow(e,-ay)-b*abs(z); if(f<=0.000001&&f>=-0.000001) {cout<<"x="< exit(0);} 为了培养学生利用计算机处理复杂化学问题的能力,很有必要让学生掌握一门编程语言。学生掌握了该语言,就具有了一定的驾驭计算机的能力,处理化学问题就会更主动,这有助于增强他们的成就感,并调动他们课后继续学习的兴趣。 1.1.2 Matlab数据处理 与C++语言相比,使用Matlab软件处理复杂数据时,语言编写比较简洁。且Matlab强大的数据图形处理能力也为数据提供了直观的表达方式。例如:已知某待测物质浓度依次为0.5,1.0,1.5,2.0,2.5,3.0mol/L,所对应的实验数据依次为1.75,2.45,3.81,4.80,7.00,8.60。试求其拟合曲线,并用二维图形显示。 图1 Matlab拟合曲线的二维图形 这一看似复杂的问题,用Matlab则用几条语句就可以解决。 x=[0.5,1.0,1.5,2.0,2.5,3.0];y=[1.75,2.45,3.81,4.80,7.00,8.60]; p=polyfit(x,y,2);x1=0.5:0.05:3.0;y1=polyval(p,x1); plot(x,y,‘*r’,x1,y1,‘-b’);y1=polyval(p,x); 拟合结果为f(x)=0.5614x2+0.8287x+1.1560,所绘图形如图1所示。其中polyfit(…)实现的是多项式拟和的功能;而polyval(…)则表示多项式求值;画图则只用plot(…)一个函数来实现即可。其语言的直观与简洁让学生很容易接受,而其实现的功能却很强大,这能鼓舞学生学习的积极性。 1.1.3 ChemOffice 随着化学信息学的应用,化学信息的数字表达变得非常重要。主要包括分子结构式、常用仪器设备以及反应式的绘制;分子结构以及物质基本性质和相关反应过程的记录、查询等信息管理。对于化学专业的学生,很有必要掌握这部分知识。ChemOffice作为一款优秀的化学软件,包含ChemDraw化学结构绘图,Chem3D分子模型及仿真,ChemFinder化学信息搜寻整合系统。能很好地满足化学专业学生对于化学信息处理的要求。而分子结构以及反应过程的生动表达,三维结构的形象显示也能够吸引学生更加积极主动地去学习专业知识。 1.1.4 Origin数据管理 Microcal Origin是Windows平台下用于数据分析和项目绘图的软件。其数据处理功能虽不如Matlab,但对于数据的图形显示却很方便,不需要编程实现。其数据显示方式可与Excel通用,方便与Excel交换数据。国际上论文的图形格式很多也以Origin为主,故学生很有必要学习Origin数据的管理。此功能的实现由于不涉及编程,因而较容易掌握。 1.1.5 Internet中的化学资源 随着计算机的普及以及网络时代的到来,很多化学资源都选择以网络为媒介,通过数字方式发行。因此,学生除了要掌握运用计算机来协助解决化学问题外,还需要掌握怎样通过计算机来获得化学资源以及最新的化学信息。本课程对网络上的一些化学资源进行了介绍,并根据学校的现有资源进行了详细讲解。学生在课后可以立刻付诸应用。 在C++编程语言的学习过程中,一系列陌生的代码让学生望而却步,若在讲解过程中单纯从语言本身的定义及用法出发,学生往往会感觉枯燥无味,难以理解。为避免这种情况,作者在讲解过程中采用人性化的语言表达代码的含义,与学生一起思考,一起提出问题,一起解决问题。在讲解代码的时候先阐明代码实现的效果,然后让学生思考实现该效果的方法,在此过程中,逐步引导学生看代码,了解每条语句的作用,需要什么语句以及应该如何操作等。在提出问题和解决问题的同时,学生很容易明白为什么做和怎么做,其分析问题和解决问题的能力也随之提高。另外,与学生一起思考也包括站在学生的角度上思考问题。例如:在讲指针时,学生往往难以掌握,作者通过分析和调查发现,学生难以掌握的主要原因并不在于该部分的内容有多难,而是由于学生认识不到指针存在的必要性。作者采用具体的实例程序,通过与数组的对比来阐明指针的独特之处。 大学生对新奇的事物较为敏感。若在讲授每部分课程内容之前先给他们展现该部分内容所能实现的目标,则有助于调动他们的学习积极性。因此,在每部分内容授课前都用几个实例展示该部分的成果。例如,在开始讲解C++前,先举例用一个程序实现pH的计算及数据输入输出问题;在讲解Chemdraw前先展现用Chemdraw画出的反应方程式,反应装置图等;在讲解Matlab前先用实例展示紫外可见分光光度计测出的一系列数据的拟合方程和曲线。教学效果表明,向学生展示这些实例,有助于调动学生的学习积极性,学生在学习过程中能主动思考和提出问题。 计算机在化学中的应用课程与其他理论课的不同之处在于其所涉及到的内容都与计算机紧密联系。若课程的每部分结束后学生不能得到及时的练习,则很容易遗忘。因此,安排一定的上机时间很有必要。但该课程开课学时仅有32学时,课时少而内容多。本文作者对于如何安排上机时间以及上机内容,让学生在有限的学时内既能练习掌握知识,又能保证教学质量这两方面进行了一些探讨。 教学实践表明,与纯理论的讲授相比,学生对于“所见即所得” 的事物会表现出较高的兴趣。考虑到实践不但能调动兴趣,而且能更直接地反映学习过程中的问题,安排了十几个学时的上机时间。实践表明,十几个学时的上机时间对需要练习的内容来讲显得有些紧张,大部分学生还需要在课后补充练习。为了改善该状况,作者在每次上机之前的理论课上都对下次上机内容进行详细讲解,并明确告诉学生上机的题目和要求,让学生课后根据课堂所学知识提出相应的解决方法。在上机之前,教师通过网络将上节课的相关内容和本次上机题目展示给学生,学生直接通过网络进行拷贝,可以及时复习并参考上节课内容,很快进入练习和问题解决阶段,使上机时间能得到充分利用。 为了提高学生学习的积极性,作者设计的上机题目始终与化学专业问题相关联,且难易适中。例如当学生学完MatLab中的二分法和牛顿法之后,给学生安排的上机题目如下: “一氧化碳与氢按以下反应生成甲醇: 现有1mol CO与2mol H2的混合物,在温度t=590℃,压力p=3.04×107Pa条件下进行反应并达到平衡(Kf=1.393×10-15,Kr=0.43),分别用二分法和牛顿法求CH3OH在平衡气中的物质的量分数。” 由于学生对此类问题的处理较为熟悉,因而上机积极性很高,学习效果很好。 本文对计算机在化学中的应用这门课程的教学内容和教学方法进行了探讨。以“授课内容与化学知识亲密接触”为出发点,对授课内容进行了精心的选择和设计;并在上机时间和上机内容两方面进行了合理的设计安排。教学实践证明,在授课过程中与学生一起思考,并用逆向思维激发学生的学习兴趣,多采用学生在学习中常遇到的问题为实例,能很好地启发学生的学习兴趣,对提高学生学习的主动性及学习效率有促进作用。1.2 与学生一起思考
1.3 逆向思维调动学习情绪
2 理论联系实践
2.1 合理安排上机时间
2.2 合理设计上机题目
3 结语