




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1 第二章第二章 符號(hào)計(jì)算符號(hào)計(jì)算解算數(shù)學(xué)表達(dá)式、方程時(shí),不是在離散解算數(shù)學(xué)表達(dá)式、方程時(shí),不是在離散化的數(shù)值點(diǎn)上進(jìn)行,而是憑借一系列恒化的數(shù)值點(diǎn)上進(jìn)行,而是憑借一系列恒等式和數(shù)學(xué)定理,通過推理和演繹,獲等式和數(shù)學(xué)定理,通過推理和演繹,獲得解析結(jié)果。得解析結(jié)果。符號(hào)計(jì)算建立在數(shù)值完全準(zhǔn)確表達(dá)和推符號(hào)計(jì)算建立在數(shù)值完全準(zhǔn)確表達(dá)和推演嚴(yán)格解析的基礎(chǔ)之上,因此所得結(jié)果演嚴(yán)格解析的基礎(chǔ)之上,因此所得結(jié)果是完全準(zhǔn)確的。是完全準(zhǔn)確的。3 例:例: syms a b c x eq=a*x2+b*x+c; solve(eq) ans = -(b + (b2 - 4*a*c)(1/2)/(2*a) -(b -
2、(b2 - 4*a*c)(1/2)/(2*a) 運(yùn)算對(duì)象可以是沒賦值的符號(hào)變量運(yùn)算對(duì)象可以是沒賦值的符號(hào)變量 可以獲得任意精度的解可以獲得任意精度的解 符號(hào)運(yùn)算的特點(diǎn)符號(hào)運(yùn)算的特點(diǎn)5 數(shù)值運(yùn)算中必須先對(duì)變量賦值數(shù)值運(yùn)算中必須先對(duì)變量賦值,然后才能參與運(yùn)算。然后才能參與運(yùn)算。 符號(hào)運(yùn)算無須事先對(duì)符號(hào)變量符號(hào)運(yùn)算無須事先對(duì)符號(hào)變量賦值賦值,運(yùn)算結(jié)果以標(biāo)準(zhǔn)的符號(hào)形式,運(yùn)算結(jié)果以標(biāo)準(zhǔn)的符號(hào)形式表達(dá)。表達(dá)。6 數(shù)值計(jì)算是先給出求解區(qū)間上的離散點(diǎn),然后在數(shù)值計(jì)算是先給出求解區(qū)間上的離散點(diǎn),然后在離散點(diǎn)上計(jì)算結(jié)果,計(jì)算的結(jié)果在該點(diǎn)上是準(zhǔn)確的。離散點(diǎn)上計(jì)算結(jié)果,計(jì)算的結(jié)果在該點(diǎn)上是準(zhǔn)確的。但是在處理導(dǎo)數(shù),極限
3、等問題時(shí)遇到問題。但是在處理導(dǎo)數(shù),極限等問題時(shí)遇到問題。 符號(hào)計(jì)算建立在公式化簡(jiǎn),恒等式代換,數(shù)學(xué)定符號(hào)計(jì)算建立在公式化簡(jiǎn),恒等式代換,數(shù)學(xué)定理運(yùn)用上,最終求出來符號(hào)解理運(yùn)用上,最終求出來符號(hào)解(可以是公式也可以是可以是公式也可以是數(shù)值數(shù)值), ,求出的結(jié)果準(zhǔn)確可信。求出的結(jié)果準(zhǔn)確可信。2.1 符號(hào)對(duì)象和符號(hào)表達(dá)式符號(hào)對(duì)象和符號(hào)表達(dá)式 基本符號(hào)對(duì)象:符號(hào)數(shù)字,基本符號(hào)變量(自由符基本符號(hào)對(duì)象:符號(hào)數(shù)字,基本符號(hào)變量(自由符號(hào)變量和符號(hào)參數(shù))。號(hào)變量和符號(hào)參數(shù))。 數(shù)值計(jì)算規(guī)定:數(shù)值表達(dá)式所用的變量必須事先被數(shù)值計(jì)算規(guī)定:數(shù)值表達(dá)式所用的變量必須事先被賦過值,否則該表達(dá)式無法計(jì)算。賦過值,否則該
4、表達(dá)式無法計(jì)算。 Symbolic Math Toolbox 沿用數(shù)值計(jì)算的這種模式,沿用數(shù)值計(jì)算的這種模式,規(guī)定規(guī)定:在進(jìn)行符號(hào)計(jì)算時(shí),首先要定義基本的符號(hào):在進(jìn)行符號(hào)計(jì)算時(shí),首先要定義基本的符號(hào)對(duì)象,然后利用這些基本符號(hào)對(duì)象去構(gòu)成新的表達(dá)對(duì)象,然后利用這些基本符號(hào)對(duì)象去構(gòu)成新的表達(dá)式,進(jìn)而從事所需的符號(hào)運(yùn)算。式,進(jìn)而從事所需的符號(hào)運(yùn)算。8生成符號(hào)對(duì)象的基本規(guī)則生成符號(hào)對(duì)象的基本規(guī)則: 任何基本符號(hào)對(duì)象都必須借助專門的任何基本符號(hào)對(duì)象都必須借助專門的符號(hào)符號(hào)函數(shù)命令函數(shù)命令sym或或syms定義。定義。 任何包含符號(hào)對(duì)象的表達(dá)式或方程,將繼任何包含符號(hào)對(duì)象的表達(dá)式或方程,將繼承符號(hào)對(duì)象的屬性
5、。換句話說,在運(yùn)算中,承符號(hào)對(duì)象的屬性。換句話說,在運(yùn)算中,凡是由包含符號(hào)對(duì)象的表達(dá)式所生成的衍凡是由包含符號(hào)對(duì)象的表達(dá)式所生成的衍生對(duì)象也都是符號(hào)對(duì)象。生對(duì)象也都是符號(hào)對(duì)象。2.1.1 符號(hào)對(duì)象的創(chuàng)建和衍生符號(hào)對(duì)象的創(chuàng)建和衍生定義格式如下定義格式如下: sym(Num) %創(chuàng)建一個(gè)符號(hào)數(shù)字創(chuàng)建一個(gè)符號(hào)數(shù)字Num sc=sym(Num) %創(chuàng)建一個(gè)符號(hào)常數(shù)創(chuàng)建一個(gè)符號(hào)常數(shù)sc,該常數(shù)值準(zhǔn),該常數(shù)值準(zhǔn) %確等于確等于Num說明說明: 其中其中Num代表一個(gè)具體的數(shù)字。當(dāng)且僅當(dāng)代表一個(gè)具體的數(shù)字。當(dāng)且僅當(dāng)Num為整為整數(shù)、有理數(shù)(如數(shù)、有理數(shù)(如321/1000)、預(yù)定義常數(shù)(如)、預(yù)定義常數(shù)(如
6、pi)時(shí),)時(shí),才得保證才得保證sym指令創(chuàng)建的符號(hào)數(shù)字(或符號(hào)表達(dá)式)指令創(chuàng)建的符號(hào)數(shù)字(或符號(hào)表達(dá)式)是完全準(zhǔn)確的。是完全準(zhǔn)確的。 Num應(yīng)杜絕使用應(yīng)杜絕使用“十進(jìn)制小數(shù)(如十進(jìn)制小數(shù)(如0.321)”、“科學(xué)法科學(xué)法記述數(shù)(如記述數(shù)(如321e-3)”,以便確保創(chuàng)建的符號(hào)數(shù)、符號(hào)以便確保創(chuàng)建的符號(hào)數(shù)、符號(hào)表達(dá)式精準(zhǔn)。表達(dá)式精準(zhǔn)。 符號(hào)數(shù)字符號(hào)數(shù)字10 Num必須處于必須處于英文狀態(tài)下英文狀態(tài)下的單引號(hào)內(nèi)。的單引號(hào)內(nèi)。 數(shù)值常量作為函數(shù)命令數(shù)值常量作為函數(shù)命令sym( )的輸入?yún)⒘?,的輸入?yún)⒘?,就建立了一個(gè)符號(hào)常量,看上去的一個(gè)數(shù)就建立了一個(gè)符號(hào)常量,看上去的一個(gè)數(shù)值量,但它已是一個(gè)符號(hào)對(duì)
7、象。值量,但它已是一個(gè)符號(hào)對(duì)象。 例:創(chuàng)建一個(gè)符號(hào)數(shù)值常數(shù),該數(shù)值準(zhǔn)確的等于0.3。 sa=sym(3/10)%正確 sa1=sym(0.3)%錯(cuò)誤 sa2=sym(3e-1) %錯(cuò)誤 定義基本符號(hào)變量的指令:定義基本符號(hào)變量的指令:sym, syms sym的常用使用格式:的常用使用格式:para = sym(para) 定義單個(gè)復(fù)數(shù)域符號(hào)變量定義單個(gè)復(fù)數(shù)域符號(hào)變量parapara = sym(para,Flag) 定義單個(gè)定義單個(gè)Flag指定域符號(hào)變指定域符號(hào)變 量量para 基本符號(hào)變量基本符號(hào)變量12 syms的常用使用格式:的常用使用格式:syms para 定義單個(gè)復(fù)數(shù)域符號(hào)變量定
8、義單個(gè)復(fù)數(shù)域符號(hào)變量para syms para Flag 定義單個(gè)定義單個(gè)Flag指定域符號(hào)變量指定域符號(hào)變量parasyms(para1, para2, paraN ) 定義多個(gè)復(fù)數(shù)域定義多個(gè)復(fù)數(shù)域 符號(hào)變量符號(hào)變量para1, para2, paraN syms para1 para2 paraN上述格式的簡(jiǎn)潔形式上述格式的簡(jiǎn)潔形式syms para1 para2 paraN Flag定義多個(gè)復(fù)數(shù)定義多個(gè)復(fù)數(shù)Flag指指 定域符號(hào)變量定域符號(hào)變量para1, para2, paraN 基本符號(hào)變量基本符號(hào)變量13 positive: 正實(shí)數(shù)域,表示那些符號(hào)對(duì)象取正實(shí)數(shù)域,表示那些符號(hào)對(duì)象
9、取 正實(shí)數(shù);正實(shí)數(shù); real:實(shí)數(shù)域,表示那些符號(hào)對(duì)象限定為實(shí)數(shù);實(shí)數(shù)域,表示那些符號(hào)對(duì)象限定為實(shí)數(shù);Flag: 代表數(shù)域的限定性假設(shè)代表數(shù)域的限定性假設(shè)14符號(hào)表達(dá)式符號(hào)表達(dá)式15符號(hào)表達(dá)式符號(hào)表達(dá)式 由符號(hào)數(shù)字、符號(hào)變量、符號(hào)函數(shù)用運(yùn)算符或一些預(yù)由符號(hào)數(shù)字、符號(hào)變量、符號(hào)函數(shù)用運(yùn)算符或一些預(yù)定義函數(shù)連接而成的符號(hào)對(duì)象。定義函數(shù)連接而成的符號(hào)對(duì)象。syms u v w z a5 %定義符號(hào)參數(shù)和變量定義符號(hào)參數(shù)和變量f=sym(3); %定義符號(hào)常數(shù)定義符號(hào)常數(shù)Eq=sin(f)*u*z2+v*z+f*w-a5; %構(gòu)成符號(hào)表達(dá)式構(gòu)成符號(hào)表達(dá)式 syms n x t w c;f1= log
10、(t)2*tclassf1=class(f1)f2=sym(a*x2+b*x+c) %創(chuàng)建創(chuàng)建”元元”符號(hào)表達(dá)式符號(hào)表達(dá)式classf2=class(f2)16符號(hào)矩陣符號(hào)矩陣 矩陣元素是符號(hào)對(duì)象的稱作符號(hào)矩陣。矩陣元素是符號(hào)對(duì)象的稱作符號(hào)矩陣。符號(hào)矩陣的創(chuàng)建符號(hào)矩陣的創(chuàng)建 數(shù)值矩陣數(shù)值矩陣A=1,2;3,4 A=a,b;c,d 不識(shí)別不識(shí)別1.用用matlab函數(shù)函數(shù)sym創(chuàng)建矩陣創(chuàng)建矩陣命令格式:命令格式:A=sym( ) 符號(hào)矩陣內(nèi)容同數(shù)值矩陣符號(hào)矩陣內(nèi)容同數(shù)值矩陣 需用需用sym指令定義指令定義 用用 標(biāo)識(shí)標(biāo)識(shí)17例如:例如:A = sym(a , 2*b ; 3*a , 0) A =
11、 a, 2*b 3*a, 0 這就完成了一個(gè)符號(hào)矩陣的創(chuàng)建。這就完成了一個(gè)符號(hào)矩陣的創(chuàng)建。注意:符號(hào)矩陣顯示每一行的兩端都有方注意:符號(hào)矩陣顯示每一行的兩端都有方 括號(hào),這是與括號(hào),這是與 matlab數(shù)值矩陣的數(shù)值矩陣的 一個(gè)區(qū)別。一個(gè)區(qū)別。182.先創(chuàng)建符號(hào)變量,再創(chuàng)建符號(hào)矩陣先創(chuàng)建符號(hào)變量,再創(chuàng)建符號(hào)矩陣 例如:例如:syms a b c dm2=a,b;c,dclass2=class(m2)19syms和和sym區(qū)別之一區(qū)別之一 syms可以同時(shí)定義多個(gè)符號(hào)變量,可以同時(shí)定義多個(gè)符號(hào)變量,sym一一次定義一個(gè)符號(hào)變量;次定義一個(gè)符號(hào)變量; sym可以創(chuàng)建符號(hào)數(shù)字、符號(hào)常數(shù)、元符號(hào)可以創(chuàng)
12、建符號(hào)數(shù)字、符號(hào)常數(shù)、元符號(hào)表達(dá)式,表達(dá)式,syms不能創(chuàng)建符號(hào)數(shù)字、符號(hào)常不能創(chuàng)建符號(hào)數(shù)字、符號(hào)常數(shù)和元符號(hào)表達(dá)式;數(shù)和元符號(hào)表達(dá)式;syms和和sym的區(qū)別的區(qū)別20 syms是定義符號(hào)變量,不能將數(shù)值數(shù)字轉(zhuǎn)換是定義符號(hào)變量,不能將數(shù)值數(shù)字轉(zhuǎn)換為符號(hào)數(shù)字,為符號(hào)數(shù)字,sym是將數(shù)字、字符、(字符是將數(shù)字、字符、(字符串)或者表達(dá)式轉(zhuǎn)換為符號(hào)對(duì)象。串)或者表達(dá)式轉(zhuǎn)換為符號(hào)對(duì)象。 比如:比如:syms x y %定了符號(hào)變量定了符號(hào)變量x、y,以后,以后x、y就可以直接使用了,有他們參與運(yùn)算出來的結(jié)果也就可以直接使用了,有他們參與運(yùn)算出來的結(jié)果也是符號(hào)變量。是符號(hào)變量。 當(dāng)然上面的也可以當(dāng)然上
13、面的也可以x=sym(x), y=sym(y) 。sym(a+b) %將將a+b轉(zhuǎn)化為符號(hào)表達(dá)式轉(zhuǎn)化為符號(hào)表達(dá)式syms和和sym區(qū)別之二區(qū)別之二21符號(hào)表達(dá)式中自由符號(hào)變量的確定符號(hào)表達(dá)式中自由符號(hào)變量的確定 基本符號(hào)變量可分為:自由符號(hào)變量和符號(hào)參數(shù)?;痉?hào)變量可分為:自由符號(hào)變量和符號(hào)參數(shù)。 確定自由符號(hào)變量的規(guī)則:在專門指定變量名的符確定自由符號(hào)變量的規(guī)則:在專門指定變量名的符號(hào)運(yùn)算中,解題一定圍繞指定變量名進(jìn)行號(hào)運(yùn)算中,解題一定圍繞指定變量名進(jìn)行。在沒在沒有指定變量名的符號(hào)運(yùn)算中,有指定變量名的符號(hào)運(yùn)算中,MATLAB將按照與將按照與小寫字母小寫字母x的的ASCII碼距離自動(dòng)識(shí)別出
14、自由符號(hào)變碼距離自動(dòng)識(shí)別出自由符號(hào)變量。解題通常是圍繞自由符號(hào)變量進(jìn)行的,解得的量。解題通常是圍繞自由符號(hào)變量進(jìn)行的,解得的結(jié)果通常是結(jié)果通常是“用符號(hào)參數(shù)構(gòu)成的表達(dá)式表述自由符用符號(hào)參數(shù)構(gòu)成的表達(dá)式表述自由符號(hào)變量號(hào)變量”。22符號(hào)表達(dá)式中自由符號(hào)變量的確定符號(hào)表達(dá)式中自由符號(hào)變量的確定 為符號(hào)操作和計(jì)算的需要,為符號(hào)操作和計(jì)算的需要,MATLAB提供一個(gè)提供一個(gè)symvar指令,可實(shí)現(xiàn)對(duì)表達(dá)式中所有自由符號(hào)變量指令,可實(shí)現(xiàn)對(duì)表達(dá)式中所有自由符號(hào)變量或指定數(shù)目的自由符號(hào)變量的自動(dòng)認(rèn)定?;蛑付〝?shù)目的自由符號(hào)變量的自動(dòng)認(rèn)定。 a*x2+b*x+c=0 一共一共4個(gè)參數(shù),圍繞誰求解?個(gè)參數(shù),圍繞誰
15、求解?symvar(expression) 列出表達(dá)式中所有基本符號(hào)變量列出表達(dá)式中所有基本符號(hào)變量symvar(expression,n) 從表達(dá)式中確認(rèn)出靠從表達(dá)式中確認(rèn)出靠x最近的最近的n個(gè)個(gè) 自由符號(hào)變量。自由符號(hào)變量。23 注意注意: expression可以是符號(hào)表達(dá)式或符號(hào)矩陣。此時(shí),可以是符號(hào)表達(dá)式或符號(hào)矩陣。此時(shí),該指令對(duì)自由變量的確認(rèn)是對(duì)整個(gè)矩陣進(jìn)行的,該指令對(duì)自由變量的確認(rèn)是對(duì)整個(gè)矩陣進(jìn)行的,而不是對(duì)矩陣元素逐個(gè)進(jìn)行的。而不是對(duì)矩陣元素逐個(gè)進(jìn)行的。 在在MATLAB符號(hào)計(jì)算中,符號(hào)計(jì)算中,x是首選符號(hào)變量,其是首選符號(hào)變量,其后的次序排列規(guī)則:與后的次序排列規(guī)則:與x的的
16、ASCII碼值之差的絕對(duì)碼值之差的絕對(duì)值小的字母優(yōu)先;差絕對(duì)值相同時(shí),值小的字母優(yōu)先;差絕對(duì)值相同時(shí),ASCII碼值大碼值大的字母優(yōu)先。的字母優(yōu)先。 注意字母的大小寫。在此認(rèn)為大寫字母離小寫注意字母的大小寫。在此認(rèn)為大寫字母離小寫x的的距離總大于所有小寫字母離距離總大于所有小寫字母離x的距離。的距離。 自動(dòng)識(shí)別符號(hào)變量時(shí),字母的優(yōu)先次序?yàn)樽詣?dòng)識(shí)別符號(hào)變量時(shí),字母的優(yōu)先次序?yàn)閤,y,w,z,v等。等。24例例2.1-22.1-2(P44P44)例例2.1-32.1-32.1.2 符號(hào)計(jì)算中的算符符號(hào)計(jì)算中的算符 基本運(yùn)算符基本運(yùn)算符 算符算符“+”、“-”、“ * ”、“ ”、“ / ”、“ ”
17、: 分別表示分別表示“符合矩陣運(yùn)算法則符合矩陣運(yùn)算法則”的加、減、乘、的加、減、乘、左除、右除、求冪運(yùn)算。左除、右除、求冪運(yùn)算。 算符算符 “.* ”、“. ”、“./ ”、“. ”:分別表示:分別表示“數(shù)組對(duì)應(yīng)元素間數(shù)組對(duì)應(yīng)元素間”的乘、左除、右除、求冪的乘、左除、右除、求冪運(yùn)算。運(yùn)算。 算符算符“ ”、“ . ” :分別實(shí)現(xiàn)矩陣的共軛轉(zhuǎn)置、:分別實(shí)現(xiàn)矩陣的共軛轉(zhuǎn)置、非共軛轉(zhuǎn)置。非共軛轉(zhuǎn)置。2.1.3 符號(hào)計(jì)算中的基本函數(shù)符號(hào)計(jì)算中的基本函數(shù) 借助于重載技術(shù),把具有相同函數(shù)計(jì)算功能借助于重載技術(shù),把具有相同函數(shù)計(jì)算功能的文件采用同一個(gè)函數(shù)名加以保存,從形式的文件采用同一個(gè)函數(shù)名加以保存,從形
18、式上看,數(shù)值運(yùn)算函數(shù)和符號(hào)計(jì)算的函數(shù)沒有上看,數(shù)值運(yùn)算函數(shù)和符號(hào)計(jì)算的函數(shù)沒有什么區(qū)別。什么區(qū)別。 符號(hào)計(jì)算函數(shù)庫(kù)分符號(hào)計(jì)算函數(shù)庫(kù)分3個(gè)層次個(gè)層次(基本函數(shù)、經(jīng)典基本函數(shù)、經(jīng)典特殊函數(shù)和符號(hào)計(jì)算特殊函數(shù)和符號(hào)計(jì)算MuPAD庫(kù)函數(shù)庫(kù)函數(shù)),我們,我們掌握基本函數(shù)即可。掌握基本函數(shù)即可。 需要注意函數(shù)對(duì)數(shù)據(jù)類型的要求,比如需要注意函數(shù)對(duì)數(shù)據(jù)類型的要求,比如plot不能用符號(hào)類參數(shù)。不能用符號(hào)類參數(shù)。272.1.4 符號(hào)對(duì)象的識(shí)別符號(hào)對(duì)象的識(shí)別 class(var) isa(var,Obj) whos問題:?jiǎn)栴}:a=1;b=2;c=3;d=4;Mn=a,b;c,dMc=a,b;c,d %Mc是符號(hào)矩
19、陣嗎?是符號(hào)矩陣嗎?Ms=sym(Mc)%Ms是什么類型?是什么類型?察看例程察看例程2.1-5(P46)數(shù)值、符號(hào)、字符是數(shù)值、符號(hào)、字符是MATLAB中的三種不同的數(shù)據(jù)中的三種不同的數(shù)據(jù)類型。類型。2.2 符號(hào)數(shù)字及表達(dá)式操作符號(hào)數(shù)字及表達(dá)式操作 2.2.1.雙精度數(shù)字與符號(hào)數(shù)字之間的轉(zhuǎn)換雙精度數(shù)字與符號(hào)數(shù)字之間的轉(zhuǎn)換 sym(Num, r)或或sym(Num) 雙精度數(shù)字雙精度數(shù)字Num的的“有理分?jǐn)?shù)有理分?jǐn)?shù)” 表達(dá)的符號(hào)數(shù)字表達(dá)的符號(hào)數(shù)字 sym(Num, d) 數(shù)值類數(shù)字?jǐn)?shù)值類數(shù)字Num的的“十進(jìn)制浮點(diǎn)十進(jìn)制浮點(diǎn)”近似近似 表達(dá)符號(hào)數(shù)字表達(dá)符號(hào)數(shù)字 在符號(hào)運(yùn)算中,在符號(hào)運(yùn)算中,“雙精
20、度數(shù)字雙精度數(shù)字”都會(huì)自動(dòng)地按都會(huì)自動(dòng)地按sym(Num, r)格式轉(zhuǎn)換為符號(hào)數(shù)字。格式轉(zhuǎn)換為符號(hào)數(shù)字。 注意注意 sym(Num)和和sym(Num)的區(qū)別:的區(qū)別: Num是字符串?dāng)?shù)字。當(dāng)是字符串?dāng)?shù)字。當(dāng)Num用作符號(hào)計(jì)算函數(shù)的輸入量用作符號(hào)計(jì)算函數(shù)的輸入量時(shí),它體現(xiàn)數(shù)字的理論真值。時(shí),它體現(xiàn)數(shù)字的理論真值。 Num是字面表示數(shù)字。在是字面表示數(shù)字。在MATLAB環(huán)境中,實(shí)際上是以雙環(huán)境中,實(shí)際上是以雙精度(精度(16位相對(duì)精度)的近似方式保存的。當(dāng)位相對(duì)精度)的近似方式保存的。當(dāng)Num用作符用作符號(hào)計(jì)算函數(shù)的輸入量時(shí),它體現(xiàn)數(shù)字理論數(shù)字的雙精度近似。號(hào)計(jì)算函數(shù)的輸入量時(shí),它體現(xiàn)數(shù)字理論數(shù)
21、字的雙精度近似。 MATLAB為每種數(shù)據(jù)類型提供了各自特定的生成為每種數(shù)據(jù)類型提供了各自特定的生成指令和操作指令。指令和操作指令。 為實(shí)現(xiàn)不同數(shù)據(jù)類型的交互,為實(shí)現(xiàn)不同數(shù)據(jù)類型的交互,MATLAB提供了一提供了一系列的轉(zhuǎn)換指令。系列的轉(zhuǎn)換指令。 數(shù)值型數(shù)值型符號(hào)結(jié)果符號(hào)結(jié)果符號(hào)常數(shù)符號(hào)常數(shù) 符號(hào)量(表達(dá)式)符號(hào)量(表達(dá)式)數(shù)值數(shù)值字符串(表達(dá)式)字符串(表達(dá)式)ASCII碼碼vpavpadoubledoublesymcharsymdoublecharstr2num str2double sscanfint2str num2str mat2str sprintf30 double(Num_sym
22、) : 把符號(hào)數(shù)字把符號(hào)數(shù)字Num_sym轉(zhuǎn)換為雙精度數(shù)字轉(zhuǎn)換為雙精度數(shù)字 double(Num) : 把字符串?dāng)?shù)字把字符串?dāng)?shù)字Num轉(zhuǎn)換為字符的轉(zhuǎn)換為字符的ASCII碼值碼值數(shù)組。數(shù)組。v將數(shù)值矩陣轉(zhuǎn)化為符號(hào)矩陣將數(shù)值矩陣轉(zhuǎn)化為符號(hào)矩陣 函數(shù)調(diào)用格式:函數(shù)調(diào)用格式:sym(A)A=1/3,2.5;1/0.7,2/5A = 0.3333 2.5000 1.4286 0.4000sym(A)ans = 1/3, 5/210/7, 2/5 符號(hào)矩陣與數(shù)值矩陣的轉(zhuǎn)換符號(hào)矩陣與數(shù)值矩陣的轉(zhuǎn)換v將符號(hào)矩陣轉(zhuǎn)化為數(shù)值矩陣將符號(hào)矩陣轉(zhuǎn)化為數(shù)值矩陣函數(shù)調(diào)用格式:函數(shù)調(diào)用格式: double(A)A = sym
23、(1/3, 5/2;10/7, 2/5)double(A)ans = 0.3333 2.5000 1.4286 0.400033“變精度變精度”算法:算法:digits 顯示當(dāng)前環(huán)境下符號(hào)數(shù)字顯示當(dāng)前環(huán)境下符號(hào)數(shù)字“十進(jìn)制浮點(diǎn)十進(jìn)制浮點(diǎn)” 表示的有效數(shù)字位數(shù)表示的有效數(shù)字位數(shù)digits(n) 設(shè)定符號(hào)數(shù)字設(shè)定符號(hào)數(shù)字“十進(jìn)制浮點(diǎn)十進(jìn)制浮點(diǎn)”表示的有表示的有 效數(shù)字位數(shù)效數(shù)字位數(shù)xs=vpa(x) 據(jù)表達(dá)式據(jù)表達(dá)式x得到得到digits指定精度下的符號(hào)指定精度下的符號(hào) 數(shù)字?jǐn)?shù)字xsxs=vpa(x,n) 據(jù)表達(dá)式據(jù)表達(dá)式x得到得到n位有效數(shù)字的符號(hào)數(shù)位有效數(shù)字的符號(hào)數(shù) 字字xs 2.2.2 符
24、號(hào)數(shù)字的任意精度表達(dá)形式符號(hào)數(shù)字的任意精度表達(dá)形式34xs=vpa(x,n)指令只在運(yùn)行的當(dāng)時(shí)起作用。指令只在運(yùn)行的當(dāng)時(shí)起作用。x可為符號(hào)對(duì)象,也可為數(shù)值對(duì)象,但指令可為符號(hào)對(duì)象,也可為數(shù)值對(duì)象,但指令運(yùn)行后所得結(jié)果運(yùn)行后所得結(jié)果xs一定是符號(hào)數(shù)字。一定是符號(hào)數(shù)字。變精度函數(shù)變精度函數(shù)vpa(x) 的運(yùn)算精度受它之前運(yùn)的運(yùn)算精度受它之前運(yùn)行的行的digits(n)控制??刂?。MATLAB對(duì)對(duì)digits指令指令的默認(rèn)精度設(shè)置為的默認(rèn)精度設(shè)置為32位。位。注意事項(xiàng):注意事項(xiàng):例例2.2-1(P57) 2.2.3 符號(hào)表達(dá)式符號(hào)表達(dá)式的操作的操作 符號(hào)運(yùn)算中有許多操作指令。符號(hào)運(yùn)算中有許多操作指令
25、。collect(合并同類項(xiàng))(合并同類項(xiàng))expand(對(duì)指定項(xiàng)展開)(對(duì)指定項(xiàng)展開)factor(進(jìn)行因式或因子分解)(進(jìn)行因式或因子分解)simplify(恒等式簡(jiǎn)化)(恒等式簡(jiǎn)化)pretty(習(xí)慣方式顯示)(習(xí)慣方式顯示)36 其中最常用的是其中最常用的是simple(EXPR):運(yùn)用包括:運(yùn)用包括simplify在內(nèi)的各種指令把在內(nèi)的各種指令把EXPR轉(zhuǎn)換成最簡(jiǎn)短形式。轉(zhuǎn)換成最簡(jiǎn)短形式。 注注:EXPR可以是符號(hào)表達(dá)式或矩陣。在這種情況可以是符號(hào)表達(dá)式或矩陣。在這種情況下,這些指令將對(duì)該矩陣的元素逐個(gè)進(jìn)行操作。下,這些指令將對(duì)該矩陣的元素逐個(gè)進(jìn)行操作。syms xf=(1/x3+6
26、/x2+12/x+8)(1/3)g1=simple(f)g1=(2*x + 1)3/x3)(1/3)。:簡(jiǎn)化例3238126122 . 2xxxf37382.2.4 表達(dá)式中的表達(dá)式中的置換操作置換操作 公因子法簡(jiǎn)化表達(dá)式公因子法簡(jiǎn)化表達(dá)式 通用置換指令通用置換指令 39 符號(hào)計(jì)算結(jié)果顯得煩冗的一個(gè)重要原因是:有符號(hào)計(jì)算結(jié)果顯得煩冗的一個(gè)重要原因是:有些子表達(dá)式會(huì)多次出現(xiàn)在不同地方。些子表達(dá)式會(huì)多次出現(xiàn)在不同地方。 RS=subexpr(S, w)或或RS,w=subexpr(S, w) 從從S中自動(dòng)提取公因子,記它為中自動(dòng)提取公因子,記它為w,并把采用,并把采用w重寫的重寫的S賦給賦給RS。
27、 把復(fù)雜表達(dá)式中所含的多個(gè)相同子表達(dá)式用一把復(fù)雜表達(dá)式中所含的多個(gè)相同子表達(dá)式用一個(gè)符號(hào)代替,使表達(dá)簡(jiǎn)潔。個(gè)符號(hào)代替,使表達(dá)簡(jiǎn)潔。 置換原則:只有比較長(zhǎng)的子表達(dá)式才被置換。置換原則:只有比較長(zhǎng)的子表達(dá)式才被置換。公因子法簡(jiǎn)化表達(dá)式公因子法簡(jiǎn)化表達(dá)式 40 syms x f=(x+1)2+(x+1)3 f =(x + 1)2 + (x + 1)3 RS=subexpr(f, w) w = x + 1 RS =w3 + w2【例2.2-3】(1)和(2)(P59)對(duì)符號(hào)矩陣進(jìn)行特征向量分解。 42 通用置換指令通用置換指令RES=subs(ES,old,new)用用new置換置換ES中的中的old
28、后產(chǎn)生后產(chǎn)生RES ,重寫,重寫ES為為RES。RES=subs(ES, new) 用用new置換置換ES中的自由變量中的自由變量后產(chǎn)生后產(chǎn)生RES ,重寫,重寫ES為為RES。【例2.2-4】(1)-(7)(P61)2.3 符號(hào)微積分符號(hào)微積分 符號(hào)極限符號(hào)極限 極限是微積分的基礎(chǔ)。在極限是微積分的基礎(chǔ)。在MATLAB中,極限的求解中,極限的求解由由limit函數(shù)實(shí)現(xiàn)。函數(shù)實(shí)現(xiàn)。 limit(f,v,a) 計(jì)算符號(hào)表達(dá)式計(jì)算符號(hào)表達(dá)式f在在va條件下的極限條件下的極限 limit(f, a) 計(jì)算符號(hào)表達(dá)式計(jì)算符號(hào)表達(dá)式f中默認(rèn)自變量趨向于中默認(rèn)自變量趨向于a條件下條件下 的極限的極限 li
29、mit(f)計(jì)算符號(hào)表達(dá)式計(jì)算符號(hào)表達(dá)式f在默認(rèn)自變量趨向于在默認(rèn)自變量趨向于0時(shí)的極限時(shí)的極限 limit(f,v,a,right)和和limit(f,v,a,left) 計(jì)算符號(hào)表達(dá)式計(jì)算符號(hào)表達(dá)式 F在在va條件下的右極限和左極限條件下的右極限和左極限 例例2.3-1(P63)符號(hào)微分符號(hào)微分 求導(dǎo)數(shù)、高階導(dǎo)數(shù)、偏導(dǎo)數(shù)是數(shù)學(xué)分析的重要求導(dǎo)數(shù)、高階導(dǎo)數(shù)、偏導(dǎo)數(shù)是數(shù)學(xué)分析的重要內(nèi)容。由機(jī)器實(shí)現(xiàn)求導(dǎo)的內(nèi)容。由機(jī)器實(shí)現(xiàn)求導(dǎo)的MATLAB指令如下:指令如下: dfdvn=diff(f,v,n) 注意:注意: f是矩陣時(shí),求極限和求導(dǎo)對(duì)元素逐個(gè)進(jìn)行,但自變是矩陣時(shí),求極限和求導(dǎo)對(duì)元素逐個(gè)進(jìn)行,但自變
30、量定義在整個(gè)矩陣上。量定義在整個(gè)矩陣上。 v缺省時(shí),自變量會(huì)自動(dòng)由缺省時(shí),自變量會(huì)自動(dòng)由symvar確認(rèn);確認(rèn);n缺省時(shí),缺省時(shí),默認(rèn)默認(rèn)n=1。 注意注意:在數(shù)值計(jì)算中,指令:在數(shù)值計(jì)算中,指令diff是用來求差分的。是用來求差分的。 例例2.3-2;(;(P64) nndvvfd)(TaylorTaylor級(jí)數(shù)展開級(jí)數(shù)展開 序列序列/級(jí)數(shù)的符號(hào)求和級(jí)數(shù)的符號(hào)求和 通式求和通式求和 問題問題 s=symsum(f,v,a,b)求通式求通式f在指定變量在指定變量v取遍取遍a,b中中 所有整數(shù)時(shí)的和。所有整數(shù)時(shí)的和。 注意:注意: f是數(shù)組時(shí),求和對(duì)元素逐個(gè)進(jìn)行,但自變量定義是數(shù)組時(shí),求和對(duì)元素
31、逐個(gè)進(jìn)行,但自變量定義 在整個(gè)數(shù)組上。在整個(gè)數(shù)組上。 v確省時(shí),確省時(shí),f中的自變量由中的自變量由symvar 自動(dòng)辨認(rèn);自動(dòng)辨認(rèn);b可可 以取有限整數(shù),也可以取無窮大。以取有限整數(shù),也可以取無窮大。 a,b可同時(shí)缺省,此時(shí)默認(rèn)求和的自變量區(qū)間為可同時(shí)缺省,此時(shí)默認(rèn)求和的自變量區(qū)間為 0,v-1。 例例2.3-8(1)和(和(2)()(P68)bavvf)(符號(hào)積分符號(hào)積分 與數(shù)值積分相比,符號(hào)積分指令簡(jiǎn)單,適應(yīng)與數(shù)值積分相比,符號(hào)積分指令簡(jiǎn)單,適應(yīng)性強(qiáng),但可能占用機(jī)器時(shí)間很長(zhǎng)。性強(qiáng),但可能占用機(jī)器時(shí)間很長(zhǎng)。 intf=int(f,v) 給出給出f對(duì)指定變量對(duì)指定變量v的(不帶積分的(不帶積分
32、常數(shù)的)不定積分常數(shù)的)不定積分 intf=int(f,v,a,b)給出給出f對(duì)指定變量對(duì)指定變量v的定積分的定積分 其中其中a,b分別是積分的下、上限,允許它們分別是積分的下、上限,允許它們?nèi)∪魏沃祷蚍?hào)表達(dá)式。取任何值或符號(hào)表達(dá)式。 當(dāng)當(dāng)f是函數(shù)數(shù)組時(shí),積分將對(duì)數(shù)組元素逐個(gè)是函數(shù)數(shù)組時(shí),積分將對(duì)數(shù)組元素逐個(gè)進(jìn)行。進(jìn)行。 v缺省時(shí),積分對(duì)缺省時(shí),積分對(duì)symvar確認(rèn)的變量進(jìn)行。確認(rèn)的變量進(jìn)行。 其中其中a,b分別是積分的下、上限,允許它們分別是積分的下、上限,允許它們?nèi)∪魏沃祷蚍?hào)表達(dá)式。取任何值或符號(hào)表達(dá)式。 例例2.3-9;(P69) 例例2.3-11(P70)2.4 微分方程的符號(hào)解
33、法微分方程的符號(hào)解法 求微分方程符號(hào)解的一般指令求微分方程符號(hào)解的一般指令S=dsolve(eq1, eq2, ,eqn,cond1,cond2,condn,v)S=dsolve(eq1,eq2,eqn,cond1,cond2,condn,v) 輸入量包括微分方程,初始條件,指定獨(dú)立變量。輸入量包括微分方程,初始條件,指定獨(dú)立變量。 微分方程是必不可少的內(nèi)容,其余視需要而定,微分方程是必不可少的內(nèi)容,其余視需要而定, 可有可無??捎锌蔁o。 輸入量以字符串形式編寫。輸入量以字符串形式編寫。如果不指定如果不指定v,則默認(rèn),則默認(rèn) 以以t為自變量為自變量(獨(dú)立變量獨(dú)立變量)。 規(guī)定:當(dāng)規(guī)定:當(dāng)y是是
34、“因變量因變量”時(shí),用時(shí),用“Dny”表示表示“y的的n階導(dǎo)數(shù)階導(dǎo)數(shù)”。當(dāng)。當(dāng)t為獨(dú)立變量時(shí),為獨(dú)立變量時(shí),Dy表示表示dy/dt。其中的其中的D表示微分表示微分,D2、D3表示二階、三階導(dǎo)表示二階、三階導(dǎo)數(shù)數(shù)。任何。任何D后面跟的是因變量。后面跟的是因變量。 方程方程d2y/dx2=0表示為表示為D2y=0; 可以給定可以給定初始條件初始條件,如果沒有初始條件,解中,如果沒有初始條件,解中有系數(shù)。初始條件寫成有系數(shù)。初始條件寫成y(a)=b,Dy(c)=d等形式。等形式。 輸出量輸出量S是構(gòu)架對(duì)象,如果是構(gòu)架對(duì)象,如果y是因變量,那么關(guān)是因變量,那么關(guān)于它的解在于它的解在S.y中。中。 在既
35、找不到在既找不到“顯示解顯示解”又找不到又找不到“隱式解隱式解”的情況的情況下,會(huì)發(fā)布警告信息,并且下,會(huì)發(fā)布警告信息,并且S為空符號(hào)對(duì)象。為空符號(hào)對(duì)象。例求例求dx/dt=y,dy/dt=-x的解,并將的解,并將x和和y的結(jié)果顯示出來。的結(jié)果顯示出來。 S=dsolve(Dx=y,Dy=-x) disp(S.x) disp(S.y)或或 x,y=dsolve(Dx=y,Dy=-x)或或 S=dsolve(Dx=y,Dy=-x) disp(S.x,S.y)注:注: 在寫微分方程時(shí),最好遵循在寫微分方程時(shí),最好遵循“導(dǎo)數(shù)在前函數(shù)在后,導(dǎo)數(shù)在前函數(shù)在后,導(dǎo)數(shù)階數(shù)降階導(dǎo)數(shù)階數(shù)降階”的次序,否則有可能
36、運(yùn)行出錯(cuò)。的次序,否則有可能運(yùn)行出錯(cuò)。53求( )5*( )6* ( )( ),( )2*, (0)2,(0)1ty ty ty tf tf teyy 的解。dsolve(D2y+5*Dy+6*y=2*exp(-t),Dy(0)=-1,y(0)=2)( )5*( )6* ( )( ),( )10*cos( ), (0)2,(0)0y ty ty tf tf ttyy求的解。dsolve(D2y+5*Dy+6*y=10*cos(t),Dy(0)=0,y(0)=2)2.5 符號(hào)變換和符號(hào)卷積符號(hào)變換和符號(hào)卷積 Fourier變換及其反變換變換及其反變換 Fw=fourier(ft,t,w)求時(shí)域函
37、數(shù)求時(shí)域函數(shù)ft的的fourier變換變換Fw ft=ifourier(Fw,w,t)求頻域函數(shù)求頻域函數(shù)Fw的的Fourier反變換反變換ft 例例2.5-1(1)和和(2);(;(P76) Laplace變換及其反變換變換及其反變換 Fs=laplace(ft,t,s)求時(shí)域函數(shù)求時(shí)域函數(shù)ft的的laplace變換變換Fs ft=ilaplace(Fs,s,t)求頻域函數(shù)求頻域函數(shù)Fs的的laplace反變換反變換ft 例例2.5-4(1);(;(P81) Z變換及其反變換變換及其反變換 FZ=ztrans(fn,n,z)求時(shí)域序列求時(shí)域序列fn的的Z變換變換FZ fn=iztrans(F
38、z,z,n)求頻域序列求頻域序列FZ的的Z反變換反變換fn 例例2.5-5(1)和和(2);(;(P83)符號(hào)卷積符號(hào)卷積tdthfty0)()()(已知,求)()(tUetut輸入下的輸出響應(yīng)。syms T t taout=exp(-t);ht=exp(-t/T)/T;uh_tao=subs(ut,t,tao)*subs(ht,t,t-tao);yt=simple(simple(int(uh_tao,tao,0,t)運(yùn)行結(jié)果: -(exp(-t) - exp(-t/T)/(T - 1)(1)(/tUeTthTt2.6 符號(hào)矩陣分析和代數(shù)方程解符號(hào)矩陣分析和代數(shù)方程解det(A)求行列式的值求
39、行列式的值diag(A)取對(duì)角元構(gòu)成向量,或據(jù)向量構(gòu)成對(duì)角陣取對(duì)角元構(gòu)成向量,或據(jù)向量構(gòu)成對(duì)角陣V,D=eig(A)特征值分解,使特征值分解,使AV=VD,D中保存的是特中保存的是特征值,征值,V中保存的是特征向量中保存的是特征向量EA= eig(A) 求求A的特征值的特征值inv(A)求逆矩陣求逆矩陣 rank(A) 求矩陣秩求矩陣秩例例2.6-1:求矩陣:求矩陣A=a11 a12;a21 a22的行列式、逆和特的行列式、逆和特征根。征根。syms a11 a12 a21 a22; A= a11 a12 ;a21 a22Da=det(A)Ia=inv(A)EA=eig(A) 符號(hào)矩陣分析符號(hào)
40、矩陣分析57符號(hào)代數(shù)方程的求解符號(hào)代數(shù)方程的求解 線性方程組的符號(hào)解線性方程組的符號(hào)解 矩陣計(jì)算是求解線性方程組最簡(jiǎn)便有效的方法。在矩陣計(jì)算是求解線性方程組最簡(jiǎn)便有效的方法。在MATLAB中,不管數(shù)據(jù)對(duì)象是數(shù)值還是符號(hào),實(shí)現(xiàn)中,不管數(shù)據(jù)對(duì)象是數(shù)值還是符號(hào),實(shí)現(xiàn)矩陣運(yùn)算的指令形式幾乎完全相同。對(duì)于求解線性矩陣運(yùn)算的指令形式幾乎完全相同。對(duì)于求解線性方程組符號(hào)解的問題,可套用求數(shù)值解的方法進(jìn)行。方程組符號(hào)解的問題,可套用求數(shù)值解的方法進(jìn)行。例例2.6-3 (P87)A=sym(1 1/2 1/2 -1;1 1 -1 1;1 -1/4 -1 1;-8 -1 1 1);b=sym(0;10;0;1); X1=Ab X1 = 1 8 8 9 一般代數(shù)方程組的解一般代數(shù)方程組的解 一般代數(shù)方程包括線性一般代數(shù)方程包括線性(Linear)、非線性、非線性(Nonlinear)和和超越方程超越方程(Transcedental equation)等,求解指令是等,求解指令是solve。S=solve(eq1,eq2,,eqn,v1,v2,vn) 求方程組求方程組eq1,eq2, eqn關(guān)于指定變量關(guān)于指定變量v1,v2, vn的的解(推薦格式)解(推薦格式) eq1,eq2, eqn是字符串表達(dá)的方程,或是字符
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025湘美版(2024)小學(xué)美術(shù)一年級(jí)下冊(cè)教學(xué)設(shè)計(jì)(附目錄)
- 個(gè)人手房交易買賣合同書
- 個(gè)人租房合同協(xié)議書可用
- 2025年民辦學(xué)校教師聘用合同模板7篇
- 層門面房出租合同
- 2025年鶴壁貨運(yùn)從業(yè)資格證模擬考試
- 宅基地拍賣后轉(zhuǎn)讓協(xié)議書8篇
- 展館維保合同范本
- PS再生料競(jìng)爭(zhēng)策略分析報(bào)告
- 廈門裝修設(shè)計(jì)合同范本
- 全球氣候變化與應(yīng)對(duì)措施
- 化工企業(yè)安全生產(chǎn)信息化系統(tǒng)管理解決方案
- 2024廣西公務(wù)員考試及答案(筆試、申論A、B類、行測(cè))4套 真題
- AI賦能供應(yīng)鏈優(yōu)化-深度研究
- 小程序代運(yùn)營(yíng)合作協(xié)議
- 中醫(yī)美容養(yǎng)生方法
- 2025年中電建新能源集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 2024年遼寧現(xiàn)代服務(wù)職業(yè)技術(shù)學(xué)院高職單招語文歷年參考題庫(kù)含答案解析
- 2024年湖南環(huán)境生物職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)驗(yàn)歷年參考題庫(kù)(頻考版)含答案解析
- 后循環(huán)缺血治療
- 2024年浙江紹興杭紹臨空示范區(qū)開發(fā)集團(tuán)有限公司招聘筆試真題
評(píng)論
0/150
提交評(píng)論