Matlab基础及其应用教程08课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Matlab基础及其应用教程08课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 基础 及其 应用 教程 08 课件
- 资源描述:
-
1、第8章符号计算【本章学习目标】掌握符号对象的定义方法以及符号对象的运算法则。掌握微积分的符号计算方法。掌握级数求和的方法以及将函数展开为泰勒级数的方法。掌握代数方程和微分方程符号求解的方法。灵活运用符号计算的可视化分析工具。8.1 符号对象及其运算1 1建立符号变量建立符号变量MATLAB提供了两个建立符号变量的函数:sym和syms,两个函数的用法不同。(1)sym函数用于创建单个符号变量,基本调用格式为:x=sym(x)8.1.1 建立符号对象8.1 符号对象及其运算符号变量和数值变量的差别。a=sym(a);%定义符号变量a w=a3+3*a+10%符号运算w=a3+3*a+10 x=5
2、;%定义数值变量x w=x3+3*x+10%数值运算w=1508.1 符号对象及其运算1 1建立符号变量建立符号变量 建立符号变量时可以指定该变量所属集合:x=sym(x,set)set可取值为real、integer、positive 或rational。sym函数可以将常量、向量、矩阵转换为符号对象:x=sym(Num,flag)Num可以是常量、向量或矩阵,选项flag用于指定将浮点数转换为符号对象时所采用的方法,可取值有r、d、e和f,分别代表将Num转换为有理式、十进制数、带估计误差的有理式、与精确值对应的分式,默认为r。8.1.1 建立符号对象8.1 符号对象及其运算比较符号对象与
3、数值量在代数运算时的差别。p1=sym(pi);a=sym(4);%定义符号变量p1、a c1=cos(a+10)2)-sin(p1/4)%符号计算c1=cos(196)-2(1/2)/2 p2=pi;x=4;%定义数值变量p2、x c2=cos(x+10)2)-sin(p2/4)%数值计算c2=-0.36468.1 符号对象及其运算1 1建立符号变量建立符号变量(2)syms函数sym函数一次只能定义一个符号变量,syms函数一次可以定义多个符号变量。syms函数的一般调用格式为:syms var1.varN其中,var1、.、varN为变量名。多个符号变量用空格分隔。例如,用syms函数定
4、义4个符号变量a、b、c、d,命令如下:syms a b c d8.1.1 建立符号对象8.1 符号对象及其运算2 2建立符号表达式建立符号表达式(1)使用已经定义的符号变量组成符号表达式。例如:syms x y;f=3*x2-5*y+2*x*y+6f=3*x2+2*y*x-5*y+6 F=cos(x2)-sin(2*x)=0F=cos(x2)-sin(2*x)=0(2)用sym函数将MATLAB的匿名函数转换为符号表达式 fexpr=sym(x)(sin(x)+cos(x)fexpr=cos(x)+sin(x)(3)用str2sym函数将字符串转换为符号表达式 fx=str2sym(cos(
5、x)+sin(x)8.1.1 建立符号对象8.1 符号对象及其运算3 3建立符号函数建立符号函数(1)使用已经定义的符号变量定义符号函数。syms x y;f(x,y)=3*x2-5*y+2*x*y+6f(x,y)=3*x2+2*y*x-5*y+6(2)用syms函数定义符号函数,然后构造该符号函数所对应的表达式。syms f(t)fxy(x,y)f(t)=t2+1f(t)=t2+1 f(x,y)=3*x2-5*y+2*x*y+6f(x,y)=3*x2+2*y*x-5*y+68.1.1 建立符号对象8.1 符号对象及其运算3 3建立符号函数建立符号函数(3)用symfun函数建立符号函数。f=
6、symfun(formula,inputs)formula为符号表达式或者由符号表达式构成的向量、矩阵,inputs指定符号函数f的自变量。例如:syms x y f=symfun(3*x2-5*y+2*x*y+6,x y)f(x,y)=3*x2+2*y*x-5*y+68.1.1 建立符号对象8.1 符号对象及其运算symvar函数用于获取符号表达式中的自变量。调用格式为symvar(s)symvar(s,n)返回s中的n个符号变量,默认返回s中的全部符号变量。8.1.2 符号表达式中自变量的确定 syms x a y z b;s1=3*x+y;s2=a*y+b;symvar(s1)ans=x
7、,y symvar(s1+s2)ans=a,b,x,y syms a b w y z f(a,b)=a*z+b*w,2;%定义符号函数 symvar(f,3)ans=a,b,w ff=a*z+b*w;%定义符号表达式 symvar(ff,3)ans=w,z,b h=sym(3*b/2,(2*x+1)/3;a/x+b/y,3*x+4);symvar(h,1)ans=x8.1 符号对象及其运算1符号对象的四则运算8.1.3 符号对象的算术运算 x=sym(x);f=2*x2+3*x-5;g=x2-x+7;fsym=f+g%或 fsym=plus(f,g)fsym=3*x2+2*x+2 gsym=f
8、g gsym=(2*x2+3*x-5)(x2-x+7)符号矩阵的算术运算规则与数值矩阵的算术运算规则相同,+、-以及点运算(.*、.、./、.)分别作用于矩阵的每一个元素,*、/、则是矩阵运算。8.1 符号对象及其运算2提取符号表达式的分子和分母numden函数来提取符号表达式中的分子或分母。其一般调用格式为:n,d=numden(s)n与d中分别用于返回符号表达式s的分子和分母。8.1.3 符号对象的算术运算 n,d=numden(sym(10/33)n=10d=33 syms a b x n,d=numden(a*x2/(b+x)n=a*x2d=b+x对于符号矩阵,numden返回分子矩阵
9、n,分母矩阵d。8.1 符号对象及其运算3 3符号表达式的因式分解、展开与合并符号表达式的因式分解、展开与合并(1)factor函数用于分解因式。基本调用格式为:factor(s)若参数s是一个整数,函数返回s的所有素数因子;若s是一个符号对象,函数返回由s的所有素数因子或所有因式构成的向量。8.1.3 符号对象的算术运算 F=factor(823429252)%对整数分解因子F=2 2 59 283 12329 F=factor(sym(823429252)%对符号常量分解因子F=2,2,59,283,12329 syms x y;s1=x3-y3;factor(s1)%对s1分解因式ans
10、=x-y,x2+x*y+y28.1 符号对象及其运算3 3符号表达式的因式分解、展开与合并符号表达式的因式分解、展开与合并(2)expand函数:用于将符号表达式展开成多项式。expand(S,Name,Value)S是符号表达式或符号矩阵;选项Name用于设置展开方式,Value为Name的值,可取值有true和false,默认为false。8.1.3 符号对象的算术运算 syms x y s2=(-7*x2-8*y2)*(-x2+3*y2);expand(s2)%对s2展开ans=7*x4-13*x2*y2-24*y4 expand(cos(x+y)ans=cos(x)*cos(y)-si
11、n(x)*sin(y)expand(cos(x+y),ArithmeticOnly,true)ans=cos(x+y)8.1 符号对象及其运算3 3符号表达式的因式分解、展开与合并符号表达式的因式分解、展开与合并(3)collect函数:用于合并同类项。collect(P,v)以v为自变量,对符号对象P按v合并同类项,缺省时,以默认方式确定符号表达式的自变量。8.1.3 符号对象的算术运算 syms x y s3=(x+2*y)*(x2+y2+1)collect(s3)%默认以x为自变量,对s3按x合并同类项ans=x3+(2*y)*x2+(y2+1)*x+2*y*(y2+1)collect(
12、s3,y)%以为自变量,对s3按y合并同类项ans=2*y3+x*y2+(2*x2+2)*y+x*(x2+1)8.1 符号对象及其运算4 4符号表达式系数的提取符号表达式系数的提取coeffs函数提取符号表达式中的系数。调用格式为C=coeffs(p)C,T=coeffs(p,var)按升幂顺序返回符号表达式p各项的系数;第种格式指定以var为自变量。8.1.3 符号对象的算术运算 syms x y s=5*x*y3+3*x2*y2+2*y+1;coeffs(s)%求各项系数,按所有变量的升幂排列ans=1,2,3,5 coeffs(s,x)%按x的升幂排列 2*y+1,5*y3,3*y2 c
13、oeffs(s,y)%按y的升幂排列,返回变量y的系数 1,2,3*x2,5*x coeffs(s,x,y)ans=1,2,5,38.1 符号对象及其运算5 5符号表达式的化符号表达式的化简简simplify(s,Name,Value)对s进行代数化简。如果s是一个符号向量或符号矩阵,则化简s的每一个元素。8.1.3 符号对象的算术运算 syms x;s=(x2+5*x+6)/(x+2);simplify(s)ans=x+3 s=2*cos(x)2-sin(x)2,sqrt(16);simplify(s)ans=2-3*sin(x)2,48.1 符号对象及其运算6 6符号对象与数之间的转符号对
14、象与数之间的转换换(1)符号对象转换为基本数据类型8.1.3 符号对象的算术运算 a=sym(2*sqrt(2);b=sym(1-sqrt(3)2);T=a,b;a*b,b/a;R1=double(T)%R1为数值矩阵R1=2.8284 0.5359 1.5157 0.1895 R2=vpa(T,10)%R2为符号矩阵R2=2.828427125,0.5358983849 1.515749528,0.1894686918.1 符号对象及其运算6 6符号对象与数之间的转符号对象与数之间的转换换(2)符号多项式与多项式系数向量的转换函数sym2poly(p)用于将符号多项式p转换为多项式系数向量函
15、数poly2sym(c,var)用于将多项式系数向量c转换为符号多项式8.1.3 符号对象的算术运算 syms x y;u=sym2poly(x3-2*x-5)u=1 0 -2 -5 v=poly2sym(u,y)v=y3-2*y 5 v=poly2sym(u)v=x3-2*x 58.1 符号对象及其运算7 7指定符号对象的值指定符号对象的值域域在进行符号对象的运算前,可用assume函数设置符号对象的值域。assume(condition)assume(expr,set)第1种格式指定变量满足条件condition,第2种格式指定表达式expr属于集合set,set的可取值有integer、
展开阅读全文