[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: MPSK SVR SNR, Signal and Noise estimation
From: |
Marcus Müller |
Subject: |
Re: MPSK SVR SNR, Signal and Noise estimation |
Date: |
Tue, 26 Oct 2021 10:07:26 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 |
Don't think you can directly, since there's no internal notion of S and N kept
separately
(that's the beauty of this estimator: it's simple).
However, when you have an SNR estimate, you could simply externally compute the
average
S+N (i.e. the average power of observed samples).
Then, via
S+N = N·(S/N) + N = N·SNR + N = N·(1+SNR)
N = S+N/(1+SNR)
S = S+N - N
you could derive S and N.
Best regards,
Marcus
On 25.10.21 11:54, Moses Browne Mwakyanjala wrote:
> Hi everyone,
> It seems like all estimators in MPSK_SNR_EST class, except for the SVR one
> (shown below),
> have signal, noise, and SNR estimations. How does one get the signal and
> noise
> components from the SVR estimate?
>
> Regards,
>
> Moses.
>
> mpsk_snr_est_svr::mpsk_snr_est_svr(doublealpha):mpsk_snr_est(alpha)
>
> {
>
> d_y1=0;
>
> d_y2=0;
>
> }
>
>
> intmpsk_snr_est_svr::update(intnoutput_items,constgr_complex*input)
>
> {
>
> for(inti=0;i<noutput_items;i++){
>
> doublex=abs(input[i+1]);
>
> doublex1=abs(input[i]);
>
> doubley1=(x*x)*(x1*x1);
>
> d_y1=d_alpha*y1+d_beta*d_y1;
>
>
> doubley2=x*x*x*x;
>
> d_y2=d_alpha*y2+d_beta*d_y2;
>
> }
>
> returnnoutput_items;
>
> }
>
>
> doublempsk_snr_est_svr::snr()
>
> {
>
> doublex=d_y1/(d_y2-d_y1);
>
> return10.0*log10(x-1+sqrt(x*(x-1)));
>
> }
>
>
> Moses Browne Mwakyanjala
>
>
> Founder - CEO
>
> *Remos Space Systems AB*
>
> m: +46 (0)70 278 2174__
>
> a: Aurorum 1C, 977 75 __Luleå, Sweden
>
> w: www.remosspace.com <https://www.remosspace.com/> e: mbkitine@gmail.com
> <mailto:mbkitine@gmail.com>
>
> image.png
>