7符号运算ppt课件

上传人:汽*** 文档编号:568806266 上传时间:2024-07-27 格式:PPT 页数:31 大小:372KB
返回 下载 相关 举报
7符号运算ppt课件_第1页
第1页 / 共31页
7符号运算ppt课件_第2页
第2页 / 共31页
7符号运算ppt课件_第3页
第3页 / 共31页
7符号运算ppt课件_第4页
第4页 / 共31页
7符号运算ppt课件_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《7符号运算ppt课件》由会员分享,可在线阅读,更多相关《7符号运算ppt课件(31页珍藏版)》请在金锄头文库上搜索。

1、数学实验Matlab 1.主要内容主要内容n符号运算介绍符号运算介绍n符号对象的建立符号对象的建立n常见符号运算常见符号运算2Matlab 符号运算介绍符号运算介绍q Matlab 符号运算是通过符号数学工具箱(Symbolic Math Toolbox)来实现的。Matlab 符号数学工具箱是建立在功能强大的 Maple 软件的基础上的,当 Matlab 进行符号运算时,它就请求 Maple 软件去计算并将结果返回给 Matlab。 q Matlab 的符号数学工具箱可以完成几乎所有得符号运算功能。主要包括:符号表达式的运算,符号表达式的复合、化简,符号矩阵的运算,符号微积分、符号作图,符号

2、代数方程求解,符号微分方程求解等。此外,该工具箱还支持可变精度运算,即支持以指定的精度返回结果。 3Matlab 符号运算特点符号运算特点u 计算以推理方式进行,因此不受计算误差累积所带来的困扰。 u 符号计算指令的调用比较简单,与数学教科书上的公式相近。u 符号计算可以给出完全正确的封闭解,或任意精度的数值解(封闭解不存在时)。 u 符号计算所需的运行时间相对较长。u符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达。4Matlab 符号运算举例符号运算举例u 求一元二次方程 ax2 + bx + c = 0 的根 solve(a*x2+b*x+c)u 求f (x) = (cos

3、x)2 的一次导数 x=sym(x); diff(cos(x)2)u 计算 f (x) = x2 在区间 a, b 上的定积分 syms a b x; int(x2,a,b)5u sym 函数用来建立单个符号变量,一般调用格式为:q 符号对象的建立:sym 和 syms符号对象符号对象的建立的建立例: a=sym(a) x = sym(A)参数 A 可以是一个数或数值矩阵,也可以是字符串a 是符号变量b 是符号常量 b=sym(1/3)c 是符号矩阵 c=sym(1 ab; c d)6q 符号对象的建立:sym 和 syms符号对象符号对象的建立的建立u syms 命令用来建立多个符号变量,一

