Merged master 8748
This commit is contained in:
+45
-20
@@ -28,16 +28,26 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
end type counting_ft8_decoder
|
||||
|
||||
real ss(184,NSMAX)
|
||||
logical baddata,newdat65,newdat9,single_decode,bVHF,bad0,newdat
|
||||
logical baddata,newdat65,newdat9,single_decode,bVHF,bad0,newdat,ex
|
||||
integer*2 id2(NTMAX*12000)
|
||||
type(params_block) :: params
|
||||
real*4 dd(NTMAX*12000)
|
||||
character(len=20) :: datetime
|
||||
character(len=12) :: mycall, hiscall
|
||||
character(len=6) :: mygrid, hisgrid
|
||||
save
|
||||
type(counting_jt4_decoder) :: my_jt4
|
||||
type(counting_jt65_decoder) :: my_jt65
|
||||
type(counting_jt9_decoder) :: my_jt9
|
||||
type(counting_ft8_decoder) :: my_ft8
|
||||
|
||||
!cast C character arrays to Fortran character strings
|
||||
datetime=transfer(params%datetime, datetime)
|
||||
mycall=transfer(params%mycall,mycall)
|
||||
hiscall=transfer(params%hiscall,hiscall)
|
||||
mygrid=transfer(params%mygrid,mygrid)
|
||||
hisgrid=transfer(params%hisgrid,hisgrid)
|
||||
|
||||
! initialize decode counts
|
||||
my_jt4%decoded = 0
|
||||
my_jt65%decoded = 0
|
||||
@@ -54,13 +64,23 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
10 if (params%nagain) then
|
||||
open(13,file=trim(temp_dir)//'/decoded.txt',status='unknown', &
|
||||
position='append',iostat=ios)
|
||||
if(params%nmode.eq.8) open(19,file=trim(temp_dir)//'/houndcallers.txt', &
|
||||
status='unknown',position='append',iostat=ios)
|
||||
else
|
||||
open(13,file=trim(temp_dir)//'/decoded.txt',status='unknown',iostat=ios)
|
||||
if(params%nmode.eq.8) open(19,file=trim(temp_dir)//'/houndcallers.txt', &
|
||||
status='unknown',iostat=ios)
|
||||
endif
|
||||
if(params%nmode.eq.8) then
|
||||
inquire(file=trim(temp_dir)//'/houndcallers.txt',exist=ex)
|
||||
if(.not.ex) then
|
||||
c2fox=' '
|
||||
g2fox=' '
|
||||
nsnrfox=-99
|
||||
nfreqfox=-99
|
||||
n30z=0
|
||||
nwrap=0
|
||||
nfox=0
|
||||
endif
|
||||
open(19,file=trim(temp_dir)//'/houndcallers.txt',status='unknown')
|
||||
endif
|
||||
|
||||
if(ios.ne.0) then
|
||||
nfail=nfail+1
|
||||
if(nfail.le.3) then
|
||||
@@ -77,7 +97,7 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
params%nftx,newdat,params%nutc,params%nfa,params%nfb, &
|
||||
params%nexp_decode,params%ndepth,logical(params%nagain), &
|
||||
logical(params%lft8apon),logical(params%lapcqonly),params%napwid, &
|
||||
params%mycall,params%mygrid,params%hiscall,params%hisgrid)
|
||||
mycall,mygrid,hiscall,hisgrid)
|
||||
call timer('decft8 ',1)
|
||||
if(nfox.gt.0) then
|
||||
n30min=minval(n30fox(1:nfox))
|
||||
@@ -99,8 +119,12 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
nfreqfox(j)=nfreqfox(i)
|
||||
n30fox(j)=n
|
||||
m=n30max-n
|
||||
call azdist(params%mygrid,g2fox(j),0.d0,nAz,nEl,nDmiles,nDkm, &
|
||||
nHotAz,nHotABetter)
|
||||
if(len(trim(g2fox(j))).eq.4) then
|
||||
call azdist(mygrid,g2fox(j),0.d0,nAz,nEl,nDmiles,nDkm, &
|
||||
nHotAz,nHotABetter)
|
||||
else
|
||||
nDkm=9999
|
||||
endif
|
||||
write(19,1004) c2fox(j),g2fox(j),nsnrfox(j),nfreqfox(j),nDkm,m
|
||||
1004 format(a12,1x,a4,i5,i6,i7,i3)
|
||||
endif
|
||||
@@ -151,8 +175,8 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
call my_jt4%decode(jt4_decoded,dd,jz,params%nutc,params%nfqso, &
|
||||
params%ntol,params%emedelay,params%dttol,logical(params%nagain), &
|
||||
params%ndepth,logical(params%nclearave),params%minsync, &
|
||||
params%minw,params%nsubmode,params%mycall,params%hiscall, &
|
||||
params%hisgrid,params%nlist,params%listutc,jt4_average)
|
||||
params%minw,params%nsubmode,mycall,hiscall, &
|
||||
hisgrid,params%nlist,params%listutc,jt4_average)
|
||||
go to 800
|
||||
endif
|
||||
|
||||
@@ -184,8 +208,8 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
nf1,nf2,params%nfqso,ntol65,params%nsubmode,params%minsync, &
|
||||
logical(params%nagain),params%n2pass,logical(params%nrobust), &
|
||||
ntrials,params%naggressive,params%ndepth,params%emedelay, &
|
||||
logical(params%nclearave),params%mycall,params%hiscall, &
|
||||
params%hisgrid,params%nexp_decode,params%nQSOProgress, &
|
||||
logical(params%nclearave),mycall,hiscall, &
|
||||
hisgrid,params%nexp_decode,params%nQSOProgress, &
|
||||
logical(params%ljt65apon))
|
||||
call timer('jt65a ',1)
|
||||
|
||||
@@ -210,8 +234,8 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
nf1,nf2,params%nfqso,ntol65,params%nsubmode,params%minsync, &
|
||||
logical(params%nagain),params%n2pass,logical(params%nrobust), &
|
||||
ntrials,params%naggressive,params%ndepth,params%emedelay, &
|
||||
logical(params%nclearave),params%mycall,params%hiscall, &
|
||||
params%hisgrid,params%nexp_decode,params%nQSOProgress, &
|
||||
logical(params%nclearave),mycall,hiscall, &
|
||||
hisgrid,params%nexp_decode,params%nQSOProgress, &
|
||||
logical(params%ljt65apon))
|
||||
call timer('jt65a ',1)
|
||||
else
|
||||
@@ -439,8 +463,8 @@ contains
|
||||
real, intent(in) :: dt
|
||||
real, intent(in) :: freq
|
||||
character(len=37), intent(in) :: decoded
|
||||
character c1*12,c2*6,g2*4,w*4
|
||||
integer i0,i1,i2,i3,i4,i5,n30,nwrap
|
||||
character c1*12,c2*12,g2*4,w*4,ctmp*12
|
||||
integer i0,i1,i2,i3,i4,i5,i6,n30,nwrap
|
||||
integer, intent(in) :: nap
|
||||
real, intent(in) :: qual
|
||||
character*2 annot
|
||||
@@ -489,10 +513,11 @@ contains
|
||||
c1=decoded0(1:i1-1)//' '
|
||||
c2=decoded0(i1+1:i2-1)
|
||||
g2=decoded0(i2+1:i3-1)
|
||||
b0=c1.eq.params%mycall
|
||||
if(len(trim(c1)).ne.len(trim(params%mycall))) then
|
||||
i4=index(trim(c1),trim(params%mycall))
|
||||
i5=index(trim(params%mycall),trim(c1))
|
||||
b0=c1.eq.mycall
|
||||
if(c1(1:3).eq.'DE ' .and. index(c2,'/').ge.2) b0=.true.
|
||||
if(len(trim(c1)).ne.len(trim(mycall))) then
|
||||
i4=index(trim(c1),trim(mycall))
|
||||
i5=index(trim(mycall),trim(c1))
|
||||
if(i4.ge.1 .or. i5.ge.1) b0=.true.
|
||||
endif
|
||||
b1=i3-i2.eq.5 .and. isgrid4(g2)
|
||||
|
||||
Reference in New Issue
Block a user