版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第三講 MATLAB的符號(hào)運(yùn)算 matlab 不僅具有數(shù)值運(yùn)算功能,還開(kāi)發(fā)了在matlab環(huán)境下實(shí)現(xiàn)符號(hào)計(jì)算的工具包SymbolicMath Toolbox 符號(hào)運(yùn)算的功能符號(hào)表達(dá)式、符號(hào)矩陣的創(chuàng)建符號(hào)線性代數(shù)因式分解、展開(kāi)和簡(jiǎn)化符號(hào)代數(shù)方程求解符號(hào)微積分符號(hào)微分方程一、符號(hào)運(yùn)算的基本操作1.什么是符號(hào)運(yùn)算與數(shù)值運(yùn)算的區(qū)別 數(shù)值運(yùn)算中必須先對(duì)變量賦值,然后才能參與運(yùn)算。 符號(hào)運(yùn)算無(wú)須事先對(duì)獨(dú)立變量賦值,運(yùn)算結(jié)果以標(biāo)準(zhǔn)的符號(hào)形式表達(dá)。特點(diǎn): 運(yùn)算對(duì)象可以是沒(méi)賦值的符號(hào)變量 可以獲得任意精度的解Symbolic Math Toolbox符號(hào)運(yùn)算工具包通過(guò)調(diào)用Maple軟件實(shí)現(xiàn)符號(hào)計(jì)算的。maple
2、軟件主要功能是符號(hào)運(yùn)算, 它占據(jù)符號(hào)軟件的主導(dǎo)地位。 2. 符號(hào)變量與符號(hào)表達(dá)式f = sin(x)+5xf 符號(hào)變量名sin(x)+5x 符號(hào)表達(dá)式 符號(hào)標(biāo)識(shí)v符號(hào)表達(dá)式一定要用 單引 號(hào)括起來(lái)matlab才能識(shí)別。 的內(nèi)容可以是符號(hào)表達(dá)式,也可以是符號(hào)方程。例: f1=ax2+bx+c 二次三項(xiàng)式 f2= ax2+bx+c=0 方程 f3=Dy+y2=1 微分方程符號(hào)表達(dá)式或符號(hào)方程可以賦給符號(hào)變量,以后調(diào)用方便;也可以不賦給符號(hào)變量直接參與運(yùn)算3.符號(hào)矩陣的創(chuàng)建 數(shù)值矩陣A=1,2;3,4 A=a,b;c,d 不識(shí)別用matlab函數(shù)sym創(chuàng)建矩陣(symbolic 的縮寫(xiě))命令格式:A
3、=sym( ) 符號(hào)矩陣內(nèi)容同數(shù)值矩陣 需用sym指令定義 需用 標(biāo)識(shí)例如:A = sym(a , 2*b ; 3*a , 0) A = a, 2*b 3*a, 0 這就完成了一個(gè)符號(hào)矩陣的創(chuàng)建。注意:符號(hào)矩陣的每一行的兩端都有方 括號(hào),這是與 matlab數(shù)值矩陣的 一個(gè)重要區(qū)別。用字符串直接創(chuàng)建矩陣v 模仿matlab數(shù)值矩陣的創(chuàng)建方法v 需保證同一列中各元素字符串有相 同的長(zhǎng)度。例:A = a,2*b; 3*a, 0 A = a, 2*b 3*a, 0 符號(hào)矩陣的修改 a.直接修改 可用、 鍵找到所要修改的矩陣,直接修改 b.指令修改v 用A1=sym(A,new) 來(lái)修改。v 用A1=
4、subs(A, new, old)來(lái)修改v A1=subs(S, old ,new)例如:例如:A = a, 2*b 3*a, 0A1=sym(A,2,2, 4*b) A1 = a, 2*b 3*a, 4*b A(2,2)=4*bA3 = a, 2*b 3*a, 4*bA2=subs(A1, c, b) A2 = a, 2*c 3*a, 4*c v將數(shù)值矩陣轉(zhuǎn)化為符號(hà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)換v將符號(hào)矩陣轉(zhuǎn)
5、化為數(shù)值矩陣函數(shù)調(diào)用格式: numeric(A)A = 1/3, 5/210/7, 2/5numeric(A)ans = 0.3333 2.5000 1.4286 0.40001.符號(hào)矩陣運(yùn)算 數(shù)值運(yùn)算中,所有矩陣運(yùn)算操作指令都比較直觀、簡(jiǎn)單。例如:a=b+c; a=a*b ;A=2*a2+3*a-5等。 而符號(hào)運(yùn)算就不同了,所有涉及符號(hào)運(yùn)算的操作都有專用函數(shù)來(lái)進(jìn)行二、符號(hào)運(yùn)算符號(hào)矩陣運(yùn)算的函數(shù):symadd(a,d) 符號(hào)矩陣的加symsub(a,b) 符號(hào)矩陣的減symmul(a,b) 符號(hào)矩陣的乘symdiv(a,b) 符號(hào)矩陣的除sympow(a,b) 符號(hào)矩陣的冪運(yùn)算symop(a,
6、b) 符號(hào)矩陣的綜合運(yùn)算例1:f= 2*x2+3*x-5; g= x2+x-7;h= symadd(f,g)h= 3*x2+4*x-12例2:f=cos(x);g= sin(2*x);symop(f,/,g,+,f,*,g) ans =cos(x)/sin(2*x)+cos(x)*sin(2*x)例1:f= 2*x2+3*x-5; g= x2+x-7; syms x f=2*x2+3*x-5; g= x2+x-7; h=f+gh = 3*x2+4*x-12例2:f=cos(x);g= sin(2*x); syms x f=cos(x);g=sin(2*x); f/g+f*gans =cos(x
7、)/sin(x)+cos(x)*sin(x) 符號(hào)運(yùn)算函數(shù):symsize 求符號(hào)矩陣維數(shù)charploy 特征多項(xiàng)式determ 符號(hào)矩陣行列式的值eigensys 特征值和特征向量inverse 逆矩陣transpose 矩陣的轉(zhuǎn)置jordan 約當(dāng)標(biāo)準(zhǔn)型simple 符號(hào)矩陣簡(jiǎn)化2. 任意精度的數(shù)學(xué)運(yùn)算 在symbolic中有三種不同的算術(shù)運(yùn)算:1.數(shù)值類型 matlab的浮點(diǎn)算術(shù)運(yùn)算2.有理數(shù)類型 maple的精確符號(hào)運(yùn)算3.vpa類型 maple的任意精度算術(shù) 運(yùn)算 浮點(diǎn)算術(shù)運(yùn)算1/2+1/3 (定義輸出格式format long)ans =0.83333333333333符號(hào)運(yùn)算s
8、ym(1/2)+(1/3)ans = 5/6 精確解 任意精度算術(shù)運(yùn)算digits(n) 設(shè)置可變精度,缺省16位vpa(x,n) 顯示可變精度計(jì)算digits(25)vpa(1/2+1/3)ans =.8333333333333333333333333vpa(5/6,40) ans =.8333333333333333333333333333333333333333 a=sym(1/4,exp(1);log(3),3/7)a = 1/4,exp(1)log(3), 3/7vpa(a,10)ans =.2500000000, 2.7182818281.098612289, .428571428
9、6diff(f) 對(duì)缺省變量求微分diff(f,v) 對(duì)指定變量v求微分diff(f,v,n) 對(duì)指定變量v求n階微分int(f) 對(duì)f表達(dá)式的缺省變量求積分int(f,v) 對(duì)f表達(dá)式的v變量求積分int(f,v,a,b) 對(duì)f表達(dá)式的v變量在(a,b) 區(qū)間求定積分3. 符號(hào)微積分與積分變換int(被積表達(dá)式,積分變量,積分上限, 積分下限) 定積分缺省時(shí)為不定積分mtaylor(f,n) 泰勒級(jí)數(shù)展開(kāi)ztrans(f) Z變換Invztrans(f) 反Z變換Laplace(f) 拉氏變換Invlaplace(f) 反拉氏變換fourier(f) 付氏變換Invfourier(f) 反付
10、氏變換 例1.計(jì)算二重不定積分dxdyxexyF=int(int(x*exp(-x*y),x),y)F= 1/y*exp(-x*y)例2.計(jì)算 f=x*exp(-x*10)的Z變換 F=ztrans(f) F= z*exp(-10)/(z-exp(-10)2 syms x y F=int(int(x*exp(-x*y),x),y)F =1/y*exp(-x*y) syms x f=x*exp(-x*10); F=ztrans(f) F=ztrans(x*exp(-x*10);F =z*exp(-10)/(z-exp(-10)2 例3. 計(jì)算指數(shù)函數(shù)eAt。用拉氏反變換法計(jì)算eAt的公式為: e
11、At = L-1(SI-A)-1系統(tǒng)矩陣A= 3210tttttttteeeeeeee22222222eAt =結(jié)果: a=0 1;-2 -3; syms s b=(s*eye(2)-a)b = s, -1 2, s+3 B=inv(b) (s+3)/(s2+3*s+2), 1/(s2+3*s+2) -2/(s2+3*s+2), s/(s2+3*s+2) b11=ilaplace(sym(b,1,1);b(1,1)=b11; b12=ilaplace(sym(b,1,2);b(1,2)=b12; b21=ilaplace(sym(b,2,1);b(2,1)=b21; b22=ilaplace(
12、sym(b,2,2);b(2,2)=b22; bb = -exp(-2*t)+2*exp(-t), exp(-t)-exp(-2*t) -2*exp(-t)+2*exp(-2*t), 2*exp(-2*t)-exp(-t) 4.符號(hào)代數(shù)方程求解 matlab符號(hào)運(yùn)算能夠解一般的線性方程、非線性方程及一般的代數(shù)方程、代數(shù)方程組。當(dāng)方程組不存在符號(hào)解時(shí),又無(wú)其他自由參數(shù),則給出數(shù)值解。命令格式:solve(f) 求一個(gè)方程的解Solve(f1,f2, fn) 求n個(gè)方程的解 例1. f = ax2+bx+c 求解f=a*x2+b*x+c; solve(f) 對(duì)缺省變量x求解ans =1/2/a*(
13、-b+(b2-4*a*c)(1/2)1/2/a*(-b-(b2-4*a*c)(1/2)計(jì)算機(jī)格式aacbb242一般格式例2. 符號(hào)方程cos(x)=sin(x) tan(2*x)=sin(x)求解f1=solve(cos(x)=sin(x),f1 =1/4*pi solve(f , b ) 對(duì)指定變量b求解ans =-(a*x2+c)/xf3= matlab4.2的解 0 pi atan(1/2*(-2*3(1/2)(1/2),1/2+1/2*3(1/2) atan(-1/2*(-2*3(1/2)(1/2),1/2+1/2*3(1/2) atan(1/2*2(1/2)*3(1/4)/(1/2
14、-1/2*3(1/2)+pi -atan(1/2*2(1/2)*3(1/4)/(1/2-1/2*3(1/2)-pi f2=solve(tan(2*x)=sin(x)f2 =matlab4.2的解 0acos(1/2+1/2*3(1/2)acos(1/2 -1/2*3(1/2)numeric(f3)ans = 0 3.1416 0 + 0.8314i 0 - 0.8314i 1.9455 -1.9455 numeric(f2)ans = 0 0 + 0.8314i 1.9455 matlab4.2與6.1的對(duì)比例3. 解方程組 x+y+z=1 x-y+z=2 2x-y-z=1g1=x+y+z=1
15、,g2=x-y+z=2,g3=2*x-y-z=1f=solve(g1,g2,g3)f=solve(x+y+z=1,x-y+z=2,2*x-y-z=1)f =z = 5/6, y = -1/2, x = 2/3f=solve(x+y+z=1,x-y+z=2,2*x-y-z=1)f = x: 1x1 sym f.x ans =2/3 y: 1x1 sym f.y ans =-1/2 z: 1x1 sym f.z ans =5/6 x,y,z=solve(x+y+z=1,x-y+z=2,2*x-y-z=1) x = 2/3 y =-1/2 z =5/65. 符號(hào)微分方程求解 用一個(gè)函數(shù)可以方便地得到
16、微 分方程的符號(hào)解符號(hào)微分方程求解指令:dsolve命令格式:dsolve(f,g)f 微分方程,可多至12個(gè)微分方程的求 解;g為初始條件默認(rèn)自變量為 x,可任意指定自變量t, u等微分方程的各階導(dǎo)數(shù)項(xiàng)以大寫(xiě)字母D表示 dtdydxdy22dtydnndtyd22dxydnndxyd或或或y的一階導(dǎo)數(shù) Dyy的二階導(dǎo)數(shù) D2yy的 n 階導(dǎo)數(shù) Dnyy1,y2=dsolve(x1,x2,xn) 返回 微分方程的解一階微分方程dsolve(Dx=y,Dy=x,x(0)=0,y(0)=1)ans =x(t) = sin(t), y(t) = cos(t)二階微分方程dsolve(D2y=-a2*
17、y,y(0)=1,Dy(pi/a)=0)ans =cos(a*x)例3.y=dsolve(D2y+2*Dy+2*y=0,y(0)=1,Dy(0)=0)ans =exp(-x)*cos(x)+exp(-x)*sin(x)ezplot(y) 方程解y(t)的時(shí)間曲線圖22dxyddxdy202y00 )(dxdy,1)0(y求該方程的解-6-4-2024050100150200250300 xexp(-x)*cos(x)+exp(-x)*sin(x)-6-4-2024050100150200250texp(-t) sin(t)+exp(-t) cos(t)三、maple函數(shù)符號(hào)運(yùn)算的擴(kuò)展maple
18、是專門進(jìn)行數(shù)學(xué)運(yùn)算的軟件工具, 具有超強(qiáng)的符號(hào)運(yùn)算能力,提供了 幾乎包括所有數(shù)學(xué)領(lǐng)域的專用函數(shù)matlab依賴于maple的內(nèi)核與函數(shù)庫(kù),擴(kuò) 展了自己的符號(hào)運(yùn)算功能。 matlab還設(shè)計(jì)了對(duì)maple庫(kù)函數(shù)的調(diào)用功能使得已有的maple數(shù)學(xué)功能,可以擴(kuò)充matlab中,作為自身符號(hào)運(yùn)算能力的擴(kuò)展。1. maple內(nèi)核訪問(wèn)函數(shù)可以訪問(wèn)maple內(nèi)核的matlab函數(shù): maple 訪問(wèn)maple內(nèi)核函數(shù) mapleinit maple函數(shù)初始化 mpa maple函數(shù)定義 mhelp maple函數(shù)幫助命令 procread maple函數(shù)程序安裝. maple 的調(diào)用格式maple(表達(dá)式)
19、將表達(dá)式送至maple內(nèi)核, 返回符號(hào)表達(dá)式結(jié)果。maple (函數(shù),變量1,變量2) 調(diào)用maple函數(shù),傳遞給定 變量。 例1. 展開(kāi)5階 bernoulli 多項(xiàng)式,計(jì)算 x=3 時(shí)bernoulli 數(shù)。a=maple(bernoulli(5,x)a =-1/6*x+5/3*x3+x5-5/2*x4a=maple(bernoulli(5,3)a =85例2. 化簡(jiǎn)三角函數(shù)式sin2x+cos2xa=maple(simplify(sin(x)2+cos(x)2);)a =1例4. 求f(t)=e-3tsint的拉式變換f=maple(laplace(exp(-3*t)*sin(t),t,
20、s);)f =1/(s+3)2+1)例4. 尋找二次多項(xiàng)式的完全平方 f (x) = x2+2x+2a=maple(completesquare(x2+2*x+2)a =completesquare(x2+2*x+2) 將工具包裝入內(nèi)存maple(with(student);)a=maple(completesquare(x2+2*x+2)a =(x+1)2+1maple軟件中的所有函數(shù),在初始化時(shí)并沒(méi)有完全裝入內(nèi)存,可用readlib指令把庫(kù)函數(shù)讀入內(nèi)存,或用with指令將應(yīng)用工具包裝入內(nèi)存。調(diào)用格式maple(readlib(函數(shù)名);)maple(with(工具包名);)例5.求sin(
21、x2+y2)在x=0,y=0處泰勒級(jí)數(shù)展開(kāi)式,8階截?cái)?。maple(mtaylor(sin(x2+y2),x=0,y=0,8)ans =mtaylor(sin(x2+y2),x = 0, y = 0,8)maple(readlib(mtaylor);)maple(mtaylor(sin(x2+y2),x=0,y=0,8)ans =x2+y2-1/6*x6-1/2*y2*x4-1/2*y4*x2-1/6*y62. mpa maple變量定義任何一個(gè)matlab定義的函數(shù)f,可使用mpa語(yǔ)句直接調(diào)用,還可把 f 定義成maple變量v。maple的工作空間與matlab工作空間是相互獨(dú)立的, 所以
22、f 與v是屬于不同工作空間中的變量mpa的調(diào)用格式: mpa(v,f) mpa v ff為matlab工作空間中已存在的變量例. 電磁力計(jì)算公式為試I=0.5,x=0.1鄰域展開(kāi)泰勒級(jí)數(shù),3階截?cái)?,令常?shù) ,1.直接調(diào)用maple(readlib(mtaylor);)maple(mtaylor(k*I2/x2,I=0.5,x=0.1,3);)2204)(),(xNISxIF420NSk22),(xkIxIF2.定義符號(hào)函數(shù)f(matlab6.1無(wú)map函數(shù))f=k*I2/x2;maple(mtaylor(f,I=0.5,x=0.1,3);)ans =mtaylor(f,I = .5, x = .1,3)mpa(u,f)maple(mtaylor(u,I=0.5,x=0.1,3);)ans =25.*k-.50e3*k*(x-.1)+.10e3*k*(I-.5)+7500.000000000000*k*(x-.1)2+.1e3*k*(I-.5)2-.20e4*k*(I-.5)*(x-.1)注意:matlab符號(hào)運(yùn)算時(shí),可以識(shí)別matlab定義的符號(hào)變量,但在調(diào)用 maple 函數(shù)時(shí),需將matlab變量定義為maple變量后,所調(diào)用的函數(shù)方可識(shí)別和執(zhí)行3.mhelp maple函數(shù)幫助命令 mh
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《建設(shè)工程施工合同示范文本》
- 幼兒園健康教案《五官很重要》及教學(xué)反思
- 2025年運(yùn)載火箭控制系統(tǒng)仿真實(shí)時(shí)處理系統(tǒng)合作協(xié)議書(shū)
- 后勤部門工作參考計(jì)劃
- 2025年聚甲醛、聚甲醛合金及改性材料項(xiàng)目發(fā)展計(jì)劃
- 大型型貨車租賃合同書(shū)
- 特別贊助協(xié)議書(shū)
- 國(guó)際航運(yùn)船只租賃合同
- 商場(chǎng)租賃合同書(shū)
- 2025年古馬隆樹(shù)脂項(xiàng)目建議書(shū)
- 最新國(guó)家開(kāi)放大學(xué)電大《工程數(shù)學(xué)》期末題庫(kù)及答案
- 海底噴流沉積型礦床-sedex
- 基于BP神經(jīng)網(wǎng)絡(luò)的零售戶銷售假煙行為的預(yù)警模型
- 醫(yī)院感染監(jiān)測(cè)清單
- Q∕SY 05592-2019 油氣管道管體修復(fù)技術(shù)規(guī)范
- JIS G3141-2021 冷軋鋼板及鋼帶標(biāo)準(zhǔn)
- 籃球校本課程教材
- 小學(xué)數(shù)學(xué)校本教材(共51頁(yè))
- 遺傳群體文獻(xiàn)解讀集
- 工藝裝備環(huán)保性與安全性的設(shè)計(jì)要點(diǎn)
- [玻璃幕墻施工方案]隱框玻璃幕墻施工方案
評(píng)論
0/150
提交評(píng)論