1、引言 MATLAB语言是1980年由美国的CleveMoler博士研制的。它是美国Math Works公司推出的一套高性能数值计算和可视化软件,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境。MATLAB软件以它强大的数学计算功能和简洁的语句、函数及界面友好获得社会的一致认可。 内容来自论文无忧网 www.paper51.com 高等数学是一门十分抽象的重要基础课程。长期以来对于该课程的学习,我们普遍感到非常困难。本文探讨MatLab软件在高等数学教学中的几种应用,它不仅给我们带来许多方便,还大大提高了我们对问题的理解能力、动手能力和科研实践能力。函数的极限、单变量与多变量函数微积分、常微分方程、级数求和、Taylor幂级数展开、Fourier级数展开等问题的直接求解是高等数学的重要内容,利用Matlab对高等数学中涉及到的基本问题进行计算机辅助设计和分析不仅高效、准确,而且可以直观地看出结果,更加方便地描述和分析问题。下面以求导数、极限、积分来说明MATLAB 在高等数学学习中的应用。 内容来自www.paper51.com 2、应用举例 copyright paper51.com
2.1 导数 copyright paper51.com MATLAB的符号运算工具箱中有着强大的求导运算功能,我们根据MATLAB的求导功能分为一般的求导运算、高阶的求导运算,函数的导数由diff()来完成,调用格式为: http://www.paper51.com y=diff(fun,x) 求导数 内容来自论文无忧网 www.paper51.com y=diff(fun,x,n) 求n导数 内容来自论文无忧网 www.paper51.com 其中,fun是所给函数,x为自变量,n为导数的阶次。 copyright paper51.com 例1:已知求的导数 copyright paper51.com 解:手工计算: 内容来自论文无忧网 www.paper51.com
内容来自论文无忧网 www.paper51.com 应用MATLAB求解: copyright paper51.com >> clear copyright paper51.com
>> syms x; paper51.com
>>diff(1/3*log((x+1)/sqrt(x^2-x+1))+1/sqrt(3)*atan((2*x-1)/sqrt(3)),x) copyright paper51.com ans = http://www.paper51.com 1/3*(1/(x^2-x+1)^(1/2)-1/2*(x+1)/(x^2-x+1)^(3/2)*(2*x-1))/(x+1)*(x^2-x+1)^(1/2)+2/3/(1+1/3*(2*x-1)^2) 内容来自论文无忧网 www.paper51.com 即: http://www.paper51.com
内容来自论文无忧网 www.paper51.com 化简即: 内容来自www.paper51.com
例2: 已知函数,求它的一阶导数和三阶导数 http://www.paper51.com 解:一阶手工计算: http://www.paper51.com 应用MATLAB求解: 内容来自www.paper51.com >> clear http://www.paper51.com >> syms x;f=('exp(2*x)*log(x^2+2)*sin(-x)') paper51.com f = http://www.paper51.com
exp(2*x)*log(x^2+2)*sin(-x) 内容来自论文无忧网 www.paper51.com
>> diff(f,x) paper51.com ans = paper51.com -2*exp(2*x)*log(x^2+2)*sin(x)-2*exp(2*x)*x/(x^2+2)*sin(x)-exp(2*x)*log(x^2+2)*cos(x) 内容来自论文无忧网 www.paper51.com 即: 内容来自论文无忧网 www.paper51.com
copyright paper51.com >> diff(f,x,3) 内容来自论文无忧网 www.paper51.com ans = copyright paper51.com -2*exp(2*x)*log(x^2+2)*sin(x)-18*exp(2*x)*x/(x^2+2)*sin(x)-11*exp(2*x)*log(x^2+2)*cos(x)-12*exp(2*x)/(x^2+2)*sin(x)+24*exp(2*x)*x^2/(x^2+2)^2*sin(x)-24*exp(2*x)*x/(x^2+2)*cos(x)+12*exp(2*x)/(x^2+2)^2*sin(x)*x-6*exp(2*x)/(x^2+2)*cos(x)-16*exp(2*x)*x^3/(x^2+2)^3*sin(x)+12*exp(2*x)*x^2/(x^2+2)^2*cos(x) paper51.com 即: 内容来自www.paper51.com
http://www.paper51.com 从以上两个例子可以发现:一阶导数手工求解相对比较容易,但高阶导数用手工很难计算,需要进行许多烦杂的计算,计算起来比较麻烦,出错的概率很高。如果我们用MATLAB计算就能很容易地得出结果,避免了烦杂的计算过程,给我们的学习带来方便。 内容来自论文无忧网 www.paper51.com 2.2 积分 paper51.com 积分是高等数学中的一个基本而又重要的部分,它的运算比较困难,MATLAB为我们的积分运算提供了一个简洁而又功能强大的工具,可以直接用int()函数求出函数的不定积分,具体格式如下: copyright paper51.com
F=int(fun,x) 函数fun对符号变量x求不定积分(说明:在用MTALAB软件求不定积分时,求出的结果没有加上积分常数C。) paper51.com 例1:求; http://www.paper51.com 解:手工计算: 内容来自www.paper51.com http://www.paper51.com
copyright paper51.com
内容来自论文无忧网 www.paper51.com 内容来自www.paper51.com 而 内容来自论文无忧网 www.paper51.com
paper51.com 内容来自www.paper51.com paper51.com 故 http://www.paper51.com
copyright paper51.com copyright paper51.com 于是原式 paper51.com
paper51.com 应用MATLAB求解: 内容来自论文无忧网 www.paper51.com >> clear http://www.paper51.com >> symsx;int((x+1)*sqrt(x^2-2*x+5),x) 内容来自论文无忧网 www.paper51.com ans = http://www.paper51.com 1/3*(x^2-2*x+5)^(3/2)+1/2*(2*x-2)*(x^2-2*x+5)^(1/2)+4*asinh(1/2*x-1/2) copyright paper51.com 即: paper51.com 内容来自www.paper51.com 在高等数学中我们常通过先求出其不定积分的表达式的办法来求一个函数的定积分,这样计算比较麻烦,MATLAB语言仍为我们提供了int()函数来求解定积分,其调用格式如下: paper51.com I=int(f,x,a,b) 函数f对符号变量x求从a 到b 的定积分 http://www.paper51.com 例2:求定积分 http://www.paper51.com 解:手工计算: paper51.com http://www.paper51.com 内容来自论文无忧网 www.paper51.com
copyright paper51.com 内容来自论文无忧网 www.paper51.com 内容来自www.paper51.com paper51.com 应用MATLAB求解: 内容来自www.paper51.com >>clear 内容来自论文无忧网 www.paper51.com
>> symsx;int(x*log(1+x),x,0,1) copyright paper51.com ans = 内容来自www.paper51.com 1/4 内容来自论文无忧网 www.paper51.com 由上面的例子对比可以看出,两种解法存在明显的区别,手工求解比较烦杂,而用MATLAB求解时却相当简便,能直接得出结果,体现出了MATLAB强大的计算功能。 paper51.com |