Source t208x.f

### 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),  C(0:NBP1,0:NBP1)
>     DOUBLE PRECISION  W(0:NBP1,0:NBP1),  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),  C(0:NBP1,0:NBP1)
>     DOUBLE PRECISION  W(0:NBP1,0:NBP1),  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,  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),  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,  U(0:NBP1,0:NBP1,2)
>     DOUBLE PRECISION  XM(MMAX,2),  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)