PROGRAM PROB5_4DIM ( )

Description
   ftnchek test file: t208x.f, Mon Mar 13 14:13:16 1995 
   Adapted from a benchmark program at the University of Utah, with 
   code bodies and most comments eliminated.  ftnchek's -makedcls 
   option and the dcl2inc program have been subsequently used on 
   the original copy of this program to replace all in-line COMMON 
   blocks with INCLUDE statements and separate include files. 
 
Modified Sat Feb  3 10:07:52 EST 2001 by R. Moniot to include a 
NAMELIST declaration to improve it as a test of ftnchek.  The 
declarations were excerpted from the PLOT79 grfgg3.sf3 file.
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)
INTEGER            nr                 (nr = 32)
INTEGER            nt                 (nt = 16)
INTEGER            nr2                (nr2 = nr+2)
INTEGER            nt1                (nt1 = nt+1)
INTEGER            nw                 (nw = 2*nt+15)
INTEGER            mmax               (mmax = 200)

SUBROUTINE UINIT ( )

Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)
INTEGER            nr                 (nr = 32)
INTEGER            nt                 (nt = 16)
INTEGER            nr2                (nr2 = nr+2)
INTEGER            nt1                (nt1 = nt+1)
INTEGER            mmax               (mmax = 200)

SUBROUTINE XINIT ( )

Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE NAVS2D ( )

Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE TRIDGX ( A, B, C, W, Y )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   a,          b(0:nbp1,0:nbp1)
DOUBLE PRECISION   c(0:nbp1,0:nbp1),       w(0:nbp1,0:nbp1)
DOUBLE PRECISION   y(0:nbp1,0:nbp1)
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            n                  (n = ng-1)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE TRIDGY ( A, B, C, W, Y )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   a,          b(0:nbp1,0:nbp1)
DOUBLE PRECISION   c(0:nbp1,0:nbp1),       w(0:nbp1,0:nbp1)
DOUBLE PRECISION   y(0:nbp1,0:nbp1)
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            n                  (n = ng-1)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE NEWU ( W2, P )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   p(0:nbp1,0:nbp1),       w2(0:nbp1,0:nbp1,2)
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE DIV ( S3, W2, D )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   d(0:nbp1,0:nbp1),       s3
DOUBLE PRECISION   w2(0:nbp1,0:nbp1,2)
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE FFT2D ( A, B, ISIGN )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   a(0:nbp1,0:nbp1),       b(0:nbp1,0:nbp1)
INTEGER            isign
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            n                  (n = ng)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE PHIA2D ( N )

Argument Definitions (+ indicates altered content)
INTEGER            n
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE ZAG2D ( N )

Argument Definitions (+ indicates altered content)
INTEGER            n
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE PLOT ( TIME, N, U, F, PHIA, PHIN, C, ZAG, XM, ELF, NK )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   c(0:nbp1,0:nbp1)
DOUBLE PRECISION   elf(0:nbp1,0:nbp1,0:nr2,nt1)
DOUBLE PRECISION   f(0:nbp1,0:nbp1,2),     phia(0:nbp1,0:nbp1)
DOUBLE PRECISION   phin(0:nbp1,0:nbp1),    time
DOUBLE PRECISION   u(0:nbp1,0:nbp1,2),     xm(mmax,2)
DOUBLE PRECISION   zag(0:nbp1,0:nbp1)
INTEGER            n,          nk
Description
prints out data(0:ng,0:ng) for subsequent plotting
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)
INTEGER            nr                 (nr = 32)
INTEGER            nt                 (nt = 16)
INTEGER            nr2                (nr2 = nr+2)
INTEGER            nt1                (nt1 = nt+1)
INTEGER            mmax               (mmax = 200)

SUBROUTINE MARKERS ( )

Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)
INTEGER            mmax               (mmax = 200)

SUBROUTINE PHIN2D ( N )

Argument Definitions (+ indicates altered content)
INTEGER            n
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE CHEM2D ( N )

Argument Definitions (+ indicates altered content)
INTEGER            n
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE CHLFAC ( DIAG, SUBD, NN )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   diag(nn),   subd(nn)
INTEGER            nn
Source file:t208x.f

SUBROUTINE CHLSLV ( DIAG, SUB, NM1, B, X )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   b(nm1+1),   diag(nm1),  sub(nm1),   x(nm1)
INTEGER            nm1
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)
INTEGER            max                (max = nbp1)

SUBROUTINE PERIOD ( PH )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   ph(0:nbp1,0:nbp1)
Description
extend ph periodically
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

DOUBLE PRECISION FUNCTION SOL ( V, L, R )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   l,          r,          v
Source file:t208x.f

SUBROUTINE DIFFU ( PH, PHN, K1, ALPHA )

Argument Definitions (+ indicates altered content)
DOUBLE PRECISION   alpha,      k1,         ph(0:nbp1,0:nbp1)
DOUBLE PRECISION   phn(0:nbp1,0:nbp1)
Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)

SUBROUTINE REACT ( )

Source file:t208x.f
Parameter Variables Used
INTEGER            l2ng               (l2ng = 6)
INTEGER            ng                 (ng = 2**l2ng)
INTEGER            nb                 (nb = ng+2)
INTEGER            nbp1               (nbp1 = nb+1)
INTEGER            nr                 (nr = 32)
INTEGER            nt                 (nt = 16)
INTEGER            nr2                (nr2 = nr+2)
INTEGER            nt1                (nt1 = nt+1)