MATLAB的符號計算資料_第1頁
MATLAB的符號計算資料_第2頁
MATLAB的符號計算資料_第3頁
MATLAB的符號計算資料_第4頁
MATLAB的符號計算資料_第5頁
已閱讀5頁,還剩30頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

第七講MATLAB的符號計算

所謂符號計算是指在運算時,無須事先對

變量賦便,而將所得到結果以標準的符號形

式來表不。

MathWorks公司以Maple的內核作為符號

計算引擎(Engine),依賴Maple已有的函

數庫,開發了實現符號計算的兩個工具箱:

基本符號工具箱和擴展符號工具箱。

、符號奸案基砒

、符號計算基礎

(一)定義符號變量

參與符號運算的對象可以是符號變量、

符號表達式或符號矩陣。符號變量要先定

義,后引用。可以用sym函數、syms函數

將運算量定義為符號型數據。引用符號運

算函數時,用戶可以指定函數執行過程中

的變量參數;若用戶沒有指定變量參數,

則使用Endsym函數默認的變量作為函數的

變量參數。

、符號計算基礎

(一)定義符號變量

1、sym函數

sym函數的主要功能是創建符號變量,以便進行符號

運算,也可以用于創建符號表達式或符號矩陣。用sym函

數創建符號變量的一般格式為:

x=sym('x')

其目的是將'X,創建為符號變量,以X作為輸出變量名。

每次調用該函數,可以定義一個符號變量。

、符號計算基礎

(一)定義符號變量

【例1】作符號計算:

ax-by=l

{ax+by=5

a,b,x,y均為符號運算量。在符號運算前,

應先將a,b,x,y定義為符號運算量

一、符號計算基礎

(一)定義符號變量

a=sym(6a,);%定義,,為符號運算量,輸出變量名為a

y=2/bb=sym(6b,);

x=sym('x');

尸ym(y);

[x,y]=solve(a*x-b*y-l,a*x+b*y-5,x,y)

%以2力為符號常數,x,y為符號變量

即可得到方程組的解:

x=3/a

y=2/b

、符號計算基礎

(一)定義符號變量

【例2】已知一復數表達式z=x+i*y,試

求其共輒復數,并求該表達式與其共甄復數

乘積的多項式。

為了使乘積表達式屐2+y-2非負,這

里,把變量x和y定義為實數。

x=sym(4x\^reaT);

y=sym('y','real');

、符號計算基礎

(一)定義符號變量

Z=x+i*y;%定義復數表達式

conj(z);%求共甄復數1

expand(z*conj(z))%求表達式與其共輾復數乘積的多項式

ans=

xA2+yA2

若要去掉'X,的屬性,可以使用下面語句

x=sym('x\'unreal')

將'X,創建為純格式的符號變量。

、符號計算基礎

(一)定義符號變量

2、syms函數

syms函數的功能與sym函數類似。syms

函數可以在一個語句中同時定義多個符號

變量,其一般格式為:

symsarglarg2...argN

用于將rgl,arg2,...,argN等符號創建為符

號型數據。

、符號計算基礎

(二)默認符號變量

在數學表達式中,一般習慣于使用排在

字母表中前面的字母作為變量的系數,而

用排在后面的字母表示變量。例如:

f=ax2+bx+c

表達式中的a,b,c通常被認為是常數,用

作變量的系數;而將x看作自變量。

一、符號計算基礎

(二)默認符號變量

例如,數學表達式

f=xn

g=sin(at+b)

根據數學式中表示自變量的習慣,默認a,b,c為符號常

數,x為符號變量。

若在MATLAB中表示上述表達式,首先用syms函數

定義a,b,n,t,x為符號對象。在進行導數運算時,由

于沒有指定符號變量,則系統采用數學習慣來確定表達

式中的自變量,默認a,b,c為符號常數,x,t為符號變量。

即:對函數俅導為:df/dx

對函數g求導為:dg/dt

一、符號計算基礎

(二)默認符號變量

為了了解函數引用過程中使用的符號變量個數及變量

名,可以用flndsym函數查詢默認的變量。該函數的引用

格式為:

flndsym(f,n)

說明:f為用戶定義的符號函數,

n為正整數,表示查詢變量的個數。

n=i,表示查詢i個系統默認變量。n值省略時表示查詢

符號函數中全部系統默認變量。

、符號計算基礎

(二)默認符號變量

[例3]查詢符號函數

f=xn

g=sin(at+b)

中的系統默認變量。

symsabntx%定義符號變量

f=xAn;%給定符號函數

g=sin(a*t+b);

findsym(f,l)%在£函數中查詢1個系統默認變量

ans=x

表示f函數中查詢的1個系統默認變量為X。

-、符號計算基礎

(三)符號表達式

符號表達式由符號變量、函數、算術運算符等組成。

符號表達式的書寫格式與數值表達式相同。例如,數學表

達式

其符號裂決式晝產1+sqr(5*x))/2

注意,在定盤達式前應先將表達式中的字符x定義為

符號變量。

、符號計算基礎

(四)生成符號函數

將表達式中的自變量定義為符號變量后,

賦值給符號函數名,即可生成符號函數。

例如有一數學表達式:

ax2+,zby2

=-------1-----

、符號計算基礎

