第2講(2) matlab的符號運算

第2講(2) matlab的符號運算

ID:14171797

大?。?65.50 KB

頁數(shù):14頁

時間:2018-07-26

第2講(2) matlab的符號運算_第1頁
第2講(2) matlab的符號運算_第2頁
第2講(2) matlab的符號運算_第3頁
第2講(2) matlab的符號運算_第4頁
第2講(2) matlab的符號運算_第5頁
資源描述:

《第2講(2) matlab的符號運算》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、第2講(2)MATLAB的符號運算(注:文中紅色字體為命令執(zhí)行的結(jié)果,在Command窗口中顯示)3-1符號對象的創(chuàng)建和使用1.符號運算入門符號運算的特點是,運算過程中允許存在非數(shù)值的符號變量。先看如下示例:函數(shù),用MATLAB求它的微積分,命令如下:f='sin(x)^2';%定義符號函數(shù)f(x)dfdx=diff(f)%求的指令intf=int(f)%求的指令顯示的計算結(jié)果為:dfdx=2*sin(x)*cos(x)intf=-1/2sin(x)*cos(x)+1/2*x所以,,。此例中,首先定義符號函數(shù)f=’sin(x)^2’,然后由符號運算獲得的

2、微分和積分。2.定義符號變量在使用符號變量之前,應(yīng)先聲明某些要用到的變量是“符號”變量。聲明符號變量的語句:syms變量名列表或:sym(‘變量名’)其中各個變量名應(yīng)該用空格分隔,而不能用逗號分隔。如創(chuàng)建符號變量x和a:x=sym(‘x’)a=sym(‘a(chǎn)lpha’)或用:symsxa%定義符號變量x和a這里,變量x和a的類型是符號對象,它們被定義后,即可參與符號運算。3.定義符號表達式和符號方程符號表達式和符號方程是兩種不同的操作對象。區(qū)別在于:符號表達式不包含等號(=),而符號方程須帶等號。它們的創(chuàng)建方式相同。如:要考慮二次函數(shù)f=ax^2+bx+c

3、,可以創(chuàng)建符號表達式,賦值給符號變量f。f=sym(‘a(chǎn)*x^2+b*x+c’)14或:f=‘a(chǎn)*x^2+b*x+c’此例中,將符號表達式賦給符號變量f,但這不是必需的,引入符號變量是為了以后調(diào)用方便。在這種情況下,沒有創(chuàng)建對應(yīng)于表達式中a、b、c、x項的變量,為了執(zhí)行符號數(shù)學(xué)運算(如微分、積分等),必須顯式地創(chuàng)建這些變量,可用下列命令創(chuàng)建:symsabcx如下例中創(chuàng)建了符號表達式和符號方程,分別賦給相應(yīng)的符號對象。symsxabcf='sin(x)^2';%創(chuàng)建符號表達式sin(x)^2賦給變量feq='a*x^2+b*x+c=0'%創(chuàng)建的符號方程賦給

4、變量eq4.定義抽象函數(shù)和符號數(shù)學(xué)函數(shù)若要創(chuàng)建抽象函數(shù)f(x),可使用:f=sym(‘f(x)’)則f就象f(x)一樣參與運算。在SymbolicMathToolbox中可利用符號表達式創(chuàng)建符號數(shù)學(xué)函數(shù)。如下面的命令將產(chǎn)生符號表達式r、t、f:symsxyzr=sqrt(x^2+y^2+z^2)%或r=sym(‘sqrt(x^2+y^2+z^2)’)t=atan(y/x)f=sin(x*y)/(x*y)3-2數(shù)值與符號的轉(zhuǎn)換Sym函數(shù)有四種選項將數(shù)值結(jié)果轉(zhuǎn)換為符號表達式。如對于變量rho,定義為:,在MATLAB命令窗口中定義rho:rho=(1+sqr

5、t(5))/2將這一數(shù)值結(jié)果轉(zhuǎn)化為符號表達式:(1)sym(rho,’f’)返回符號浮點表示形式,結(jié)果為:sym(rho,’f’)ans=‘1.9e3779b97f4a8’*2^(0)(2)sym(rho,’r’)返回符號有理數(shù)表示形式,這是sym的默認(rèn)設(shè)置,當(dāng)調(diào)用sym而沒有第二個參數(shù)時,相當(dāng)于sym使用了r選項。結(jié)果為:sym(rho,’r’)ans=7286977268806824*2^(-52)14例如:sym(0.75)ans=3/4(3)sym(rho,’e’)返回符號有理數(shù)表示形式,同時根據(jù)eps給出rho的理論表達式和實際計算的差。sym

6、(rho,’e’)ans=7286977268806824*2^(-52)這里,rho的理論值和實際浮點值相同,對于1/3,可得:sym(1/3,’e’)ans=1/3-eps/12(4)sym(rho,’d’)返回符號十進制小數(shù)表示形式。有效位數(shù)由digits定義。Digits的默認(rèn)值是32位。sym(rho,’d’)ans=1.6180339887498949025257388711907如果想要一個較短的結(jié)果,可由digits定義有效位數(shù)。digits(5)sym(rho,’d’)ans=1.6180上述四種格式中,最后得到的都是符號對象變量。3-

7、3符號算術(shù)運算1.定義符號矩陣MATLAB中的數(shù)值矩陣不能直接參與符號運算,必須經(jīng)過轉(zhuǎn)換。Sym函數(shù)的一個非常有用的功能就是將數(shù)值矩陣轉(zhuǎn)換成符號矩陣。例如,下面的代碼將產(chǎn)生一個3×3的Hilbert矩陣。A=hilb(3)A=1.00000.50000.33330.50000.33330.25000.33330.25000.2000對A使用sym命令可獲得一個具有無窮精度的3×3的符號形式的矩。A=sym(A)A=[1,1/2,1/3][1/2,1/3,1/4][1/3,1/4,1/5]14當(dāng)調(diào)用SymbolicMathToolbox時,默認(rèn)地調(diào)用有理算

8、術(shù)運算。當(dāng)使用sym函數(shù)創(chuàng)建符號變量時,有理算術(shù)運算將被啟動。例如,對于雙精度矩

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。