%***************************************************************** % File: CHOL3.M % % Scopo: Decomposizione di Cholesky (matrici tridiagonali) % % Uso: [v1,v2]=chol3(d1,d2) % % Input: d1 diagonale principale di una matrice tridiagonale A % d2 diagonale secondaria di A (prima componente = 0 per % avere uguale dimensione di d1) % % Output: v1,v2 vettori contenenti le componenti delle diagonali % principale e sopradiagonale della matrice V di decom- % posizione (V'*V=A) % % Richiami: % Commenti: Questo programma ha lo scopo di ridurre sia il numero % di operazioni che l'occupazione di memoria. % % Autori: mf %***************************************************************** % function [v1,v2]=chol3(d1,d2) n=max(size(d1)); indk=[0:n]; % per evitare operazione calcolo indice di v1 in for v1=zeros(d1);v2=zeros(d2); v1(1)=sqrt(d1(1)); for k=2:n; v2(k)=d2(k)/v1(indk(k)); v1(k)=sqrt(d1(k)-v2(k)^2); end