私は必要な値をすべて出力し、各値はcondA
とCGSorth
です。しかし、私はそれらをカラム名としてcondA
とCGSorth
という素敵なテーブルに配置し、forループから出力された各値をテーブルの各行に配置したいと考えています。これはMATLABでも可能ですか?要求ごととしてテーブルを値でMATLABに埋め込む方法
nr=50; %Number of rows
nc=10; %Number of columns
for j = 1:10,
CondNumb=10^j-1;
A=randn(nr,nc);
[U,S,V]=svd(A);
S(S~=0)=linspace(CondNumb,1,min(nr,nc));
A=U*S*V';
condA = cond(A)
[Q1,R1] = cgs(A);
% Test orthgonality of Q
I = eye(10);
CGSorth = norm(Q1'*Q1 - I)
end
、私ははい、それは可能だ、
function [Q,R] = cgs(A)
% CGS computes the thin QR factorization
% of A using the CGS algorithm
% --------------------------------------
[m,n] = size(A);
Q = A; R = zeros(n);
for k = 1:n
R(1:k-1,k) = Q(:,1:k-1)'*A(:,k);
Q(:,k) = A(:,k)- Q(:,1:k-1)*R(1:k-1,k);
R(k,k) = norm(Q(:,k));
Q(:,k) = Q(:,k)/R(k,k);
end
end
MATLABから 'cgs'を使用していますか?もしあなたがそうであれば、 'cgs'ステートメントは不完全です。これは、共役勾配法を使用して、方程式の線形システムを解く際に右辺のベクトル「b」を必要とします。このコードを実行可能にするために編集してください。 – rayryeng
@rayryengいいえcgsは私自身の機能でした。今私はそれをqr()と言うだけに変更しました。コードは実行する必要がありますが、適切な値は与えません。ありがとう。 – jchaykow
問題ありません。私はあなた自身の 'cgs'関数を使っていたことを知らなかったので、これを元に戻すことができます。あなたはおそらくあなたのポストでそれを明確にしたいと思う。 – rayryeng