MATLAB符號計算(MATLAB程序設計教程電子教案)課件_第1頁
MATLAB符號計算(MATLAB程序設計教程電子教案)課件_第2頁
MATLAB符號計算(MATLAB程序設計教程電子教案)課件_第3頁
MATLAB符號計算(MATLAB程序設計教程電子教案)課件_第4頁
MATLAB符號計算(MATLAB程序設計教程電子教案)課件_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第9章MATLAB符號計算9.1符號對象9.2符號微積分9.3級數9.4符號方程求解9.1符號對象9.1.1建立符號對象1.建立符號變量和符號常量MATLAB提供了兩個建立符號對象的函數:sym和syms,兩個函數的用法不同。(1)sym函數sym函數用來建立單個符號量,一般調用格式為:符號量名=sym('符號字符串')該函數可以建立一個符號量,符號字符串可以是常量、變量、函數或表達式。應用sym函數還可以定義符號常量,使用符號常量進行代數運算時和數值常量進行的運算不同。下面的命令用于比較符號常量與數值常量在代數運算時的差別。(2)syms函數函數sym一次只能定義一個符號變量,使用不方便。MATLAB提供了另一個函數syms,一次可以定義多個符號變量。syms函數的一般調用格式為:syms符號變量名1符號變量名2…符號變量名n用這種格式定義符號變量時不要在變量名上加字符串分界符(‘),變量間用空格而不要用逗號分隔。9.1.2符號表達式運算1.符號表達式的四則運算符號表達式的加、減、乘、除運算可分別由函數symadd、symsub、symmul和symdiv來實現(xiàn),冪運算可以由sympow來實現(xiàn)。2.符號表達式的提取分子和分母運算如果符號表達式是一個有理分式或可以展開為有理分式,可利用numden函數來提取符號表達式中的分子或分母。其一般調用格式為:[n,d]=numden(s)該函數提取符號表達式s的分子和分母,分別將它們存放在n與d中。3.符號表達式的因式分解與展開MATLAB提供了符號表達式的因式分解與展開的函數,函數的調用格式為:factor(s):對符號表達式s分解因式。expand(s):對符號表達式s進行展開。collect(s):對符號表達式s合并同類項。collect(s,v):對符號表達式s按變量v合并同類項。4.符號表達式的化簡MATLAB提供的對符號表達式化簡的函數有:simplify(s):應用函數規(guī)則對s進行化簡。simple(s):調用MATLAB的其他函數對表達式進行綜合化簡,并顯示化簡過程。9.1.3符號表達式中變量的確定MATLAB中的符號可以表示符號變量和符號常量。findsym可以幫助用戶查找一個符號表達式中的的符號變量。該函數的調用格式為:findsym(s,n)函數返回符號表達式s中的n個符號變量,若沒有指定n,則返回s中的全部符號變量。9.1.4符號矩陣符號矩陣也是一種符號表達式,所以前面介紹的符號表達式運算都可以在矩陣意義下進行。但應注意這些函數作用于符號矩陣時,是分別作用于矩陣的每一個元素。由于符號矩陣是一個矩陣,所以符號矩陣還能進行有關矩陣的運算。MATLAB還有一些專用于符號矩陣的函數,這些函數作用于單個的數據無意義。例如transpose(s):返回s矩陣的轉置矩陣。determ(s):返回s矩陣的行列式值。其實,曾介紹過的許多應用于數值矩陣的函數,如diag、triu、tril、inv、det、rank、eig等,也可直接應用于符號矩陣。9.2符號微積分9.2.1符號極限limit函數的調用格式為:(1)limit(f,x,a):求符號函數f(x)的極限值。即計算當變量x趨近于常數a時,f(x)函數的極限值。(2)limit(f,a):求符號函數f(x)的極限值。由于沒有指定符號函數f(x)的自變量,則使用該格式時,符號函數f(x)的變量為函數findsym(f)確定的默認自變量,即變量x趨近于a。例9-1求下列極限。極限1:symsamx;f=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/(x+a);limit(f,x,a)ans=(1/2*a*exp(sin(a))+1/2*a-exp(tan(a))+1)/a極限2:symsxt;limit((1+2*t/x)^(3*x),x,inf)ans=exp(6*t)極限3:symsx;f=x*(sqrt(x^2+1)-x);limit(f,x,inf,'left')ans=1/2極限4:symsx;f=(sqrt(x)-sqrt(2)-sqrt(x-2))/sqrt(x*x-4);limit(f,x,2,'right')ans=-1/29.2.2符號導數diff函數用于對符號表達式求導數。該函數的一般調用格式為:diff(s):沒有指定變量和導數階數,則系統(tǒng)按findsym函數指示的默認變量對符號表達式s求一階導數。diff(s,'v'):以v為自變量,對符號表達式s求一階導數。diff(s,n):按findsym函數指示的默認變量對符號表達式s求n階導數,n為正整數。diff(s,'v',n):以v為自變量,對符號表達式s求n階導數。例9-2求下列函數的導數。9.2.4積分變換常見的積分變換有傅立葉變換、拉普拉斯變換和Z變換。1.傅立葉(Fourier)變換在MATLAB中,進行傅立葉變換的函數是:fourier(f,x,t):求函數f(x)的傅立葉像函數F(t)。ifourier(F,t,x):求傅立葉像函數F(t)的原函數f(x)。例9-4求函數y=的傅立葉變換及其逆變換。2.拉普拉斯(Laplace)變換在MATLAB中,進行拉普拉斯變換的函數是:laplace(fx,x,t):求函數f(x)的拉普拉斯像函數F(t)。ilaplace(Fw,t,x):求拉普拉斯像函數F(t)的原函數f(x)。例9-5計算y=x3的拉普拉斯變換及其逆變換。3.Z變換當函數f(x)呈現(xiàn)為一個離散的數列f(n)時,對數列f(n)進行z變換的MATLAB函數是:ztrans(fn,n,z):求fn的Z變換像函數F(z)。iztrans(Fz,z,n):求Fz的z變換原函數f(n)。例9-6求數列fn=e-2n的Z變換及其逆變換。9.3.2函數的泰勒級數MATLAB提供了taylor函數將函數展開為冪級數,其調用格式為:taylor(f,v,n,a)該函數將函數f按變量v展開為泰勒級數,展開到第n項(即變量v的n-1次冪)為止,n的缺省值為6。v的缺省值與diff函數相同。參數a指定將函數f在自變量v=a處展開,a的缺省值是0。例9-8求函數在指定點的泰勒級數展開式。9.4符號方程求解9.4.1符號代數方程求解在MATLAB中,求解用符號表達式表示的代數方程可由函數solve實現(xiàn),其調用格式為:solve(s):求解符號表達式s的代數方程,求解變量為默認變量。solve(s,v):求解符號表達式s的代數方程,求解變量為v。solve(s1,s2,…,sn,v1,v2,…,vn):求解符號表達式s1,s2,…,sn組成的代數方程組,求解變量分別v1,v2,…,vn。例9-9解下列方程。9.4.2符號常微分方程求解在MATLAB中,用大寫字母D表示導數。例如,Dy表示y',D2y表示y'',Dy(0)=5表示y'(0)=5。D3y+D2y+Dy-x+5=0表示微分方程y'''+y''+y'-x+5=0。符號常微分方程求解可以通過函數dsolve來實現(xiàn),其調用格式為:dsolve(e,c,v)該函數求解常微分方程e在初值條件c下的特解。參數v描述方程中的自變量,省略時按缺省原則

溫馨提示

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

評論

0/150

提交評論