mirror of https://github.com/saitohirga/WSJT-X.git
Big improvement in decoding speed.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3059 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
a452fa62e1
commit
379fe84edb
|
@ -11,6 +11,7 @@ subroutine decoder(ss,c0)
|
||||||
character*80 fmt
|
character*80 fmt
|
||||||
character*20 datetime
|
character*20 datetime
|
||||||
real*4 ccfred(NSMAX)
|
real*4 ccfred(NSMAX)
|
||||||
|
logical ccfok(NSMAX)
|
||||||
integer*1 i1SoftSymbols(207)
|
integer*1 i1SoftSymbols(207)
|
||||||
integer*2 id2
|
integer*2 id2
|
||||||
integer ii(1)
|
integer ii(1)
|
||||||
|
@ -28,8 +29,15 @@ subroutine decoder(ss,c0)
|
||||||
nsynced=0
|
nsynced=0
|
||||||
ndecoded=0
|
ndecoded=0
|
||||||
limit=200
|
limit=200
|
||||||
if(ndepth.ge.2) limit=2000
|
ccflim=20.0
|
||||||
if(ndepth.ge.3) limit=20000
|
if(ndepth.ge.2) then
|
||||||
|
limit=2000
|
||||||
|
ccflim=10.0
|
||||||
|
endif
|
||||||
|
if(ndepth.ge.3) then
|
||||||
|
limit=20000
|
||||||
|
ccflim=8.0
|
||||||
|
endif
|
||||||
|
|
||||||
nsps=0
|
nsps=0
|
||||||
if(ntrMinutes.eq.1) then
|
if(ntrMinutes.eq.1) then
|
||||||
|
@ -62,18 +70,30 @@ subroutine decoder(ss,c0)
|
||||||
call sync9(ss,nzhsym,tstep,df3,ntol,nfqso,ccfred,ia,ib,ipk) !Compute ccfred
|
call sync9(ss,nzhsym,tstep,df3,ntol,nfqso,ccfred,ia,ib,ipk) !Compute ccfred
|
||||||
call timer('sync9 ',1)
|
call timer('sync9 ',1)
|
||||||
|
|
||||||
|
ccfok=.false.
|
||||||
|
do i=ia+9,ib-25
|
||||||
|
t1=ccfred(i)/max(ccfred(i-8),ccfred(i-7),ccfred(i-6))
|
||||||
|
t2=ccfred(i)/max(ccfred(i+23),ccfred(i+24),ccfred(i+25))
|
||||||
|
if(t1.ge.ccflim .and. t2.ge.ccflim) ccfok(i)=.true.
|
||||||
|
enddo
|
||||||
|
|
||||||
nRxLog=0
|
nRxLog=0
|
||||||
fgood=0.
|
fgood=0.
|
||||||
nsps8=nsps/8
|
nsps8=nsps/8
|
||||||
df8=1500.0/nsps8
|
df8=1500.0/nsps8
|
||||||
sbest=-1.0
|
sbest=-1.0
|
||||||
dblim=db(864.0/nsps8) - 26.2
|
dblim=db(864.0/nsps8) - 26.2
|
||||||
|
i1=max(nint((nfqso-1000)/df3 - 10),ia)
|
||||||
|
i2=min(nint((nfqso-1000)/df3 + 10),ib)
|
||||||
|
ii=maxloc(ccfred(i1:i2))
|
||||||
|
i=ii(1) + i1 - 1
|
||||||
|
go to 12
|
||||||
|
|
||||||
10 ii=maxloc(ccfred(ia:ib))
|
10 ii=maxloc(ccfred(ia:ib))
|
||||||
i=ii(1) + ia - 1
|
i=ii(1) + ia - 1
|
||||||
f=(i-1)*df3
|
12 f=(i-1)*df3
|
||||||
if((i.eq.ipk .or. ccfred(i).ge.3.0) .and. abs(f-fgood).gt.10.0*df8) then
|
if((i.eq.ipk .or. ccfred(i).ge.3.0) .and. abs(f-fgood).gt.10.0*df8 .and. &
|
||||||
|
ccfok(i)) then
|
||||||
call timer('decode9a',0)
|
call timer('decode9a',0)
|
||||||
fpk=1000.0 + df3*(i-1)
|
fpk=1000.0 + df3*(i-1)
|
||||||
c1(1:npts8)=conjg(c0(1:npts8))
|
c1(1:npts8)=conjg(c0(1:npts8))
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
//--------------------------------------------------------------- MainWindow
|
//-------------------------------------------------------------- MainWindow
|
||||||
#include "mainwindow.h"
|
#include "mainwindow.h"
|
||||||
#include "ui_mainwindow.h"
|
#include "ui_mainwindow.h"
|
||||||
#include "devsetup.h"
|
#include "devsetup.h"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[Setup]
|
[Setup]
|
||||||
AppName=wsjtx
|
AppName=wsjtx
|
||||||
AppVerName=wsjtx Version 0.6 r3047
|
AppVerName=wsjtx Version 0.6 r3056
|
||||||
AppCopyright=Copyright (C) 2001-2013 by Joe Taylor, K1JT
|
AppCopyright=Copyright (C) 2001-2013 by Joe Taylor, K1JT
|
||||||
DefaultDirName=c:\wsjtx
|
DefaultDirName=c:\wsjtx
|
||||||
DefaultGroupName=wsjtx
|
DefaultGroupName=wsjtx
|
||||||
|
|
Loading…
Reference in New Issue