mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-23 20:58:55 -05:00
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:
parent
07edcb67e0
commit
286a10b75f
@ -8,7 +8,7 @@ subroutine chkss2(ss2,schk)
|
|||||||
ave=sum(ss2)/(9*85)
|
ave=sum(ss2)/(9*85)
|
||||||
s=ss2/ave-1.0
|
s=ss2/ave-1.0
|
||||||
|
|
||||||
! call zplot9(s)
|
call zplot9(s)
|
||||||
s1=0.
|
s1=0.
|
||||||
do lag=0,5
|
do lag=0,5
|
||||||
do i=1,16
|
do i=1,16
|
||||||
|
@ -74,8 +74,8 @@ subroutine decoder(ss,c0,nstandalone)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if(nqd.eq.1) then
|
if(nqd.eq.1) then
|
||||||
limit=200000
|
limit=100000
|
||||||
ccflim=2.5
|
ccflim=2.0
|
||||||
nfa1=nfqso-ntol
|
nfa1=nfqso-ntol
|
||||||
nfb1=nfqso+ntol
|
nfb1=nfqso+ntol
|
||||||
else
|
else
|
||||||
@ -115,8 +115,7 @@ subroutine decoder(ss,c0,nstandalone)
|
|||||||
|
|
||||||
do i=ia,ib
|
do i=ia,ib
|
||||||
f=(i-1)*df3
|
f=(i-1)*df3
|
||||||
if(done(i) .or. (.not.ccfok(i)) .or. (ccfred(i).lt.ccflim-1.0) .or. &
|
if(done(i) .or. (.not.ccfok(i)) .or. (ccfred(i).lt.ccflim-1.0)) cycle
|
||||||
(ccfred(i).lt.ccfred(i+1))) cycle
|
|
||||||
if(nqd.eq.1 .or. &
|
if(nqd.eq.1 .or. &
|
||||||
(ccfred(i).ge.ccflim .and. abs(f-fgood).gt.10.0*df8)) then
|
(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)
|
drift,schk,i1SoftSymbols)
|
||||||
call timer('softsym ',1)
|
call timer('softsym ',1)
|
||||||
|
|
||||||
if(schk.ge.3.0) then
|
if(schk.ge.2.0) then
|
||||||
|
|
||||||
call timer('decode9 ',0)
|
call timer('decode9 ',0)
|
||||||
call decode9(i1SoftSymbols,limit,nlim,msg)
|
call decode9(i1SoftSymbols,limit,nlim,msg)
|
||||||
|
@ -86,8 +86,8 @@ subroutine symspec(k,ntrperiod,nsps,ingain,nb,nbslider,pxdb,s,red, &
|
|||||||
peaklimit=sigmas*max(10.0,rms)
|
peaklimit=sigmas*max(10.0,rms)
|
||||||
px=0.
|
px=0.
|
||||||
|
|
||||||
nwindow=2
|
! nwindow=2
|
||||||
! nwindow=0 !### No windowing ###
|
nwindow=0 !### No windowing ###
|
||||||
kstep1=NFFT1
|
kstep1=NFFT1
|
||||||
if(nwindow.ne.0) kstep1=NFFT1/2
|
if(nwindow.ne.0) kstep1=NFFT1/2
|
||||||
fac=2.0/NFFT1
|
fac=2.0/NFFT1
|
||||||
@ -97,11 +97,11 @@ subroutine symspec(k,ntrperiod,nsps,ingain,nb,nbslider,pxdb,s,red, &
|
|||||||
do i=1,NFFT1
|
do i=1,NFFT1
|
||||||
x0(i)=gain*id2(k1+i)
|
x0(i)=gain*id2(k1+i)
|
||||||
enddo
|
enddo
|
||||||
call timf2(x0,k,NFFT1,nwindow,nb,peaklimit,x1, &
|
! call timf2(x0,k,NFFT1,nwindow,nb,peaklimit,x1, &
|
||||||
slimit,lstrong,px,nzap)
|
! slimit,lstrong,px,nzap)
|
||||||
|
|
||||||
! Mix at 1500 Hz, lowpass at +/-750 Hz, and downsample to 1500 Hz complex.
|
! 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)
|
call fil3(x2,kstep1+105,c0(k8+1),n2)
|
||||||
x2(1:105)=x1(kstep1-104:kstep1) !Save 105 trailing samples
|
x2(1:105)=x1(kstep1-104:kstep1) !Save 105 trailing samples
|
||||||
k1=k1+kstep1
|
k1=k1+kstep1
|
||||||
|
@ -38,7 +38,7 @@ subroutine symspec2(c5,nz3,nsps8,nspsd,fsample,freq,drift,snrdb,schk, &
|
|||||||
! write(30) freq,drift,ss2
|
! write(30) freq,drift,ss2
|
||||||
! call flush(30)
|
! call flush(30)
|
||||||
call chkss2(ss2,schk)
|
call chkss2(ss2,schk)
|
||||||
if(schk.lt.3.0) go to 900
|
if(schk.lt.2.0) go to 900
|
||||||
!###
|
!###
|
||||||
ss=0.
|
ss=0.
|
||||||
sig=0.
|
sig=0.
|
||||||
|
@ -14,6 +14,8 @@ subroutine sync9(ss,nzhsym,lag1,lag2,ia,ib,ccfred,ipkbest)
|
|||||||
do i=ia,ib !Loop over freq range
|
do i=ia,ib !Loop over freq range
|
||||||
ss1=ss(1:184,i)
|
ss1=ss(1:184,i)
|
||||||
call pctile(ss1,nzhsym,40,xmed)
|
call pctile(ss1,nzhsym,40,xmed)
|
||||||
|
! xmed=sum(ss1(1:nzhsym))/nzhsym
|
||||||
|
|
||||||
ss1=ss1/xmed - 1.0
|
ss1=ss1/xmed - 1.0
|
||||||
do j=1,nzhsym
|
do j=1,nzhsym
|
||||||
if(ss1(j).gt.3.0) ss1(j)=3.0
|
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.
|
smax=0.
|
||||||
do lag=lag1,lag2 !DT = 2.5 to 5.0 s
|
do lag=lag1,lag2 !DT = 2.5 to 5.0 s
|
||||||
sum=0.
|
sum1=0.
|
||||||
do j=1,16 !Sum over 16 sync symbols
|
do j=1,16 !Sum over 16 sync symbols
|
||||||
k=ii2(j) + lag
|
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
|
enddo
|
||||||
if(sum.gt.smax) then
|
if(sum1.gt.smax) then
|
||||||
smax=sum
|
smax=sum1
|
||||||
ipk=i
|
ipk=i
|
||||||
endif
|
endif
|
||||||
enddo
|
enddo
|
||||||
|
@ -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"
|
||||||
|
Loading…
Reference in New Issue
Block a user