0001
0002
0003 m = 1024;
0004 n = 4096;
0005 A=randn(m,n);
0006 w0=randn(n,1);
0007 bb=A*w0+0.01*randn(m,1);
0008 lambda=0.1*max(abs(A'*bb));
0009
0010 lambda = lambda*[1 0.1 0.01 1e-3 1e-4];
0011 time = zeros(size(lambda));
0012 spar = zeros(size(lambda));
0013 xx = zeros(n,length(lambda));
0014 t0 = cputime;
0015 xx1 = zeros(n,1);
0016 for ii=1:length(lambda)
0017 xx1=dalsql1(xx1,A,bb,lambda(ii));
0018 xx(:,ii)=xx1;
0019 time(ii)=cputime-t0;
0020 spar(ii)=full(sum(abs(xx1)>0)/n);
0021 fprintf('lambda=%g sparsity=%g%% time=%g\n',lambda(ii), spar(ii)*100, time(ii));
0022 end
0023