- 1、本文档共56页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[小学教育]第9章MATLAB符号计算
第9章 MATLAB符号计算 9.1 符号对象和符号表达式 9.2 符号微积分 9.3 级 数 9.4 符号方程求解 什么是符号计算 利用解析方式进行的推演和运算形式,如代数学、微积分等领域。 9.1 符号对象和符号表达式 数值和数值变量用于数值的存储和各种数值计算。 符号常数、符号变量、符号函数、符号操作等是用来形成符号表达式,严格按照代数、微积分等课程中的规则、公式进行运算,并尽可能给出解析表达式结果。 数值表达式所有的变量必须事先赋值;而符号对象也应事先定义。 进行符号运算首先定义符号对象,可以是常数、变量、表达式。 利用符号对象再构成新的表达式。 9.1.1 建立符号对象 1.建立符号变量和符号常量 MATLAB提供了两个建立符号对象的函数:sym和syms,两个函数的用法不同。 (1) sym函数 sym函数用来建立单个符号量,一般调用格式为: 符号量名=sym(符号字符串) 该函数可以建立一个符号量,符号字符串可以是常量、变量、函数或表达式。 应用sym函数还可以定义符号常量,使用符号常量进行代数运算时和数值常量进行的运算不同。下面的命令用于比较符号常量与数值常量在代数运算时的差别。 例 符号常数形成中的差异 a1=[1/3,pi/7,sqrt(5),pi+sqrt(5)] a2=sym([1/3,pi/7,sqrt(5),pi+sqrt(5)]) a3=sym([1/3,pi/7,sqrt(5),pi+sqrt(5)]) a23=a2-a3 a1 = 0.3333 0.4488 2.2361 5.3777 a2 = [ 1/3, pi/7, sqrt(5), 6054707603575008*2^(-50)] a3 = [ 1/3, pi/7, sqrt(5), pi+sqrt(5)] a23 = [ 0, 0, 0, 189209612611719/35184372088832-pi-5^(1/2)] (2) syms函数 函数sym一次只能定义一个符号变量,使用不方便。MATLAB提供了另一个函数syms,一次可以定义多个符号变量。syms函数的一般调用格式为: syms 符号变量名1 符号变量名2 … 符号变量名n 用这种格式定义符号变量时不要在变量名上加字符串分界符(‘),变量间用空格而不要用逗号分隔。 例 syms A t tao w syms fai1 fai2 syms a11 a12 a21 a22 A=[a11,a12;a21,a22] 2.建立符号表达式 含有符号对象的表达式称为符号表达式。建立符号表达式有以下3种方法: (1)利用单引号来生成符号表达式。 (2)用sym函数建立符号表达式。 (3) 使用已经定义的符号变量组成符号表达式。 9.1.2 符号表达式运算 1.符号表达式的四则运算 符号表达式的加、减、乘、左除、右除、幂运算可分别由算符 +, - ,*, \, / ,^来实现;而算符 .+,. - ,.*, . \, ./ ,.^实现元素对元素运算。 2.关系运算 算符== 、~=对两边的对象进行“相等”、“不等”的比较,为真时结果为1 3 .三角函数的形式与数值计算相同 4 . 指数与对数运算函数同数值计算sqrt、exp、expm,对数计算的符号计算中只有自然对数log,没有log2和log10。 5 . 矩阵代数指令有:diag,triu,tril,inv,det,rank,poly,expm,eig等,用法与数值计算相同 6.符号表达式的因式分解与展开 MATLAB提供了符号表达式的因式分解与展开的函数,函数的调用格式为: factor(s):对符号表达式s分解因式。 expand(s):对符号表达式s进行展开。 collect(s):对符号表达式s合并同类项。 collect(s,v):对符号表达式s按变量v合并同类项。 f1=sym((x+1)^3) f1 = (x+1)^3 expand(f1) ans = x^3+3*x^2+3*x+1 factor(ans) ans = (x+1)^3 collect(x^2+2*x+1+5*x^2+3*x) ans = 6*x^2+5*x+1 7.符号表达式的化简 MATLAB提供的对符号表达式化简的函数有: simplify(s):应用函数规则对s进行化简。 simple(s):调用MATLAB的其他函数对表达式进行综合化简,并显示化简过程。 【例5.1-2】把字符表达式转换为符号变量,再简化 y=sym(2*sin(x)*c
文档评论(0)