資源描述:
《matlab程序設(shè)計(jì)矩陣及其運(yùn)算課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、第二節(jié)矩陣及其運(yùn)算矩陣及其運(yùn)算MATLAB語(yǔ)言是由早期專門(mén)用于矩陣運(yùn)算的計(jì)算機(jī)語(yǔ)言發(fā)展而來(lái)的,其名稱就是“矩陣實(shí)驗(yàn)室”的縮寫(xiě)。MATLAB語(yǔ)言最基本、最重要的功能就是進(jìn)行實(shí)數(shù)矩陣或是復(fù)數(shù)矩陣的運(yùn)算,其所有的數(shù)值功能都以矩陣為基本單元來(lái)實(shí)現(xiàn)。矩陣是MATLAB的重要組成部分,將對(duì)矩陣及其運(yùn)算進(jìn)行詳細(xì)介紹。矩陣及其運(yùn)算一矩陣的生成(1)命令窗口直接輸入;(2)通過(guò)語(yǔ)句和函數(shù)產(chǎn)生矩陣;(3)在M文件中建立;(4)從外部的數(shù)據(jù)文件中導(dǎo)入矩陣最常用的是在命令窗口中直接輸入矩陣。方式:把矩陣的元素直接排列到方括號(hào)中,每行內(nèi)的元素用空格或者逗號(hào)相隔,行與行之
2、間的內(nèi)容用分號(hào)相隔。矩陣及其運(yùn)算二矩陣的基本數(shù)值運(yùn)算矩陣的基本運(yùn)算通常包含有矩陣與常數(shù)的四則運(yùn)算、矩陣與矩陣之間的的四則運(yùn)算以及矩陣的逆運(yùn)算等。本節(jié)將要對(duì)矩陣的這些運(yùn)算作簡(jiǎn)要的介紹。1矩陣與常數(shù)的四則運(yùn)算矩陣與常數(shù)的四則運(yùn)算即是指矩陣各元素與常數(shù)之間的四則運(yùn)算。在矩陣與常數(shù)進(jìn)行除法運(yùn)算時(shí),常數(shù)只能作為除數(shù)。例二如下:矩陣及其運(yùn)算2矩陣之間的四則運(yùn)算(1)矩陣與矩陣的加法(減法)矩陣與矩陣的加法(減法)即是指矩陣各元素之間的加法(減法)運(yùn)算。矩陣必須具有相同的階數(shù)時(shí)才可以進(jìn)行加法(減法)運(yùn)算。例三如下:矩陣及其運(yùn)算由上例可以看出,矩陣m3為3*3
3、的,而m1為4*4的。因而如果求m5=m3+m1,系統(tǒng)就會(huì)報(bào)錯(cuò)。(2)矩陣與矩陣的乘法在MATLAB7中,矩陣的乘法使用的是運(yùn)算符“*”。由數(shù)學(xué)知識(shí),我們知道們只有當(dāng)?shù)谝粋€(gè)矩陣(左矩陣)的列數(shù)等于第二個(gè)矩陣(右矩陣)的行數(shù)時(shí),兩個(gè)矩陣的乘積才有意義。例四矩陣的乘法運(yùn)算。矩陣及其運(yùn)算由上例可以看出,矩陣A為4*4階,矩陣D為3*3階,兩者的階數(shù)不符合乘法的要求,因此報(bào)錯(cuò)。(3)矩陣與矩陣的除法在MATLAB7中,矩陣的除法有左除和右除兩種,分別以符號(hào)“”和“/”表示。但是從MATLAB6以來(lái),矩陣的左除和右除的區(qū)別在逐漸減少。斜桿上面的數(shù)據(jù)除以
4、斜桿下面的數(shù)據(jù)。三矩陣的特征參數(shù)運(yùn)算關(guān)于矩陣的運(yùn)算,主要包括:矩陣的特征值運(yùn)算、行列式運(yùn)算、矩陣的范數(shù)運(yùn)算和矩陣的條件運(yùn)算等。矩陣及其運(yùn)算三矩陣的特征參數(shù)運(yùn)算一矩陣的乘方運(yùn)算和開(kāi)方運(yùn)算在MATLAB7中,可以使用Ap來(lái)計(jì)算A的p次方,使用函數(shù)sqrtm來(lái)對(duì)矩陣進(jìn)行開(kāi)方運(yùn)算。如果有X*X=A,則有sqrtm(A)=X。例五求矩陣的乘方和開(kāi)方運(yùn)算。矩陣及其運(yùn)算由此可見(jiàn),矩陣的開(kāi)方運(yùn)算和乘方運(yùn)算互為逆運(yùn)算。二矩陣的指數(shù)和對(duì)數(shù)運(yùn)算矩陣的指數(shù)運(yùn)算用expm函數(shù)來(lái)實(shí)現(xiàn);對(duì)數(shù)運(yùn)算用logm函數(shù)來(lái)實(shí)現(xiàn)。兩者互為逆運(yùn)算。例六矩陣的指數(shù)和對(duì)數(shù)運(yùn)算矩陣及其運(yùn)算三矩陣
5、的逆運(yùn)算矩陣求逆在矩陣運(yùn)算中,是非常重要的運(yùn)算。矩陣可逆的充分必要條件就是矩陣的行列式不為零。在MATLAB中,所有復(fù)雜的問(wèn)題都化為一個(gè)函數(shù)inv。例七求矩陣A的逆。四矩陣的行列式運(yùn)算當(dāng)矩陣的行和列相同時(shí),可以進(jìn)行矩陣的行列式操作。MATLAB提供了函數(shù)det來(lái)求行列式的值。例八求矩陣A的及其其逆矩陣B的行列式的值。矩陣及其運(yùn)算五矩陣的特征值運(yùn)算在矩陣中,特征值占據(jù)著重要的角色,在MATLAB中,可以利用eig、eigs兩個(gè)函數(shù)來(lái)進(jìn)行矩陣的特征值運(yùn)算,其使用的格式和注意事項(xiàng)如下:E=eig(X)命令生成由矩陣X的特征值所組成的一個(gè)列向量。其中X
6、必須是方陣。[V,D]=eig(X)命令生成兩個(gè)矩陣V和D,其中V是以矩陣X的特征向量作為列向量組成的矩陣,D是由矩陣X的特征值作為主對(duì)角線元素構(gòu)成的對(duì)角矩陣。矩陣及其運(yùn)算eigs函數(shù)使用方法同eig函數(shù)相同,eigs函數(shù)使用的是迭代法來(lái)求解矩陣的特征值和特征向量。例九求矩陣A和X的特征值和特征向量。矩陣及其運(yùn)算六矩陣的秩矩陣可以經(jīng)過(guò)初等行或列變換,將其轉(zhuǎn)換為行階梯行矩陣,而行階梯行矩陣所包含非零行的行數(shù)是一定的,這個(gè)確定的非零行的行數(shù)就是矩陣的秩。在MATLAB中,矩陣的秩可以通過(guò)函數(shù)rank來(lái)求得。七矩陣的跡矩陣的跡是指矩陣主對(duì)角線上所有元
7、素的和,也是矩陣各特征值,矩陣的跡可以通過(guò)trace函數(shù)求得。矩陣及其運(yùn)算四矩陣的分解運(yùn)算MATLAB的數(shù)學(xué)處理能力之所以強(qiáng)大,很大一部分的原因就是它的矩陣函數(shù)功能的擴(kuò)展。矩陣分解在數(shù)值分析和科學(xué)研究中有著重要的地位。常用的分解方法有以下幾種:三角分解(lu)、正交分解(qr)、特征值分解(eig)和奇異值分解(svd)。我們這里主要介紹特征值分解。矩陣及其運(yùn)算1、特征值分解由以前學(xué)過(guò)的知識(shí),我們已經(jīng)了解到在MATLAB是應(yīng)用函數(shù)eig來(lái)解決的。但是應(yīng)用到特征值分解的部分,需要在形式上作一定的變化,其使用的格式如下:[V,D]=eig(X)命令
8、生成兩個(gè)矩陣V和D,其中V是以矩陣X的特征向量作為列向量組成的矩陣,D是由矩陣X的特征值作為主對(duì)角線元素構(gòu)成的對(duì)角矩陣,使得滿足關(guān)系式X*V=V*D。