APP下载

基于Matlab软件的数值分析实践教学研究

2014-02-24方智明罗振国

教育教学论坛 2014年35期
关键词:数值积分水流量上机

李 龙,方智明,罗振国

(衡阳师范学院 数学与计算科学系,湖南 衡阳 421002)

基于Matlab软件的数值分析实践教学研究

李 龙,方智明,罗振国

(衡阳师范学院 数学与计算科学系,湖南 衡阳 421002)

本文基于Matlab软件在处理数值计算等方面特点和优势,并结合数值分析课程的实践性,从上机实验问题的选取等方面,讨论了基于Matlab的数值分析实践教学,以增强学生的学习积极性和主动,提高知识运用能力。

Matlab数值分析;实践教学;上机实验

一、引言

数值分析又称为数值计算方法,主要研究用计算机解决数学问题的数值方法及其理论。数值分析课程既像通常的数学课程那样有自身严密的科学体系,又是一门应用性和实践性很强的课程。通过本课程的学习,能使学生熟练掌握数值计算的基本理论和基本方法,提高算法设计和理论分析能力,提高应用数学与计算机解决实际问题的能力。正因为如此,传统的只注重对书本理论知识的讲解,导致学生学习这门课程时感到抽象难懂,并且课程中的计算公式多而复杂和计算结果的不可预见性,造成学生不能全面理解各种计算方法,使得学生的学习积极性和主动性不够。因此,在数值分析的教学应该理论课程与实践课程并重,通过上机实践教学,可以让学生直观地通过数据来验证计算方法的敛散性、稳定性,比较各种方法的优劣,通过对数据的图形化方式加深学生对算法思想原理的理解,激发学生的学习兴趣,提高学生解决实际问题的能力。

在数值分析实践教学过程中,有的采用C/C++进行教学和实验,这要求学生既要充分了解算法原理,又要熟练掌握C/C++的语法和编程技巧,导致学生和教师将大量的时间和精力都花在繁琐的数值计算和作图上。在这些年的数值分析实践教学中,我们觉得Matlab软件应替代C/C++成为数值分析实践教学的首选。Matlab是MathWorks公司开发的一款以数值计算为主要特色,集数值计算、符号分析、图形可视化、文字处理于一体的集成化软件,在数值计算领域有其独特的优势。

二、Matlab数学实验平台

Matlab是一种面向科学与工程计算的高级语言,计算和绘图功能强大。针对计算数学领域的特定问题求解,如数值逼近、数值线性代数、微分方程数值解、数值积分等问题,Matlab都能给出该类问题的各种高效算法,并且算法简单直接,能让学生从繁琐的编程中解放出来,从而激发他们的学习兴趣和效率。Matlab软件特点和优势主要体现在:

1.Matlab具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,而且简单易学、编程效率高。

2.数值计算、符号计算和绘图功能强大,且操作简单。

3.Matlab提供强大的工具箱。

特别的,Matlab在处理矩阵运算时,相比与C/C++等语言编程要简单很多,且算法直观易懂。

>>B=[1 1;0 1];>>C=A*B

即可得到矩阵A和B的乘积。而C/C++则需要多个for循环语句才能完成该运算。

三、实践教学实例分析

目前我们所用的数值分析教材中的数值实验内容太单一,大多时候只是将数值方法用来求一个数学表达式的解,问题脱离实际。例如数值积分上机实验,基本上都是给出一个函数积分问题或一些离散点处的函数值,让学生用各种的数值积分算法求它们的近似解,这样一来使得学生感觉不到数值积分的用处;又例如微分方程数值解,都是给出一个微分方程的表达式,让学生用各种数值解法去求这个方程的数值解,所采用的例子完全脱离社会实际。这样一来,使得学生在遇到实际问题时,由于平时缺乏锻炼而无从下手,从而使得学生的实际问题解决能力得不到提高。而国外的数值分析教材都选取了大量来自实际的问题,例如人口增长模型、传染病模型、经济增长模型等,让学生感觉数值分析内容有趣而且与实际问题紧密联系,让他们觉得自己所学的知识还能解决现实生活中的问题,这样在问题解决时,学生会有一种成就感和喜悦感,从而大大提高了学生的学习兴趣。因此,我们在数值分析的实践教学中,应选取一些贴近实际的问题,让学生感受到数学知识的魅力,提高学生的知识运用能力,同时为学生的数学建模打下良好的理论基础和应用基础,提高学生的学习兴趣。下面我们以数值积分上机实验为例进行说明。

我们选用湘江水流量估计这一实际问题来作为学生的上机实验。水流量问题是学生们平时生活中经常遇到的问题,只要我们打开水龙头,就会有水流量这一问题。学生们会觉得平时日常生活的水流量,很好去估计,只要拿个容器去测量就可以了。但是,对于湘江河水的水流量那应该怎么去估计呢?该问题贴近生活实际,学生一听这个问题可以用我们所学的知识来解决,大家都很积极主动。现在给出该问题的数据:根据实际测量数据,我们可以得到在湘江河流某处河道宽为700m,该河道处横截面的不同位置在某一测量时刻的水深如表1所示,并且测量时该河道处的水流速度为0.5m/s,请大家估计湘江河道此时的水流量。

由我们的日常知识和分析可知,要想计算出湘江河道在此时的水流量,我们就要事先计算出该河道处的横截面面积。由数学分析中的定积分可知,如果知道此处河道的水深曲线函数h(x),则其横截面面积为但是在实际问题中h(x)的表达式是不可能精确得到的,那么我们该如何求此时河道的横截面面积,并满足足够的精度呢?

表1 湘江某处横截面不同位置的水深数据(单位:m)

对于这一类问题,给定函数在某些点处的函数值,要求该函数的定积分,我们马上就要想到数值积分。设湘江横截面面积为S,则水流量值=S×流速。已知函数h(x)在15个节点处的值,并且节点之间是等距。因此,可以采用复合梯形公式、复合辛普森公式和牛顿-科特斯公式求S的近似值。从而将这样一个求湘江水流量的实际问题转化成数值积分问题,让学生自己上机通过Matlab编程来计算出各种求积公式算出的流量估计值。这样一来,有学生自己动手,亲身体会用所学知识解决实际问题的成就,在培养学生解决实际问题能力的同时,激发了他们进一步学好该课程的愿望。

四、结束语

在高校顺应时代要求突出创新型、应用型和实践型人才培养目标的情况下,实践教学已成为高校教育教学研究的热点之一。实践证明,对数值分析课程开设实践教学环节以及对实验平台和实验内容进行改革,有助于加深学生对课程内容的理解,激发学生的学习积极性和主动性。同时,也是学生参加数学建模竞赛、大学生课外实践创新和提高知识运用能力的一个重要基础。

[1]曾繁慧,高雷阜.基于Matlab的数值分析教学改革研究[J].中国电子教育,2008,(01).

G642.0

A

1674-9324(2014)35-0203-02

衡阳师范学院教研项目“基于MATLAB教学软件的《数值分析》实践教学研究”(编号:JYKT201215)。

猜你喜欢

数值积分水流量上机
基于计算前沿面的实时仿真数值积分并行构造及其数值模型解耦加速方法
周金应
M701F4燃气轮机TCA系统冷却水流量异常分析
国产纳滤膜脱除硝酸盐的试验研究
标准化护理程序对体外膜肺氧合术患者上机各阶段用时的影响
基于重力方向影响的低压涡轮叶片水流量测量数值计算
上机数控“可疑”的高毛利率
基于辛普生公式的化工实验中列表函数的一种积分方法
330MW机组主蒸汽流量计量不准的原因分析及措施