mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-05-31 13:52:27 -04:00
Code cleanup.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7664 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
dacf9c3ef7
commit
9f3dd26a7b
@ -12,11 +12,11 @@ integer*1 genmrb(60,300)
|
|||||||
integer*1 temp(60),m0(60),me(60)
|
integer*1 temp(60),m0(60),me(60)
|
||||||
integer indices(300)
|
integer indices(300)
|
||||||
integer, parameter:: N=300, K=60, M=N-K
|
integer, parameter:: N=300, K=60, M=N-K
|
||||||
integer*1 codeword(N),cw(N),apmask(N),hdec(N)
|
integer*1 codeword(N),cw(N),hdec(N)
|
||||||
integer colorder(N)
|
integer colorder(N)
|
||||||
integer*1 decoded(K)
|
integer*1 decoded(K)
|
||||||
integer indx(N),indxmrb(K)
|
integer indx(N)
|
||||||
real llr(N),rx(N),absrx(N),absmrb(K)
|
real llr(N),rx(N),absrx(N)
|
||||||
logical first
|
logical first
|
||||||
data first/.true./
|
data first/.true./
|
||||||
data g/ &
|
data g/ &
|
||||||
@ -351,15 +351,6 @@ enddo
|
|||||||
! zero'th order codeword estimate (assuming no errors in the MRB).
|
! zero'th order codeword estimate (assuming no errors in the MRB).
|
||||||
m0=0
|
m0=0
|
||||||
where (rx(indices(241:300)).ge.0.0) m0=1
|
where (rx(indices(241:300)).ge.0.0) m0=1
|
||||||
absmrb=abs(rx(indices(241:300)))
|
|
||||||
!do i=1,60
|
|
||||||
!write(*,*) i,absmrb(i)
|
|
||||||
!enddo
|
|
||||||
call indexx(absmrb,K,indxmrb)
|
|
||||||
!do i=1,60
|
|
||||||
!write(*,*) i,absmrb(i),indxmrb(i),absmrb(indxmrb(i))
|
|
||||||
!enddo
|
|
||||||
xmed=absmrb(45)
|
|
||||||
|
|
||||||
! the MRB should have only a few errors. Try various error patterns,
|
! the MRB should have only a few errors. Try various error patterns,
|
||||||
! re-encode each errored version of the MRBs, re-order the resulting codeword
|
! re-encode each errored version of the MRBs, re-order the resulting codeword
|
||||||
@ -376,7 +367,9 @@ do i1=0,60
|
|||||||
if( i3 .ne. 0 ) me(i3)=1-me(i3)
|
if( i3 .ne. 0 ) me(i3)=1-me(i3)
|
||||||
if( i4 .ne. 0 ) me(i4)=1-me(i4)
|
if( i4 .ne. 0 ) me(i4)=1-me(i4)
|
||||||
|
|
||||||
! me is the "errored" message = MRB's + error pattern
|
! me is the MRB message + error pattern
|
||||||
|
! use the modified generator matrix to encode this message,
|
||||||
|
! producing a codeword that will be tested against the received vector
|
||||||
do i=1, 300
|
do i=1, 300
|
||||||
nsum=sum(iand(me,genmrb(1:60,i)))
|
nsum=sum(iand(me,genmrb(1:60,i)))
|
||||||
codeword(i)=mod(nsum,2)
|
codeword(i)=mod(nsum,2)
|
||||||
@ -402,7 +395,7 @@ do i1=0,60
|
|||||||
enddo
|
enddo
|
||||||
|
|
||||||
200 decoded=cw(241:300)
|
200 decoded=cw(241:300)
|
||||||
!write(*,*) absmrb(i1min),absmrb(i2min),absmrb(i3min),absmrb(i4min),xmed,nhardmin
|
!write(*,*) absmrb(i1min),absmrb(i2min),absmrb(i3min),absmrb(i4min),nhardmin
|
||||||
niterations=-1
|
niterations=-1
|
||||||
if( nhardmin .le. 90 ) niterations=1
|
if( nhardmin .le. 90 ) niterations=1
|
||||||
return
|
return
|
||||||
|
Loading…
x
Reference in New Issue
Block a user