Another try at optimizing choices for decoding. Not done yet!

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3271 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2013-05-15 19:03:49 +00:00
parent 07edcb67e0
commit 286a10b75f
6 changed files with 18 additions and 17 deletions

View File

@ -8,7 +8,7 @@ subroutine chkss2(ss2,schk)
ave=sum(ss2)/(9*85)
s=ss2/ave-1.0
! call zplot9(s)
call zplot9(s)
s1=0.
do lag=0,5
do i=1,16

View File

@ -74,8 +74,8 @@ subroutine decoder(ss,c0,nstandalone)
endif
if(nqd.eq.1) then
limit=200000
ccflim=2.5
limit=100000
ccflim=2.0
nfa1=nfqso-ntol
nfb1=nfqso+ntol
else
@ -115,8 +115,7 @@ subroutine decoder(ss,c0,nstandalone)
do i=ia,ib
f=(i-1)*df3
if(done(i) .or. (.not.ccfok(i)) .or. (ccfred(i).lt.ccflim-1.0) .or. &
(ccfred(i).lt.ccfred(i+1))) cycle
if(done(i) .or. (.not.ccfok(i)) .or. (ccfred(i).lt.ccflim-1.0)) cycle
if(nqd.eq.1 .or. &
(ccfred(i).ge.ccflim .and. abs(f-fgood).gt.10.0*df8)) then
@ -129,7 +128,7 @@ subroutine decoder(ss,c0,nstandalone)
drift,schk,i1SoftSymbols)
call timer('softsym ',1)
if(schk.ge.3.0) then
if(schk.ge.2.0) then
call timer('decode9 ',0)
call decode9(i1SoftSymbols,limit,nlim,msg)

View File

@ -86,8 +86,8 @@ subroutine symspec(k,ntrperiod,nsps,ingain,nb,nbslider,pxdb,s,red, &
peaklimit=sigmas*max(10.0,rms)
px=0.
nwindow=2
! nwindow=0 !### No windowing ###
! nwindow=2
nwindow=0 !### No windowing ###
kstep1=NFFT1
if(nwindow.ne.0) kstep1=NFFT1/2
fac=2.0/NFFT1
@ -97,11 +97,11 @@ subroutine symspec(k,ntrperiod,nsps,ingain,nb,nbslider,pxdb,s,red, &
do i=1,NFFT1
x0(i)=gain*id2(k1+i)
enddo
call timf2(x0,k,NFFT1,nwindow,nb,peaklimit,x1, &
slimit,lstrong,px,nzap)
! call timf2(x0,k,NFFT1,nwindow,nb,peaklimit,x1, &
! slimit,lstrong,px,nzap)
! Mix at 1500 Hz, lowpass at +/-750 Hz, and downsample to 1500 Hz complex.
x2(106:105+kstep1)=x1(1:kstep1)
x2(106:105+kstep1)=x0(1:kstep1)
call fil3(x2,kstep1+105,c0(k8+1),n2)
x2(1:105)=x1(kstep1-104:kstep1) !Save 105 trailing samples
k1=k1+kstep1

View File

@ -38,7 +38,7 @@ subroutine symspec2(c5,nz3,nsps8,nspsd,fsample,freq,drift,snrdb,schk, &
! write(30) freq,drift,ss2
! call flush(30)
call chkss2(ss2,schk)
if(schk.lt.3.0) go to 900
if(schk.lt.2.0) go to 900
!###
ss=0.
sig=0.

View File

@ -14,6 +14,8 @@ subroutine sync9(ss,nzhsym,lag1,lag2,ia,ib,ccfred,ipkbest)
do i=ia,ib !Loop over freq range
ss1=ss(1:184,i)
call pctile(ss1,nzhsym,40,xmed)
! xmed=sum(ss1(1:nzhsym))/nzhsym
ss1=ss1/xmed - 1.0
do j=1,nzhsym
if(ss1(j).gt.3.0) ss1(j)=3.0
@ -21,13 +23,13 @@ subroutine sync9(ss,nzhsym,lag1,lag2,ia,ib,ccfred,ipkbest)
smax=0.
do lag=lag1,lag2 !DT = 2.5 to 5.0 s
sum=0.
sum1=0.
do j=1,16 !Sum over 16 sync symbols
k=ii2(j) + lag
if(k.ge.1 .and. k.le.nzhsym) sum=sum + ss1(k)
if(k.ge.1 .and. k.le.nzhsym) sum1=sum1 + ss1(k)
enddo
if(sum.gt.smax) then
smax=sum
if(sum1.gt.smax) then
smax=sum1
ipk=i
endif
enddo

View File

@ -1,4 +1,4 @@
//------------------------------------------------------------- MainWindow
//------------------------------------------------------------ MainWindow
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "devsetup.h"