mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-22 20:28:42 -05:00
Add timer call for bit metric calculation. Improve some comments. Make fort.21 ntype parameter more informative.
This commit is contained in:
parent
b6d14853c4
commit
683cd08103
@ -141,7 +141,7 @@ subroutine decode240_101(llr,Keff,maxosd,norder,apmask,message101,cw,ntype,nhard
|
|||||||
where(llr .ge. 0) hdec=1
|
where(llr .ge. 0) hdec=1
|
||||||
nxor=ieor(hdec,cw)
|
nxor=ieor(hdec,cw)
|
||||||
dmin=sum(nxor*abs(llr))
|
dmin=sum(nxor*abs(llr))
|
||||||
ntype=2
|
ntype=1+nosd
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
enddo
|
enddo
|
||||||
|
@ -141,7 +141,7 @@ subroutine decode240_74(llr,Keff,maxosd,norder,apmask,message74,cw,ntype,nharder
|
|||||||
where(llr .ge. 0) hdec=1
|
where(llr .ge. 0) hdec=1
|
||||||
nxor=ieor(hdec,cw)
|
nxor=ieor(hdec,cw)
|
||||||
dmin=sum(nxor*abs(llr))
|
dmin=sum(nxor*abs(llr))
|
||||||
ntype=2
|
ntype=1+nosd
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
enddo
|
enddo
|
||||||
|
@ -84,7 +84,7 @@ subroutine get_fst4_bitmetrics(cd,nss,hmod,nmax,nhicoh,bitmetrics,s4,badsync)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
bitmetrics=0.0
|
bitmetrics=0.0
|
||||||
do nseq=1,nmax !Try coherent sequences of 1, 2, and 4 symbols
|
do nseq=1,nmax !Try coherent sequences of 1,2,3,4 or 1,2,4,8 symbols
|
||||||
if(nseq.eq.1) nsym=1
|
if(nseq.eq.1) nsym=1
|
||||||
if(nseq.eq.2) nsym=2
|
if(nseq.eq.2) nsym=2
|
||||||
if(nhicoh.eq.0) then
|
if(nhicoh.eq.0) then
|
||||||
|
@ -395,11 +395,13 @@ contains
|
|||||||
if(is0.lt.0) cycle
|
if(is0.lt.0) cycle
|
||||||
cframe=c2(is0:is0+160*nss-1)
|
cframe=c2(is0:is0+160*nss-1)
|
||||||
bitmetrics=0
|
bitmetrics=0
|
||||||
|
call timer('bitmetrc',0)
|
||||||
if(hmod.eq.1) then
|
if(hmod.eq.1) then
|
||||||
call get_fst4_bitmetrics(cframe,nss,hmod,nblock,nhicoh,bitmetrics,s4,badsync)
|
call get_fst4_bitmetrics(cframe,nss,hmod,nblock,nhicoh,bitmetrics,s4,badsync)
|
||||||
else
|
else
|
||||||
call get_fst4_bitmetrics2(cframe,nss,hmod,nblock,bitmetrics,s4,badsync)
|
call get_fst4_bitmetrics2(cframe,nss,hmod,nblock,bitmetrics,s4,badsync)
|
||||||
endif
|
endif
|
||||||
|
call timer('bitmetrc',1)
|
||||||
if(badsync) cycle
|
if(badsync) cycle
|
||||||
|
|
||||||
hbits=0
|
hbits=0
|
||||||
@ -410,7 +412,8 @@ contains
|
|||||||
ns4=count(hbits(229:244).eq.(/1,1,1,0,0,1,0,0,1,0,1,1,0,0,0,1/))
|
ns4=count(hbits(229:244).eq.(/1,1,1,0,0,1,0,0,1,0,1,1,0,0,0,1/))
|
||||||
ns5=count(hbits(305:320).eq.(/0,0,0,1,1,0,1,1,0,1,0,0,1,1,1,0/))
|
ns5=count(hbits(305:320).eq.(/0,0,0,1,1,0,1,1,0,1,0,0,1,1,1,0/))
|
||||||
nsync_qual=ns1+ns2+ns3+ns4+ns5
|
nsync_qual=ns1+ns2+ns3+ns4+ns5
|
||||||
if(nsync_qual.lt. 46) cycle !### Value ?? ###
|
|
||||||
|
if(nsync_qual.lt. 46) cycle !### Value ?? ###
|
||||||
scalefac=2.83
|
scalefac=2.83
|
||||||
llra( 1: 60)=bitmetrics( 17: 76, 1)
|
llra( 1: 60)=bitmetrics( 17: 76, 1)
|
||||||
llra( 61:120)=bitmetrics( 93:152, 1)
|
llra( 61:120)=bitmetrics( 93:152, 1)
|
||||||
@ -768,7 +771,7 @@ contains
|
|||||||
|
|
||||||
nnw=nint(48000.*nsps*2./fs)
|
nnw=nint(48000.*nsps*2./fs)
|
||||||
allocate (s(nnw))
|
allocate (s(nnw))
|
||||||
s=0. !Compute low-resloution power spectrum
|
s=0. !Compute low-resolution power spectrum
|
||||||
do i=ina,inb ! noise analysis window includes signal analysis window
|
do i=ina,inb ! noise analysis window includes signal analysis window
|
||||||
j0=nint(i*df2/df1)
|
j0=nint(i*df2/df1)
|
||||||
do j=j0-ndh,j0+ndh
|
do j=j0-ndh,j0+ndh
|
||||||
@ -785,7 +788,6 @@ contains
|
|||||||
enddo
|
enddo
|
||||||
call pctile(s2(ina+hmod*3:inb-hmod*3),inb-ina+1-hmod*6,30,base)
|
call pctile(s2(ina+hmod*3:inb-hmod*3),inb-ina+1-hmod*6,30,base)
|
||||||
s2=s2/base !Normalize wrt noise level
|
s2=s2/base !Normalize wrt noise level
|
||||||
|
|
||||||
ncand=0
|
ncand=0
|
||||||
candidates=0
|
candidates=0
|
||||||
if(ia.lt.3) ia=3
|
if(ia.lt.3) ia=3
|
||||||
|
Loading…
Reference in New Issue
Block a user