Tweaking SNR readings for QRA64.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7371 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2016-12-08 16:21:04 +00:00
parent 82ecc6afcf
commit f78714707d
2 changed files with 14 additions and 14 deletions

View File

@ -24,10 +24,11 @@ subroutine qra64a(dd,npts,nutc,nf1,nf2,nfqso,ntol,mode64,minsync,ndepth, &
save save
call timer('qra64a ',0) call timer('qra64a ',0)
if(nfqso.lt.nf1 .or. nfqso.gt.nf2) go to 900 irc=-1
decoded=' ' decoded=' '
nft=99 nft=99
nsnr=-30 if(nfqso.lt.nf1 .or. nfqso.gt.nf2) go to 900
mycall=mycall_12(1:6) !### May need fixing ### mycall=mycall_12(1:6) !### May need fixing ###
hiscall=hiscall_12(1:6) hiscall=hiscall_12(1:6)
hisgrid=hisgrid_6(1:4) hisgrid=hisgrid_6(1:4)
@ -95,7 +96,7 @@ subroutine qra64a(dd,npts,nutc,nf1,nf2,nfqso,ntol,mode64,minsync,ndepth, &
call qra64_dec(s3,nc1,nc2,ng2,naptype,0,nSubmode,b90, & call qra64_dec(s3,nc1,nc2,ng2,naptype,0,nSubmode,b90, &
nFadingModel,dat4,snr2,irc) nFadingModel,dat4,snr2,irc)
call timer('qra64_de',1) call timer('qra64_de',1)
if(abs(snr2).gt.30.) snr2=-30.0 ! if(abs(snr2).gt.30.) snr2=-30.0
if(irc.eq.0) go to 10 if(irc.eq.0) go to 10
if(irc.gt.0) call badmsg(irc,dat4,nc1,nc2,ng2) if(irc.gt.0) call badmsg(irc,dat4,nc1,nc2,ng2)
iirc=max(0,min(irc,11)) iirc=max(0,min(irc,11))
@ -137,17 +138,16 @@ subroutine qra64a(dd,npts,nutc,nf1,nf2,nfqso,ntol,mode64,minsync,ndepth, &
else else
snr2=0. snr2=0.
endif endif
if(irc.lt.0) then 900 if(irc.lt.0) then
sy=max(1.0,sync-2.5) sy=max(1.0,sync)
if(nSubmode.eq.0) nsnr=nint(10.0*log10(sy)-38.0) !A if(nSubmode.eq.0) nsnr=nint(10.0*log10(sy)-35.0) !A
if(nSubmode.eq.1) nsnr=nint(10.0*log10(sy)-36.0) !B if(nSubmode.eq.1) nsnr=nint(10.0*log10(sy)-34.0) !B
if(nSubmode.eq.2) nsnr=nint(10.0*log10(sy)-34.0) !C if(nSubmode.eq.2) nsnr=nint(10.0*log10(sy)-29.0) !C
if(nSubmode.eq.3) nsnr=nint(10.0*log10(sy)-29.0) !D if(nSubmode.eq.3) nsnr=nint(10.0*log10(sy)-29.0) !D
if(nSubmode.eq.4) nsnr=nint(10.0*log10(sy)-24.0) !E if(nSubmode.eq.4) nsnr=nint(10.0*log10(sy)-24.0) !E
endif endif
call timer('qra64a ',1)
900 call timer('qra64a ',1)
return return
end subroutine qra64a end subroutine qra64a

View File

@ -3,7 +3,7 @@ program qratest
parameter (NMAX=60*12000) parameter (NMAX=60*12000)
real dd(NMAX) real dd(NMAX)
character arg*8,mycall*12,hiscall*12,hisgrid*6,decoded*22 character arg*8,mycall*12,hiscall*12,hisgrid*6,decoded*22
character c*1,label*3 character c*1
nargs=iargc() nargs=iargc()
if(nargs.lt.1 .or. nargs.gt.4) then if(nargs.lt.1 .or. nargs.gt.4) then
@ -44,8 +44,8 @@ program qratest
if(mode64.eq.4) c='c' if(mode64.eq.4) c='c'
if(mode64.eq.8) c='d' if(mode64.eq.8) c='d'
if(mode64.eq.16) c='e' if(mode64.eq.16) c='e'
write(*,1000) ifile,c,nutc,nsnr,dtx,nfreq,decoded,nft-100 write(*,1000) ifile,c,nutc,nsnr,dtx,nfreq,decoded,nft-100,sync-3.4
1000 format(i4,1x,a1,1x,i4.4,i4,f6.2,i5,1x,a22,i3) 1000 format(i4,1x,a1,1x,i4.4,i4,f6.2,i5,1x,a22,i3,f6.2)
if(ifile.eq.nfile) exit if(ifile.eq.nfile) exit
enddo enddo