MaJ_F_EM_NeNMF.m 616 B

12345678910111213141516171819202122232425262728293031
  1. function [ F1 , i ] = MaJ_F_EM_NeNMF( GG , GX , F1 , InnerMinIter , InnerMaxIter , StoppingCritF , nOmega_F)
  2. Y = F1;
  3. alpha=zeros(2,1);
  4. alpha(1) = 1;
  5. Grad_y = GG*Y-GX;
  6. L = norm(GG);
  7. for i = 1 : InnerMaxIter
  8. F2 = max(Y-(1/L)*Grad_y,0).*nOmega_F;
  9. % F2 = F2.*nOmega_F; % Projection on not(Omega_F)
  10. alpha(2) = (1+sqrt(4*alpha(1)^2+1))/2;
  11. Y = F2 + ((alpha(1)-1)/alpha(2))*(F2-F1);
  12. Grad_y = GG*Y-GX;
  13. F1 = F2;
  14. alpha(1) = alpha(2);
  15. % if mod(i , InnerMinIter) == 0
  16. % if(Grad_P(Grad_y , Y)<=StoppingCritF)
  17. % break
  18. % end
  19. % end
  20. end
  21. end