mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-11-04 05:50:31 -05:00 
			
		
		
		
	
		
			
	
	
		
			31 lines
		
	
	
		
			532 B
		
	
	
	
		
			Fortran
		
	
	
	
	
	
		
		
			
		
	
	
			31 lines
		
	
	
		
			532 B
		
	
	
	
		
			Fortran
		
	
	
	
	
	
| 
								 | 
							
								subroutine foldspec9f(s1,nq,jz,ja,jb,s2)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								! Fold symbol spectra (quarter-symbol steps) from s1 into s2
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  real s1(nq,jz)
							 | 
						||
| 
								 | 
							
								  real s2(240,340)                       !340 = 4*85
							 | 
						||
| 
								 | 
							
								  integer nsum(340)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  s2=0.
							 | 
						||
| 
								 | 
							
								  nsum=0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  do j=ja,jb
							 | 
						||
| 
								 | 
							
								     k=mod(j-1,340)+1
							 | 
						||
| 
								 | 
							
								     nsum(k)=nsum(k)+1
							 | 
						||
| 
								 | 
							
								     do i=1,NQ
							 | 
						||
| 
								 | 
							
								        s2(i,k)=s2(i,k) + s1(i,j)
							 | 
						||
| 
								 | 
							
								     enddo
							 | 
						||
| 
								 | 
							
								  enddo
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  do k=1,340
							 | 
						||
| 
								 | 
							
								     fac=1.0
							 | 
						||
| 
								 | 
							
								     if(nsum(k).gt.0) fac=1.0/nsum(k)
							 | 
						||
| 
								 | 
							
								     s2(1:nq,k)=fac*s2(1:nq,k)
							 | 
						||
| 
								 | 
							
								  enddo
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  ave=sum(s2)/(340.0*nq)
							 | 
						||
| 
								 | 
							
								  if(ave.gt.0.0) s2=s2/ave
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  return
							 | 
						||
| 
								 | 
							
								end subroutine foldspec9f
							 |