From 39c935a882deb5a111715af768d8263c83eada90 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Sat, 18 Feb 2023 10:03:47 -0500 Subject: [PATCH] No need for a second call to q65_decode() when nagain is true. --- lib/decoder.f90 | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/lib/decoder.f90 b/lib/decoder.f90 index 33d6e5be6..d105093d5 100644 --- a/lib/decoder.f90 +++ b/lib/decoder.f90 @@ -216,20 +216,25 @@ subroutine multimode_decoder(ss,id2,params,nfsample) params%nQSOProgress,ncontest,logical(params%lapcqonly),navg0,nqf) params%nclearave=.false. -!### - do k=1,20 - if(nqf(k).eq.0) exit - nqd=1 - navg0=0 - ntol=5 - call my_q65%decode(q65_decoded,id2,nqd,params%nutc,params%ntr, & - params%nsubmode,nqf(k),ntol,params%ndepth, & - params%nfa,params%nfb,logical(params%nclearave), & - .true.,.true.,params%max_drift, & - .false.,params%emedelay,mycall,hiscall,hisgrid, & - params%nQSOProgress,ncontest,logical(params%lapcqonly),navg0,nqf) - enddo -!### + if(.not.params%nagain) then +! Go through identified candidates again, treating each as if it had been +! double-clicked on the waterfall. + do k=1,20 + if(nqf(k).eq.0) exit + if(params%nagain .and. abs(nqf(k)-params%nfqso).gt.params%ntol) cycle + nqd=1 + navg0=0 + ntol=5 + call my_q65%decode(q65_decoded,id2,nqd,params%nutc,params%ntr, & + params%nsubmode,nqf(k),ntol,params%ndepth, & + params%nfa,params%nfb,logical(params%nclearave), & + .true.,.true.,params%max_drift, & + .false.,params%emedelay,mycall,hiscall,hisgrid, & + params%nQSOProgress,ncontest,logical(params%lapcqonly), & + navg0,nqf) + enddo + endif + call timer('dec_q65 ',1) close(17) go to 800