close all; clc; clear; a_value = 2; b_value = 1; % Problem EPage 45 % for n=20:10:50 b = ones( n,1 ); A_full = diag( a_value*ones(1,n) ) + diag( b_value*ones(1,n-1), +1 ) + diag( b_value*ones(1,n-1), -1 ); rowpos = [ 1:n, 1:(n-1), 2:n ]; colpos = [ 1:n, 2:n, 1:(n-1) ]; values = [ a_value*ones(1,n), b_value*ones(1,n-1), b_value*ones(1,n-1) ]; A_sparse = sparse( rowpos, colpos, values, n, n ); tic; A_full \ b; t_full = toc; tic; A_sparse \ b; t_sparse = toc; disp( sprintf('n= %5d, time full= %10.6f, time sparse= %10.6f', n, t_full, t_sparse) ); end