WSJT-X/libm65/analytic.f90
Joe Taylor 3ba268cf14 Functioning JTMSK decoder, within stand-alone program msk.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/jtms3@2519 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2012-07-17 19:31:01 +00:00

26 lines
510 B
Fortran

subroutine analytic(d,npts,nfft,s,c)
! Convert real data to analytic signal
parameter (NFFTMAX=128*1024)
real d(npts)
real s(npts)
complex c(NFFTMAX)
nh=nfft/2
fac=2.0/nfft
c(1:npts)=fac*d(1:npts)
c(npts+1:nfft)=0.
call four2a(c,nfft,1,-1,1) !Forward c2c FFT
do i=1,nh
s(i)=real(c(i))**2 + aimag(c(i))**2
enddo
c(1)=0.5*c(1)
c(nh+2:nfft)=0.
call four2a(c,nfft,1,1,1) !Inverse c2c FFT
return
end subroutine analytic