mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-04-11 13:58:35 -04:00
Reduce ss(4,322... to ss(322,...
This commit is contained in:
parent
504a62bf93
commit
1c75702420
@ -7,8 +7,8 @@ extern "C" {
|
||||
|
||||
extern struct { //This is "common/datcom/..." in Fortran
|
||||
float d4[4*5760000]; //Raw I/Q data from Linrad
|
||||
float ss[4*322*NFFT]; //Half-symbol spectra at 0,45,90,135 deg pol
|
||||
float savg[NFFT]; //Avg spectra at 0,45,90,135 deg pol
|
||||
float ss[322*NFFT]; //Half-symbol 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)
|
||||
int nutc; //UTC as integer, HHMM
|
||||
int idphi; //Phase correction for Y pol'n, degrees
|
||||
@ -46,8 +46,8 @@ extern struct { //This is "common/datcom/..." in Fortran
|
||||
|
||||
extern struct { //This is "common/datcom/..." in Fortran
|
||||
float d4[4*5760000]; //Raw I/Q data from Linrad
|
||||
float ss[4*322*NFFT]; //Half-symbol spectra at 0,45,90,135 deg pol
|
||||
float savg[NFFT]; //Avg spectra at 0,45,90,135 deg pol
|
||||
float ss[322*NFFT]; //Half-symbol 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)
|
||||
int nutc; //UTC as integer, HHMM
|
||||
int idphi; //Phase correction for Y pol'n, degrees
|
||||
|
@ -3,7 +3,7 @@ subroutine decode0(dd,ss,savg,nstandalone)
|
||||
use timer_module, only: timer
|
||||
parameter (NSMAX=60*96000)
|
||||
|
||||
real*4 dd(4,NSMAX),ss(4,322,NFFT),savg(NFFT)
|
||||
real*4 dd(4,NSMAX),ss(322,NFFT),savg(NFFT)
|
||||
real*8 fcenter
|
||||
integer hist(0:32768)
|
||||
logical ldecoded
|
||||
|
@ -16,7 +16,7 @@ subroutine q65c(itimer)
|
||||
character*6 mygrid,hisgrid
|
||||
character*20 datetime
|
||||
|
||||
common/datcom2/dd(4,5760000),ss(4,322,NFFT),savg(NFFT),nparams0
|
||||
common/datcom2/dd(4,5760000),ss(322,NFFT),savg(NFFT),nparams0
|
||||
|
||||
!### REMEMBER that /npar/ is not updated until nparams=nparams0 is executed. ###
|
||||
common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain, &
|
||||
|
@ -13,7 +13,7 @@ subroutine q65wa(dd,ss,savg,newdat,nutc,fcenter,ntol,nfa,nfb, &
|
||||
parameter (NSMAX=60*96000)
|
||||
complex cx(NSMAX/64), cy(NSMAX/64) !Data at 1378.125 samples/s
|
||||
real dd(4,NSMAX)
|
||||
real*4 ss(4,322,NFFT),savg(NFFT)
|
||||
real*4 ss(322,NFFT),savg(NFFT)
|
||||
real*8 fcenter
|
||||
character*3 shmsg0(4)
|
||||
character mycall*12,hiscall*12,mygrid*6,hisgrid*6,cm*1
|
||||
|
@ -12,7 +12,7 @@ subroutine recvpkt(nsam,nblock2,userx_no,k,buf4,buf8,buf16)
|
||||
integer*2 jd(4),kd(2),nblock2
|
||||
real*4 xd(4),yd(2)
|
||||
real*8 fcenter
|
||||
common/datcom/dd(4,5760000),ss(4,322,NFFT),savg(NFFT),fcenter,nutc, &
|
||||
common/datcom/dd(4,5760000),ss(322,NFFT),savg(NFFT),fcenter,nutc, &
|
||||
junk(NJUNK)
|
||||
equivalence (kd,d4)
|
||||
equivalence (jd,d8,yd)
|
||||
|
@ -20,7 +20,7 @@ subroutine symspec(k,ndiskdat,nb,nbslider,idphi,nfsample, &
|
||||
parameter (NFFT=32768) !Length of FFTs
|
||||
real*8 ts,hsym
|
||||
real*8 fcenter
|
||||
common/datcom/dd(4,5760000),ss(4,322,NFFT),savg(NFFT),fcenter,nutc, &
|
||||
common/datcom/dd(4,5760000),ss(322,NFFT),savg(NFFT),fcenter,nutc, &
|
||||
junk(NJUNK)
|
||||
real*4 ssz5a(NFFT),w(NFFT),w2a(NFFT),w2b(NFFT)
|
||||
complex z
|
||||
@ -140,7 +140,7 @@ subroutine symspec(k,ndiskdat,nb,nbslider,idphi,nfsample, &
|
||||
n=min(322,ihsym)
|
||||
do i=1,NFFT
|
||||
sx=real(cx(i))**2 + aimag(cx(i))**2
|
||||
ss(1,n,i)=sx ! Pol = 0
|
||||
ss(n,i)=sx ! Pol = 0
|
||||
savg(i)=savg(i) + sx
|
||||
ssz5a(i)=sx
|
||||
enddo
|
||||
|
@ -34,7 +34,7 @@ subroutine get_candidates(ss,savg,xpol,jz,nfa,nfb,nts_jt65,nts_q65,cand,ncand)
|
||||
! excised. Candidates are returned in the structure array cand().
|
||||
|
||||
parameter (MAX_PEAKS=100)
|
||||
real ss(4,322,NFFT),savg(NFFT)
|
||||
real ss(322,NFFT),savg(NFFT)
|
||||
real pavg(-20:20)
|
||||
integer indx(NFFT)
|
||||
logical xpol,skip,ldecoded
|
||||
@ -72,10 +72,10 @@ subroutine get_candidates(ss,savg,xpol,jz,nfa,nfb,nts_jt65,nts_q65,cand,ncand)
|
||||
ipol=sync(n)%ipol
|
||||
pavg=0.
|
||||
do j=1,j1
|
||||
pavg=pavg + ss(ipol,j,n-20:n+20)
|
||||
pavg=pavg + ss(j,n-20:n+20)
|
||||
enddo
|
||||
do j=j2,jz
|
||||
pavg=pavg + ss(ipol,j,n-20:n+20)
|
||||
pavg=pavg + ss(j,n-20:n+20)
|
||||
enddo
|
||||
jsum=j1 + (jz-j2+1)
|
||||
pmax=maxval(pavg(-2:2)) !### Why not just pavg(0) ?
|
||||
@ -121,7 +121,7 @@ subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb)
|
||||
use timer_module, only: timer
|
||||
parameter (NFFT=32768)
|
||||
parameter (LAGMAX=30)
|
||||
real ss(4,322,NFFT)
|
||||
real ss(322,NFFT)
|
||||
real savg(NFFT)
|
||||
real savg_med
|
||||
real a(3)
|
||||
@ -178,8 +178,8 @@ subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb)
|
||||
ccf4=0.
|
||||
do j=1,22 !Test for Q65 sync
|
||||
k=isync(j) + lag
|
||||
ccf4=ccf4 + ss(1,k,i+1) + ss(1,k+1,i+1) &
|
||||
+ ss(1,k+2,i+1)
|
||||
ccf4=ccf4 + ss(k,i+1) + ss(k+1,i+1) &
|
||||
+ ss(k+2,i+1)
|
||||
enddo
|
||||
ccf4=ccf4 - savg(i+1)*3*22/float(jz)
|
||||
ccf=ccf4
|
||||
@ -196,7 +196,7 @@ subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb)
|
||||
ccf4=0.
|
||||
do j=1,63 !Test for JT65 sync, std msg
|
||||
k=jsync0(j) + lag
|
||||
ccf4=ccf4 + ss(1,k,i+1) + ss(1,k+1,i+1)
|
||||
ccf4=ccf4 + ss(k,i+1) + ss(k+1,i+1)
|
||||
enddo
|
||||
ccf4=ccf4 - savg(i+1)*2*63/float(jz)
|
||||
ccf=ccf4
|
||||
@ -213,7 +213,7 @@ subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb)
|
||||
ccf4=0.
|
||||
do j=1,63 !Test for JT65 sync, OOO msg
|
||||
k=jsync1(j) + lag
|
||||
ccf4=ccf4 + ss(1,k,i+1) + ss(1,k+1,i+1)
|
||||
ccf4=ccf4 + ss(k,i+1) + ss(k+1,i+1)
|
||||
enddo
|
||||
ccf4=ccf4 - savg(i+1)*2*63/float(jz)
|
||||
ccf=ccf4
|
||||
@ -256,12 +256,6 @@ subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb)
|
||||
sync(i0)%ccfmax=spk
|
||||
enddo
|
||||
|
||||
! do i=ia,ib
|
||||
! write(15,3015) 0.001*(i-1)*df3+32.0,sync(i)%ccfmax,sync(i)%xdt, &
|
||||
! sync(i)%ipol,sync(i)%iflip,sync(i)%birdie
|
||||
!3015 format(3f10.3,2i6,L5)
|
||||
! enddo
|
||||
|
||||
return
|
||||
end subroutine wb_sync
|
||||
|
||||
|
@ -15,7 +15,7 @@ extern "C"
|
||||
struct
|
||||
{
|
||||
double d8[2*60*96000]; //This is "common/datcom/..." in fortran
|
||||
float ss[4*322*NFFT];
|
||||
float ss[322*NFFT];
|
||||
float savg[NFFT];
|
||||
double fcenter;
|
||||
int nutc;
|
||||
|
Loading…
Reference in New Issue
Block a user