matlab中怎麼將一般矩陣轉為上三角矩陣

2021-03-03 21:37:19 字數 913 閱讀 5182

1樓:匿名使用者

不過有個 lu() 函式,傳入權一個矩陣後可以返回該矩陣的 lu分解,而分解出來的 u 矩陣好像就是所需要的上三角矩陣,可利用以下命令求出:

[l, u] = lu(a),則 u 是所求上三角矩陣。

2樓:匿名使用者

上三角:triu(a)

下三角:tril(a)

希望採納,設定為滿意答案,謝謝。

matlab中將任意矩陣轉換成上三角矩陣的原始碼

3樓:電燈劍客

有兩個函式,一個是lu,另一個是qr,你自己help一下。

前一個的原理內是(選主元)gauss消去法容,後一個的原理是利用映象變換(householder變換)來消去,詳細的原理你自己去查數值線性代數(矩陣計算)的教材。

補充:看來你根本沒明白你自己在做的是什麼變換。

行變換相當於左乘初等矩陣,列變換相當於右乘初等矩陣,所以你在做的就是a=xuy,x和y是可逆矩陣,u是上三角矩陣。我給你提供的就是選取x和y的一種辦法。

4樓:匿名使用者

function b=gauss(a)

b=a;

[m,n]=size(a);

for i=1:min([m,n])

j=find(b(i:end,i),1);

if isempty(j)

break;

else

b([i,i+j-1],:)=b([i+j-1,i],:);

b(i+1:end,i:end)=b(i+1:

end,i:end)-ones(m-i,1)*b(i,i:end)/b(i,i).

*(b(i+1:end,i)*ones(1,n+1-i));

endend

如何實現matlab將矩陣中前幾列置為

a 1 3 0 前3列置0 矩陣名字為a a 1 j 0 這樣就能把前j列置為零 1 思路 使用布林陣列引用矩陣中所有大於某值的元素,然後將其賦值為0。2 a a 10 0 將矩陣a中大於10的元素設定為0。3 示例 size a m,n 第一列設為0 a 1 0 matlab如何使矩陣中大於某值的...

在matlab中怎麼把矩陣變成列向量

怎麼樣將行向量變成矩陣一個矩陣?可以用一個for迴圈語句來寫 a 123 4567 891011 12 這個相當於行向量 b zeros 4,3 這個相當於你申請一個空間,即m n的陣列fori 1 4 m行 forj 1 3 n列 b i,a 1 3 i 1 3 取每n個數作為一行存入b陣列 en...

MATLAB中如何直接輸入矩陣,怎麼在matlab中輸入變數的矩陣

1.試分別生成 5 階的單位陣 8 階均勻分佈的隨機矩陣及其下三角矩陣 a eye 5 b rand 8 c tril b 2.生產列向量 x 1,3,5,7,9,29 x 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 方法1 y 1 2 29 方法2 z lins...