日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

c++求矩阵的秩_Matlab:矩阵的秩,简化梯形矩阵和线性方程组

發(fā)布時(shí)間:2025/3/19 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c++求矩阵的秩_Matlab:矩阵的秩,简化梯形矩阵和线性方程组 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

點(diǎn)擊上方藍(lán)字關(guān)注?無(wú)距書(shū)鄉(xiāng)?獲取持續(xù)更新

在開(kāi)始今天的正式內(nèi)容之前,先補(bǔ)充一個(gè)創(chuàng)建矩陣的方法——由向量組合成矩陣。A=[1;2;3],B=A+3,C=B+3,A, B, C 均為列向量,矩陣D由向量A, B,C 構(gòu)成,D=[A B C],則D是一個(gè)3x3的矩陣。示例如下:

矩陣的秩

矩陣的秩是矩陣中線性無(wú)關(guān)的行向量的數(shù)目。在matlab中求矩陣的秩用rank()命令,如:求前述矩陣D的秩,通過(guò)觀察的方法,矩陣的第三行減去第二行后都為1,第二行減去第一行后都為1。此時(shí),矩陣的第二行和第三行都為1,兩行線性相關(guān)可以消除其中一行,觀察可知矩陣的的秩為2,下面用matlab 驗(yàn)證一下。示例如下:

下面我們來(lái)隨機(jī)生成一個(gè)矩陣E并求rank(E)。示例如下:

矩陣E的秩為5,說(shuō)明矩陣E的各行均線性無(wú)關(guān)。

下面我們對(duì)矩陣E做一個(gè)簡(jiǎn)單的改造,將矩陣E的第五行換成第一行和第二行的和,此時(shí)矩陣E的第五行就可以用第一行和第二行線性表示了,即第五行可以通過(guò)行變換化為全零,此時(shí)rank(E)應(yīng)該等于4。在matlab中驗(yàn)證一下:

簡(jiǎn)化梯形矩陣

在筆算求矩陣的秩時(shí),通常都會(huì)對(duì)矩陣做梯形簡(jiǎn)化,方便觀察矩陣的秩,在解線性方程組時(shí)也會(huì)做這樣的簡(jiǎn)化。matlab中使用rref()命令來(lái)獲得簡(jiǎn)化梯形矩陣。示例如下:

通過(guò)簡(jiǎn)化后的梯形矩陣,很容易就能觀察到矩陣D的秩為2。

再來(lái)看看矩陣E,示例如下:

通過(guò)簡(jiǎn)化后的梯形矩陣,很容易就能觀察到矩陣E的秩為4。此處默認(rèn)將非零行的第一個(gè)非零元素化為1,所以后面出現(xiàn)了實(shí)數(shù)。

線性方程組

有了前面內(nèi)容的鋪墊,現(xiàn)在可以很方便的求解線性方程組的解了,并觀察解的性質(zhì)。給定如下方程組:

將方程組的系數(shù)矩陣記作M,?等式右邊的向量記作b。則:

看看系數(shù)矩陣M的秩:

rank(M)=2,滿秩,說(shuō)明方程組有唯一解。通過(guò)消元法,可以很容易解得x1=2,x2=5,這個(gè)在中學(xué)就學(xué)習(xí)過(guò)。

這里從線性代數(shù)的角度來(lái)求解這個(gè)方程組,一是Cramer 法則求解,二是高斯消元法,分述如下:

1. Cramer 法則:

首先計(jì)算系數(shù)矩陣的行列式detM;再用向量b替換M的第一列,并計(jì)算其行列式detM1,則 x1=detM1/detM;?同理,用b替換M的第二列,計(jì)算detM2,則 x2=detM2/detM。下面,在matlab中完成上述計(jì)算過(guò)程并驗(yàn)證結(jié)果。

如上圖所示,x1=2,x2=5,結(jié)果與筆算一樣。這里舉例用了二元方程組,對(duì)于變量個(gè)數(shù)多余2的時(shí)候,matlab的簡(jiǎn)便性就更突出了。

2.?高斯消元法

高斯消元法是將系數(shù)矩陣M和列向量b組合在一起,做行變換得到簡(jiǎn)化梯形矩陣,再求解。仍然用上面的方程組做實(shí)驗(yàn):

令:Mb=[M b]

經(jīng)過(guò)梯形簡(jiǎn)化后,方程組變?yōu)槿缦滦问?#xff1a;

一眼就能觀察出來(lái),x1=2,x2=5。比高斯消元法還要簡(jiǎn)單。

再補(bǔ)充一個(gè)三元線性方程組:

系數(shù)矩陣仍記作M,等式右邊的向量記作b。

先計(jì)算rank(M):

rank(M)=3,滿秩,方程組有唯一解。

先用Cramer 法則求解:

計(jì)算各個(gè)行列式的值:

計(jì)算x1,x2,x3的值:

再看看高斯消元法求解:

經(jīng)過(guò)梯形簡(jiǎn)化后,方程組變?yōu)槿缦滦问?#xff1a;

可以很方便的得到 x1=8,x2=15,x3=6。

解線性方程組是科學(xué)計(jì)算中的一個(gè)很重要很基本的部分,除了上面介紹的方法,關(guān)于線性方程組的解法還有很多種,后面會(huì)陸續(xù)介紹。對(duì)于那些不是線性的方程組,在經(jīng)過(guò)簡(jiǎn)化后,也可以化作線性方程組來(lái)求解。所以,線性方程組的解法是科學(xué)計(jì)算的一個(gè)基石。

這么簡(jiǎn)單實(shí)用的工具,不來(lái)用一下嗎!

長(zhǎng)按識(shí)別二維碼關(guān)注我

點(diǎn)個(gè)贊,攜手共進(jìn)

回復(fù)“ishare”加入社區(qū)

總結(jié)

以上是生活随笔為你收集整理的c++求矩阵的秩_Matlab:矩阵的秩,简化梯形矩阵和线性方程组的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。