function [approx_conv_func, original,  ite, list, Lambda] = D_rm_pursP(fploch,  iter,w_coef, t_coef, list,T,fnois)
%regularized matching pursuit of the 1D signal 'ploch' whose DFT is 'fploch'
Lambda=[];
N=length(fploch);
 j=log2(N);

sigma_app=0;FT_remainder=fploch;
[vt ht]=size(list);
for kk=1:iter
if vt>0
    %calculation of the oblique projection coefficients 'alpha_comb' of the
%remainder for waveforms listed in 'list' 
%finding an optimal waveform, located at  'level_opt, block_opt', whose coefficient is  'alpha_max_max'
%its shift is determined by 'ekm'
%lambda --optimal slope
    [alpha_comb, lambda, level_opt, block_opt , ekm] =D_purs_optP(list, t_coef,fnois, FT_remainder);

 Lambda=[Lambda lambda];
fl=find(abs(alpha_comb(:,1))>T);
%abs(alpha_comb)
%
list=list(fl,:);
%update of the SHA sp. of approximating splines
sigma_app=sigma_app+lambda*w_coef{level_opt}{block_opt}.*ekm;
%update of the DFT of remainder
FT_remainder=FT_remainder-lambda*t_coef{level_opt}{block_opt}.*ekm;

[vt ht]=size(list);


else
    break
end

end
    ite=kk;
original=real(ifft(sigma_app));
approx_conv_func=real(ifft(sigma_app));
