mirror of https://github.com/saitohirga/WSJT-X.git
Speedup msk40 and suppress spurious Eve decodes.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6975 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
df4dd69bf4
commit
548c5e8cdc
|
@ -1,7 +1,7 @@
|
||||||
subroutine detectmsk40(cbig,n,mycall,hiscall,lines,nmessages,nutc,ntol,t00)
|
subroutine detectmsk40(cbig,n,mycall,hiscall,lines,nmessages,nutc,ntol,t00)
|
||||||
use timer_module, only: timer
|
use timer_module, only: timer
|
||||||
|
|
||||||
parameter (NSPM=240, NPTS=3*NSPM, MAXSTEPS=7500, NFFT=3*NSPM, MAXCAND=40)
|
parameter (NSPM=240, NPTS=3*NSPM, MAXSTEPS=7500, NFFT=3*NSPM, MAXCAND=15)
|
||||||
character*4 rpt(0:63)
|
character*4 rpt(0:63)
|
||||||
character*6 mycall,hiscall
|
character*6 mycall,hiscall
|
||||||
character*22 hashmsg,msgreceived
|
character*22 hashmsg,msgreceived
|
||||||
|
@ -283,7 +283,7 @@ subroutine detectmsk40(cbig,n,mycall,hiscall,lines,nmessages,nutc,ntol,t00)
|
||||||
ferr2=atan2(imag(cfac),real(cfac))/(twopi*40*6*dt)
|
ferr2=atan2(imag(cfac),real(cfac))/(twopi*40*6*dt)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
do idf=0,6 ! frequency jitter
|
do idf=0,2 ! frequency jitter
|
||||||
if( idf .eq. 0 ) then
|
if( idf .eq. 0 ) then
|
||||||
deltaf=0.0
|
deltaf=0.0
|
||||||
elseif( mod(idf,2) .eq. 0 ) then
|
elseif( mod(idf,2) .eq. 0 ) then
|
||||||
|
@ -366,8 +366,12 @@ subroutine detectmsk40(cbig,n,mycall,hiscall,lines,nmessages,nutc,ntol,t00)
|
||||||
if( niterations .ge. 0 ) then
|
if( niterations .ge. 0 ) then
|
||||||
call ldpc_encode(decoded,cw)
|
call ldpc_encode(decoded,cw)
|
||||||
nhammd=0
|
nhammd=0
|
||||||
|
cord=0.0
|
||||||
do i=1,32
|
do i=1,32
|
||||||
if( cw(i) .ne. hardbits(i+8) ) nhammd=nhammd+1
|
if( cw(i) .ne. hardbits(i+8) ) then
|
||||||
|
nhammd=nhammd+1
|
||||||
|
cord=cord+abs(softbits(i+8))
|
||||||
|
endif
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
imsg=0
|
imsg=0
|
||||||
|
@ -376,9 +380,9 @@ subroutine detectmsk40(cbig,n,mycall,hiscall,lines,nmessages,nutc,ntol,t00)
|
||||||
enddo
|
enddo
|
||||||
nrxrpt=iand(imsg,63)
|
nrxrpt=iand(imsg,63)
|
||||||
nrxhash=(imsg-nrxrpt)/64
|
nrxhash=(imsg-nrxrpt)/64
|
||||||
if( nrxhash .eq. nhashes(nrxrpt) ) then
|
if( nhammd .le. 5 .and. cord .lt. 1.7 .and. nrxhash .eq. nhashes(nrxrpt) ) then
|
||||||
fest=1500+ferr+ferr2+deltaf
|
fest=1500+ferr+ferr2+deltaf
|
||||||
write(14,'(i6.6,11i5)') nutc,ip,ipk,id,idf,iav,ipha,niterations,nbadsync,nrxrpt,ncalls,nhammd
|
!write(14,'(i6.6,11i6,f7.1)') nutc,ip,ipk,id,idf,iav,ipha,niterations,nbadsync,nrxrpt,ncalls,nhammd,cord
|
||||||
nhashflag=1
|
nhashflag=1
|
||||||
msgreceived=' '
|
msgreceived=' '
|
||||||
nmessages=1
|
nmessages=1
|
||||||
|
|
Loading…
Reference in New Issue