MATLAB-簡介(5) MATLAB 符號(hào)數(shù)學(xué)1_第1頁
MATLAB-簡介(5) MATLAB 符號(hào)數(shù)學(xué)1_第2頁
MATLAB-簡介(5) MATLAB 符號(hào)數(shù)學(xué)1_第3頁
MATLAB-簡介(5) MATLAB 符號(hào)數(shù)學(xué)1_第4頁
MATLAB-簡介(5) MATLAB 符號(hào)數(shù)學(xué)1_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

MATLAB符號(hào)數(shù)學(xué)在前面,我們已介紹了MATLAB在數(shù)值運(yùn)算的能力,接著我們?cè)僬f明另一種不同的運(yùn)算法「符號(hào)數(shù)學(xué)」(symbolicmathematic)。符號(hào)代數(shù)一般我們做運(yùn)算時(shí)多半是以數(shù)值做運(yùn)算,例如一算式1+0.5=1.5就是以數(shù)值運(yùn)算;符號(hào)運(yùn)算即是能以分?jǐn)?shù)做運(yùn)算,而無須轉(zhuǎn)換成數(shù)值再運(yùn)算。再舉一例,我們皆知cos(x)微分得到sin(x),這樣的數(shù)學(xué)式你是無法用數(shù)值做運(yùn)算。當(dāng)然符號(hào)數(shù)學(xué)能運(yùn)算復(fù)雜的數(shù)學(xué)式,這也是我們使用它的目的。MATLAB的符號(hào)數(shù)學(xué)是放在一個(gè)叫符號(hào)數(shù)數(shù)學(xué)的工具箱,它的數(shù)學(xué)函數(shù)其實(shí)是來自于Maple(Maple是一個(gè)以符號(hào)運(yùn)算為主的數(shù)學(xué)運(yùn)算軟體)的運(yùn)算核心。在MATLAB中,符號(hào)對(duì)象是一種數(shù)據(jù)結(jié)構(gòu),包括符號(hào)常數(shù)、符號(hào)變量和符號(hào)表達(dá)式。符號(hào)常數(shù)、符號(hào)變量、符號(hào)函數(shù)、符號(hào)操作等則是用來形成符號(hào)表達(dá)式,嚴(yán)格按照代數(shù)、微積分等課程中的規(guī)則、公式進(jìn)行運(yùn)算,并盡可能給出解析表達(dá)式結(jié)果。數(shù)值表達(dá)式的變量必須事先被賦值。符號(hào)對(duì)象也要定義基本的符號(hào)對(duì)象,然后才能進(jìn)行符號(hào)運(yùn)算。創(chuàng)建符號(hào)常量Sym(‘常量’)

例:>>a=sym(‘sin(2)’)%創(chuàng)建符號(hào)常量

>>a=sym(sin(2))%把常量轉(zhuǎn)換為符號(hào)常量Sym(常量,參數(shù))參數(shù)作用D返回最接近的十進(jìn)制數(shù)值(默認(rèn)32位)F返回最接近的浮點(diǎn)表示R返回最接近的有理數(shù)型(為系統(tǒng)默認(rèn)方式),可表示為p/q,p*q,10^q,pi/q,2^q,sqrt(p)形式之一e返回最接近的帶有機(jī)器浮點(diǎn)誤差的有理值例:>>a1=2*sqrt(5)+pi

%創(chuàng)建數(shù)值常量>>a2=sym(‘2*sqrt(5)+pi’)%創(chuàng)建符號(hào)表達(dá)式>>a3=sym(2*sqrt(5)+pi)%按最接近的有理數(shù)型表示符號(hào)常量>>a4=sym(2*sqrt(5)+pi,’d’)%按最接近的十進(jìn)制浮點(diǎn)數(shù)表示符號(hào)常量>a5=‘2*sqrt(5)+pi’%字符串常量>>a31=a3-a1%數(shù)值常量和符號(hào)常量的計(jì)算sym(‘a(chǎn)rgv’,flagv)%falgv的取值可以為positive,real,和unreal。

>>sym(‘x’,’real’)>>sym(‘y’,’real’)syms(’arg1’,’arg2’,…,flagv)%定義字符串變量為符號(hào)變量Symsarg1arg2…,flagv

