Some testing changes, including "findpol". Will probably back these out.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/map65@427 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2007-06-28 13:02:01 +00:00
parent abd6ef6f77
commit 822e17331a
4 changed files with 41 additions and 32 deletions

View File

@ -1,4 +1,4 @@
subroutine decode1a(id,newdat,nfilt,freq,nflip,dphi,ipol, subroutine decode1a(id,nqd,newdat,nfilt,freq,nflip,dphi,ipol,
+ sync2,a,dt,pol,nkv,nhist,qual,decoded) + sync2,a,dt,pol,nkv,nhist,qual,decoded)
C Apply AFC corrections to a candidate JT65 signal, and then try C Apply AFC corrections to a candidate JT65 signal, and then try
@ -71,38 +71,43 @@ C Find best DF, f1, f2, DT, and pol
! call afc65b(cx(i0),cy(i0),nz,fsample,nflip,ipol,a,dt, ! call afc65b(cx(i0),cy(i0),nz,fsample,nflip,ipol,a,dt,
! + ccfbest,dtbest) ! + ccfbest,dtbest)
! Adjust for cable length difference:
z=cmplx(cos(dphi),sin(dphi))
do i=1,n5
cy(i)=z*cy(i)
enddo
call fil6521(cx,n5,c5x,n6) call fil6521(cx,n5,c5x,n6)
call fil6521(cy,n5,c5y,n6) call fil6521(cy,n5,c5y,n6)
! Adjust for cable length difference:
z=cmplx(cos(dphi),sin(dphi))
do i=1,n6
c5y(i)=z*c5y(i)
enddo
fsample=1378.125/4. fsample=1378.125/4.
a(5)=dt00
i0=nint((a(5)+0.5)*fsample) - 2
if(i0.lt.1) i0=1
nz=n6+1-i0
ip0=ipol if(nqd.eq.1) then
nflip=1 call findpol(c5x,c5y,n6,dt00,nflip,ipol,a,ccfbest,dtbest)
call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt, else
+ ccfbest,dtbest) a(5)=dt00
i0=nint((a(5)+0.5)*fsample) - 2
if(i0.lt.1) i0=1
nz=n6+1-i0
nflip=-1 ip0=ipol
ipol=ip0
call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt,
+ ccfbest2,dtbest)
if(ccfbest2.lt.ccfbest) then
nflip=1 nflip=1
ipol=ip0
call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt, call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt,
+ ccfbest,dtbest) + ccfbest,dtbest)
else
ccfbest=ccfbest nflip=-1
ipol=ip0
call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt,
+ ccfbest2,dtbest)
if(ccfbest2.lt.ccfbest) then
nflip=1
ipol=ip0
call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt,
+ ccfbest,dtbest)
else
ccfbest=ccfbest
endif
endif endif
pol=a(4)/57.2957795 pol=a(4)/57.2957795
@ -145,3 +150,5 @@ C Adding or subtracting a small number (e.g., 5) to j may make it decode.
return return
end end
include 'findpol.f'

View File

@ -44,7 +44,6 @@ C Suppress "birdie messages":
ndepth=5 ndepth=5
if(ndepth.ge.1) call deep65(s3,mode65,neme, if(ndepth.ge.1) call deep65(s3,mode65,neme,
+ nsked,flip,mycall,hiscall,hisgrid,deepmsg,qual) + nsked,flip,mycall,hiscall,hisgrid,deepmsg,qual)
C Save symbol spectra for possible decoding of average. C Save symbol spectra for possible decoding of average.
! do j=1,63 ! do j=1,63
! k=mdat(j) ! k=mdat(j)

View File

@ -1,4 +1,4 @@
#---------------------------------------------------------------------- MAP65 #--------------------------------------------------------------------- MAP65
# $Date$ $Revision$ # $Date$ $Revision$
# #
from Tkinter import * from Tkinter import *
@ -1137,7 +1137,7 @@ def update():
bm2text.see(END) bm2text.see(END)
Audio.gcom2.ndecdone=0 Audio.gcom2.ndecdone=0
if loopall: opennext() if loopall and Audio.gcom2.ndecoding==0: opennext()
nopen=0 nopen=0
if g.cmap != cmap0: if g.cmap != cmap0:

View File

@ -55,21 +55,23 @@ subroutine map65a(newdat)
! nfilt=2 should be faster (but doesn't work quite right?) ! nfilt=2 should be faster (but doesn't work quite right?)
nfilt=1 !nfilt=2 is faster for selected freq nfilt=1 !nfilt=2 is faster for selected freq
dphi=310/57.2957795 dphi=310/57.2957795
do kpol=0,3 ! do kpol=0,3
kpol=0
freq=fselect + 0.001*mousedf freq=fselect + 0.001*mousedf
if(even) ip0=ip000+kpol if(even) ip0=ip000+kpol
if(.not.even) ip0=ip001+kpol if(.not.even) ip0=ip001+kpol
if(ip0.gt.4) ip0=ip0-4 if(ip0.gt.4) ip0=ip0-4
dt00=2.314240 dt00=2.314240
dt=dt00 dt=dt00
call decode1a(id(1,1,kbuf),newdat,nfilt,freq,nflip,dphi,ip0, & nqd=1
call decode1a(id(1,1,kbuf),nqd,newdat,nfilt,freq,nflip,dphi,ip0, &
sync2,a,dt,pol,nkv,nhist,qual,decoded) sync2,a,dt,pol,nkv,nhist,qual,decoded)
nsync1=0 nsync1=0
nsync2=nint(10.0*log10(sync2)) - 40 !### empirical ### nsync2=nint(10.0*log10(sync2)) - 40 !### empirical ###
ndf=nint(a(1)) + mousedf ndf=nint(a(1)) + mousedf
nw=0 nw=0
if(nkv.gt.0) go to 5 ! if(nkv.gt.0) go to 5
enddo ! enddo
5 if(even) ip000=ip0 5 if(even) ip000=ip0
if(.not.even) ip001=ip0 if(.not.even) ip001=ip0
@ -195,7 +197,8 @@ subroutine map65a(newdat)
if(freq-freq0.gt.ftol .or. sync1.gt.sync10) then if(freq-freq0.gt.ftol .or. sync1.gt.sync10) then
nflip=nint(flipk) nflip=nint(flipk)
call decode1a(id(1,1,kbuf),newdat,nfilt,freq,nflip,dphi, & nqd=0
call decode1a(id(1,1,kbuf),nqd,newdat,nfilt,freq,nflip,dphi, &
ipol,sync2,a,dt,pol,nkv,nhist,qual,decoded) ipol,sync2,a,dt,pol,nkv,nhist,qual,decoded)
! i9=index(decoded,'AA1YN') ! i9=index(decoded,'AA1YN')
! if(i9.gt.0) print*,i,i9,fselect,freq,decoded ! if(i9.gt.0) print*,i,i9,fselect,freq,decoded