25 lines
		
	
	
		
			778 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			25 lines
		
	
	
		
			778 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   | subroutine ana64(dd,npts,c0) | ||
|  | 
 | ||
|  |   use timer_module, only: timer | ||
|  | 
 | ||
|  |   parameter (NMAX=60*12000)                  !Max size of raw data at 12000 Hz | ||
|  |   parameter (NSPS=3456)                      !Samples per symbol at 6000 Hz | ||
|  |   parameter (NSPC=7*NSPS)                    !Samples per Costas array | ||
|  |   real dd(NMAX)                              !Raw data | ||
|  |   complex c0(0:720000)                       !Complex spectrum of dd() | ||
|  |   save | ||
|  | 
 | ||
|  |   nfft1=672000 | ||
|  |   nfft2=nfft1/2 | ||
|  |   df1=12000.0/nfft1 | ||
|  |   fac=2.0/nfft1 | ||
|  |   c0(0:npts-1)=fac*dd(1:npts) | ||
|  |   c0(npts:nfft1)=0. | ||
|  |   call four2a(c0,nfft1,1,-1,1)             !Forward c2c FFT | ||
|  |   c0(nfft2/2+1:nfft2)=0. | ||
|  |   c0(0)=0.5*c0(0) | ||
|  |   call four2a(c0,nfft2,1,1,1)              !Inverse c2c FFT; c0 is analytic sig | ||
|  | 
 | ||
|  |   return | ||
|  | end subroutine ana64 |