From 9fbdc274bbd3e58a1bcf266b0094011b75c83368 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 29 Jun 2007 00:21:31 +0000 Subject: [PATCH] Mostly working now, with multicast input. FFTs start at t=43 s, though. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/map65@434 ab8295b8-cf94-4d9e-aec4-7959e3be5d79 --- decode1.F90 | 2 -- decode1a.f | 30 +++++++++++++++--------------- getfile2.F90 | 1 + map65a.f90 | 5 ++--- recvpkt.F90 | 15 +++++++-------- symspec.f | 5 ++--- 6 files changed, 27 insertions(+), 31 deletions(-) diff --git a/decode1.F90 b/decode1.F90 index c927fba5b..e54b5c885 100644 --- a/decode1.F90 +++ b/decode1.F90 @@ -30,11 +30,9 @@ subroutine decode1(iarg) if((kk-kkdone).gt.32768) call symspec(id,kbuf,kk,kkdone,rxnoise, & newspec,newdat,ndecoding) - print*,'A',kbuf,kk,kkdone,newspec,newdat,ndecoding if(ndecoding.gt.0 .and. mode(1:4).eq.'JT65') then ndecdone=0 - print*,'C',nutc,newdat,kbuf,kk,kkdone call map65a(newdat) if(mousebutton.eq.0) ndecoding0=ndecoding ndecoding=0 diff --git a/decode1a.f b/decode1a.f index 1be6d199a..aafc3a69a 100644 --- a/decode1a.f +++ b/decode1a.f @@ -86,24 +86,24 @@ C Find best DF, f1, f2, DT, and pol if(i0.lt.1) i0=1 nz=n6+1-i0 - ip0=ipol - nflip=1 +! ip0=ipol +! nflip=1 call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt, + ccfbest,dtbest) - nflip=-1 - ipol=ip0 - call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt, - + ccfbest2,dtbest) - - if(ccfbest2.lt.ccfbest) then - nflip=1 - ipol=ip0 - call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt, - + ccfbest,dtbest) - else - ccfbest=ccfbest - endif +! nflip=-1 +! ipol=ip0 +! call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt, +! + ccfbest2,dtbest) +! +! if(ccfbest2.lt.ccfbest) then +! nflip=1 +! ipol=ip0 +! call afc65b(c5x(i0),c5y(i0),nz,fsample,nflip,ipol,a,dt, +! + ccfbest,dtbest) +! else +! ccfbest=ccfbest +! endif pol=a(4)/57.2957795 aa=cos(pol) diff --git a/getfile2.F90 b/getfile2.F90 index 22a889360..c902d6856 100644 --- a/getfile2.F90 +++ b/getfile2.F90 @@ -55,6 +55,7 @@ subroutine getfile2(fname,len) ndiskdat=1 ndecoding=4 mousebutton=0 + rxnoise=7.0 go to 999 998 ierr=1001 diff --git a/map65a.f90 b/map65a.f90 index f34cb750c..f8e01e27e 100644 --- a/map65a.f90 +++ b/map65a.f90 @@ -17,14 +17,13 @@ subroutine map65a(newdat) logical even character decoded*22,blank*22 include 'datcom.f90' + include 'gcom2.f90' common/spcom/ip0,ss(4,322,NFFT),ss5(322,NFFT),savg(4,NFFT) data blank/' '/ data shmsg0/'ATT','RO ','RRR','73 '/ data nfile/0/,nutc0/-999/,nid/0/,ip000/1/,ip001/1/ - include 'gcom2.f90' save -! print*,'a',newdat,nagain,kbuf,kk,kkdone pctlost=nlost/331.03 if(nlost.ne.0) write(*,1001) nutc,nlost,pctlost 1001 format('UTC:',i5.4,' Lost packets:',i6,', or',f6.1,' %') @@ -219,7 +218,7 @@ subroutine map65a(newdat) nsync2=nint(10.0*log10(sync2)) - 40 !### empirical ### nw=0 write(11,1010) nkHz,ndf,npol,nutc,nsync2,dt,nw,decoded,nkv,nqual -1010 format(i3,i5,i4,i5.4,i4,f5.1,i3,2x,a22,2i3) +1010 format(i3,i5,i4,i5.4,i4,f5.1,i3,2x,a22,i3,i4) endif enddo write(11,*) '$EOF' diff --git a/recvpkt.F90 b/recvpkt.F90 index a223ae976..9a89cdd4a 100644 --- a/recvpkt.F90 +++ b/recvpkt.F90 @@ -21,7 +21,7 @@ subroutine recvpkt(iarg) include 'gcom2.f90' equivalence (id,d8) data nblock0/0/,first/.true./,kb/1/,ntx/0/,npkt/0/,nw/0/ - data sqave/0.0/,u/0.001/,rxnoise/0.0/ + data sqave/0.0/,u/0.001/,rxnoise/0.0/,kbuf/1/ save ! Open a socket to receive multicast data from Linrad @@ -46,11 +46,6 @@ subroutine recvpkt(iarg) endif first=.false. -!### -! kbuf=kb -! kk=k -!### - nsec=msec/1000 if(mod(nsec,60).eq.1) nreset=1 if(mod(nsec,60).eq.0 .and. nreset.eq.1) then @@ -60,6 +55,7 @@ subroutine recvpkt(iarg) k=0 if(kb.eq.2) k=NSMAX nlost=0 + kbuf=kb endif if(kb.eq.1 .and. (k+174).gt.NSMAX) go to 20 @@ -112,17 +108,20 @@ subroutine recvpkt(iarg) !1010 format('UTC:',i5.4,' ns:',i3,' t:',f10.3,' k:',i8) nsec0=nsec ntx=ntx+transmitting + + nutc=mutc + if(mod(nsec,60).eq.43) kk=k !### ??? ### if(mod(nsec,60).eq.52) then kk=k kbuf=kb - nutc=mutc klost=nlost ! if(ntx.lt.20) then ! newdat=1 ! ndecoding=1 ! endif - ntx=0 +! ntx=0 endif + print*,ns,nutc,kbuf,kk,kkdone endif endif diff --git a/symspec.f b/symspec.f index ab99f9f2f..7cd4aa499 100644 --- a/symspec.f +++ b/symspec.f @@ -11,9 +11,9 @@ C Compute spectra at four polarizations, using half-symbol steps. real*8 ts,hsym common/spcom/ip0,ss(4,322,NFFT),ss5(322,NFFT),savg(4,NFFT) - fac=1.e-4 +! fac=1.e-4 ! fac=1.7e-4 -! fac=0.0002 * 10.0**(0.05*(-rxnoise)) + fac=0.0002 * 10.0**(0.05*(-rxnoise)) hsym=2048.d0*96000.d0/11025.d0 !Samples per half symbol npts=hsym !Integral samples per half symbol ntot=322 !Half symbols per transmission @@ -51,7 +51,6 @@ C Compute spectra at four polarizations, using half-symbol steps. call four2a(cy,NFFT,1,1,1) n=n+1 - print*,'B',n,kbuf,kkdone,kk,i0 do i=1,NFFT !Save and accumulate power spectra sx=real(cx(i))**2 + aimag(cx(i))**2 ss(1,n,i)=sx ! Pol = 0