(完整版)Matlab符号计算_第1页
(完整版)Matlab符号计算_第2页
(完整版)Matlab符号计算_第3页
(完整版)Matlab符号计算_第4页
(完整版)Matlab符号计算_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

1、matlab matlab 符号计算符号计算 所谓符号计算是指在运算时所谓符号计算是指在运算时, , 无须无须事先对变量赋值事先对变量赋值, ,而将所得到结果以标准而将所得到结果以标准的符号形式来表示的符号形式来表示特点:特点: (1)(1)运算对象可以是没赋值的符号变量运算对象可以是没赋值的符号变量 (2)(2)可以获得任意精度的解可以获得任意精度的解 (3) (3) 符号计算的时间长,而数值计算的符号计算的时间长,而数值计算的速度较快。速度较快。一、一、定义符号变量定义符号变量 参与符号运算的对象可以是符号变量、符参与符号运算的对象可以是符号变量、符号表达式或符号矩阵。符号变量要先定义,后

2、号表达式或符号矩阵。符号变量要先定义,后引用。引用。 1 1、 syms 函数函数 在一个语句中同时定义多个符号变在一个语句中同时定义多个符号变量,其一般格式为:量,其一般格式为: syms arg1 arg2 argn 例如:例如: syms x y a b c f=a*x2+b*x+c %建立符号表达式建立符号表达式 syms a11 a12 a21 a22 a=a11 a12;a21 a22 % 建立符号矩阵建立符号矩阵a = a11, a12 a21, a22每行都有方括号,这是与数值矩阵的一个重要区别每行都有方括号,这是与数值矩阵的一个重要区别 (1) 基本运算符基本运算符(+,-,

3、*,/,.*,./等等)与数值计算相同与数值计算相同. (2) 不能使用不能使用 , =, , = 关系运算符,但可以使关系运算符,但可以使用用 =, = 运算运算.2、sym 函数函数(1 1)把字符表达式转换为符号变量)把字符表达式转换为符号变量 (2 2)将数值矩阵转化为符号矩阵)将数值矩阵转化为符号矩阵例如:例如: syms x y=sym(2*sin(x)*cos(x) a=1/3,2.5;1/0.7,2/5 b=sym(a)将符号矩阵转化为数值矩阵将符号矩阵转化为数值矩阵函数调用格式:函数调用格式: numeric(a)3 3、任意精度的数学运算、任意精度的数学运算(1) (1)

4、有理数类型精确符号运算有理数类型精确符号运算 sym(1/2)+sym(1/3) (2) vpa 类型类型-任意精度算术运算任意精度算术运算 digits(n) 设置可变精度,缺省设置可变精度,缺省 16 位位vpa(x,n) 显示可变精度计算显示可变精度计算例如:例如:digits(20) vpa(1/2+1/3) a=sym(1/4,exp(1);log(3),3/7) vpa(a,10)二、因式分解、展开和简化二、因式分解、展开和简化 1、因式分解、因式分解(factor) syms x f1=x4-5*x3+5*x2+5*x-6 ; factor(f1) factor(200)2、展开

5、、展开 (expand) syms x y expand(x+1)3) expand(sin(x+y)3、合并同类项、合并同类项 (collect) syms x y collect(x2*y+y*x-x2-2*x)4、分式通分、分式通分 n,d=numden(a)n,d=numden(x/y+y/x)n: 分子分子d: 分母分母5、书写习惯显示符号表达式的函数、书写习惯显示符号表达式的函数(pretty) pretty(x4-5*x3+5*x2+5*x-6 )a=3/2,(x2+3)/(2*x-1)+3*x/(x-1);4/x2,3*x+4;pretty(a)6、符号简化、符号简化 simp

6、lify(s) simplify(sin(x)2+cos(x)2) 三、符号变量的替换三、符号变量的替换subs函数可用来对符号表达式中符号变量的替换函数可用来对符号表达式中符号变量的替换语法语法: subs(s) %用给定值替换符号表达式用给定值替换符号表达式 s 中的所有变中的所有变量量 subs(s,new) %用用 new 替换符号表达式替换符号表达式s中的自由变中的自由变量量 subs(s,old,new) %用用 new 替换符号表达式替换符号表达式 s 中中 old的变量的变量f=sym(x+y)2+3*(x+y)+5) ;x=2; y=5;f1=subs(f)%f=sym(x+

7、y)2+3*(x+y)+5);f2=subs(f,x+y,s) %用用 s 替换替换x+y%syms a x; f=a*sin(x)+5; f3=subs(f,a,x,2,pi/3)f4=subs(f,a,x,sym(2),sym(pi/3) 比较比较 f3 与与 f4 的差异的差异四、符号变量字母的优先顺序四、符号变量字母的优先顺序 符号计算中,符号计算中,x 是首选的符号变量,其后是首选的符号变量,其后的次序排列规则是:与的次序排列规则是:与 x 的的 ascii 码值之差的码值之差的绝对值小的字母优先绝对值小的字母优先; 差的绝对值相同时,差的绝对值相同时,ascii 值大的字母优先值大

8、的字母优先.自动识别符号变量时,自动识别符号变量时,字母的优先次序为字母的优先次序为x,y,w,z,v等等, 可通过命令可通过命令findsym 查寻查寻s=xywzv; double(s)-double(x) syms x w zff=f*x*z2findsym(ff) %查看表达式中所有自由符号变量查看表达式中所有自由符号变量findsym(ff,2) %按最优顺序查找按最优顺序查找 2 个自由符号变个自由符号变量量五、符号函数在高等数学中的应用五、符号函数在高等数学中的应用1 1、极限、极限 函数函数 limit 用于求符号函数用于求符号函数 f 的极限。系统可以根的极限。系统可以根据用

9、户要求,计算变量从不同方向趋近于指定值的极据用户要求,计算变量从不同方向趋近于指定值的极限值。限值。limit(f,x,a):计算当变量:计算当变量x趋近于常数趋近于常数a时,时,f(x)函数的)函数的极限值极限值limit(f,x,a, right): 求符号函数求符号函数f的极限值。的极限值。right 表示表示变量变量x从右边趋近于从右边趋近于alimit(f,x,a, left): 求符号函数求符号函数f的极限值。的极限值。left 表示变量表示变量x 从左边趋近于从左边趋近于 a例如:syms x kf=(1-1/x)(k*x)y=limit(f,x,inf) %求求x趋于无穷时的极

