WSJT-X/lib/spec9f.f90
Bill Somerville 1a23757b26 Reintegrate merge from wsjtx_exp branch.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6122 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-18 01:28:12 +00:00

31 lines
714 B
Fortran

subroutine spec9f(id2,npts,nsps,s1,jz,nq)
! Compute symbol spectra at quarter-symbol steps.
integer*2 id2(0:npts)
real s1(nq,jz)
real x(960)
complex c(0:480)
equivalence (x,c)
nfft=2*nsps !FFTs at twice the symbol length
nh=nfft/2
do j=1,jz
ia=(j-1)*nsps/4
ib=ia+nsps-1
if(ib.gt.npts) exit
x(1:nh)=id2(ia:ib)
x(nh+1:)=0.
call four2a(x,nfft,1,-1,0) !r2c
k=mod(j-1,340)+1
do i=1,NQ
s1(i,j)=1.e-10*(real(c(i))**2 + aimag(c(i))**2)
enddo
enddo
!### Reference spectrum should be applied here (or possibly earlier?) ###
!### Normalize so that rms (or level?) is 1.0 ? ###
return
end subroutine spec9f