(四)生成符號函數

其用符號表達式生成符號函數fky的過程

為:

symsabcxy%定義符號運算量

fxy=(a*xA2+b*yA2)/cA2%生成符號函數

生成符號函數fxy后,即可用于微積分等

符號計算。

-、符號計算基礎

(四)生成符號函數

【例4】定義一個符號函數fxy=(a*x2+b*y2)/c2,分別求該

函數對x、y的導數和對x的積分。

symsabcxy%定義符號變量

fxy=(a*xA2+b*yA2)/cA2;%生成符號函數

diff(fxy,x)%符號函數fxy對x求導數

ans=2*a*x/cA2

diff(fxy,y)%符號函數fky對y求導數?

ans=2*b*y/cA2%符號函數fky對x求積分

int(fxy,x)

ans=l/cA2*(l/3*a*xA3+b*yA2*x)

二、微積分

(一)微積分函數

1.求極限

函數limit用于求符號函數f的極限。系統

可以根據用戶要求,計算變量從不同方向

趨近于指定值的極限值。該函數的格式及

功能:

、微積分

limit(f9x9a):求符號函數f(X)的極限值。即計算當變量x趨近

于常數a時,f(x)函數的極限值。

limit(f9a):求符號函數f(X)的極限值。由于沒有指定符號函

數f(X)的自變量,則使用該格式時,符號函數f(X)的變量為函數

findsym⑴確定的默認自變量,既變量x趨近于a。

limit(f):求符號函數f(X)的極限值。符號函數f(X)的變量為

函數findsym⑴確定的默認變量;沒有指定變量的目標值時,系統默認變量

趨近于0,即a=0的情況。

!

limit(f9x9a/right):求符號函數柏勺極限值。Tight,表示變量x

從右邊趨近于a。

f

limit(f9x9a/left):求符號函數柏勺極限值。心田表示變量X從

左邊趨近于a。

二、微積分

【例5】求極限

x(esmx+l)-2(ezgx-l)

lim

x—>0si?n3x

symsx;%定義符號變量

f=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/sin(x)~3;%確定符號表達式

w二limit(f)%求函數的極限

w=-1/2

二、微積分

2.微分函數

diff函數用于對符號表達式S求微分。該函數的一般引

用格式為:

diff(s/v\n)

說明:

.應用diff(S)沒有指定微分變量和微分階數,則系統

按flndsym函數指示的默認變量對符號表達式S求一階微分。

應用diff(s,'v')或diff(s,sym(,'))格式,

表示以v為自變量,對符號表達式s求一階微分。

應用diff(s,n)格式,表示對符號表達式s求n階微

分,n為正整數。

應用diff(s,'v',n)diff(s,n,▽)格式,表

示以v為自變量,對符號表達式s求n階微分。

、微積分

【例6】求導數:

dsinx2

dx

x=sym('x');%定義符號變量

t=sym('t');

diff(sin(xA2))%求導運算

ans=

2*cos(xA2)*x

二、微積分

3.積分函數

積分函數int(s,v,a,b)可以對被積函

數或符號表達式s求積分。其引用格式為:

int(s,v,a,b)

說明:

應用int(s)格式,表示沒有指定積分變量和積分階數時,系統按

flndsym函數指示的默認變量對被積函數或符號表達式s求一階積分。

應用int(s,v)格式,表示以v為自變量,對被積函數或符號表達式

s求一階不定積分。

應用積分函數時,如果給定a、b兩項,表示是進行定積分運算。a、

b分別表示定積分的下限和上限。不指定積分的下限和上限表示求不

定積分。

、微積分

【例7】求下述積分。

求積分:

--------———djc

1+\2

symsx

int(l/(l+xA2))

ans二

atan(x)

、微積分

4.級數(級數求和)

級數求和運算是數學中常見的一種運算。

例如:

23n

f(x)=a0+a1x+a2x+a3x+...+anx

函數symsum可以用于此類對符號函數f的求和

運算。該函數的引用時,應確定級數的通項式s,

變量的變化范圍a和b。該函數的引用格式為:

symsum(s9a9b)

二、微積分

【例8】求級數的和:鍵入:

1/12+1/22+1/32+1/42+.......

symsk

symsum(1/kA2J,Inf)%1<值為1到無窮大

ans=

l/6*piA2

其結果為:1/12+1/22+1/32+1/42+.......=TT2/6

三、荀化方程表達式

三、簡化方程表達式

1.因式分解

factor函數的功能為:把多項式S分解為多個因式,各

多項式的系數均為有理數。格式為:

factor(s)

【例9】將表達式(x八9-1)分解為多個因式。,

symsx

foctor(xA9-l)

ans=

(x-l)*(x^2+x+l)*(x八6+x八3+1)

三、簡化方程表達式

2.嵌套

將符號多項式S用嵌套形式表示,即用多層括號的形式

表示。Horner函數可以實現此功能。該函數的格式為:

homer(s)

【例10】將表達式*/\3-6*乂”+11*乂-6用嵌套形式表

7J\o

symsx

homer(xA3-6*xA2+ll*x-6)

ans=

-6+(ll+(-6+x)*x)*x

四、解方程

四、解方程

溫馨提示

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

評論

0/150

提交評論