齊次線性方程組和非齊次線性方程組

2021-09-02 17:22:29 字數 1325 閱讀 4909

定義齊次線性方程組:等式右側常數項全部為0

非齊次線性方程組: 等式右側常數項不全部為0

2.齊次方程組的求解

將係數矩陣化為行階梯形矩陣,記全為0的行數量為r=n-r(a)。

則非零行的首非零元所在列對應的就是約束變數, 其餘變數即為自由變數。

將後r個自由變數未知數,每次只有乙個取值為1 ,其餘為0 ,然後每次分別帶入方程計算,對應的形成r個解。這些r個解的線性組合即為基礎解系。

3.非齊次方程組的求解

分為兩步:1.計算特解。將增廣矩陣化為行階梯形矩陣,將r個未知數全部取值為0,得到乙個特解。

2.計算對應的齊次方程組的基礎解系。

4. 方程組有解的判斷條件

齊次方程組:r(a)=n,只有唯一零解

r(a)非齊次方程組:r(a)< r(b) ,無解

r(a)=r(b) ,有解。具體解的情況同齊次方程組。

程式實現:列主消元法

#include#includeusing namespace std;

const int n = 3;

//交換2個數的大小

templatevoid swap(t& a, t& b)

//高斯列主元素消元法

void gaussin_l(double a[n][n], double b[n])

//如果該對角線元素是0,同樣不能用高斯消元法來求解

if (a[row][row] == 0)

//將找出的行進行交換

if (k != row)

swap(b[k], b[row]);

} //消元過程

double c[n];

for (j = k + 1; j < n; j++)

for (i = k + 1; i < n; i++)

b[i] = b[i] - c[i] * b[k];}}

double x[n];

x[n - 1] = b[n - 1] / a[n - 1][n - 1];

for (i = n - 2; i >= 0; i--)

//列印輸出

for (i = 0; i < n ; i++)

cout << " x" << "[" << i << "]=" << x[i] << endl;

}

思考:列主消元法僅適用於係數矩陣是方陣,而且必須是滿秩?

這個消元的過程不就是最簡化行列式的過程嗎

齊次座標

就是增加乙個維度。笛卡爾座標系(x,y)對應的齊次座標為(wx,wy,w)。可以對應無窮多個齊次座標,其實就是乙個投影的過程。

齊次線性方程組和非齊次線性方程組

1 常數項不同 齊次線性方程組的常數項全部為零,非齊次方程組的常數項不全為零。2 表示式不同 齊次線性方程組表示式 ax 0 非齊次方程組程度常數項不全為零 ax b。齊次線性方程組求解步驟 1 對係數矩陣a進行初等行變換,將其化為行階梯形矩陣 2 若r a r n 未知量的個數 則原方程組僅有零解...

6 9 齊次線性方程組

什麼是齊次線性方程組?每乙個方程等號右邊的數都為 0 舉例 三元齊次線性方程組 執行高斯 約旦消元法 對於齊次線性方程組來說 是一定有解的。因為,對於齊次線性方程組來說,方程等式都為0,那至少有乙個解 0 所以是有唯一解 0 還是無數解?根據之前的總結判斷 係數矩陣非零行個數 與 未知數個數 2 3...

求解非齊次線性方程組演算法

1.非齊次線性方程組有解的條件 如下非齊次線性方程組 由係數矩陣和常數列向量構成的增廣矩陣如下 無解情況 唯一解情況 無窮解情況 2.高斯消元法求解 步驟 1 消元法 通過矩陣的初等變換,將增廣矩陣變換為上三角矩陣 2 回代法 採用回代法求解上三角矩陣對應的非齊次線性方程組,即從第n個方程開始求解,...