diff --git a/lib/ft4/ft4_decode.f90 b/lib/ft4/ft4_decode.f90 index 7f4a09adb..4eb69dd5a 100644 --- a/lib/ft4/ft4_decode.f90 +++ b/lib/ft4/ft4_decode.f90 @@ -16,6 +16,7 @@ subroutine ft4_decode(cdatetime0,tbuf,nfa,nfb,nQSOProgress,nfqso,iwave,ndecodes, character*6 hhmmss complex cd2(0:NMAX/NDOWN-1) !Complex waveform + complex cds(0:NMAX/NDOWN-1) !Complex waveform complex cb(0:NMAX/NDOWN-1) complex cd(0:NN*NSS-1) !Complex waveform complex ctwk(4*NSS),ctwk2(4*NSS) diff --git a/lib/ft4/sync4d.f90 b/lib/ft4/sync4d.f90 index 4a6e7e899..4d8ba2df2 100644 --- a/lib/ft4/sync4d.f90 +++ b/lib/ft4/sync4d.f90 @@ -74,20 +74,22 @@ subroutine sync4d(cd0,i0,ctwk,itwk,sync,sync2) sync = p(z1) + p(z2) + p(z3) + p(z4) sync2=0.0 -do i=1,4 - i1=i0+(i-1)*33*NSS - if(i.eq.1) csync2=ctwk*csynca - if(i.eq.2) csync2=ctwk*csyncb - if(i.eq.3) csync2=ctwk*csyncc - if(i.eq.4) csync2=ctwk*csyncd - z1=sum(cd0(i1 :i1+ NSS-1)*conjg(csync2( 1: NSS))) - z2=sum(cd0(i1+ NSS:i1+2*NSS-1)*conjg(csync2( NSS+1:2*NSS))) - z3=sum(cd0(i1+2*NSS:i1+3*NSS-1)*conjg(csync2(2*NSS+1:3*NSS))) - z4=sum(cd0(i1+3*NSS:i1+4*NSS-1)*conjg(csync2(3*NSS+1:4*NSS))) - sync2=sync2 + abs(z1)**2+abs(z2)**2+abs(z3)**2+abs(z4)**2+& - 2*abs(z1*conjg(z2)+z2*conjg(z3)+z3*conjg(z4)) -enddo -sync2=sync2*(fac**2) +!do i=1,4 +! i1=i0+(i-1)*33*NSS +! if(i.eq.1) csync2=ctwk*csynca +! if(i.eq.2) csync2=ctwk*csyncb +! if(i.eq.3) csync2=ctwk*csyncc +! if(i.eq.4) csync2=ctwk*csyncd +! z1=sum(cd0(i1 :i1+ NSS-1)*conjg(csync2( 1: NSS))) +! z2=sum(cd0(i1+ NSS:i1+2*NSS-1)*conjg(csync2( NSS+1:2*NSS))) +! z3=sum(cd0(i1+2*NSS:i1+3*NSS-1)*conjg(csync2(2*NSS+1:3*NSS))) +! z4=sum(cd0(i1+3*NSS:i1+4*NSS-1)*conjg(csync2(3*NSS+1:4*NSS))) +! sync2=sync2 + abs(z1)**2+abs(z2)**2+abs(z3)**2+abs(z4)**2+& +! 2*abs(z1*conjg(z2)+z2*conjg(z3)+z3*conjg(z4)) + & +! 2*abs(z1*conjg(z3)+z2*conjg(z4)) + & +! 2*abs(z1*conjg(z4)) +!enddo +!sync2=sync2*(fac**2) return end subroutine sync4d