C
C Common blocks for program NET
C
C To be included before the DATA, statement function and executable
C statements using command:
C     INCLUDE 'net.inc'
C
C-----------------------------------------------------------------------
C                                                    
C Dominant memory requirements:  4*MRAM bytes allocated in 'ram.inc':
C
C     ------------------------------------------------------------------
      INCLUDE 'ram.inc'
C     ram.inc
      INTEGER IRAM(MRAM)
      EQUIVALENCE (RAM,IRAM)
C     ------------------------------------------------------------------
C
C MRAM must be at least  MIND+L1*L2*L3*L4*(4+M1PRED+M1NFS+M1ICB), where:
C     MIND=0  if FIND=' ', see 'index file' (usually applicable),
C     MIND=N1*N2*N3  otherwise.
C     L4      is the number of nonempty big bricks.
C     L4=N1*N2*N3 and L1=1,L2=1,L3=1 without volume indexing (FIND=' ').
C     M1NFS=-1 without the optimization of sizes of forward stars,
C     M1NFS=0 with the optimization of sizes of forward stars and also
C             for TTT,
C     M1PRED=0 if travel-time errors are not calculated and
C             the predecessor file is not generated and also for TTT,
C     M1PRED=1 otherwise.
C     M1ICB=0 in models without structural interfaces and also for TTT,
C     M1ICB=1 in models with structural interfaces.
C
C.......................................................................
C
C     Location of the program arrays within the RAM array:
C     IND  (I)=IRAM(IND0  +I)
C     IPOSQ(I)=IRAM(IPOSQ0+I)
C     TT   (I)= RAM(ITT0   I)
C     P    (I)= RAM(IP0   +I)
C     P1   (I)= RAM(IP10  +I)
C     P2   (I)= RAM(IP20  +I)
C     P3   (I)= RAM(IP30  +I)
C     IPRED(I)=IRAM(IPRED0+I)
C     NFS  (I)=IRAM(NFS0  +I)
C     ICB  (I)=IRAM(ICB0  +I)
C
C     IND...  Volume indexing (indices of big bricks, if determined).
C     TT...   Array of the travel times at the network nodes.
C     IPOSQ...Positions of nodes in the queue.
C     P...    Array of the slownesses at the network nodes.
C     P1...   Array of the 1st components of the slowness vector at the
C             network nodes for TTT.  Coinciding with array P.
C     P2...   Array of the 2nd components of the slowness vector at the
C             network nodes.  Only for TTT.
C     P3...   Array of the 3rd components of the slowness vector at the
C             network nodes.  Not currently used.
C     IPRED...Predecessor nodes (if determined).
C     NFS...  Optimum sizes of forward stars (if determined).
C     ICB...  Indices of geological (complex) blocks (if specified).
C
C.......................................................................
C
      INTEGER IND0,ITT0,IPOSQ0,IP0,IP10,IP20,IP30,IPRED0,NFS0,ICB0
      LOGICAL LN1,LICB,LNFS,LPRED
      INTEGER N1,N2,N3,L1,L2,L3,L4,L1234,NL1,NL2,NL3,NREFL,MINQ,MAXQ
      REAL X1MIN,X1MAX,X2MIN,X2MAX,X3MIN,X3MAX,DSX1,DSX2,DSX3
      REAL TTMIN,DMIN,ASX1,ASX2,ASX3
      COMMON/GRID/ IND0,ITT0,IPOSQ0,IP0,IP20,IP30,IPRED0,NFS0,ICB0,
     *             N1,N2,N3,L1,L2,L3,L4,L1234,NL1,NL2,NL3,
     *             X1MIN,X1MAX,X2MIN,X2MAX,X3MIN,X3MAX,DSX1,DSX2,DSX3,
     *             NREFL,LN1,LICB,LNFS,LPRED,
     *             MINQ,MAXQ,TTMIN,DMIN,ASX1,ASX2,ASX3
      EQUIVALENCE (IP0,IP10)
C
C     NREFL.. Number of reflections.
C     ASX1,ASX2,ASX3... ABS(DSX1),ABS(DSX2),ABS(DSX3), respectively.
C
C.......................................................................
C                                                     
      INTEGER MFSMAX,MFS
      PARAMETER (MFSMAX=100,MFS=21206)
C     MFS=21206 should be good for 3-D f.s. up to NFSMAX=27
C                              and 2-D f.s. up to NFSMAX=70.
      INTEGER NFSMAX,KFS0(0:MFSMAX)
      INTEGER KFS1(MFS),KFS2(MFS),KFS3(MFS),KFS4(MFS),KFS5(MFS)
      REAL DFS(MFS)
      COMMON/FS/ NFSMAX,KFS0,KFS1,KFS2,KFS3,KFS4,KFS5,DFS
C
C.......................................................................
C                                                    
      INTEGER MSRC,MREC
      PARAMETER (MSRC=100,MREC=100)
      CHARACTER*6 NAMES,NAMER(MREC)
      INTEGER NSRC,NREC,IPREDR(MREC)
      REAL X1S(MSRC),X2S(MSRC),X3S(MSRC),TTS(MSRC),TTSERR(MSRC)
      REAL X1R(MREC),X2R(MREC),X3R(MREC),TTR(MREC)
      COMMON/NAMESR/ NAMES,NAMER
      COMMON/POINTS/ NSRC,X1S,X2S,X3S,TTS,TTSERR,NREC,X1R,X2R,X3R,TTR,
     *               IPREDR
C
C.......................................................................
C                                                   
      INTEGER MREFL
      PARAMETER (MREFL=2)
      CHARACTER*80 FSRC,FREC,FRAYS,FEND
      CHARACTER*80 FIND(0:MREFL),FVEL(0:MREFL),FICB(0:MREFL)
      CHARACTER*80 FTT(0:MREFL),FERR(0:MREFL),FPRED(0:MREFL)
      CHARACTER*80 FNFS(0:MREFL),FINTF(1:MREFL)
      COMMON/FILES/ FSRC,FREC,FRAYS,FEND,
     *              FIND,FVEL,FICB,FTT,FERR,FPRED,FINTF,FNFS
C
C.......................................................................
C
C Date: 2000, February 7
C Coded by Ludek Klimes
C
C=======================================================================
C