From 0e15a4cd5c5cfff044908f9a5727d0cf725abb50 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 31 Dec 2015 16:22:27 +0000 Subject: [PATCH] Default parameter settings for JT65 decoding set for HF conditions. More aggressive parameters are selected with higher values of "Aggressive decoding level" on the "Advanced" tab. With settings greater than 0, be sure to set Ftol=1000 if you want to decode over the whole passband. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6330 ab8295b8-cf94-4d9e-aec4-7959e3be5d79 --- lib/ftrsd/ftrsd2.c | 5 ++--- lib/jt65_decode.f90 | 29 +++++++++++++++++++++++------ 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/lib/ftrsd/ftrsd2.c b/lib/ftrsd/ftrsd2.c index fde7ab706..61b81e5b9 100644 --- a/lib/ftrsd/ftrsd2.c +++ b/lib/ftrsd/ftrsd2.c @@ -209,9 +209,8 @@ NB: j is the symbol-vector index of the symbol with rank i. } else { if(pp>pp2 && pp!=pp1) pp2=pp; } - // if(pp2==0.0 && pp1>5.0) break; - // if(pp2>0.0 && pp1>4.4 && pp1>pp2+0.6) break; - if(ntotal_min <= 81 && pp2/pp1 <= 0.87) break; + // if(ntotal_min <= 81 && pp2/pp1 <= 0.87) break; + if(nhard_min <= 41 && ntotal_min <= 71) break; } if(k == ntrials) ntry[0]=k; } diff --git a/lib/jt65_decode.f90 b/lib/jt65_decode.f90 index 378baecec..3589850ad 100644 --- a/lib/jt65_decode.f90 +++ b/lib/jt65_decode.f90 @@ -75,10 +75,20 @@ contains end type accepted_decode type(accepted_decode) dec(50) logical :: first_time, robust + + integer h0(0:11),d0(0:11),ne(0:11) + real r0(0:11) common/decstats/ntry65a,ntry65b,n65a,n65b,num9,numfano common/steve/thresh0 common/test000/ncandidates,nhard_min,nsoft_min,nera_best,nrtt1000, & ntotal_min,ntry,nq1000,npp1 !### TEST ONLY ### + +! 0 1 2 3 4 5 6 7 8 9 10 11 + data h0/41,42,43,43,44,45,46,47,48,48,49,49/ + data d0/71,72,73,74,76,77,78,80,81,82,83,83/ + +! 0 1 2 3 4 5 6 7 8 9 10 11 + data r0/0.70,0.72,0.74,0.76,0.78,0.80,0.82,0.84,0.86,0.88,0.90,0.90/ save this%callback => callback @@ -153,13 +163,20 @@ contains naggressive,ndepth,mycall,hiscall,hisgrid,nexp_decode, & sync2,a,dtx,nft,qual,nhist,decoded) call timer('decod65a',1) + if(nhard_min.gt.50) cycle - !### Suppress false decodes in crowded HF bands ### - if(naggressive.eq.0 .and. ntrials.le.10000) then - if(ntry.eq.ntrials .or. ncandidates.eq.100) then - if(nhard_min.ge.42 .or. ntotal_min.ge.71) cycle - endif - endif + n=naggressive + rtt=0.001*nrtt1000 + if(nhard_min.gt.h0(n)) cycle + if(ntotal_min.gt.d0(n)) cycle + if(rtt.gt.r0(n)) cycle + +! !### Suppress false decodes in crowded HF bands ### +! if(naggressive.eq.0 .and. ntrials.le.10000) then +! if(ntry.eq.ntrials) then +! if(nhard_min.ge.42 .or. ntotal_min.ge.71) cycle +! endif +! endif if(decoded.eq.decoded0 .and. abs(freq-freq0).lt. 3.0 .and. & minsync.ge.0) cycle !Don't display dupes