[運算] 迴圈改寫及反矩陣

作者: ericrobin   2015-10-09 22:28:02
最近剛接觸matlab, 有兩個問題不知如何解決
1. 若要計算A的反矩陣乘以B, inv(A)*B 與 A\B 有何差異?
2. 另一個關於迴圈, 程式某段落長這樣, 其中 Ht 為 (M*t X M) 的矩陣
stemp6 = zeros(M,1);
stemp5 = [];
stemp7 = [];
for i = 1:t
stemp8 = Ht((i-1)*M+1:i*M,:);
stemp7a = [];
ic = 1;
for j = 1:M
stemp7a = [stemp7a ; stemp8(j,1:ic)'];
ic = ic+1;
stemp6(j,1) = sqrt(Ht((i-1)*M+j,j));
end
stemp5 = [stemp5 ; stemp6'];
stemp7 = [stemp7 ; stemp7a'];
end
這種寫法會讓矩陣維度不斷改變,
想請問該如何改寫才有效率呢?
先前沒寫過什麼程式, 還麻煩大家指點Orz
作者: celestialgod (天)   2015-10-09 23:10:00
1. A\B比較有效率2. sample6只是特定位置的sqrt感覺可以一次寫完直接可以把sample5寫出來sample7a看不懂,j每個都大於1啊,為啥要用if

Links booklink

Contact Us: admin [ a t ] ucptt.com