Use only one twkfreq routine.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/map65@7498 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2017-01-14 16:58:31 +00:00
parent 6bd85e3356
commit 4acf827419
6 changed files with 29 additions and 60 deletions

View File

@ -133,8 +133,6 @@ set (FSRCS
toxyz.f90
trimlist.f90
twkfreq.f90
twkfreq2.f90
zplot.f90
f77_wisdom.f
)

View File

@ -83,7 +83,7 @@ subroutine decode1a(dd,newdat,f0,nflip,mode65,nfast,nfsample,xpol, &
! accommodate the full JT65C bandwidth.
call timer('twkfreq ',0)
call twkfreq(cx,cy,n5,a)
call twkfreq(cx,cy,n5,1378.125,a)
call timer('twkfreq ',1)
! Compute spectrum at best polarization for each half symbol.

View File

@ -80,7 +80,7 @@ subroutine qra64c(cx,cy,nutc,nqd,ikhz,nfqso,ntol,xpol,mycall_12, &
if(mode64.eq.1 .and. minsync.ge.0 .and. (sync-7.0).lt.minsync) go to 900
a=0.
a(1)=-f0
call twkfreq2(c00,c0,npts2,6000.0,a)
call twkfreq(c00,c0,npts2,6000.0,a)
irc=-99
s3lim=20.

View File

@ -1,28 +1,25 @@
subroutine twkfreq(c4aa,c4bb,n5,a)
subroutine twkfreq(c3,c4,npts,fsample,a)
complex c4aa(n5)
complex c4bb(n5)
real a(5)
complex c3(npts)
complex c4(npts)
complex w,wstep
real a(3)
data twopi/6.283185307/
! Apply AFC corrections to the c4aa and c4bb data
! Mix the complex signal
w=1.0
wstep=1.0
x0=0.5*(n5+1)
s=2.0/n5
do i=1,n5
x0=0.5*(npts+1)
s=2.0/npts
do i=1,npts
x=s*(i-x0)
if(mod(i,1000).eq.1) then
p2=1.5*x*x - 0.5
! p3=2.5*(x**3) - 1.5*x
! p4=4.375*(x**4) - 3.75*(x**2) + 0.375
dphi=(a(1) + x*a(2) + p2*a(3)) * (twopi/1378.125)
dphi=(a(1) + x*a(2) + p2*a(3)) * (twopi/fsample)
wstep=cmplx(cos(dphi),sin(dphi))
endif
w=w*wstep
c4aa(i)=w*c4aa(i)
c4bb(i)=w*c4bb(i)
c4(i)=w*c3(i)
enddo
return

View File

@ -1,26 +0,0 @@
subroutine twkfreq2(c3,c4,npts,fsample,a)
complex c3(npts)
complex c4(npts)
complex w,wstep
real a(3)
data twopi/6.283185307/
! Mix the complex signal
w=1.0
wstep=1.0
x0=0.5*(npts+1)
s=2.0/npts
do i=1,npts
x=s*(i-x0)
p2=1.5*x*x - 0.5
! p3=2.5*(x**3) - 1.5*x
! p4=4.375*(x**4) - 3.75*(x**2) + 0.375
dphi=(a(1) + x*a(2) + p2*a(3)) * (twopi/fsample)
wstep=cmplx(cos(dphi),sin(dphi))
w=w*wstep
c4(i)=w*c3(i)
enddo
return
end subroutine twkfreq2

View File

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