- function [k, postSNR] = argmaxmmse(G,H,sigma2,krest)
- kno=length(krest);
- Gnorm=zeros(2,kno);
- % H
- % G
- GH2=abs(G*H).^2;
- G2=abs(G).^2;
- GH2norm=sum(GH2,2);
- G2norm=sum(G2,2);
- for ii=1:kno
- jj=krest(ii);
- if G2norm(jj)~=0
- Gnorm(:,ii)=[jj;GH2(jj,jj)/(sigma2*G2norm(jj)+GH2norm(jj)-GH2(jj,jj))];
- else
- Gnorm(:,ii)=[jj;-inf];
- end
- end
- % Gnorm
- [maxnorm, maxcol]=max(Gnorm(2,:));
- k=Gnorm(1,maxcol);
- postSNR=maxnorm;