% Angewandte Numerik 1, SoSe 2014 % Uebungsblatt 02, Aufgabe 15: Cholesky-Zerlegung % % Testprogramm testRuntime zum Vergleich der Laufzeiten der % LR-Zerlegung, der Cholesky-Zerlegung und der Cholesky- % Zerlegung fuer Bandmatrizen clear all; close all; clc; %% Konstanten, Speicherplatz anlegen N = [2.^(3:9)]; % Dimension der Band-Matrix time_LR = zeros(1,length(N)); time_cholesky = zeros(1,length(N)); time_choleskyBand = zeros(1,length(N)); %% Rechenzeit fuer viele Matrixdimensionen n i = 1; for n = N fprintf('Matrixdimension: n = %d\n', n); A = rand(5,n); A = diag(A(1,:))+diag(A(2,2:end),1)+diag(A(3,2:end),-1)... + diag(A(4,6:end),5)+diag(A(5,6:end),-5); A = A+A'; A = A+(norm(A,1)+norm(A,Inf))*eye(n); tic [L, R] = lr(A); time_LR(i) = toc; tic L = cholesky(A); time_cholesky(i) = toc; tic Lb = choleskyBand(A,5); time_choleskyBand(i) = toc; i = i+1; end %% Visualisierung: Daten plotten loglog(N,time_LR,'g*--',N,time_cholesky,'b*-.',N,time_choleskyBand,'r*-') title('Vergleich der Laufzeiten: Funktionen lr, cholesky und choleskyBand.'... , 'FontSize', 12) xlabel('Matrix-Dimension n', 'FontSize', 12) ylabel('Rechenzeit in Sekunden', 'FontSize', 12); legend('lr', 'cholesky','choleskyBand', 'Location', 'NorthWest')