Corrections to the frequency-drift feature in q65sim.

This commit is contained in:
Joe Taylor 2021-01-04 09:07:03 -05:00
parent 6074e4e3af
commit 662a43d3dd
2 changed files with 13 additions and 16 deletions

View File

@ -125,8 +125,9 @@ program q65sim
isym=i/nsps + 1 isym=i/nsps + 1
if(isym.gt.nsym) exit if(isym.gt.nsym) exit
if(isym.ne.isym0) then if(isym.ne.isym0) then
freq = f0 + itone(isym)*baud*mode65 + f1*i*dt/60.0 freq = f0 + f1*i*dt/60.0
if(nstp.ne.0) freq=nstp*nint(freq/nstp) if(nstp.ne.0) freq=nstp*nint(freq/nstp)
freq=freq + itone(isym)*baud*mode65
dphi=twopi*freq*dt dphi=twopi*freq*dt
isym0=isym isym0=isym
endif endif

View File

@ -93,16 +93,12 @@ program test_q65
call system('rm -f *.wav') call system('rm -f *.wav')
! call qra_params(ndepth,maxaptype,idf0max,idt0max,ibwmin,ibwmax,maxdist) write(*,1008) ntrperiod,csubmode,ndepth,fDop,f1,nstp
! write(*,1000) ndepth,maxaptype,idf0max,idt0max,ibwmin,ibwmax,maxdist 1008 format('Mode:',i4,a1,' Depth:',i3,' fDop:',f6.1,' Drift:',f6.1, &
! write(12,1000) ndepth,maxaptype,idf0max,idt0max,ibwmin,ibwmax,maxdist ' Steps:',i3)
!1000 format(/'Depth:',i2,' AP:',i2,' df:',i3,' dt:',i3,' bw1:',i3,' bw2:',i3, &
! ' dist:',i3)
write(*,1010) (j,j=0,5) write(*,1010) (j,j=0,5)
write(12,1010) (j,j=0,5) write(12,1010) (j,j=0,5)
1010 format(' SNR Mode d Dop Sync Avg Dec Bad',6i4,' tdec avg rms'/ & 1010 format(' SNR Sync Avg Dec Bad',6i4,' tdec avg rms'/64('-'))
75('-'))
dterr=tsym/4.0 dterr=tsym/4.0
nferr=max(1,nint(0.5*baud),nint(fdop/3.0)) nferr=max(1,nint(0.5*baud),nint(fdop/3.0))
@ -169,17 +165,17 @@ program test_q65
snr_avg=snrsum/nsum snr_avg=snrsum/nsum
snr_rms=sqrt(snrsq/nsum - snr_avg**2) snr_rms=sqrt(snrsq/nsum - snr_avg**2)
endif endif
write(*,1100) snr1,ntrperiod,csubmode,ndepth,nint(fDop),nsync,ndecn, & write(*,1100) snr1,nsync,ndecn,ndec1,nfalse,naptype,tdec/nfiles, &
ndec1,nfalse,naptype,tdec/nfiles,snr_avg,snr_rms snr_avg,snr_rms
write(12,1100) snr1,ntrperiod,csubmode,ndepth,nint(fDop),nsync,ndecn, & write(12,1100) snr1,nsync,ndecn,ndec1,nfalse,naptype,tdec/nfiles, &
ndec1,nfalse,naptype,tdec/nfiles,snr_avg,snr_rms snr_avg,snr_rms
1100 format(f5.1,i4,a1,i3,5i4,i5,5i4,f6.2,f6.1,f5.1) 1100 format(f5.1,4i4,i5,5i4,f6.2,f6.1,f5.1)
if(ndec1.lt.nfiles/2 .and. ndec1z.ge.nfiles/2) then if(ndec1.lt.nfiles/2 .and. ndec1z.ge.nfiles/2) then
snr_thresh=snr1 + float(nfiles/2 - ndec1)/(ndec1z-ndec1) snr_thresh=snr1 + float(nfiles/2 - ndec1)/(ndec1z-ndec1)
open(13,file='snr_thresh.out',status='unknown',position='append') open(13,file='snr_thresh.out',status='unknown',position='append')
write(13,1200) ntrperiod,csubmode,ndepth,nQSOprogress,nfiles, & write(13,1200) ntrperiod,csubmode,ndepth,nQSOprogress,nfiles, &
fdop,snr_thresh,trim(msg) fdop,f1,nstp,nfalse,snr_thresh,trim(msg)
1200 format(i3,a1,2i3,i5,2f7.1,2x,a) 1200 format(i3,a1,2i3,i5,2f7.1,2i3,f7.1,2x,a)
close(13) close(13)
endif endif
flush(6) flush(6)