R=LD(A) -
Data la matrice a non singolare e simmetrica definita
positiva, la funzione esegue la fattorizzazione della matrice
data e restituisce nella parte strettamente triangolare inferiore di R
le componenti significative della matrice L, e nella diagonale
restituisce la diagonale della matrice D
%LD %R=LD(A) %Pre: A è una matrice simmetrica definita positiva. % % La funzione restituisce in L una matrice che riassume % la fattorizzazione LDL^T di A. % Nella parte strettamente triangolare inferiore di R si % trovano le componenti di L e la dagonale principale è % uguale a quella % della matrice diagonale D. % Le matrici L e D sono tali che % A=L*D*L' % % See also PLU, QRHOUSE function R=LD(A) n=length(A); d=zeros(n); eta=zeros(n,n); R=zeros(n,n); for j=1:n-1 som=0; for k=1:1:j-1 eta(j,k)=A(j,k)*d(k); som=som+A(j,k)*eta(j,k); end d(j)=A(j,j)-som; for i=j+1:1:n som=0; for k=1:1:j-1 som=som+A(i,k)*eta(j,k); end som=A(i,j)-som; som=som/d(j); A(i,j)=som; end end R=tril(A,-1); for i=1:n R(i,i)=d(i); end return
/tmp/cn/esempio.txt2004-05-29