underwater acoustic wave Signal to Noise Ratio (SNR)

조회 수: 9 (최근 30일)
Umar Khan
Umar Khan 2022년 9월 17일
댓글: Umar Khan 2022년 9월 17일
I am trying to plot the curve of Signal to Noise Ratio for Acoustic waves in Underwater. I am finding two problems.
1- The SNR must be decreaseing for higher frequency values, however, i am seeing increase of SNR with the increase of Frequencies.
2- While ploting SNR there should be some peak SNR for certain frequencies, however, i am seeing a smooth curve.
The equations i am trying to plot is
10log Ns(f)=40–20 (S-0.5)+26log f–60log (f + 0.03)
10log Nth(f) = -15 + 20logf
10logNw(f )= 50 + 7.5√W + 20 log f– 40 log (f+0.4)
10log Nt(f) = 17 – 30 log f
Can someone please identify the problem.
  댓글 수: 2
Paul
Paul 2022년 9월 17일
Hard to help without seeng code and example of the issue.
Are you trying to plot Ns(f), Nth(f), Nw(f), and Nt(f) as functions of f?
Keep in mind the difference between log and log10.
Umar Khan
Umar Khan 2022년 9월 17일
Thankyou Paul,
I am actually trying to plot the SNR curve. This is the code which i used for plotting.
% Transmission Loss
af=[];
for f=1:1:100
af1=(0.11*f*f)/(1+(f*f));
af2=(44*f*f)/(4100+(f*f));
af3=2.75*(10^(-4))*f*f;
af4=af1+af2+af3+0.003;
af=[af af4];
SSs= 10*log(50);
TL = SSs + af*10^(-3);
end
%Noise
for f=1:1:100 %frequency
gg(f)=f;
nt (f) = 17-30*log10(f);
ns (f) = 40+20*(1-0.5)+26*log10(f)-60*log10(f+0.03);
nw (f) = 50+20*log10(f)-40*log10(f+0.4)+7.5*6^(0.5);
nth(f)= -15+20*log10(f);
%
N = nt+ns+nw+nth;
end
SNR = -190.2197446 - TL -N;
plot(af,SNR);

댓글을 달려면 로그인하십시오.

답변 (2개)

Paul
Paul 2022년 9월 17일
At a minimum:
SSs is still using log, probably should be log10
The equation coded for ns doesn't match the equation in the question. The second term in the former has +20 but the latter has -20.
The computatoin of N doesn't need to be inside the loop, but that doesn't really matter.
Also, all of this code could be implemented without loops at all, for example:
f = 1:100;
nth = -15 + 20*log10(f);
  댓글 수: 1
Umar Khan
Umar Khan 2022년 9월 17일
Yes , i tried SSs with log10, but it doesnot make much difference.
Yes , in Ns the second term is +20 , it is also not effecting the plot.

댓글을 달려면 로그인하십시오.


Chris
Chris 2022년 9월 17일
편집: Chris 2022년 9월 17일
Your individual noise sources add up to a decreasing signal, and I'm not sure af is on the right scale.
Should S in the noise equations be equal to 1, or to the signal?
Is the signal supposed to be 1, -190, or 10*log10(50) (or 20?) ?
And is 1-100 Hz the correct frequency range?
f = 1:100;
af1=(0.11.*f.^2)./(1+(f.^2));
af2=(44.*f.^2)./(4100+(f.^2));
af3=2.75.*(10.^(-4)).*f.^2;
af=af1+af2+af3+0.003;
SSs= 10*log10(50);
TL = SSs + af.*10^(-3);
nt = 17-30.*log10(f);
ns = 40+20.*(1-0.5)+26.*log10(f)-60.*log10(f+0.03);
nw = 50+20.*log10(f)-40.*log10(f+0.4)+7.5.*6^(0.5);
nth = -15+20*log10(f);
figure
tiledlayout(1,2)
nexttile
plot(f,TL)
ylim([0 20])
ylabel('mW?')
xlabel('Frequency (Hz)')
title('TL?')
nexttile
plot(f,nt,f,ns,f,nw,f,nth)
legend({'nt','ns','nw','nth'})
ylabel('noise (dBm?)')
xlabel('Frequency (Hz)')
title('Noise')
  댓글 수: 1
Umar Khan
Umar Khan 2022년 9월 17일
Thanks Chris for pointing out about the ranges of frequency.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Marine and Underwater Vehicles에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by