Matlab教程Ch4(高等数学)_第1页
Matlab教程Ch4(高等数学)_第2页
Matlab教程Ch4(高等数学)_第3页
Matlab教程Ch4(高等数学)_第4页
Matlab教程Ch4(高等数学)_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、12l数值运算在运算前必须先对变量赋值,再参加数值运算在运算前必须先对变量赋值,再参加运算。运算。l符号运算不需要对变量赋值就可运算,运算结符号运算不需要对变量赋值就可运算,运算结果以标准的符号形式表达。果以标准的符号形式表达。MATLAB符号运算符号运算322.:( )f xaxbxc定定义义函函数数1.:定定义义符符号号变变量量 x=sym(x);y=sym(y); z=sym(z);%or syms x y z f1=sym(a x2+b x+c) 或者或者 clear syms a b c x f2= a*x2 + b*x + c44.变变量量替替换换:3.:求求函函数数值值 f xf

2、 3vpa f3将将换换为为用用可可转转化化为为值值 f=sym(x2+2*x+y); x=2*pi; y=1; f1= eval(f)%或或 f2=subs(f)%或或 subs(f,x,y,2*pi,1) subs(f,x,s)f3= subs(f,x,3),vpa(f3)f4= subs(f,x,3) f xf s将将换换为为5collect函数函数合并同类项 clear syms x y f=(x-y)3; collect(f,y)fcollect(f)(x-1)*(x-2)*(x-3)x3-6*x2+11*x-6x*(x*(x-6)+11)-6x3-6*x2+11*x-6(1+x)*

3、t + x*t2*x*t+t(x-y)3x3-3*x2*y+3*y2*x-y36expand函数函数将乘积展开为和式 f=sym(cos(x+y); expand(f)fexpand(f)a*(x + y)a*x + a*y(x-1)*(x-2)*(x-3)x3-6*x2+11*x-6x*(x*(x-6)+11)-6x3-6*x2+11*x-6exp(a+b)exp(a)*exp(b)cos(x+y)cos(x)*cos(y)-sin(x)*sin(y)cos(3*acos(x)4*x3-3*x7horner函数函数把多项式转换为嵌套表示形式 fhorner(f)x3-6*x2+11*x-6-

4、6+(11+(-6+x)*x)*x1.1+2.2*x+3.3*x211/10+(11/5+33/10*x)*x8factor函数函数把多项式转换为乘积形式 syms x; n = (1:9); p = x.n + 1; f = factor(p); p, fffactor(f)x3-6*x2+11*x-6(x-1)*(x-2)*(x-3)x3-6*x2+11*x-5x3-6*x2+11*x-5x6+1(x2+1)*(x4-x2+1)9Pretty函数函数 手写手写 clear syms x f = x3-6*x2+11*x-6; g = (x-1)*(x-2)*(x-3); h = -6+(1

5、1+(-6+x)*x)*x; pretty(f), pretty(g), pretty(h) 3 2 x - 6 x + 11 x - 6 (x - 1) (x - 2) (x - 3) -6 + (11 + (-6 + x) x) x10simplify函数函数化简化简fsimplify(f)x*(x*(x-6)+11)-6x3-6*x2+11*x-6(1-x2)/(1-x)x+1(1/a3+6/a2+12/a+8)(1/3) (2*a+1)3/a3)(1/3)syms x y positive; log(x*y)log(x)+log(y)exp(x) * exp(y)exp(x+y)cos

6、(x)2 + sin(x)2111simple函数函数列出化简步骤列出化简步骤 f=sym(cos(x)2 + sin(x)2) simplify(f) simple(f) f1 = simple(f)fsimplify(f)simple(f)(1/a3+6/a2+12/a+8)(1/3)(2*a+1)3/a3)(1/3) (2*a+1)/asyms x y positive; log(x*y)log(x)+log(y)log(x*y)有时有时simple 函数比函数比simplify的结果更简化!的结果更简化! f = (1/a3+6/a2+12/a+8)(1/3); Simple_f=si

