资源描述:
《第 5 章 微积分问题的计算机求解.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库。
1、*MATLAB语言与应用1第5章微积分问题的计算机求解*MATLAB语言与应用2主要内容微积分问题的解析解数值积分*MATLAB语言与应用35.1微积分问题的解析解5.1.1极限问题的解析解5.1.2函数导数的解析解5.1.3积分问题的解析解*MATLAB语言与应用45.1.1极限问题的解析解5.1.1.1单变量函数的极限*MATLAB语言与应用5【例5-1】试求解极限问题*MATLAB语言与应用6【例5-2】求解单边极限问题*MATLAB语言与应用75.1.1.2多变量函数的极限*MATLAB语言与应用8【例5-3】求出二元函数极限值*MATLAB语言与应用95.1.2函数
2、导数的解析解5.1.2.1函数的导数和高阶导数*MATLAB语言与应用10【例5-4】*MATLAB语言与应用11函数及其一阶导数图形:>>f4=diff(f,x,4);pretty(f4)*MATLAB语言与应用125.1.2.2多元函数的偏导*MATLAB语言与应用13【例5-5】*MATLAB语言与应用14三维曲面:引力线:*MATLAB语言与应用15【例5-6】symsxyz;f=sin(x^2*y)*exp(-x^2*y-z^2);df=diff(diff(diff(f,x,2),y),z);df=simple(df)*MATLAB语言与应用165.1.2.3隐函数的
3、偏导数*MATLAB语言与应用17【例5-7】*MATLAB语言与应用185.1.2.4参数方程的导数已知参数方程,求*MATLAB语言与应用19【例5-8】symst;y=sin(t)/(t+1)^3;x=cos(t)/(t+1)^3;d4=diff(y,t,4)/diff(x,t,4)*MATLAB语言与应用205.1.3积分问题的解析解5.1.3.1不定积分的推导*MATLAB语言与应用21【例5-9】用diff()函数求其一阶导数,再积分,检验是否可以得出一致的结果。symsx;y=sin(x)/(x^2+4*x+3);y1=diff(y);y0=int(y1);pre
4、tty(y0)*MATLAB语言与应用22对原函数求4阶导数,再对结果进行4次积分y4=diff(y,4);y0=int(int(int(int(y4))));simplify(y0)*MATLAB语言与应用23【例5-10】证明*MATLAB语言与应用24【例5-11】不可积问题的积分问题求解。*MATLAB语言与应用255.1.3.2定积分与无穷积分计算*MATLAB语言与应用26【例5-12】求当a=0,b=1.5或时的定积分值。*MATLAB语言与应用27【例5-13】-symsxt;f=(-2*x^2+1)/(2*x^2-3*x+1)^2;I=simple(int(f
5、,x,cos(t),exp(-2*t)))*MATLAB语言与应用28【例5-14】5.1.3.3多重积分问题的MATLAB求解*MATLAB语言与应用29*MATLAB语言与应用30*MATLAB语言与应用31【例5-15】*MATLAB语言与应用325.2数值积分问题5.2.1由给定数据进行梯形求积5.2.2单变量数值积分问题求解5.2.3双重积分问题的数值解5.2.4三重定积分的数值求解*MATLAB语言与应用335.2.1由给定数据进行梯形求积*MATLAB语言与应用34*MATLAB语言与应用35【例5-16】x1=[0:pi/30:pi]’y=[sin(x1)cos
6、(x1)sin(x1/2)];*MATLAB语言与应用36【例5-17】画图:*MATLAB语言与应用37求理论值:不同步距*MATLAB语言与应用385.2.2单变量数值积分问题求解*MATLAB语言与应用39【例5-18】第三种:匿名函数(MATLAB7.0)第二种:inline函数第一种:一般函数方法*MATLAB语言与应用40用inline函数定义:*MATLAB语言与应用41【例5-19】提高求解精度。y1=quadl(f,0,1.5,1e-16)abs([y1-y0,y-y0])*MATLAB语言与应用42【例5-20】求解绘制函数:*MATLAB语言与应用43调用
7、quadl():f=inline(‘exp(x.^2).*(x<=2)+’...‘80*(x>2)./(4-sin(16*pi*x))’,‘x’);I1=quadl(f,0,4)*MATLAB语言与应用44【例5-21】求两条曲线y1=x.^2和y2=x+2所围成的二维图形的面积和重心设两条曲线的交点为(x1,y1),(x2,y2),则*MATLAB语言与应用45绘制函数:x=linspace(-1,2,200);y1=x.^2;y2=x+2;fill(x,y1,'r')area=quadl