CTITLESAMPFKD -- FREQUENCY AND TRIG TABLE GENERATOR FOR MPFK PROCESS C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** CA AUTHOR BRUCE VER WEST CA DESIGNER BRUCE VER WEST CA LANGUAGE VS FORTRAN CA SYSTEM IBM / CRAY CA WRITTEN 07/01/86 C REVISED 12-04-87 BJV INCREASED BUFFER BLOCKING ARRAY 00070009 C DIMENSIONS TO 39 AND 19. 00080009 C REVISED MM-DD-YY 00070009 C REVISED 02-20-89 JJC FOR SPARC PRODUCTION. CA CA SUBROUTINE SAMPFKD(W,AKX,AKH,IFAXW,TRIGST,IFAXX,TRIGSX,IFAXH, CA + TRIGSH,WORK) CA CA THIS SUBROUTINE GENERATE THE TEMPORAL FREQUENCIES AND TRIG TABLES CA REQUIRED FOR THE CRAY ASSEMBLER ROUTINE RCFFT2. IT ALSO GEN- CA ERATES THE SPATIAL FREQUENCIES KX AND KH THAT WILL RESULT FROM CA THE SPATIAL FOURIER TRANSFORMS OVER OFFSET XH AND DEPTH POINT XM. CA AS THESE ARE PERFORMED WITH THE PARALLEL FFT ALGORITH CFFT99, THE CA TRIG TABLES AND PRIME FACTOR DECOMPOSITION IS ALSO ESTABLISHED IN CA THIS ROUTINE. CA CA********************************************************************** CA ARGUMENTS: CA CA W OUTPUT ARRAY WHICH HOLDS THE NON-NEGATIVE CA TEMPORAL FREQUENCIES WHICH RESULT CA FROM THE TEMPORAL FFT CA CA AKX OUTPUT ARRAY OF LENGTH NKX WHICH CONTAINS CA THE SPATIAL FREQUENCIES KX WHICH CA RESULT FROM THE SPATIAL FFT OVER CA THE DEPTH POINT COORDINATE XM CA CA AKH OUTPUT ARRAY OF LENGTH NKH WHICH CONTAINS CA THE SPATIAL FREQUENCIES KH WHICH CA RESULT FROM THE SPATIAL FFT OVER CA THE OFFSET COORDINATE XH WITHIN A CA DEPTH POINT CA CA IFAXW OUTPUT ARRAY WHICH CONTAINS THE PRIME FACTORS CA FOR THE FFT LENGTH NW TO BE USED BY CA THE PARALLEL FFT ALGORITHM CFFT99 FOR CA THE FOURIER TRANSFORMS FROM TIME CA COORDINATE TM CA CA TRIGST OUTPUT ARRAY WHICH CONTAINS THE TRIG TABLES CA NEEDED BY THE FFT ALGORITHM CFFT99 FOR CA THE FOURIER TRANSFORMS OVER TIME CA COORDINATE TM CA CA IFAXX OUTPUT ARRAY WHICH CONTAINS THE PRIME FACTORS CA FOR THE FFT LENGTH NKX TO BE USED BY CA THE PARALLEL FFT ALGORITHM CFFT99 FOR CA THE SPATIAL FOURIER TRANSFORMS OVER CA DEPTH POINT COORDINATE XM CA CA TRIGSX OUTPUT ARRAY WHICH CONTAINS THE TRIG TABLES CA NEEDED BY THE FFT ALGORITHM CFFT99 FOR CA THE SPATIAL FOURIER TRANSFORMS OVER CA DEPTH POINT COORDINATE XM CA CA IFAXH OUTPUT ARRAY WHICH CONTAINS THE PRIME FACTORS CA FOR THE FFT LENGTH NKH TO BE USED BY CA THE PARALLEL FFT ALGORITHM CFFT99 FOR CA THE SPATIAL FOURIER TRANSFORMS OVER CA OFFSET COORDINATE XH CA CA TRIGSH OUTPUT ARRAY WHICH CONTAINS THE TRIG TABLES CA NEEDED BY THE FFT ALGORITHM CFFT99 FOR CA THE SPATIAL FOURIER TRANSFORMS OVER CA OFFSET COORDINATE XM CA CA WORK DUMMY CA CA********************************************************************** C SUBROUTINE SAMPFKD(W,AKX,AKH,IFAXW,TRIGST,IFAXX,TRIGSX,IFAXH, + TRIGSH,WORK) C DIMENSION W(1),TRIGST(1),WORK(1),IFAXW(1) DIMENSION AKX(1),IFAXX(1),TRIGSX(1) DIMENSION AKH(1),IFAXH(1),TRIGSH(1) C COMMON/CMPFKC/IF1,LNT,LW,LW2,IW1,ALPHA,SCALE,CMIN,VMUTE,AFFR,IKHHI COMMON/CMPFKT/NT,DT,NW,DW,NWD2,NWD21,NWP2 COMMON/CMPFKX/NX,DX,NKX,DKX,NKXD2,NKXD21,NKX2,NKXP2 COMMON/CMPFKH/NH,DH,NKH,DKH,NKHD2,NKHD21,NKH2,IHBEG COMMON/CMPFKB/IKXBF(39),IWBF(19),MKXBF(39),MWBF(19), + NBF,MBF,NKXBF,NWBF C PI=3.141592654 C DO 10 IW=1,LW 10 W(IW)=(IW-1)*DW CAD CALL RCFFT2(1,1,NW,WORK,WORKT,WORK) CALL FFTFAX(NW,IFAXW,TRIGST) C IF(NKX.EQ.1) THEN AKX(1)=0. ELSE AKXMN= PI/DX DKX= 2.*AKXMN/NKX AKX(1)=0. IKX1=1 DO 20 IKX=2,NKX AKX(IKX)=AKX(IKX1)+DKX IF (AKX(IKX) .GE. AKXMN) AKX(IKX) = AKX(IKX) - 2.0*AKXMN 20 IKX1=IKX CALL CFTFAX(NKX,IFAXX,TRIGSX) END IF C IF(NKH.EQ.1) THEN AKH(1)=0. ELSE AKHMN= PI/DH DKH= 2.*AKHMN/NKH AKH(1)=0. IKH1=1 DO 30 IKH=2,NKH AKH(IKH)=AKH(IKH1)+DKH 30 IKH1=IKH CALL CFTFAX(NKH,IFAXH,TRIGSH) ENDIF C RETURN END