>>symsabcx>>syms(‘a(chǎn)’,’b’,’c’,’x’)f=sym(‘表達(dá)式’)>>z=sym(‘x+iy’)創(chuàng)建符號(hào)變量和表達(dá)式符號(hào)表示式在MATLAB中是將一符號(hào)表示式儲(chǔ)存唯一字串(characterstring),即是以二個(gè)單引號(hào)之內(nèi)的表示式來定義其為一符號(hào)式,例如'tan(y/x)','x^3-2*x^2+3','1/(cos(angle)+2)'

的三個(gè)式子。在一符號(hào)表示式中,需要定義所謂的獨(dú)立變數(shù)。如果未曾事先指定何者為獨(dú)立變數(shù),MATLAB會(huì)自行決定。而它所決定變數(shù)的原則如下:它會(huì)挑選一個(gè)除了i和j之外而在字母上最接近x的小寫字元;如果在式子中并無上述字元,則x會(huì)被視為預(yù)設(shè)的獨(dú)立變數(shù)。函數(shù)symvar(s)

可以用已決定何者為獨(dú)立變數(shù)。請(qǐng)看以下的例子:expressionSsymvar(S)

symvar('tan(y/x)')xysymvar(‘x^3-2*x^2+3’)xsymvar('1/(cos(angle)+2)')xsymvar('3*a*b-6’)ba自由變量的確定規(guī)則-小寫字母i和j不能作為自由變量;-符號(hào)表達(dá)式有多個(gè)字符變量,則按照以下順序選擇自由變量:

①x;

②字母表順序中最接近x的字符變量;

③如果與x相同距離,則在x后面的優(yōu)先。-大寫字母比小寫字母都靠后。MATLAB提供了一個(gè)函數(shù)ezplot

可以畫單變數(shù)的符號(hào)式,其預(yù)設(shè)的獨(dú)立變數(shù)的范圍是-2π,2π。它的語法為ezplot(S),S代表符號(hào)變數(shù);另一個(gè)相關(guān)語法ezplot(S,[xmin,xmax]),則是設(shè)定獨(dú)立變數(shù)的范圍xmin到xmax。

平面曲線:ezplotMatlab符號(hào)函數(shù)繪圖ezplot(f(x))ezplot(f(x),[a,b])ezplot(f(x,y))ezplot(f(x,y),[a,b,c,d])ezplot(f(x,y),[a,b])例:ezplot(‘sin(x)’)ezplot(‘sin(x)’,[-pi,pi])ezplot(‘x^2+y^2-9’)ezplot(‘x^2+y^2-9’,[-3,3])函數(shù)表達(dá)式要加單引號(hào)。Iffisafunctionofthevariablesuandv(ratherthanxandy),thenthedomainendpointsa,b,c,anddaresortedalphabetically.Thus,

EZPLOT('u^2-v^2-1',[-3,2,-2,3])plotsu^2-v^2-1=0over-3<u<2,-2<v<3.ExamplesEitherofthefollowingcommands,ezplot('erf(x)')ezplot

erf(x)plotagraphoftheerrorfunction::Thestatement,ezplot('sin(x)',[02*pi])createstheplot:>>ezplot('sin(t)','cos(t)')ezplot('sin(3*t)*cos(t)','sin(3*t)*sin(t)',[0,pi])

符號(hào)表達(dá)式的書寫有多種形式:多項(xiàng)式表達(dá)形式;因式形式表達(dá)形式嵌套形式表達(dá)形式符號(hào)運(yùn)算中有許多操作指令,如collect(合并同類項(xiàng))、expand(對(duì)指定項(xiàng)展開)、factor(進(jìn)行因式或因子分解)、horner(轉(zhuǎn)換成嵌套形式)、numden(提取公因式)、simplify(恒等式簡化)、pretty(習(xí)慣方式顯示),simple等。注:EXPR可以是符號(hào)表達(dá)式或矩陣。在這種情況下,這些指令將對(duì)該矩陣的元素逐個(gè)進(jìn)行操作。符號(hào)表達(dá)式的操作以下的函數(shù)用來簡化數(shù)學(xué)式,如展開、化簡或合并同類項(xiàng)。相關(guān)的指令有:collect(S)合并S的同類項(xiàng)collect(S,'v')合并S的同類項(xiàng),是以v為獨(dú)立變數(shù)expand(S)

將S表示式展開factor(S)

還原S的因式(factorization)simple(S)

如果可能的話,將S表示式再做簡化simplify(S)

利用Maple簡化法則化簡S表示式我們來看一些例子

>>symsxy>>factor(x^3-1)ans=(x-1)*(x^2+x+1)>>expand((x-3)^2+(y-4)^2

)ans=x^2-6*x+25+y^2-8*y>>collect((x-3)^2+(y-4)^2

)ans=x^2-6*x+9+(y-4)^2>>collect((x-3)^2+(y-4)^2,’y’)

ans=y^2-8*y+(x-3)^2+16>>S3='sqrt(a^4*b^7)'>>S4='14*x^2/(22*x*y)';

>>simplify(sqrt(a^4*b^7))ans=a^2*b^(7/2)>>simple(14*x^2/(22*x*y))ans=7/11*x/y符號(hào)表示式的運(yùn)算以下列出幾個(gè)常用的符號(hào)運(yùn)算函數(shù),它們可以將一符號(hào)數(shù)學(xué)式轉(zhuǎn)換成另一種型態(tài)。分列如下:horner(S)

將S轉(zhuǎn)換成巢狀表示式numden(S)

將S的有理數(shù)表示成分子和分母的形式numeric(S)

將S改成數(shù)值式(S不能含有任何符號(hào)變數(shù))poly2sym(c)

轉(zhuǎn)換多項(xiàng)式系數(shù)向量c為符號(hào)多項(xiàng)式pretty(S)

將S顯示成數(shù)學(xué)式sym2poly(S)

轉(zhuǎn)換S為多項(xiàng)式系數(shù)向量symadd(A,B)執(zhí)行A+B的符號(hào)加法symdiv(A,B)

執(zhí)行A+B的符號(hào)除法symmul(A,B)

執(zhí)行A+B的符號(hào)乘法sympow(S,p)

執(zhí)行S^p的符號(hào)次方運(yùn)算symsub(A,B)

執(zhí)行A+B的符號(hào)減法我們接著看幾個(gè)應(yīng)用上述函數(shù)的例子>>p2='3*y./(y+2)';>>p1='1/(y-3)';>>p3='(y+4)*(y-3)*y';

>>symmul('1/(y-3)'

,'(y+4)*(y-3)*y’)ans=(y+4)*y>>sympow(p2,3)ans=27*y^3/(y+2)^3>>p1='1/(y-3)';>>p2='3*y/(y+2)';>>p3='(y+4)*(y-3)*y';

>>symadd(p1,p2)ans=1/(y-3)+3*y/(y+2)>>[num,den]=numden(symadd(p1,p2))ans=[-8*y+2+3*y,(y-3)*(y+2)]>>horner(symadd(p3,'1')ans=1+(-12+(1+y)*y)*yTaylorseriesexpansion.TAYLOR(f)isthefifthorderMaclaurinpolynomialapproximationtof.Threeadditionalparameterscanbespecified,inalmostanyorder.TAYLOR(f,n)isthe(n-1)-storderMaclaurinpolynomial.TAYLOR(f,a)istheTaylorpolynomialapproximationaboutpointa.TAYLOR(f,x)usestheindependentvariablexinsteadofFINDSYM(f).Taylor級(jí)數(shù)展開Examples:

taylor(exp(-x))returns1-x+1/2*x^2-1/6*x^3+1/24*x^4-1/120*x^5taylor(log(x),6,1)returnsx-1-1/2*(x-1)^2+1/3*(x-1)^3-1/4*(x-1)^4+1/5*(x-1)^5taylor(sin(x),pi/2,6)returns1-1/2*(x-1/2*pi)^2+1/24*(x-1/2*pi)^4taylor(x^t,3,t)returns1+log(x)*t+1/2*log(x)^2*t^21練習(xí)Matlab

ezplot

畫單變數(shù)的符號(hào)式2練習(xí)M

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論