7、mple(f) Simple_Simple_f=simple(Simple_f)Simple_Simple_f =2+1/a%或或 Simple_Simple_f =simple(simple(f)Simple_Simple_f =2+1/a有时运用有时运用2次次simple 函数得到的结果更好!函数得到的结果更好!12 syms x y f=1/(1+x); g=cos(y); compose(f,g)1,cos( ( ).1 已已知知函函数数,例例求求fgyf g yx运行结果:运行结果:ans =1/(cos(y)+1)compose函数函数复合函数复合函数13syms xy=1/cos

8、(x);g=finverse(y)1.cosyx 求求函函数数的的例例反反函函数数运行结果:运行结果:g =acos(1/x)finverse函数函数反函数反函数14第第4章章 高等数学中的高等数学中的Matlab命令命令l格式五种格式五种:l符号变量说明符号变量说明: syms x y t h allimit (f,x,a) llimit (f,a) 默认变量默认变量x或唯一符号变量或唯一符号变量llimit (f) 默认变量默认变量x, 且且a=0llimit (f,x,a,right) 右极限右极限llimit (f,x,a,left) 左极限左极限lim( )xaf x4.1 求极限求

9、极限00lim( , )xxyyf x y求求limit(limit(f,x,x0),y,y0)limit(limit(f,y,y0),x,x0)1520sinlimsinxmxInx 求求例例21222lim32 例例求求xxIxx2322lim32 求求例例xxIxx syms x m n I2=limit(sin(m*x)/(n*x) syms x I1=limit(2*x2/(3*x2-2*x),x,2) syms x l3=limit(2*x2/(3*x2-2*x),x,inf)运行结果:运行结果: I1=1 运行结果:运行结果: I3=2/3 运行结果:运行结果: I2=m/n4.

10、1 求极限求极限16求导数命令是求导数命令是diff, 格式如下格式如下:ldiff (f(x) ldiff (f(x),n)ldiff (f(x,y),x) ldiff(f(x,y),x,n)ljacobian (f(x,y,z) ,g(x,y,z), h(x,y,z),x,y,z)( ) fx( )( )nfx( , ) f x yx nnfx fffxyzgggxyzhhhxyz4.2 (偏偏)导数与微分导数与微分172(1)ln(2)yxyx求求下下面面问问题题的的导导数数 例例 syms x f=log(x); diff(f) syms x y=x2; diff(y) (1)(2)运

11、行结果:运行结果: ans= 1/x运行结果:运行结果:ans= 2*x4.2 (偏偏)导数与微分导数与微分18 syms x y=2*x3+3*x2; y1=diff(y); y2=diff(y,2); disp(一阶导数为:一阶导数为:),y1 disp(二阶导数为:二阶导数为:),y232( )23f xxx求求的的一一阶阶例例、二二阶阶导导数数一阶导数为:一阶导数为:y1=6*x2+6*x二阶导数为:二阶导数为:y2=12*x+64.2 (偏偏)导数与微分导数与微分19cos( )sin( )1sin( )cos( )tttttt参数方程求导参数方程求导( )( )( )xx tyf

12、xyy t 参参数数方方程程所所确确定定的的函函数数,(1sin )cosxttytt 求求参参数数方方程程的的例例一一阶阶导导数数. . syms t x=t*(1-sin(t); y=t*cos(t); dx=diff(x,t) dy=diff(y,t) pretty(dy/dx) /./dydy dtdxdx dt 运行结果运行结果:dx=cos(t)-t*sin(t)dy=1-sin(t) -t*cos(t)20多元函数求导多元函数求导 syms a b x y z u=a*exp(b*x+y+z2); diff(u,z)2 求求对对 的的偏偏导导数数例例bxy zuaez运行结果:运

13、行结果:ans =2*a*z*exp(b*x+y+z2)diff(f(x,y),x,n)21syms x y z=x2*y3+sin(x*y);zx=diff(z,x) zy=diff(z,y) zx2=diff(z,x,2) zy2=diff(z,y,2) zxy=diff(diff(z,x),y) %x=1;y=pi; f=eval(zx) F= subs(zx,x,y,1,pi)22223221 sin(),:,xyzzzzzzzx yxyxyxyx yx 例例:求求多元函数求导多元函数求导22 梯梯 度度 syms x y zf=x2+y2+z2;s=jacobian(f)a= sub

14、s(s,x,y,z,1,-1,2)%orsx=subs(s,x,1);sy=subs(sx,y,-1);sz=subs(sy,z,2)g=vpa(sz)运行结果:运行结果:s = 2*x, 2*y, 2*za = 2, -2, 4222( , , )(1, 1,2)f x y zxyz 求求例例函函数数在在点点的的梯梯度度jacobian (f(x,y,z), g(x,y,z), h(x,y,z),x,y,z)fffxyzgggxyzhhhxyz23 方向导数方向导数 coscoscos( , , ) (cos( ),cos(),cos( ) ()*(cos( ),cos(),cos()fff

15、flxyzfgradf x y zljacobian ff 方方向向导导数数定定义义为为 所所以以 则则是是求求多多元元函函数数 的的方方向向导导数数2423( , , )1 1 2/ 3,/ 4,/ 3f x y zxyzxyz求求函函数数在在点点( ,)处处沿沿方方向向角角为为方方向向例例的的方方向向导导数数 syms x y z f=x*y2+z3-x*y*z; s=jacobian(f); g= subs(s,x,y,z,1,1,2) a=pi/3;b=pi/4;c=pi/3; l=g*cos(a),cos(b),cos(c) 运行结果:运行结果: g= -1 0 11 l = 5.0

16、000 方向导数方向导数 25隐函数求导隐函数求导( , )0( ),( , , )0( , ),xyyxzzFdyF x yyy xdxFFFzzF x y zzz x yxFdyF 方方程程确确定定的的隐隐函函数数则则方方程程确确定定的的隐隐函函数数则则, syms x y f=exp(y)+x*y-exp(x); dfx=diff(f,x); dfy=diff(f,y); dyx=-dfx/dfy; pretty(dyx) 0( )/yxexyeyy xdy dx求求所所确确定定的的隐隐函函数数的的导导数数例例exp( )exp( )yxxy 运行结果:运行结果:26求积分命令是求积分命

17、令是int, 格式如下格式如下:lint (f) lint (f,v)lint(f,a,b) lint(f,v,a,b)4.3 积分积分求函数求函数f关于关于syms定义的符号变量的不定积分定义的符号变量的不定积分求函数求函数f关于变量关于变量v的不定积分的不定积分求函数求函数f关于关于syms定义的符号变量从定义的符号变量从a到到b的定积分的定积分求函数求函数f关于变量关于变量v从从a到到b的定积分的定积分27注意:注意:用用Matlab求不定积求不定积分,解出的结果是没有常分,解出的结果是没有常数项的。数项的。即结果为:即结果为: (C为任意实数为任意实数)4.3.1 求不定积分求不定积分

18、221.sincosdxxx 例例计计算算 syms x y=1/(sin(x)2*cos(x)2); int(y); pretty(int(y) 1cos( )2sin( )cos( )sin( )xxxx 2211cos2sincossincossinxdxCxxxxx 运行结果:运行结果:int(f)284.3.2 求定积分求定积分2223x dx 计计例例算算运行结果:运行结果: ans=16syms x f=3*x2;int(f,x,-2,2)int(f,v,a,b)29 用定积分的符号解法求定积分有时会失效,用定积分的符号解法求定积分有时会失效,此时,可以用数值方法来计算定积分的值

19、。此时,可以用数值方法来计算定积分的值。 Matlab提供了一些计算定积分的数值方法。提供了一些计算定积分的数值方法。 A矩形法求定积分矩形法求定积分 B梯形公式梯形公式 C辛普森公式辛普森公式4.3.3 用数值方法计算定积分用数值方法计算定积分304.3.4 广义积分广义积分411dxx 计计算算例例广广义义积积分分int(, , , ),inf,inf.f v a bfvba 广广义义积积分分的的指指令令是是表表示示被被积积函函数数, 表表示示积积分分变变量量,其其中中若若记记为为若若记记为为说说明明:运行结果:运行结果:ans=1/3syms xf=1/(x4);Int(f,x,1,in

20、f)314.3.5 计算二重积分计算二重积分 int int f,y,y1 x ,y2 x,x,a,bint int int f,z,z1,z2 ,y,y1,y2 ,x,a,b二二重重积积分分三三重重积积分分1000 xyxdx dyxyzdz例例 运行结果为:运行结果为:ans=1/64syms x y z ; f=x*y*z;int(int(int(f,z,0,x*y),y,0,x),x,0,1)324.4 级数级数4.4.1函数展开成幂级数函数展开成幂级数求求幂幂级级数数收收敛敛半半径径用用到到的的语语句句为为 limit(f,n,inf) limit(f,n,inf)(, , , )T

21、aylor( )1,1, ,5f vvanv ataylorfnvf n va naf 展展开开的的指指令令:将将函函数数在在处处展展开开阶阶泰泰勒勒公公式式. .如如果果缺缺省省,将将函函数数 展展开开成成默默认认变变量量的的阶阶麦麦克克劳劳林林公公式式. .如如果果缺缺省省,将将函函数数 展展开开成成默默认认变变量量的的 阶阶麦麦克克说说明明:劳劳林林公公式式。 syms n f=(1/n2) /(1/(n+1)2); r=limit(f,n,inf)运行结果:运行结果:r=120( 1)nnnxn 求求的的例例:收收敛敛半半径径. .1limnnnara 332( )arctan16f

22、xxxInxx将将函函数数展展开开成成 的的 阶阶麦麦克克例例劳劳林林公公式式. . syms x f=x*atan(x)-log(sqrt(1+x2); taylor(f,7,x)运行结果:运行结果:ans=1/2*x2-1/12*x4+1/30*x6Taylor(, , , )taylor f n v a展展开开的的指指令令:ln3.求求例例的的近近似似值值 syms x y=taylor(log(x+3); x=0; y0=eval(y)y0 = 1.0986344.4.2求和、求积、级数求和求和、求积、级数求和( )( )xsum xcumsum xxx求求向向量量 的的和和或或者者是

23、是矩矩阵阵每每一一列列向向量量的的和和。如如果果是是 向向量量,并并用用行行向向量量显显示示出出来来;如如果果 是是矩矩阵阵,则则对对列列向向量量:逐逐项项求求和和进进行行操操作作。sum(a) cumsum(a)sum(A)cumsum(A) 例例: a=1:5;A=1 2 3 ;2 3 4 ;7 8 9 ;ans = 15ans = 1 3 6 10 15运行结果:运行结果: ans=10 13 16 ans=1 2 33 5 710 13 16354.4.2求和、求积、级数求和求和、求积、级数求和( )( )prod xcumprod xxx求求向向量量 的的各各元元素素的的积积或或者者

24、矩矩阵阵的的每每一一列列向向量量的的积积。如如果果 是是向向量量,并并用用行行向向量量显显示示出出来来;如如果果是是矩矩阵阵,则则对对列列向向量量:逐逐项项求求积积进进行行操操作作. .例例a=1:5; A=1 2 3 ;2 3 4 ;7 8 9 ; prod(A) cumprod(A) prod(a) cumprod(a)运行结果:运行结果:ans= 120ans = 1 2 6 24 120运行结果:运行结果:ans = 14 48 108ans = 1 2 3 2 6 12 14 48 10836( , , , )symsum s v a bvabs级级数数求求和和的的指指令令对对变变量量 求求 由由到到 的的有有限限项项的的和和,其其中中 为为求求和和级级数数的的通通:项项表表达达式式。130nkk 例例求求 syms k n f=k3; symsum(f,k,0,n-1) 运行结果:运行结果: ans=1/4*n4-1/2*n3+1/4*n221kk 1 1求求例例 syms k f=1/k2; symsum(f,k,1,inf) 运行结果:运行结果: ans =1/6*pi24.4.2求和、求积、级数求和求和、求积、级数求和37(1,2,1,2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论