10、限趋于无穷时的极限%a=(1+x)(1/x) exp(-x);sin(x)/x 1/xb=limit(a,x,inf) c=limit(a,x,0,left)2 2、导数、导数 diff(f) %求求 f 对自由变量的一阶导数对自由变量的一阶导数 diff(f,t) %求求 f 对符号变量对符号变量 t 的一阶导数的一阶导数 diff(f,n) %求求 f 对自由变量的对自由变量的 n 阶导数阶导数 diff(f,t,n) %求求 f 对符号变量对符号变量 t 的的 n 阶导数阶导数syms x a b cf=a*x2+b*x+c;diff(f)diff(f,a)diff(f,x,2)3 3、

11、积分、积分int(f,t) %求符号变量求符号变量 t 的不定积分的不定积分int(f,t,a,b) %求符号变量求符号变量 t 的定积分的定积分syms x a bf=cos(x); f1=a+x+b;int(f)int(f,x,a,b)int(f1)int(f1,a)4、泰勒展开taylor(f,x,k,a): 将函数将函数 f 对对 x 在在 x=a 处泰勒处泰勒 展开到展开到 k-1 次幂次幂syms yf=log(y); taylor(f,y,6,1)5、级数求和 级数求和运算是数学中常见的一种运算。级数求和运算是数学中常见的一种运算。 例例如:如: f(x)=a0+a1x+a2x2+a3x3+anxn 函数函数symsum可以用于此类对符号函数可以用于此类对符号函数 f 的求的求和运算。和运算。 该函数的引用时,应确定级数的通项

温馨提示

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

评论

0/150

提交评论