ivan@155: %%% MOD (||ki||<=1) %%%% ivan@155: function mod_exactRec(it,k,sn) ivan@155: tic ivan@155: IT = str2num(it); ivan@155: K = str2num(k); ivan@155: SN = str2num(sn); ivan@155: if SN<10, ivan@155: samnum = ['0',num2str(SN)]; ivan@155: else ivan@155: samnum = num2str(SN); ivan@155: end ivan@155: load(['Param',num2str(K),'kS',samnum,'.mat']) ivan@155: method = ['bn';'un']; ivan@155: res = 2; % 1 for bounded-norm, 2 for unit-norm ivan@155: lambda = 2*.2; % 2 * Smallest coefficients (Soft Thresholding) ivan@155: % lambda = 2*.2^2; % 2 * Smallest coefficients (Hard Thresholding) ivan@155: %%%%%%%%%%%%%% ivan@155: Phi = Phio; ivan@155: [PhiN,PhiM] = size(Phi); ivan@155: RR1 = PhiM; ivan@155: %%%%%%%%%%%%%% ivan@155: [PhiM,L] = size(ud); ivan@155: unhat = ones(PhiM,L); ivan@155: for it = 1:IT ivan@155: it ivan@155: to = .1+svds(Phi,1); ivan@155: [PhiN,PhiM] = size(Phi); ivan@155: %%%% ivan@155: % eps = 10^-7; ivan@155: eps = 3*10^-4; ivan@155: maxIT = 1000; ivan@155: map = 0; ivan@155: [unhat,l1err] = mm1(Phi,x,unhat,to,lambda,maxIT,eps,map); %% Sparse approximation with Iterative Soft-thresholding ivan@155: ert(it) = l1err; ivan@155: %%% ivan@155: [Phi,unhat] = modcn(x,unhat,res); ivan@155: end ivan@155: save(['MODl120t',num2str(IT),'iki',method(res,:),num2str(K),'v2d',num2str(SN),'.mat'],'Phi','Phid','x','ud','unhat','ert') ivan@155: toc