第3章MATLAB符號(hào)計(jì)算_第1頁(yè)
第3章MATLAB符號(hào)計(jì)算_第2頁(yè)
第3章MATLAB符號(hào)計(jì)算_第3頁(yè)
第3章MATLAB符號(hào)計(jì)算_第4頁(yè)
第3章MATLAB符號(hào)計(jì)算_第5頁(yè)
已閱讀5頁(yè),還剩115頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1第第3 3章章 MATLABMATLAB符符號(hào)計(jì)算號(hào)計(jì)算2vMATLAB具有符號(hào)數(shù)學(xué)工具箱具有符號(hào)數(shù)學(xué)工具箱(Symbolic Math Toolbox) 。v符號(hào)計(jì)算是可以對(duì)未賦值的符號(hào)對(duì)象符號(hào)計(jì)算是可以對(duì)未賦值的符號(hào)對(duì)象(可以是可以是常數(shù)、變量、表達(dá)式常數(shù)、變量、表達(dá)式)進(jìn)行運(yùn)算和處理。進(jìn)行運(yùn)算和處理。v與數(shù)值運(yùn)算的區(qū)別與數(shù)值運(yùn)算的區(qū)別:數(shù)值運(yùn)算中必須先對(duì)變量賦值,然后才數(shù)值運(yùn)算中必須先對(duì)變量賦值,然后才能參與運(yùn)算。能參與運(yùn)算。符號(hào)運(yùn)算無(wú)須事先對(duì)獨(dú)立變量賦值,運(yùn)符號(hào)運(yùn)算無(wú)須事先對(duì)獨(dú)立變量賦值,運(yùn)算結(jié)果以標(biāo)準(zhǔn)的符號(hào)形式表達(dá)。算結(jié)果以標(biāo)準(zhǔn)的符號(hào)形式表達(dá)。3符號(hào)運(yùn)算的功能符號(hào)運(yùn)算的功能符號(hào)線(xiàn)性

2、代數(shù)符號(hào)線(xiàn)性代數(shù)(linear algebra)因式分解、展開(kāi)和簡(jiǎn)化因式分解、展開(kāi)和簡(jiǎn)化(simplification and substitution)符號(hào)代數(shù)方程求解符號(hào)代數(shù)方程求解(solving equations)符號(hào)微積分符號(hào)微積分(Calculus)符號(hào)微分方程符號(hào)微分方程4v3.1 符號(hào)表達(dá)式的建立符號(hào)表達(dá)式的建立 v3.2符號(hào)表達(dá)式的代數(shù)運(yùn)算符號(hào)表達(dá)式的代數(shù)運(yùn)算 v3.3符號(hào)表達(dá)式的操作和轉(zhuǎn)換符號(hào)表達(dá)式的操作和轉(zhuǎn)換 v3.4 符號(hào)極限、微積分和級(jí)數(shù)求和符號(hào)極限、微積分和級(jí)數(shù)求和 v3.5 符號(hào)積分變換符號(hào)積分變換 v3.6符號(hào)方程的求解符號(hào)方程的求解 53.1 符號(hào)表達(dá)式的建

3、立符號(hào)表達(dá)式的建立v在符號(hào)計(jì)算中定義了一個(gè)新的數(shù)據(jù)類(lèi)型:在符號(hào)計(jì)算中定義了一個(gè)新的數(shù)據(jù)類(lèi)型:sym類(lèi),即符號(hào)類(lèi),該類(lèi)型的實(shí)例就是符號(hào)類(lèi),即符號(hào)類(lèi),該類(lèi)型的實(shí)例就是符號(hào)對(duì)象。在符號(hào)計(jì)算工具箱內(nèi),用符號(hào)對(duì)象表對(duì)象。在符號(hào)計(jì)算工具箱內(nèi),用符號(hào)對(duì)象表示符號(hào)變量和符號(hào)矩陣等,并構(gòu)成符號(hào)表達(dá)示符號(hào)變量和符號(hào)矩陣等,并構(gòu)成符號(hào)表達(dá)式。式。3.1.1 創(chuàng)建符號(hào)常量創(chuàng)建符號(hào)常量v符號(hào)常量是不含變量的符號(hào)表達(dá)式,用符號(hào)常量是不含變量的符號(hào)表達(dá)式,用sym命令來(lái)創(chuàng)建符號(hào)常量。命令來(lái)創(chuàng)建符號(hào)常量。6vsym(常量常量) 創(chuàng)建符號(hào)常量,最準(zhǔn)確的表示創(chuàng)建符號(hào)常量,最準(zhǔn)確的表示 vsym(常量常量,參數(shù)參數(shù)) 按某種格式轉(zhuǎn)

4、換為符號(hào)常量,按某種格式轉(zhuǎn)換為符號(hào)常量,其中參數(shù)可為:其中參數(shù)可為: d d返回最接近的十進(jìn)制數(shù)返回最接近的十進(jìn)制數(shù)( (默認(rèn)位數(shù)默認(rèn)位數(shù)3232位位) ) f f返回該符號(hào)值最接近的浮點(diǎn)表示返回該符號(hào)值最接近的浮點(diǎn)表示r r返回該符號(hào)值最接近的有理數(shù)型返回該符號(hào)值最接近的有理數(shù)型( (為系為系統(tǒng)默認(rèn)方式統(tǒng)默認(rèn)方式) ),可表示為,可表示為p/qp/q、p p* *q q、10q10q、p/qp/q、2q2q和和sqrt(psqrt(p) )形式之一形式之一e e返回最接近的帶有機(jī)器浮點(diǎn)誤差的有理返回最接近的帶有機(jī)器浮點(diǎn)誤差的有理值值7v例例 創(chuàng)建創(chuàng)建sin(2)的符號(hào)常量的符號(hào)常量%直接創(chuàng)建

