C
C     INCLUDE 'rpplot.inc'
C     Declaration of the common blocks used through RPPLOT program:
C     ------------------------------------------------------------------
      INCLUDE 'ram.inc'
C
      INTEGER IRAM(MRAM)
      EQUIVALENCE (IRAM,RAM)
      INTEGER NRAMP,MRAMP,NT,NR,NQ
      PARAMETER (NQ=4)
      INTEGER ORAYE,ORAYA,IRAYMI,IRAYMA,ISHP,ISUC
      LOGICAL LRBAS,LRTWO,LRAUX,LTHOM,LSANG
      REAL PLIMIT(4),P1DIF,P2DIF,DO,HRBAS,HRTWO,HRAUX,HOR,VER,HTEXT
      INTEGER MSYMB,MCOL
      PARAMETER (MSYMB=28,MCOL=120)
      INTEGER ISYMB(MSYMB)
      INTEGER ICOL(MCOL)
      COMMON/RPPC/NRAMP,MRAMP,NT,NR,ORAYE,ORAYA,IRAYMI,IRAYMA,ISHP,
     *            LRBAS,LRTWO,LRAUX,LTHOM,LSANG,PLIMIT,P1DIF,P2DIF,DO,
     *            HRBAS,HRTWO,HRAUX,HOR,VER,HTEXT,
     *            ISYMB,ICOL,ISUC
      SAVE  /RPPC/
C     ------------------------------------------------------------------
C     MRAM ...Dimension of the arrays IRAM, RAM.
C     NRAMP...Number of records for points on rays in arrays IRAM, RAM.
C     MRAMP...Maximum number of records for points in arrays IRAM, RAM.
C     IRAM(1 : 3*NT), where NT is a number of triangles ...
C             Indices of the rays forming the homogeneous triangles
C             in the ray-parameter domain.
C     IRAM(3*NT+1 : 3*NT+NR), where NR is a number of rays ...
C             "Deleting array" containing the information about when
C             can be the rays erased from memory. Each record of the
C             array corresponds to one ray. The record
C             describes the last triangle where the ray is used;
C             it displays the highest index of the rays of the
C             last triangle.
C             Zero for the rays, which will not be used.
C     IRAM(3*NT+NR+1 : 3*NT+2*NR+1) ... "Addressing array" containing
C             the addresses of the ends of individual
C             records for rays in the array [I]RAM.
C             If the ray have not yet been read into memory, zero.
C             If the ray was already read but is no longer stored in
C             the memory, the address of previous ray stored in memory.
C             To enable reading of the ray IRAYMI, address of the ray
C             IRAYMI-1 is set to 3*NT+2*NR+1 and stored as the first
C             ray.
C     [I]RAM(3*NT+2*NR+2 : 3*NT+2*NR+2+JR, ...) JR parameters of a ray,
C             where JR=address of the ray - address of the previous ray;
C             or JR=number of points on the ray * NQ.
C     NT ...  Number of triangles.
C     NR ...  Number of rays, which may be used in some triangle.
C     NQ ...  Number of quantities recorded for each point on a ray.
C             The numbers represent:
C             1. X1-coordinate.
C             2. X2-coordinate.
C             3. X3-coordinate.
C             4. Index of the surface at which the endpoint of the
C                computed element of the ray is situated.
C             5. Travel time.
C             6. Sequential index of a point.
C     ORAYE . When substracting this number from the index of a ray,
C             we get the position of the ray in "deleting array".
C     ORAYA . When substracting this number from the index of a ray,
C             we get the position of the ray in "addressing array".
C             Address of the ray with index IRAY: IRAM(IRAY-ORAYA)
C             Parameters of the ray with index IRAY:
C                    from   RAM(IRAM(IRAY-ORAYA-1)+1)
C                    to     RAM(IRAM(IRAY-ORAYA).
C     IRAYMI,IRAYMA ... Minimum and maximum of indices of rays.
C
C
C Date: 2004, June 11
C Coded by Petr Bulant
C
C=======================================================================
C