Remove references to 95238; increase size of ss(322,NFFT) to ss(373,NFFT).

This commit is contained in:
Joe Taylor 2023-12-04 13:01:12 -05:00
parent c02b977c94
commit 456c5de125
11 changed files with 12 additions and 25 deletions

View File

@ -7,7 +7,7 @@ extern "C" {
extern struct { //This is "common/datcom/..." in Fortran extern struct { //This is "common/datcom/..." in Fortran
float d4[2*5760000]; //Raw I/Q data from Linrad float d4[2*5760000]; //Raw I/Q data from Linrad
float ss[322*NFFT]; //Half-symbol spectra at 0,45,90,135 deg pol float ss[373*NFFT]; //Half-symbol spectra at 0,45,90,135 deg pol
float savg[NFFT]; //Avg spectra at 0,45,90,135 deg pol float savg[NFFT]; //Avg spectra at 0,45,90,135 deg pol
double fcenter; //Center freq from Linrad (MHz) double fcenter; //Center freq from Linrad (MHz)
int nutc; //UTC as integer, HHMM int nutc; //UTC as integer, HHMM
@ -47,7 +47,7 @@ extern struct { //This is "common/datcom/..." in Fortran
extern struct { //This is "common/datcom/..." in Fortran extern struct { //This is "common/datcom/..." in Fortran
float d4[2*5760000]; //Raw I/Q data from Linrad float d4[2*5760000]; //Raw I/Q data from Linrad
float ss[322*NFFT]; //Half-symbol spectra at 0,45,90,135 deg pol float ss[373*NFFT]; //Half-symbol spectra at 0,45,90,135 deg pol
float savg[NFFT]; //Avg spectra at 0,45,90,135 deg pol float savg[NFFT]; //Avg spectra at 0,45,90,135 deg pol
double fcenter; //Center freq from Linrad (MHz) double fcenter; //Center freq from Linrad (MHz)
int nutc; //UTC as integer, HHMM int nutc; //UTC as integer, HHMM

View File

@ -3,7 +3,7 @@ subroutine decode0(dd,ss,savg)
use timer_module, only: timer use timer_module, only: timer
parameter (NSMAX=60*96000) parameter (NSMAX=60*96000)
real*4 dd(2,NSMAX),ss(322,NFFT),savg(NFFT) real*4 dd(2,NSMAX),ss(373,NFFT),savg(NFFT)
real*8 fcenter real*8 fcenter
integer offset integer offset
integer hist(0:32768) integer hist(0:32768)

View File

@ -26,11 +26,6 @@ subroutine filbig(dd,nmax,f0,newdat,nfsample,c4a,n4)
nfft1=MAXFFT1 nfft1=MAXFFT1
nfft2=MAXFFT2 nfft2=MAXFFT2
if(nfsample.eq.95238) then
nfft1=5120000
nfft2=74088
endif
if(first) then if(first) then
nflags=FFTW_ESTIMATE nflags=FFTW_ESTIMATE
if(npatience.eq.1) nflags=FFTW_ESTIMATE_PATIENT if(npatience.eq.1) nflags=FFTW_ESTIMATE_PATIENT
@ -63,7 +58,6 @@ subroutine filbig(dd,nmax,f0,newdat,nfsample,c4a,n4)
enddo enddo
df=96000.d0/nfft1 df=96000.d0/nfft1
if(nfsample.eq.95238) df=95238.1d0/nfft1
first=.false. first=.false.
endif endif

View File

@ -11,7 +11,7 @@ subroutine getcand2(ss,savg0,nts_q65,nagain,ntol,f0_selected,cand,ncand)
parameter (NFFT=32768) !FFTs done in symspec() parameter (NFFT=32768) !FFTs done in symspec()
parameter (MAX_CANDIDATES=50) parameter (MAX_CANDIDATES=50)
type(candidate) :: cand(MAX_CANDIDATES) type(candidate) :: cand(MAX_CANDIDATES)
real ss(322,NFFT) !Symbol spectra real ss(373,NFFT) !Symbol spectra
real savg0(NFFT),savg(NFFT) !Average spectra over whole Rx sequence real savg0(NFFT),savg(NFFT) !Average spectra over whole Rx sequence
integer ipk1(1) !Peak index of local portion of spectrum integer ipk1(1) !Peak index of local portion of spectrum
logical sync_ok !True if sync pattern is present logical sync_ok !True if sync pattern is present

View File

@ -4,7 +4,7 @@ subroutine q65_sync(ss,i0,nts_q65,sync_ok,snr,xdt)
parameter (NFFT=32768) parameter (NFFT=32768)
parameter (LAGMAX=33) parameter (LAGMAX=33)
real ss(322,NFFT) !Symbol spectra real ss(373,NFFT) !Symbol spectra
real ccf(0:LAGMAX) !The WSJT "blue curve", peak at DT real ccf(0:LAGMAX) !The WSJT "blue curve", peak at DT
logical sync_ok logical sync_ok
logical first logical first

View File

@ -40,11 +40,6 @@ subroutine q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol, &
nfft1=MAXFFT1 nfft1=MAXFFT1
nfft2=MAXFFT2 nfft2=MAXFFT2
df=96000.0/NFFT1 df=96000.0/NFFT1
if(nfsample.eq.95238) then
nfft1=5120000
nfft2=322560
df=96000.0/nfft1
endif
nh=nfft2/2 nh=nfft2/2
f_mouse=1000.0*(fqso+48.0) + mousedf f_mouse=1000.0*(fqso+48.0) + mousedf
k0=nint((ipk*df3-1000.0)/df) k0=nint((ipk*df3-1000.0)/df)

View File

@ -16,7 +16,7 @@ subroutine q65c(itimer)
character*6 mygrid,hisgrid character*6 mygrid,hisgrid
character*20 datetime character*20 datetime
common/datcom2/dd(2,5760000),ss(322,NFFT),savg(NFFT),nparams0 common/datcom2/dd(2,5760000),ss(373,NFFT),savg(NFFT),nparams0
!### REMEMBER that /npar/ is not updated until nparams=nparams0 is executed. ### !### REMEMBER that /npar/ is not updated until nparams=nparams0 is executed. ###
common/npar/fcenter,nutc,fselected,mousedf,mousefqso,nagain, & common/npar/fcenter,nutc,fselected,mousedf,mousefqso,nagain, &

View File

@ -18,7 +18,7 @@ subroutine qmapa(dd,ss,savg,newdat,nutc,fcenter,ntol,nfa,nfb, &
parameter (NSMAX=60*96000) parameter (NSMAX=60*96000)
complex cx(NSMAX/64) !Data at 1378.125 samples/s complex cx(NSMAX/64) !Data at 1378.125 samples/s
real dd(2,NSMAX) !I/Q data from Linrad real dd(2,NSMAX) !I/Q data from Linrad
real ss(322,NFFT) !Symbol spectra real ss(373,NFFT) !Symbol spectra
real savg(NFFT) !Average spectrum real savg(NFFT) !Average spectrum
real*8 fcenter !Center RF frequency, MHz real*8 fcenter !Center RF frequency, MHz
character mycall*12,hiscall*12,hisgrid*6 character mycall*12,hiscall*12,hisgrid*6
@ -45,7 +45,6 @@ subroutine qmapa(dd,ss,savg,newdat,nutc,fcenter,ntol,nfa,nfb, &
nwrite_q65=0 nwrite_q65=0
df=96000.0/NFFT !df = 96000/NFFT = 2.930 Hz df=96000.0/NFFT !df = 96000/NFFT = 2.930 Hz
if(nfsample.eq.95238) df=95238.1/NFFT
ftol=0.010 !Frequency tolerance (kHz) ftol=0.010 !Frequency tolerance (kHz)
foffset=0.001*(1270 + nfcal) !Offset from sync tone, plus CAL foffset=0.001*(1270 + nfcal) !Offset from sync tone, plus CAL
fqso=mousefqso + foffset - 0.5*(nfa+nfb) + nfshift !fqso at baseband (khz) fqso=mousefqso + foffset - 0.5*(nfa+nfb) + nfshift !fqso at baseband (khz)

View File

@ -11,7 +11,7 @@ subroutine recvpkt(nsam,nblock2,userx_no,k,buf4,buf8)
integer*2 jd(4),kd(2),nblock2 integer*2 jd(4),kd(2),nblock2
real*4 yd(2) real*4 yd(2)
real*8 fcenter real*8 fcenter
common/datcom/dd(2,5760000),ss(322,NFFT),savg(NFFT),fcenter,nutc, & common/datcom/dd(2,5760000),ss(373,NFFT),savg(NFFT),fcenter,nutc, &
junk(NJUNK) junk(NJUNK)
equivalence (kd,d4) equivalence (kd,d4)
equivalence (jd,d8,yd) equivalence (jd,d8,yd)

View File

@ -8,7 +8,7 @@ subroutine symspec(k,ndiskdat,nb,nbslider,nfsample, &
! pxdb power in x channel (0-60 dB) ! pxdb power in x channel (0-60 dB)
! ssz5a polarized spectrum, for waterfall display ! ssz5a polarized spectrum, for waterfall display
! nkhz integer kHz portion of center frequency, e.g., 125 for 144.125 ! nkhz integer kHz portion of center frequency, e.g., 125 for 144.125
! ihsym index number of this half-symbol (1-322) ! ihsym index number of this half-symbol (1-373)
! nzap number of samples zero'ed by noise blanker ! nzap number of samples zero'ed by noise blanker
include 'njunk.f90' include 'njunk.f90'
@ -16,7 +16,7 @@ subroutine symspec(k,ndiskdat,nb,nbslider,nfsample, &
parameter (NFFT=32768) !Length of FFTs parameter (NFFT=32768) !Length of FFTs
real*8 ts,hsym real*8 ts,hsym
real*8 fcenter real*8 fcenter
common/datcom/dd(2,5760000),ss(322,NFFT),savg(NFFT),fcenter,nutc, & common/datcom/dd(2,5760000),ss(373,NFFT),savg(NFFT),fcenter,nutc, &
junk(NJUNK) junk(NJUNK)
real*4 ssz5a(NFFT),w(NFFT),w2a(NFFT),w2b(NFFT) real*4 ssz5a(NFFT),w(NFFT),w2a(NFFT),w2b(NFFT)
complex cx(NFFT) complex cx(NFFT)
@ -45,7 +45,6 @@ subroutine symspec(k,ndiskdat,nb,nbslider,nfsample, &
endif endif
hsym=2048.d0*96000.d0/11025.d0 !Samples per JT65 half-symbol hsym=2048.d0*96000.d0/11025.d0 !Samples per JT65 half-symbol
if(nfsample.eq.95238) hsym=2048.d0*95238.1d0/11025.d0
if(k.lt.k0) then if(k.lt.k0) then
ts=1.d0 - hsym ts=1.d0 - hsym
@ -113,7 +112,7 @@ subroutine symspec(k,ndiskdat,nb,nbslider,nfsample, &
ihsym=ihsym+1 ihsym=ihsym+1
cx=w*cx00 !Apply window for 2nd forward FFT cx=w*cx00 !Apply window for 2nd forward FFT
call four2a(cx,NFFT,1,1,1) !Second forward FFT (X) call four2a(cx,NFFT,1,1,1) !Second forward FFT (X)
n=min(322,ihsym) n=min(373,ihsym)
do i=1,NFFT do i=1,NFFT
sx=real(cx(i))**2 + aimag(cx(i))**2 sx=real(cx(i))**2 + aimag(cx(i))**2
ss(n,i)=sx ! Pol = 0 ss(n,i)=sx ! Pol = 0

View File

@ -15,7 +15,7 @@ extern "C"
struct struct
{ {
double d8[60*96000]; //This is "common/datcom/..." in fortran double d8[60*96000]; //This is "common/datcom/..." in fortran
float ss[322*NFFT]; float ss[373*NFFT];
float savg[NFFT]; float savg[NFFT];
double fcenter; double fcenter;
int nutc; int nutc;