5、符號(hào)常量直接創(chuàng)建符號(hào)常量 a=sym(sin(2)%按某種格式將數(shù)值常量按某種格式將數(shù)值常量sin(2)轉(zhuǎn)換為符號(hào)常量轉(zhuǎn)換為符號(hào)常量a1=sym(sin(2) %默認(rèn),默認(rèn),有理數(shù)格式有理數(shù)格式a2=sym(sin(2),r) %有理數(shù)有理數(shù)a3=sym(sin(2),d) %十進(jìn)制數(shù)十進(jìn)制數(shù)a4=sym(sin(2),f) %浮點(diǎn)數(shù)浮點(diǎn)數(shù)a5=sym(sin(2),e)%帶有機(jī)器浮點(diǎn)誤差的有理數(shù)帶有機(jī)器浮點(diǎn)誤差的有理數(shù)8v執(zhí)行結(jié)果:執(zhí)行結(jié)果:a = sin(2) %最準(zhǔn)確的符號(hào)數(shù)值表示最準(zhǔn)確的符號(hào)數(shù)值表示a1 = 8190223105242182*2(-53) a2 = 8190223105

6、242182*2(-53) a3 = .90929742682568170941692642372800a4 = 1.d18f6ead1b446*2(-1) a5 = 8190223105242182*2(-53)93.1.2 創(chuàng)建符號(hào)變量和表達(dá)式創(chuàng)建符號(hào)變量和表達(dá)式 (Creating Symbolic Variables and Expression)v1. 使用使用sym命令創(chuàng)建符號(hào)變量和表達(dá)式命令創(chuàng)建符號(hào)變量和表達(dá)式vsym(變量變量,參數(shù)參數(shù)) 把變量定義為符號(hào)對(duì)象,把變量定義為符號(hào)對(duì)象,其中參數(shù)用來(lái)設(shè)置限定符號(hào)變量的數(shù)學(xué)特性,其中參數(shù)用來(lái)設(shè)置限定符號(hào)變量的數(shù)學(xué)特性,如果不限定則參數(shù)

7、可省略。有三種選擇:如果不限定則參數(shù)可省略。有三種選擇: positive 表示為表示為“正、實(shí)正、實(shí)”符號(hào)變量符號(hào)變量real 表示為表示為“實(shí)實(shí)”符號(hào)變量符號(hào)變量unreal 表示為表示為“非實(shí)非實(shí)”符號(hào)變量。符號(hào)變量。10v例例 創(chuàng)建符號(hào)變量創(chuàng)建符號(hào)變量aa1=sym(a,positive) %正實(shí)數(shù)符號(hào)變量正實(shí)數(shù)符號(hào)變量b1=abs(a1) %求符號(hào)變量的模求符號(hào)變量的模c1=real(a1) %求符號(hào)變量的實(shí)部求符號(hào)變量的實(shí)部v執(zhí)行結(jié)果執(zhí)行結(jié)果a1 = ab1 = a c1 = a11a2=sym(a,real) %實(shí)數(shù)符號(hào)變量實(shí)數(shù)符號(hào)變量b2=abs(a2)c2=real(a2)v

8、執(zhí)行結(jié)果執(zhí)行結(jié)果a2 = a b2 = abs(a) c2 = a 12a3=sym(a,unreal) %非實(shí)數(shù)符號(hào)變量非實(shí)數(shù)符號(hào)變量b3=abs(a3)c3=real(a3)v執(zhí)行結(jié)果執(zhí)行結(jié)果a3 = a b3 = abs(a) c3 = 1/2*a+1/2*conj(a)13v2.2.使用使用symssyms命令創(chuàng)建多個(gè)符號(hào)變量和符號(hào)表命令創(chuàng)建多個(gè)符號(hào)變量和符號(hào)表達(dá)式達(dá)式vsyms(arg1,arg2, ,syms(arg1,arg2, ,參數(shù)參數(shù)) ) 把字符把字符變量定義為符號(hào)變量,參數(shù)設(shè)置和變量定義為符號(hào)變量,參數(shù)設(shè)置和symsym相同,相同,符號(hào)表達(dá)式()中的參數(shù)一定要用單引號(hào)符

9、號(hào)表達(dá)式()中的參數(shù)一定要用單引號(hào) 括起來(lái)。括起來(lái)。vsymssyms arg1 arg2 , arg1 arg2 ,參數(shù)參數(shù) 把字符變量定義為把字符變量定義為符號(hào)變量的簡(jiǎn)潔形式,此處參數(shù)用單引號(hào)符號(hào)變量的簡(jiǎn)潔形式,此處參數(shù)用單引號(hào) 括起來(lái)也可以,不括也可以。括起來(lái)也可以,不括也可以。14v例例 創(chuàng)建創(chuàng)建ax2+bx+c的符號(hào)表達(dá)式的符號(hào)表達(dá)式v方法一方法一f1=sym(a*x2+b*x+c) %創(chuàng)建符號(hào)表達(dá)式創(chuàng)建符號(hào)表達(dá)式v方法二方法二syms a b c x %創(chuàng)建符號(hào)變量創(chuàng)建符號(hào)變量f2=a*x2+b*x+c %創(chuàng)建符號(hào)表達(dá)式創(chuàng)建符號(hào)表達(dá)式v方法三方法三syms(a,b,c,x) f3=

10、a*x2+b*x+c 153.1.3 符號(hào)矩陣符號(hào)矩陣 v用用symsym和和symssyms命令也可以創(chuàng)建符號(hào)矩陣。命令也可以創(chuàng)建符號(hào)矩陣。數(shù)值矩陣數(shù)值矩陣A=1,2;3,4直接寫(xiě)成直接寫(xiě)成A=a,b;c,d 不識(shí)別不識(shí)別vA=sym( ) 符號(hào)矩陣內(nèi)容同數(shù)值矩符號(hào)矩陣內(nèi)容同數(shù)值矩陣,需用陣,需用 標(biāo)識(shí)標(biāo)識(shí)vsyms先創(chuàng)建符號(hào)變量,再創(chuàng)建符號(hào)矩陣先創(chuàng)建符號(hào)變量,再創(chuàng)建符號(hào)矩陣16v例例 分別使用分別使用sym和和syms命令創(chuàng)建相同的符命令創(chuàng)建相同的符號(hào)矩陣號(hào)矩陣a, b; c dv方法一方法一A1=sym(a,b;c,dA1=sym(a,b;c,d)v方法二方法二symssyms a b

11、c d a b c dA2=a b;cA2=a b;c d d17v執(zhí)行結(jié)果執(zhí)行結(jié)果A1 =A1 = a, b a, b c, d c, dA2 =A2 = a, b a, b c, d c, dv注意:符號(hào)矩陣的每一行的兩端都有方括號(hào),注意:符號(hào)矩陣的每一行的兩端都有方括號(hào),這是與這是與 matlab數(shù)值矩陣的一個(gè)重要區(qū)別。數(shù)值矩陣的一個(gè)重要區(qū)別。18例例syms a b c d A = sym(a , 2*b ; 3*a , 0)v執(zhí)行結(jié)果執(zhí)行結(jié)果A = a, 2*b 3*a, 019v例例 比較符號(hào)矩陣與字符串矩陣比較符號(hào)矩陣與字符串矩陣 :clearclearA=sym(a,b;c,d

12、A=sym(a,b;c,d) ) B=B=a,b;c,da,b;c,d % %創(chuàng)建字符串矩陣創(chuàng)建字符串矩陣C=a,b;c,dC=a,b;c,d % %創(chuàng)建數(shù)值矩陣創(chuàng)建數(shù)值矩陣20v執(zhí)行結(jié)果執(zhí)行結(jié)果 A = a, b c, d B = a,b;c,d ? Undefined function or variable a.213.2 符號(hào)表達(dá)式的代數(shù)運(yùn)算符號(hào)表達(dá)式的代數(shù)運(yùn)算v符號(hào)運(yùn)算與數(shù)值運(yùn)算的主要區(qū)別:符號(hào)運(yùn)算與數(shù)值運(yùn)算的主要區(qū)別:傳統(tǒng)的數(shù)值型運(yùn)算要受到計(jì)算機(jī)所保留的有傳統(tǒng)的數(shù)值型運(yùn)算要受到計(jì)算機(jī)所保留的有效位數(shù)的限制,每一次運(yùn)算都會(huì)有一定的截效位數(shù)的限制,每一次運(yùn)算都會(huì)有一定的截?cái)嗾`差,重復(fù)的

13、多次數(shù)值運(yùn)算可能會(huì)造成很斷誤差,重復(fù)的多次數(shù)值運(yùn)算可能會(huì)造成很大的累積誤差。符號(hào)運(yùn)算不需要進(jìn)行數(shù)值計(jì)大的累積誤差。符號(hào)運(yùn)算不需要進(jìn)行數(shù)值計(jì)算,不會(huì)出現(xiàn)截?cái)嗾`差,非常準(zhǔn)確。算,不會(huì)出現(xiàn)截?cái)嗾`差,非常準(zhǔn)確。符號(hào)運(yùn)算可以得出完全的封閉解或任意精度符號(hào)運(yùn)算可以得出完全的封閉解或任意精度的數(shù)值解。的數(shù)值解。符號(hào)運(yùn)算的時(shí)間較長(zhǎng),數(shù)值型運(yùn)算速度快。符號(hào)運(yùn)算的時(shí)間較長(zhǎng),數(shù)值型運(yùn)算速度快。22例例 分別用數(shù)值計(jì)算和符號(hào)計(jì)算求分別用數(shù)值計(jì)算和符號(hào)計(jì)算求1/2+1/3的的結(jié)果結(jié)果v浮點(diǎn)算術(shù)運(yùn)算浮點(diǎn)算術(shù)運(yùn)算1/2+1/3 (定義輸出格式定義輸出格式format long)ans =0.83333333333333v符

14、號(hào)運(yùn)算符號(hào)運(yùn)算sym(1/2)+(1/3)ans = 5/6 精確解精確解233.2.1 符號(hào)表達(dá)式的代數(shù)運(yùn)算符號(hào)表達(dá)式的代數(shù)運(yùn)算v由于由于MATLABMATLAB采用了重載技術(shù),使得符號(hào)表達(dá)采用了重載技術(shù),使得符號(hào)表達(dá)式的運(yùn)算符和基本函數(shù)都與數(shù)值計(jì)算中的幾式的運(yùn)算符和基本函數(shù)都與數(shù)值計(jì)算中的幾乎完全相同。乎完全相同。1 1、算術(shù)運(yùn)算、關(guān)系運(yùn)算、算術(shù)運(yùn)算、關(guān)系運(yùn)算v基本運(yùn)算符和數(shù)值運(yùn)算相同,基本運(yùn)算符和數(shù)值運(yùn)算相同,例例3.5v關(guān)系運(yùn)算符,沒(méi)有關(guān)系運(yùn)算符,沒(méi)有“大于大于”、“大于等于大于等于”、“小于小于”、“小于等于小于等于”的概念,只有的概念,只有運(yùn)算運(yùn)算符符“=”、“=”分別對(duì)運(yùn)算符兩邊

15、的符號(hào)對(duì)分別對(duì)運(yùn)算符兩邊的符號(hào)對(duì)象進(jìn)行象進(jìn)行“相等相等”、“不等不等”的比較。的比較。 24例例 求方程組的解求方程組的解v將該方程變換成將該方程變換成AX=BAX=B的形式。的形式。symssyms a aA=a 2A=a 2* *a;2a;2* *a 6a 6* *aaB=3;8 B=3;8 X=ABX=ABv執(zhí)行結(jié)果執(zhí)行結(jié)果X = 1/a 1/a862322121axaxaxax25例例 求方程組的解求方程組的解v將該方程變換成將該方程變換成AX=BAX=B的形式。的形式。symssyms a b c d e f a b c d e fA=a b;cA=a b;c d dB=e;fB=e

16、;f X=ABX=ABv執(zhí)行結(jié)果執(zhí)行結(jié)果X = -(b*f-e*d)/(a*d-c*b) (a*f-c*e)/(a*d-c*b)fdxcxebxax212126例例 求矩陣求矩陣 的乘積的乘積 syms a11 a12 a21 a22 b11 b12 b21 b22 A=a11 a12 ;a21 a22; B=b11 b12 ;b21 b22; A*B執(zhí)行結(jié)果執(zhí)行結(jié)果 ans = a11*b11+a12*b21, a11*b12+a12*b22 a21*b11+a22*b21, a21*b12+a22*b22 2221121122211211bbbbaaaa和和27例例 求數(shù)組求數(shù)組 的乘積的

17、乘積 syms a11 a12 a21 a22 b11 b12 b21 b22 A=a11 a12 ;a21 a22; B=b11 b12 ;b21 b22; A.*B執(zhí)行結(jié)果執(zhí)行結(jié)果 ans = a11*b11, a12*b12 a21*b21, a22*b222221121122211211bbbbaaaa和和28v例例 分析下列語(yǔ)句的結(jié)果分析下列語(yǔ)句的結(jié)果f=2*x2+3*x+4g=5*x+6f+gv執(zhí)行結(jié)果執(zhí)行結(jié)果? Error using = +Array dimensions must match for binary array op.v只有符號(hào)對(duì)象只有符號(hào)對(duì)象(sym類(lèi)型類(lèi)型)

18、才可以直接使用一才可以直接使用一般運(yùn)算符號(hào)進(jìn)行符號(hào)運(yùn)算,字符串變量不行般運(yùn)算符號(hào)進(jìn)行符號(hào)運(yùn)算,字符串變量不行29符號(hào)矩陣運(yùn)算的函數(shù):符號(hào)矩陣運(yùn)算的函數(shù):symadd(a,b) 符號(hào)矩陣的加符號(hào)矩陣的加symsub(a,b) 符號(hào)矩陣的減符號(hào)矩陣的減symmul(a,b) 符號(hào)矩陣的乘符號(hào)矩陣的乘symdiv(a,b) 符號(hào)矩陣的除符號(hào)矩陣的除sympow(a,b) 符號(hào)矩陣的冪運(yùn)算符號(hào)矩陣的冪運(yùn)算symop(a,b) 符號(hào)矩陣的綜合運(yùn)算符號(hào)矩陣的綜合運(yùn)算a、b可以是可以是sym類(lèi)型,也可以是類(lèi)型,也可以是char類(lèi)型類(lèi)型30例例1 已知已知 求求 以及以及例例2 已知已知f(x)=cos(x)

19、,g(x)=sin(2x),計(jì)算,計(jì)算7)(2xxxg 532)(x-xxf2)()()()(xgxfxgxf)()(xgxf)()(xgxf31例例1:f= 2*x2+3*x-5; g= x2+x-7;h= symadd(f,g)執(zhí)行結(jié)果執(zhí)行結(jié)果h= 3*x2+4*x-12例例2:f=cos(x);g= sin(2*x);symop(f,/,g,+,f,*,g) 執(zhí)行結(jié)果執(zhí)行結(jié)果ans = cos(x)/sin(2*x)+cos(x)*sin(2*x)32例例1:syms xf=2*x2+3*x-5; g= x2+x-7;h=f+gh = 3*x2+4*x-12例例2:syms xf=cos

20、(x);g=sin(2*x);f/g+f*gans = cos(x)/sin(x)+cos(x)*sin(x) 33例例1:f=sym(2*x2+3*x-5); g=sym(x2+x-7);h=f+gh = 3*x2+4*x-12例例2:f=sym(cos(x);g=sym(sin(2*x);f/g+f*gans = cos(x)/sin(x)+cos(x)*sin(x) 34v2 2、常用的函數(shù)常用的函數(shù) 1 1)三角函數(shù)和雙曲函數(shù))三角函數(shù)和雙曲函數(shù)v除除atan2函數(shù),其余函數(shù),其余sin、cos、tan、sinh、cosh、tanh、asin、acos、atan均可用于符號(hào)運(yùn)算均可用于

21、符號(hào)運(yùn)算2) 2) 指數(shù)和對(duì)數(shù)函數(shù)指數(shù)和對(duì)數(shù)函數(shù)vsqrt、exp、expm、log函數(shù)可用于符號(hào)函數(shù)可用于符號(hào)運(yùn)算運(yùn)算3 3)復(fù)數(shù)函數(shù))復(fù)數(shù)函數(shù)vconj、real、imag、abs可用于符號(hào)運(yùn)可用于符號(hào)運(yùn)算算35v例例 創(chuàng)建符號(hào)復(fù)數(shù)常量,并求其共軛、實(shí)部創(chuàng)建符號(hào)復(fù)數(shù)常量,并求其共軛、實(shí)部 、虛部和模。虛部和模。 syms a b x=a+b*i real(x) %求實(shí)部求實(shí)部 imag(x) %求虛部求虛部 abs(x) %求模求模 conj(x) %求復(fù)數(shù)的共軛求復(fù)數(shù)的共軛364) 4) 矩陣分析函數(shù)矩陣分析函數(shù)vdiag、triu、tril、inv、det、rank、poly、expm

22、、eig函數(shù)可用于符號(hào)運(yùn)算函數(shù)可用于符號(hào)運(yùn)算v例例3.43.4373.2.2 符號(hào)數(shù)值任意精度控制和運(yùn)算符號(hào)數(shù)值任意精度控制和運(yùn)算v在在Symbolic Math Toolbox中有三種不同的中有三種不同的算術(shù)運(yùn)算:算術(shù)運(yùn)算:數(shù)值型:數(shù)值型:MATLAB的浮點(diǎn)運(yùn)算。的浮點(diǎn)運(yùn)算。有理數(shù)型:有理數(shù)型:Maple的精確符號(hào)運(yùn)算。的精確符號(hào)運(yùn)算。VPA型:型:Maple的任意精度運(yùn)算。的任意精度運(yùn)算。38v任意精度的任意精度的VPA型運(yùn)算可以使用型運(yùn)算可以使用digits和和vpa命令來(lái)實(shí)現(xiàn)。命令來(lái)實(shí)現(xiàn)。vdigits(n) %設(shè)定精度,設(shè)定精度,其中其中n n為所期望的為所期望的有效位數(shù),默認(rèn)值為有

23、效位數(shù),默認(rèn)值為3232位,隨后每個(gè)進(jìn)行的位,隨后每個(gè)進(jìn)行的MapleMaple函數(shù)計(jì)算都以新精度為準(zhǔn),函數(shù)計(jì)算都以新精度為準(zhǔn),MATALBMATALB關(guān)閉關(guān)閉后恢復(fù)默認(rèn)值后恢復(fù)默認(rèn)值vdigits %顯示精度顯示精度vS=vpa(s,n) %將將s表示為表示為n位有效位數(shù)的符號(hào)位有效位數(shù)的符號(hào)對(duì)象,當(dāng)對(duì)象,當(dāng)n省略,以省略,以digits指定精度進(jìn)行。指定精度進(jìn)行。39例例3.6 3.6 應(yīng)用應(yīng)用digitsdigits和和vpavpa函數(shù)設(shè)置運(yùn)算精度。函數(shù)設(shè)置運(yùn)算精度。a=sym(2*sqrt(5)+pi) % %創(chuàng)建符號(hào)對(duì)象創(chuàng)建符號(hào)對(duì)象digits %顯示默認(rèn)的有效位數(shù)顯示默認(rèn)的有效位數(shù)

24、vpa(a) % %用默認(rèn)的位數(shù)計(jì)算并顯示用默認(rèn)的位數(shù)計(jì)算并顯示vpa(a,20) % %按指定的精度計(jì)算并顯示按指定的精度計(jì)算并顯示 digits(15) % %改變默認(rèn)的有效位數(shù)改變默認(rèn)的有效位數(shù)vpa(a) % %按按digitsdigits指定的精度計(jì)算并顯示指定的精度計(jì)算并顯示40vSymbolic Math Toolbox中中3種運(yùn)算方式的種運(yùn)算方式的比較比較1. 三種運(yùn)算方式中數(shù)值型運(yùn)算的速度最快。三種運(yùn)算方式中數(shù)值型運(yùn)算的速度最快。2. 有理數(shù)型符號(hào)運(yùn)算的計(jì)算時(shí)間和占用內(nèi)存較有理數(shù)型符號(hào)運(yùn)算的計(jì)算時(shí)間和占用內(nèi)存較大的,產(chǎn)生的結(jié)果非常準(zhǔn)確。大的,產(chǎn)生的結(jié)果非常準(zhǔn)確。3. VPA型

25、的任意精度符號(hào)運(yùn)算比較靈活,可以型的任意精度符號(hào)運(yùn)算比較靈活,可以設(shè)置任意有效精度,當(dāng)保留的有效位數(shù)增加設(shè)置任意有效精度,當(dāng)保留的有效位數(shù)增加時(shí),每次運(yùn)算的時(shí)間和使用的內(nèi)存也會(huì)增加。時(shí),每次運(yùn)算的時(shí)間和使用的內(nèi)存也會(huì)增加。4. 數(shù)值型變量結(jié)果顯示的有效位數(shù)并不是存儲(chǔ)數(shù)值型變量結(jié)果顯示的有效位數(shù)并不是存儲(chǔ)的有效位數(shù)。的有效位數(shù)。41例例 比較三種運(yùn)算的計(jì)算時(shí)間和占用內(nèi)存比較三種運(yùn)算的計(jì)算時(shí)間和占用內(nèi)存v數(shù)值型數(shù)值型for i=1:1000 a1 = 2/3; %數(shù)值型數(shù)值型enda1v有理數(shù)型有理數(shù)型for i=1:1000 a2 = sym(2/3); %有理數(shù)型有理數(shù)型enda242vVPA

26、型,精度型,精度32位位for i=1:1000 a3 = vpa(2/3,32); %VPA型型enda3vVPA型,精度型,精度2位位for i=1:1000 a4 = vpa(2/3,2); %VPA型型enda4433.2.3 符號(hào)對(duì)象與數(shù)值對(duì)象的轉(zhuǎn)換符號(hào)對(duì)象與數(shù)值對(duì)象的轉(zhuǎn)換1、將數(shù)值對(duì)象轉(zhuǎn)換為符號(hào)對(duì)象、將數(shù)值對(duì)象轉(zhuǎn)換為符號(hào)對(duì)象vVPA命令可以將數(shù)值型對(duì)象轉(zhuǎn)換為任意精度命令可以將數(shù)值型對(duì)象轉(zhuǎn)換為任意精度的的VPA型符號(hào)對(duì)象。型符號(hào)對(duì)象。vsym命令可以將數(shù)值型對(duì)象轉(zhuǎn)換成符號(hào)對(duì)象命令可以將數(shù)值型對(duì)象轉(zhuǎn)換成符號(hào)對(duì)象例例 A=1/3,2.5;1/0.7,2/5 B=sym(A)A = 0.3

27、333 2.5000 1.4286 0.4000B= 1/3, 5/2 10/7, 2/5442、將符號(hào)對(duì)象轉(zhuǎn)換為數(shù)值對(duì)象、將符號(hào)對(duì)象轉(zhuǎn)換為數(shù)值對(duì)象vnumeric(S) 將符號(hào)對(duì)象將符號(hào)對(duì)象S轉(zhuǎn)換為數(shù)值對(duì)象轉(zhuǎn)換為數(shù)值對(duì)象vdouble(S) 把符號(hào)對(duì)象把符號(hào)對(duì)象S轉(zhuǎn)換為數(shù)值對(duì)象。轉(zhuǎn)換為數(shù)值對(duì)象。v例例 a=sym(2/3)b=numeric(a)c=double(a)45v執(zhí)行結(jié)果執(zhí)行結(jié)果a = 2/3b = 0.66666666666667c = 0.6666666666666746例例 將符號(hào)矩陣轉(zhuǎn)換為數(shù)值矩陣將符號(hào)矩陣轉(zhuǎn)換為數(shù)值矩陣A=sym(1/3,2.5;1/0.7,2/5)B=n

28、umeric(A)C=double(A)47A = 1/3, 2.5 1/0.7, 2/5B = 0.3333 2.5000 1.4286 0.4000C = 0.3333 2.5000 1.4286 0.400048v例例 numeric(2/3)和和double(2/3)語(yǔ)句的執(zhí)行語(yǔ)句的執(zhí)行結(jié)果相同嗎?結(jié)果相同嗎? numeric(2/3)ans = 0.66666666666667 double(2/3)ans = 50 47 51493.3 3.3 符號(hào)表達(dá)式的操作和轉(zhuǎn)換符號(hào)表達(dá)式的操作和轉(zhuǎn)換3.3.1符號(hào)表達(dá)式中自由變量的確定符號(hào)表達(dá)式中自由變量的確定1、自由變量的確定原則、自由變量

29、的確定原則v符號(hào)表達(dá)式中含有多個(gè)符號(hào)變量時(shí),例如符號(hào)表達(dá)式中含有多個(gè)符號(hào)變量時(shí),例如f=ax2+bx+c,則,則只有一個(gè)變量是獨(dú)立變量,只有一個(gè)變量是獨(dú)立變量,其余符號(hào)變量按常量處理。其余符號(hào)變量按常量處理。50v若不指定哪一個(gè)變量為自由變量,在若不指定哪一個(gè)變量為自由變量,在MATLABMATLAB將基于以下原則選取將基于以下原則選取1 1個(gè)自由變量個(gè)自由變量小寫(xiě)字母小寫(xiě)字母i i和和j j不能作為自由變量。不能作為自由變量。符號(hào)表達(dá)式中如果有多個(gè)符號(hào)變量,則按符號(hào)表達(dá)式中如果有多個(gè)符號(hào)變量,則按照以下順序選擇自由變量:照以下順序選擇自由變量:v首先選擇首先選擇x x作為自由變量;作為自由變

30、量;v如果沒(méi)有如果沒(méi)有x x,則選擇在字母順序中最接,則選擇在字母順序中最接近近x x的字符變量;的字符變量;v如果與如果與x x相同距離,則在相同距離,則在x x后面的優(yōu)先。后面的優(yōu)先。大寫(xiě)字母比所有的小寫(xiě)字母都靠后。大寫(xiě)字母比所有的小寫(xiě)字母都靠后。51v用用findsymfindsym函數(shù)來(lái)確定符號(hào)變量函數(shù)來(lái)確定符號(hào)變量vfindsym(EXPR,nfindsym(EXPR,n) ) 確定確定EXPREXPR中的自由變量。中的自由變量。其中其中EXPREXPR可以是符號(hào)表達(dá)式或符號(hào)矩陣;可以是符號(hào)表達(dá)式或符號(hào)矩陣;n n為按順序得出符號(hào)變量的個(gè)數(shù),當(dāng)為按順序得出符號(hào)變量的個(gè)數(shù),當(dāng)n n省略

31、時(shí),省略時(shí),則不按順序給出則不按順序給出EXPREXPR中所有的符號(hào)變量。中所有的符號(hào)變量。52f1=sym(a*x2+b*x+c) %創(chuàng)建符號(hào)表達(dá)式創(chuàng)建符號(hào)表達(dá)式a*x2+B*x+c findsym(f1) %得出得出f1中所有的符號(hào)變量中所有的符號(hào)變量findsym(f1,1)%得出得出f1中第中第1個(gè)符號(hào)變量個(gè)符號(hào)變量findsym(f1,2)%得出得出f1中前中前2個(gè)符號(hào)變量個(gè)符號(hào)變量findsym(f1,3)%得出得出f1中前中前3個(gè)符號(hào)變量個(gè)符號(hào)變量findsym(f1,4)%得出得出f1中前中前4個(gè)符號(hào)變量個(gè)符號(hào)變量例例 創(chuàng)建符號(hào)表達(dá)式創(chuàng)建符號(hào)表達(dá)式ax2+bx+c,然后確定符,

32、然后確定符號(hào)變量。號(hào)變量。53v例例 確定下面各符號(hào)表達(dá)式的自由符號(hào)變量:確定下面各符號(hào)表達(dá)式的自由符號(hào)變量:a*x+y a*t+s/(u+3) sin(omega)3*i+4*j y+3*z5*w+ya*X+Yxyuomega無(wú),無(wú),findsym返回返回ya543.3.2符號(hào)表達(dá)式的化簡(jiǎn)符號(hào)表達(dá)式的化簡(jiǎn) (Simplificate)v同一個(gè)多項(xiàng)式的符號(hào)表達(dá)式可以表示成三種同一個(gè)多項(xiàng)式的符號(hào)表達(dá)式可以表示成三種形式:形式:多項(xiàng)式形式:多項(xiàng)式形式: f(x)=x3+6x2+11x-6 因式形式:因式形式: f(x)=(x-1)(x-2)(x-3) 嵌套形式:嵌套形式: f(x)=x(x(x-6

33、)+11)-6 vMATLAB提供了提供了pretty、collect、expand、horner、factor、smplify和和simple函數(shù)對(duì)符號(hào)函數(shù)對(duì)符號(hào)表示式進(jìn)行操作表示式進(jìn)行操作551、pretty 給出排版形式的輸出結(jié)果。給出排版形式的輸出結(jié)果。v例例 按排版形式顯示符號(hào)表達(dá)式按排版形式顯示符號(hào)表達(dá)式611623xxx6383xx和和f=sym(x3+6*x2+11*x-6)g=sym(8*x+3)/(x3+6)pretty(f)pretty(g)562、collect:collect(f) 將符號(hào)表達(dá)式將符號(hào)表達(dá)式f合并同類(lèi)項(xiàng),按合并同類(lèi)項(xiàng),按照默認(rèn)的自由變量合并。照默認(rèn)的自

34、由變量合并。collect(f,v) 按指定符號(hào)變量或符號(hào)表達(dá)按指定符號(hào)變量或符號(hào)表達(dá)式式v來(lái)對(duì)來(lái)對(duì)f合并同類(lèi)項(xiàng)。合并同類(lèi)項(xiàng)。v例例collect(x2*y + y*x - x2 - 2*x) %返回返回(y-1)*x2+(y-2)*x f = -1/4*x*exp(-2*x)+3/16*exp(-2*x)collect(f,exp(-2*x) %返回返回 (-1/4*x+3/16)*exp(-2*x)57 例例 合并多項(xiàng)式合并多項(xiàng)式 的同類(lèi)項(xiàng)的同類(lèi)項(xiàng)32(1)(1)xxxx=sym(x);f=(x3+x+1)*(x2+1);g=collect(f)結(jié)果:結(jié)果: g = x5+2*x3+x2+

35、x+158v例例 f=sym(x3+6*x2*y+11*x*y-6*x)collect(f)collect(f, y)v執(zhí)行結(jié)果執(zhí)行結(jié)果f = x3+6*x2*y+11*x*y-6 ans = x3+6*x2*y+(11*y-6)*x ans = (6*x2+11*x)*y+x3-6*x59 例例 合并多項(xiàng)式合并多項(xiàng)式 的同類(lèi)項(xiàng)的同類(lèi)項(xiàng)s=sym(x2+x*exp(-t)+1)*(x+exp(-t);e1=collect(s) %合并關(guān)于合并關(guān)于x的的同類(lèi)項(xiàng)系數(shù)同類(lèi)項(xiàng)系數(shù)e2=collect(s,exp(-t) %合并關(guān)于合并關(guān)于exp(-t)的的同類(lèi)項(xiàng)系數(shù)同類(lèi)項(xiàng)系數(shù) e3=collect(s

36、,t) %合并關(guān)于合并關(guān)于t的的同類(lèi)項(xiàng)系數(shù)同類(lèi)項(xiàng)系數(shù)2(1)()ttxxexe60e1 = x3+2*exp(-t)*x2+(1+exp(-t)2)*x+exp(-t)e2 = x*exp(-t)2+(2*x2+1)*exp(-t)+(x2+1)*xe3 = (x2+x*exp(-t)+1)*(x+exp(-t)613、expand:將表達(dá)式展開(kāi),寫(xiě)成多項(xiàng)式形:將表達(dá)式展開(kāi),寫(xiě)成多項(xiàng)式形式,也可用于三角函數(shù)和指數(shù)展開(kāi)。式,也可用于三角函數(shù)和指數(shù)展開(kāi)。v例例 syms x yexpand(x+1)3) %返回返回 x3+3*x2+3*x+1 expand(sin(x+y) %返回返回 sin(x

37、)*cos(y)+cos(x)*sin(y) expand(exp(x+y) %返回返回 exp(x)*exp(y)62v例例 將將 展開(kāi)展開(kāi) ()nxyn=input(Please input n? )syms x y;expand(x+y)n)63v例例 證明正弦和余弦函數(shù)的兩角和、差公式。證明正弦和余弦函數(shù)的兩角和、差公式。BABABABABABAsinsincoscos)cos(sincoscossin)sin(syms A B;expand(sin(A+B)expand(sin(A-B)expand(cos(A+B)expand(cos(A-B)64v例例 將多項(xiàng)式將多項(xiàng)式 表示為嵌

38、套形式。表示為嵌套形式。syms x;horner(x6-x4-5*x3+5*x2+5*x-6) %返回返回-6+(5+(5+(-5+(-1+x2)*x)*x)*x)*x5、factor:將表達(dá)式寫(xiě)成因式形式,常用于:將表達(dá)式寫(xiě)成因式形式,常用于因式分解。因式分解。注,注,factor函數(shù)也可用于數(shù)值的因式分解函數(shù)也可用于數(shù)值的因式分解4、horner:將表達(dá)式寫(xiě)成嵌套形式:將表達(dá)式寫(xiě)成嵌套形式64325556xxxxx6533xa例例 分解因式分解因式syms x a;f=factor(x3-a3) ; pretty(f,x)執(zhí)行結(jié)果如下執(zhí)行結(jié)果如下: 2 2 (x - a) (a + a

39、x + x )6633456111xbxxx例例 將符號(hào)矩陣表達(dá)式的各個(gè)元素分解為將符號(hào)矩陣表達(dá)式的各個(gè)元素分解為多個(gè)因式多個(gè)因式syms x b;f=x3+b3 , x4-1; x5-1, x6-1;factor(f)67例例 問(wèn)問(wèn) 取何值時(shí),齊次方程組有非取何值時(shí),齊次方程組有非0解?解?0)1 (0)3(2042)1 (321321321xaxxxxaxxxxa有非零解的充分必要條件是系數(shù)行列式為零有非零解的充分必要條件是系數(shù)行列式為零syms a;A=1-a -2 4 ;2 3-a 1;1 1 1-af=det(A)factor(f)686、simplify:利用各種函數(shù)規(guī)則對(duì)表達(dá)式:

40、利用各種函數(shù)規(guī)則對(duì)表達(dá)式進(jìn)行化簡(jiǎn),包括多種代數(shù)方法和函數(shù)。進(jìn)行化簡(jiǎn),包括多種代數(shù)方法和函數(shù)。v例例 syms x a b c;simplify(sin(x)2 + cos(x)2) %返回返回1 simplify(cos(x)2-sin(x)2) %返回返回2*cos(x)2-1 simplify(exp(c*log(sqrt(a+b) %返回返回(a+b)(1/2*c)697、simple:尋求表達(dá)式的多種簡(jiǎn)化形式,:尋求表達(dá)式的多種簡(jiǎn)化形式,使之包含最少數(shù)目的字符。使之包含最少數(shù)目的字符。v例例 syms x a b c;simple(cos(x)2-sin(x)2) %返回返回cos(2

41、*x) simple(cos(x)+i*sin(x) %返回返回exp(i*x) simple(x3+3*x2+3*x+1) %返回返回(x+1)37021( )11xf xxxxv方法方法1:syms x; f=x/(x2+x+1)+1/(x-1);simplify(f)v方法方法2:syms x; f=x/(x2+x+1)+1/(x-1);simple(f) 例例 化簡(jiǎn)化簡(jiǎn)(2*x2+1)/(x2+x+1)/(x-1)(2*x2+1)/(x3-1)71v例例 化簡(jiǎn)化簡(jiǎn)33216128fxxxv 例例 計(jì)算行列式的值計(jì)算行列式的值 222244441111abcdabcdabcdv 例例 計(jì)

42、算計(jì)算 4cos( )sin( )sin( )cos( )tttt723.3.3 符號(hào)表達(dá)式的替換(符號(hào)表達(dá)式的替換(Substitutions)vsubs函數(shù):對(duì)符號(hào)表達(dá)式中符號(hào)變量的替換。函數(shù):對(duì)符號(hào)表達(dá)式中符號(hào)變量的替換。vsubs(s) 用用MATLAB工作空間中的變量替換符工作空間中的變量替換符號(hào)表達(dá)式號(hào)表達(dá)式s中的所有變量。中的所有變量。 vsubs(s,new) 用用new替換符號(hào)表達(dá)式替換符號(hào)表達(dá)式s中的自由中的自由變量變量vsubs(s,old,new) 用變量用變量new替換符號(hào)表達(dá)式替換符號(hào)表達(dá)式s中的變量中的變量oldv可以用來(lái)計(jì)算多項(xiàng)式的值,以及化簡(jiǎn)??梢杂脕?lái)計(jì)算多項(xiàng)

43、式的值,以及化簡(jiǎn)。73v例例3.9clearf=sym(x3-6*x2+11*x-6)x=5subs(f)subs(f,5)subs(f, x,5)v三次替換,結(jié)果都為三次替換,結(jié)果都為ans = 24743.3.4 3.3.4 求反函數(shù)和復(fù)合函數(shù)求反函數(shù)和復(fù)合函數(shù)1. 1. 求反函數(shù)求反函數(shù)v對(duì)于函數(shù)對(duì)于函數(shù)f(xf(x) ),存在另一個(gè)函數(shù),存在另一個(gè)函數(shù)g(.)g(.)使得使得g(f(xg(f(x) )x x成立,則函數(shù)成立,則函數(shù)g(.)g(.)稱(chēng)為函數(shù)稱(chēng)為函數(shù)f(xf(x) )的反函數(shù)。的反函數(shù)。vg=finverse(f,vg=finverse(f,v) ) 對(duì)指定自變量對(duì)指定自變

44、量v v的函數(shù)的函數(shù)f(vf(v) )求求反函數(shù),當(dāng)反函數(shù),當(dāng)v v省略,則對(duì)默認(rèn)的自由符號(hào)變量省略,則對(duì)默認(rèn)的自由符號(hào)變量求反函數(shù)。求反函數(shù)。75v例例 求求tetex x的反函數(shù)。的反函數(shù)。 f=sym(t*exp(x); %原函數(shù)原函數(shù) g=finverse(f) %對(duì)默認(rèn)自由變量對(duì)默認(rèn)自由變量x求反函數(shù)求反函數(shù) g=finverse(f,t) %對(duì)變量對(duì)變量t求反函數(shù)求反函數(shù)v執(zhí)行結(jié)果執(zhí)行結(jié)果g = log(x/t) g = t/exp(x)762. 求復(fù)合函數(shù)求復(fù)合函數(shù)composevcompose函數(shù)可求符號(hào)函數(shù)函數(shù)可求符號(hào)函數(shù)f(x)和和g(y)的復(fù)合的復(fù)合函數(shù)函數(shù)f(g(y)。

45、符號(hào)函數(shù)。符號(hào)函數(shù)f中的變量可能不止一中的變量可能不止一個(gè),不指定時(shí),按照默認(rèn)的自由變量運(yùn)算個(gè),不指定時(shí),按照默認(rèn)的自由變量運(yùn)算vcompose(f,g) 求求f和和g的復(fù)合函數(shù)的復(fù)合函數(shù)vcompose(f,g,z) 求求f和和g的復(fù)合函數(shù),并用的復(fù)合函數(shù),并用z替替代代g中的自由變量符號(hào)中的自由變量符號(hào)vcompose(f,g,x,z) 指定指定x為符號(hào)函數(shù)為符號(hào)函數(shù)f的自變量的自變量構(gòu)成復(fù)合函數(shù),用構(gòu)成復(fù)合函數(shù),用z替代替代g中的自由變量符號(hào)中的自由變量符號(hào)vcompose(f,g,x,y,z) 以以x為為f的自變量,構(gòu)成復(fù)的自變量,構(gòu)成復(fù)合函數(shù),用合函數(shù),用z替代替代g中的自由變量符號(hào)

46、中的自由變量符號(hào)77v例例 求求y=x2的反函數(shù),并驗(yàn)證結(jié)果。的反函數(shù),并驗(yàn)證結(jié)果。 syms x;f=x2;g=finverse(f) fg=compose(g,f) %驗(yàn)算驗(yàn)算g(f(x)是否等于是否等于xv執(zhí)行結(jié)果執(zhí)行結(jié)果g = x(1/2) fg = (x2)(1/2)v注意:結(jié)果不惟一注意:結(jié)果不惟一78v例例 求求sin(x*t)和和3*a*b的復(fù)合函數(shù)。的復(fù)合函數(shù)。 f=sym(sin(x*t)g=sym(3*a*b) compose(f,g)%結(jié)果結(jié)果ans = sin(3*a*b*t) compose(f,g,z)%結(jié)果結(jié)果ans = sin(3*a*z*t) compose

47、(f,g,t,z)%結(jié)果結(jié)果ans = sin(3*x*a*z) compose(f,g,t,a,z)%結(jié)果結(jié)果ans = sin(3*x*b*z)79例例 求求sinx和和lnx的反函數(shù)和二者的復(fù)合函數(shù)。的反函數(shù)和二者的復(fù)合函數(shù)。 f=sym(sin(x);g=sym(log(x); finverse(f)finverse(g) compose(f,g)803.3.5 符號(hào)表達(dá)式的轉(zhuǎn)換符號(hào)表達(dá)式的轉(zhuǎn)換1. 符號(hào)表達(dá)式的轉(zhuǎn)換符號(hào)表達(dá)式的轉(zhuǎn)換v構(gòu)成多項(xiàng)式的符號(hào)表達(dá)式構(gòu)成多項(xiàng)式的符號(hào)表達(dá)式f(x)可以與多項(xiàng)式系可以與多項(xiàng)式系數(shù)構(gòu)成的行向量進(jìn)行相互轉(zhuǎn)換,數(shù)構(gòu)成的行向量進(jìn)行相互轉(zhuǎn)換,MATLAB提提供

48、了函數(shù)供了函數(shù)sym2poly和和poly2sym實(shí)現(xiàn)相互轉(zhuǎn)換。實(shí)現(xiàn)相互轉(zhuǎn)換。vp=sym2poly(f) 將符號(hào)表達(dá)式將符號(hào)表達(dá)式f轉(zhuǎn)換為按降冪轉(zhuǎn)換為按降冪排列的行向量,即多項(xiàng)式的系數(shù)。排列的行向量,即多項(xiàng)式的系數(shù)。vf=sym2sym(p) 將按降冪排列的行向量轉(zhuǎn)換為將按降冪排列的行向量轉(zhuǎn)換為符號(hào)表達(dá)式。符號(hào)表達(dá)式。81f=x3+2*x2-3*x+5;s2p=sym2poly(f) %由符號(hào)多項(xiàng)式產(chǎn)生數(shù)值系數(shù)行向量由符號(hào)多項(xiàng)式產(chǎn)生數(shù)值系數(shù)行向量p2s=poly2sym(sy2p) %把數(shù)值系數(shù)行向量再轉(zhuǎn)換為符號(hào)多項(xiàng)式把數(shù)值系數(shù)行向量再轉(zhuǎn)換為符號(hào)多項(xiàng)式pretty(f,x) %顯示符號(hào)多項(xiàng)式

49、的易讀表示形式顯示符號(hào)多項(xiàng)式的易讀表示形式例例 創(chuàng)建符號(hào)多項(xiàng)式,并應(yīng)用創(chuàng)建符號(hào)多項(xiàng)式,并應(yīng)用函數(shù)函數(shù)sym2poly和和poly2sym進(jìn)行轉(zhuǎn)換。進(jìn)行轉(zhuǎn)換。82v結(jié)果結(jié)果s2p = 1 2 -3 5 p2s = x3+2*x2-3*x+5 3 2x + 2 x - 3 x + 5832. 2. 提取分子和分母提取分子和分母v如果符號(hào)表達(dá)式是一個(gè)有理分式如果符號(hào)表達(dá)式是一個(gè)有理分式( (兩個(gè)多項(xiàng)兩個(gè)多項(xiàng)式之比式之比) ),可以利用,可以利用numdennumden函數(shù)來(lái)提取分子函數(shù)來(lái)提取分子或分母,還可以進(jìn)行通分。或分母,還可以進(jìn)行通分。vn,d=numden(f) 提取有理多項(xiàng)式的提取有理多項(xiàng)

50、式的分子、分子、分母多項(xiàng)式。分母多項(xiàng)式。其中其中f是符號(hào)表達(dá)式,是符號(hào)表達(dá)式,n為符號(hào)為符號(hào)表達(dá)式表達(dá)式f的分子,的分子,d為符號(hào)表達(dá)式為符號(hào)表達(dá)式f的分母。的分母。84例例 提取分子和分母系數(shù)。提取分子和分母系數(shù)。f=sym(1+2*s)/(s2+2*s+1)pretty(f) n,d=numden(f)n1=sym2poly(n)d1=sym2poly(d)85syms x;f=1/(x3)+6/x/x+12/x+8;n,d=numden(f)結(jié)果結(jié)果 n = 1+6*x+12*x2+8*x3 d = x3例例 求出求出 的分子、分母的分子、分母 8126123xxxf86例例 求出符號(hào)矩

51、陣求出符號(hào)矩陣各元素的分子、分母多項(xiàng)式。各元素的分子、分母多項(xiàng)式。 syms x;A=3/x3+1, x2/(2*x-1);4/x2-1/x, 1/(x+4);n,d=numden(A)23231214114xxxxxx87v結(jié)果結(jié)果n = 3+x3, x2 4-x, 1 d = x3, 2*x-1 x2, x+4883.4 3.4 符號(hào)極限、微積分和級(jí)數(shù)求和符號(hào)極限、微積分和級(jí)數(shù)求和3.4.1符號(hào)極限(符號(hào)極限(Limits)v求函數(shù)極限的函數(shù):求函數(shù)極限的函數(shù):limitvlimit(f) 對(duì)對(duì)f中的默認(rèn)自由變量,求符號(hào)函數(shù)中的默認(rèn)自由變量,求符號(hào)函數(shù)f趨近于趨近于0的極限值。的極限值。v

52、limit(f,a) 對(duì)對(duì)f中的默認(rèn)自由變量,求符號(hào)函數(shù)中的默認(rèn)自由變量,求符號(hào)函數(shù)f趨近于趨近于a的極限值。的極限值。vlimit(f,x,a) 對(duì)指定的符號(hào)變量對(duì)指定的符號(hào)變量x,求符號(hào)函數(shù),求符號(hào)函數(shù)f趨近于趨近于a的極限值。的極限值。89vlimit(f,x,a,right) 對(duì)指定的符號(hào)變量對(duì)指定的符號(hào)變量x,求,求符號(hào)函數(shù)符號(hào)函數(shù)f右趨近于右趨近于a的極限值。的極限值。vlimit(f,x,a,left) 對(duì)指定的符號(hào)變量對(duì)指定的符號(hào)變量x,求符,求符號(hào)函數(shù)號(hào)函數(shù)f左趨近于左趨近于a的極限值。的極限值。v當(dāng)左右極限不等市,表達(dá)式的極限不存在,當(dāng)左右極限不等市,表達(dá)式的極限不存在,為

53、為NaN。90例例3.14 3.14 分別求分別求1/x1/x在在0 0處從兩邊趨近、從左邊處從兩邊趨近、從左邊趨近和從右邊趨近的三個(gè)極限值。趨近和從右邊趨近的三個(gè)極限值。f=sym(1/x)limit(f) % %對(duì)對(duì)x x求趨近于求趨近于0 0的極限的極限limit(f,x,0) % %對(duì)對(duì)x x求趨近于求趨近于0 0的極限的極限limit(f,x,0,left) % %左趨近于左趨近于0 0limit(f,x,0,right) % %右趨近于右趨近于0 091v例例1 1 計(jì)算計(jì)算 , 0sinlimxxx30sinlimxtgxxxv例例2 2 計(jì)算計(jì)算 , 0lim xxx1ln0l

54、im() xxctgxv例例3 3 定義法求函數(shù)定義法求函數(shù)f(x)=cos(x)的導(dǎo)數(shù)。的導(dǎo)數(shù)。 v例例4 4 設(shè)設(shè) ,用定義計(jì)算,用定義計(jì)算 ( ) xf xe(0) f923.4.2 符號(hào)微分符號(hào)微分 (Differentiation)v函數(shù)函數(shù)diffdiff是用來(lái)求符號(hào)表達(dá)式的微分。是用來(lái)求符號(hào)表達(dá)式的微分。diff(fdiff(f) )% %求求f f對(duì)自由變量的一階微分對(duì)自由變量的一階微分diff(f,tdiff(f,t) ) % %求求f f對(duì)符號(hào)變量對(duì)符號(hào)變量t t的一階微分的一階微分diff(f,ndiff(f,n) ) % %求求f f對(duì)自由變量的對(duì)自由變量的n n階微分

55、階微分diff(f,t,ndiff(f,t,n) ) % %求求f f對(duì)符號(hào)變量對(duì)符號(hào)變量t t的的n n階微分階微分93v 例例 求導(dǎo)數(shù):求導(dǎo)數(shù): y=sym(sin(x)/x) diff(y)sinxyxv 例例 設(shè)設(shè) ,求,求 22( ) xf xx e(20)( )fxf=sym(x2*exp(2*x)diff(f,20)94A=sym(a t3 ; t*cos(x) log(x)Ax=diff(A,x)At2=diff(A,t,2)diff(Ax,t)3coslnatddx txx322coslnatdd ttxx32coslnatddxdt txxv例例 求求 ,95v例例 設(shè)設(shè)

56、u=x2+y2+z2 求求u 的一階偏導(dǎo)數(shù)。的一階偏導(dǎo)數(shù)。v 例例 設(shè)設(shè) 求求 642232zxyx y22222,zzzx yxy u=sym(x2+y2+z2)diff(u,x)diff(u,x)diff(u,x)96例例 設(shè)設(shè) ,求,求(sin )(1cos )xa ttyatdydxx=sym(a*(t-sin(t);y=sym(a*(1-cos(t);diff(y,t)/diff(x,t)結(jié)果結(jié)果ans = sin(t)/(1-cos(t)97例例 設(shè)設(shè) 求求lnyxxeedydx例例 設(shè)設(shè) 求求sin()cos()()0 xyyztg xz,zzxyf=sym(log(x)+exp

57、(-y/x)-exp(1)diff(f,x)/diff(f,y)983.4.3 符號(hào)積分(符號(hào)積分(Integration)v積分有定積分和不定積分,運(yùn)用函數(shù)積分有定積分和不定積分,運(yùn)用函數(shù)intint可以可以求得符號(hào)表達(dá)式的積分。求得符號(hào)表達(dá)式的積分。vint(f,tint(f,t) % %求符號(hào)變量求符號(hào)變量t t的不定的不定積分積分vint(f,t,a,bint(f,t,a,b) ) % %求符號(hào)變量求符號(hào)變量t t的定積的定積分分vint(f,t,m,nint(f,t,m,n) % %求符號(hào)變量求符號(hào)變量t t的的定積分定積分v注意:沒(méi)有指定積分變量時(shí),默認(rèn)變量對(duì)被注意:沒(méi)有指定積分變

58、量時(shí),默認(rèn)變量對(duì)被積函數(shù)的符號(hào)表達(dá)式積函數(shù)的符號(hào)表達(dá)式s s求積分。求積分。vintint函數(shù)的嵌套使用可實(shí)現(xiàn)函數(shù)的嵌套使用可實(shí)現(xiàn)二重積分的計(jì)算。二重積分的計(jì)算。99( )cos()sin()66f xxx20( )sf x dx例例 設(shè)設(shè) 求求 fx=sym(cos(x-pi/6)*sin(x+pi/6)s=int(fx,x,0,2*pi)例例 計(jì)算計(jì)算 。 201xdx10021sinaxbxdxxx例例A=sym(a*x b*x2; 1/x sin(x)int(A,x) ans = 1/2*a*x2, 1/3*b*x3 log(x), -cos(x) 101例例 求積分求積分 2222221() xx yxxyxyzdzdydx例例 求二次積分求二次積分21102xxdxxydy例例 求求22221sin( ()xyxydxdy102例例 求曲線(xiàn)積分求曲線(xiàn)積分 , 其中,其中,L為曲線(xiàn)為曲線(xiàn) 在第一象限內(nèi)的一段。在第一象限內(nèi)的一段。Lxyds221xy1033.4.4 符號(hào)級(jí)數(shù)符號(hào)級(jí)數(shù) 1. symsum1. symsum函數(shù)函數(shù)v symsum(s,x,a,bsymsum(s,x,a,b) ) % %計(jì)算表達(dá)式計(jì)算表達(dá)式s s的級(jí)數(shù)和的級(jí)數(shù)和v 說(shuō)明

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論