4、般调用格式为:syms 符号变量符号变量1 符号变量符号变量2 . 符号变量符号变量n 例: syms a b c a=sym(a); b=sym(b); c=sym(c);7q 符号表达式的建立:例:建立符号表达式通常有以下2种方法:(1) 用 sym 函数直接建立符号表达式。(2) 使用已经定义的符号变量组成符号表达式。 y=sym(sin(x)+cos(x) x=sym(x); y=sin(x)+cos(x)符号符号表达式表达式的建立的建立8Matlab 符号运算采用的运算符和基本函数,在形状、名称和使用上,都与数值计算中的运算符和基本函数完全相同符号对象符号对象的的基本基本运算运算q

5、基本运算符u 普通运算:+ 、- 、* 、 、/ 、u 数组运算:.* 、. 、./ 、.u 矩阵转置: 、.例: X=sym(x11,x12;x21,x22;x31,x32); Y=sym(y11,y12,y13;y21,y22,y23); Z1=X*Y; Z2=X.*Y;9符号对象符号对象的的基本基本运算运算sin、cos、tan、cot、sec、csc、asin、acos、atan、acot、asec、acsc、exp、log、log2、log10、sqrtabs、conj、real、imagrank、det、inv、eig、lu、qr、svddiag、triu、tril、expm三角函

6、数与反三角函数、指数函数、对数函数等q 基本函数10q 查找符号表达式中的符号变量若表达式中有两个符号变量与 x 的距离相等,则ASCII 码大者优先。查找符号变量查找符号变量findsym(expr)按字母顺序列出符号表达式 expr 中的所有符号变量findsym(expr, N)按顺序列出 expr 中离 x 最近的 N 个符号变量常量 pi, i, j 不作为符号变量11例: f=sym(2*w-3*y+z2+5*a) findsym(f) findsym(f,3) findsym(f,1)findsym 举例举例12符号表达式的替换符号表达式的替换subs(f,x,a) 用用 a 替

7、换字符函数替换字符函数 f 中的字符变量中的字符变量 x a 是可以是是可以是 数数/数值变量数值变量/表达式表达式 或或 字符变量字符变量/表达式表达式若 x 是一个由多个字符变量组成的数组或矩阵,则 a 应该具有与 x 相同的形状的数组或矩阵。q 用给定的数据替换符号表达式中的指定的符号变量13subs 举例举例 f=sym(2*u); subs(f,u,2) f2=subs(f,u,u+2) a=3; subs(f2,u,a+2) subs(f2,u,a+2) syms x y f3=subs(f,u,x+y) subs(f3,x,y,1,2)ans=4f2=2*(u+2)ans=14a

8、ns=2*(a+2)+2)f3=2*x+2*yans=6u 例:指出下面各条语句的输出结果f=2*u下面的命令运行结果会是什么? subs(f3,x,y,x+y,x+y)14转换转换 符号表达式与数值表达式之间的转换符号表达式与数值表达式之间的转换利用函数利用函数sym可以将数值表达式变换成它的符号表达式。可以将数值表达式变换成它的符号表达式。函数函数eval可以将符号表达式变换成数值表达式。可以将符号表达式变换成数值表达式。A = sym(5+6*8+4)y = eval(A)例如:例如:15常见符号运算常见符号运算q 因式分解、展开、合并、简化及通分等q 计算极限q 计算导数q 计算积分q

9、 无穷级数q 代数方程和微分方程求解q 极值计算16因式分解因式分解u 因式分解factor(f) syms x; f=x6+1; factor(f)l factor 也可用于正整数的分解 s=factor(100) factor(sym(123456789)l 大整数的分解要转化成符号常量大整数的分解要转化成符号常量17函数展开函数展开u 函数展开expand(f) syms x; f=(x+1)6; expand(f)l 多项式展开l 三角函数展开 syms x y; f=sin(x+y); expand(f)18合并同类项合并同类项u 合并同类项collect(f,v): 按指定变量按指

10、定变量 v 进行进行合并合并collect(f): 按按默认默认变量变量 x 进行进行合并合并syms x y; f= x2*y + y*x - x2 + 2*x ;collect(f)collect(f,y)19函数简化函数简化u 函数简化y=simple(f): 对对 f 尝试多种不同的算法尝试多种不同的算法进行简化进行简化,返回其中最简短的,返回其中最简短的形式形式(调用多种函数)调用多种函数)How,y=simple(f): y 为为 f 的的最简短形式最简短形式,How 中记录的为简化过中记录的为简化过程中使用的方法。程中使用的方法。fyHOW2*cos(x)2-sin(x)23*c

