Can decode in modes 1 2 5 10, but not 30 -- why???

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@2643 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2012-10-03 18:39:37 +00:00
parent bb02cd3e8c
commit 3706d4e3c4
6 changed files with 23 additions and 25 deletions

View File

@ -92,10 +92,9 @@ program jt9
nutc=nutc0 nutc=nutc0
nstandalone=1 nstandalone=1
call sync9(ss,tstep,f0a,df3,lagpk,fpk) !Find sig, get rough DT and DF call sync9(ss,tstep,f0a,df3,fpk) !Find sig, get rough freq
call spec9(c0,npts8,nsps,f0a,lagpk,fpk,i1SoftSymbols) call spec9(c0,npts8,nsps,f0a,fpk,xdt,i1SoftSymbols)
call decode9(i1SoftSymbols,msg) call decode9(i1SoftSymbols,msg)
xdt=lagpk*0.5*nsps/12000.0
write(*,1010) nutc,xdt,fpk,msg write(*,1010) nutc,xdt,fpk,msg
1010 format(i4.4,f6.1,f7.1,2x,a22) 1010 format(i4.4,f6.1,f7.1,2x,a22)
enddo enddo

View File

@ -1,4 +1,4 @@
subroutine peakdf9(c0,npts8,nsps8,istart,foffset,xdf) subroutine peakdf9(c0,npts8,nsps8,istart,foffset,idfpk)
complex c0(0:npts8-1) complex c0(0:npts8-1)
complex zsum complex zsum
@ -8,7 +8,7 @@ subroutine peakdf9(c0,npts8,nsps8,istart,foffset,xdf)
twopi=8.0*atan(1.0) twopi=8.0*atan(1.0)
df=1500.0/nsps8 df=1500.0/nsps8
smax=0. smax=0.
do idf=-10,10 do idf=-5,5
f0=foffset + 0.1*df*idf f0=foffset + 0.1*df*idf
dphi=twopi*f0/1500.0 dphi=twopi*f0/1500.0
sum=0. sum=0.
@ -17,7 +17,7 @@ subroutine peakdf9(c0,npts8,nsps8,istart,foffset,xdf)
phi=0. phi=0.
zsum=0. zsum=0.
do i=i1,i1+nsps8-1 do i=i1,i1+nsps8-1
if(i.lt.0) cycle if(i.lt.0 .or. i.gt.npts8-1) cycle
phi=phi + dphi phi=phi + dphi
zsum=zsum + c0(i) * cmplx(cos(phi),-sin(phi)) zsum=zsum + c0(i) * cmplx(cos(phi),-sin(phi))
enddo enddo
@ -25,13 +25,11 @@ subroutine peakdf9(c0,npts8,nsps8,istart,foffset,xdf)
enddo enddo
if(sum.gt.smax) then if(sum.gt.smax) then
idfpk=idf idfpk=idf
fpk=f0
smax=sum smax=sum
endif endif
write(71,3001) idf,sum
3001 format(i5,f12.3)
enddo enddo
write(*,3001) idfpk,fpk,smax
3001 format('DF:'i5,f8.2,f12.3)
return return
end subroutine peakdf9 end subroutine peakdf9

View File

@ -1,4 +1,4 @@
subroutine peakdt9(c0,npts8,nsps8,istart,foffset,idt) subroutine peakdt9(c0,npts8,nsps8,istart,foffset,idtpk)
complex c0(0:npts8-1) complex c0(0:npts8-1)
complex zsum complex zsum
@ -10,15 +10,15 @@ subroutine peakdt9(c0,npts8,nsps8,istart,foffset,idt)
f0=foffset f0=foffset
dphi=twopi*f0/1500.0 dphi=twopi*f0/1500.0
do idt=-10,10 do idt=-5,5
i0=istart + 0.1*nsps8*idt i0=istart + 0.0625*nsps8*idt
sum=0. sum=0.
do j=1,16 do j=1,16
i1=(ii(j)-1)*nsps8 + i0 i1=(ii(j)-1)*nsps8 + i0
phi=0. phi=0.
zsum=0. zsum=0.
do i=i1,i1+nsps8-1 do i=i1,i1+nsps8-1
if(i.lt.0) cycle if(i.lt.0 .or. i.gt.npts8-1) cycle
phi=phi + dphi phi=phi + dphi
zsum=zsum + c0(i) * cmplx(cos(phi),-sin(phi)) zsum=zsum + c0(i) * cmplx(cos(phi),-sin(phi))
enddo enddo
@ -30,9 +30,5 @@ subroutine peakdt9(c0,npts8,nsps8,istart,foffset,idt)
endif endif
enddo enddo
tpk=idtpk/1500.0
write(*,3001) idtpk,tpk,smax
3001 format('DT:'i5,f8.2,f12.3)
return return
end subroutine peakdt9 end subroutine peakdt9

View File

@ -1,4 +1,4 @@
subroutine spec9(c0,npts8,nsps,f0a,lagpk,fpk,i1SoftSymbols) subroutine spec9(c0,npts8,nsps,f0a,fpk,xdt,i1SoftSymbols)
parameter (MAXFFT=31500) parameter (MAXFFT=31500)
complex c0(0:npts8-1) complex c0(0:npts8-1)
@ -22,13 +22,18 @@ subroutine spec9(c0,npts8,nsps,f0a,lagpk,fpk,i1SoftSymbols)
nsps8=nsps/8 nsps8=nsps/8
foffset=fpk-f0a foffset=fpk-f0a
istart=1520 istart=1520
idt=0
xdf=0.
call peakdf9(c0,npts8,nsps8,istart,foffset,xdf) call peakdf9(c0,npts8,nsps8,istart,foffset,idf)
fpk=fpk + idf*0.1*1500.0/nsps8
foffset=foffset + idf*0.1*1500.0/nsps8
call peakdt9(c0,npts8,nsps8,istart,foffset,idt) call peakdt9(c0,npts8,nsps8,istart,foffset,idt)
istart=istart + 0.0625*nsps8*idt
xdt=istart/1500.0 - 1.0
! write(*,3002) 0.0625*nsps8*idt/1500.0,idf*0.1*1500.0/nsps8
!3002 format(2f8.2)
fshift=foffset + xdf
fshift=foffset
twopi=8.0*atan(1.0) twopi=8.0*atan(1.0)
dphi=twopi*fshift/1500.0 dphi=twopi*fshift/1500.0

View File

@ -1,4 +1,4 @@
subroutine sync9(ss,tstep,f0a,df3,lagpk,fpk) subroutine sync9(ss,tstep,f0a,df3,fpk)
parameter (NSMAX=22000) !Max length of saved spectra parameter (NSMAX=22000) !Max length of saved spectra
real ss(184,NSMAX) real ss(184,NSMAX)

View File

@ -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"