11、os(x)2-1simplify(x+1)*x*(x-1)x3-xcombine(trig)x3+3*x2+3*x+1(x+1)3factorcos(3*acos(x)4*x3-3*xexpand20函数简化函数简化u 函数简化y=simplify(f): 对对 f 进行简化进行简化 syms x; f=sin(x)2 + cos(x)2 ; simplify(f) syms c alpha beta; f=exp(c*log(sqrt(alpha+beta); simplify(f)21函数简化函数简化举例举例 syms x; f=(1/x3+6/x2+12/x+8)(1/3); y1=si

12、mplify(f) g1=simple(f) g2=simple(g1)l 多次使用多次使用 simple 可以达到最简表达。可以达到最简表达。例:简化例:简化22分式通分分式通分u 函数简化N,D=numden(f): N 为通分后的分子,为通分后的分子,D 为通分后的分母为通分后的分母 syms x y; f=x/y+y/x; N,D=numden(f) n,d=numden(sym(112/1024)23计算极限计算极限limit(f,x,a): 计算计算limit(f,a): 当默认变量趋向于当默认变量趋向于 a 时的极限时的极限limit(f): 计算计算 a=0 时的极限时的极限l

13、imit(f,x,a,right): 计算右极限计算右极限limit(f,x,a,left): 计算左极限计算左极限例:计算例:计算 , syms x h n; L=limit(log(x+h)-log(x)/h,h,0) M=limit(1-x/n)n,n,inf)24计算计算导数导数g=diff(f,v):求符号表达式求符号表达式 f 关于关于 v 的导数的导数g=diff(f):求符号表达式求符号表达式 f 关于关于默认变量默认变量的导数的导数g=diff(f,v,n):求求 f 关于关于 v 的的 n 阶阶(偏偏)导数导数q diffsyms x y; f=sin(x)*exp(x2+

14、y)+3*x2; g=diff(f,x),h=diff(f,x,3);j=diff(diff(f,x),y);例例:思考:参数函数及隐函数的求导如何实现?思考:参数函数及隐函数的求导如何实现?syms x y; f=sin(y)+exp(x)-x*y2; dx=diff(f,x);dy=diff(f,y);pretty(dy/dx);% d=dy/dx25计算计算极值极值x=fminbnd(f,x1,x2):求函数求函数 f 在在x1,x2上的极小值,上的极小值,f可以是函数名,可以是函数名,也可以是函数表达式。也可以是函数表达式。q 函数极值函数极值 fminbnd求下列函数的极值:求下列函

15、数的极值:例:例:x=-5:0.1:5;y=x.3+x.2-5*x-5;plot(x,y)xmin=fminbnd(x.3+x.2-5*x-5,-5,5)ymin=eval(xmin3+xmin2-5*xmin-5)xmax=fminbnd(-x.3-x.2+5*x+5,-5,5)ymax=eval(xmax3+xmax2-5*xmax-5)26计算计算积分积分int(f,v,a,b): 计算定积分计算定积分int(f,a,b): 计算关于默认变量的定积分计算关于默认变量的定积分int(f,v): 计算不定积分计算不定积分int(f): 计算关于默认变量的不定积分计算关于默认变量的不定积分 s

16、yms x; f=(x2+1)/(x2-2*x+2)2; I=int(f,x) K=int(exp(-x2),x,0,inf)例:计算例:计算 和和27无穷级数之符号求和无穷级数之符号求和 syms n; f=1/n2; S=symsum(f,n,1,inf) S100=symsum(f,n,1,100)symsum(f,v,a,b): 求和求和symsum(f,a,b): 关于默认变量求和关于默认变量求和例:计算级数例:计算级数 及其前及其前100项的部分和项的部分和例:计算函数级数例:计算函数级数 syms n x; f=x/n2; S=symsum(f,n,1,inf)28无穷级数之泰勒

17、展开无穷级数之泰勒展开syms x;f=sin(x);y=taylor(f,x,10)taylor(f,v,n,a): 将将f按变量按变量v在在v=a处处展开为泰勒级数展开为泰勒级数,展开到第展开到第n项项 . 省略省略a时默认为时默认为0例:求函数例:求函数 在在x=0处前处前10项的泰勒展开式。项的泰勒展开式。例:求函数例:求函数 在在x=2处处7 阶的泰勒展开式。阶的泰勒展开式。syms x;f=log(x);y=taylor(f,x,7,2)29 a1=1e10; b1=1e-10; c1=(a1+b1-a1)/b1; a2=sym(a1); b2=sym(b1); c2=(a2+b2-a2)/b2; u 指出下面的 M1,M2,M3 分别是什么,并上机验证。 a=1; b=2; c=3;d=4; M1=a,b;c,d; eval(M1) M2=a,b;c,d; eval(M2) M3=sym(a,b;c,d); eval(M3)u 下面语句计算出来的 c1,c2 相等吗,为什么?上机验证。补充:class(x) 查看指定变量 x 的类型实验内容实验内容30实验内容实验内容u 简化表达式课本课本 :P166-167:2(3) 3(3) 4(2) 7,12(5),14(1)(3),15(3),(6)19(5)(6),2131

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号