C
C INCLUDE 'mtt.inc' C Declaration of the common blocks used through MTT program: C C Date: 2000, July 17 C C ------------------------------------------------------------------ INCLUDE 'ram.inc' C ram.inc. C INCLUDE 'mttwf.inc' C mttwf.inc. C INTEGER IRAM(MRAM) EQUIVALENCE (IRAM,RAM) INTEGER NRAMP,MRAMP,NT,NR,NQ,NRAMT INTEGER ORAYE,ORAYA,IRAYMI,IRAYMA REAL GIANT,DWARF PARAMETER (GIANT=2000000000.) REAL O1,O2,O3,D1,D2,D3 REAL PROJ1,PROJ2,PROJ3 INTEGER N1,N2,N3 LOGICAL L3D,L2D COMMON/MTTC/NRAMP,MRAMP,NT,NR,NQ,NRAMT,ORAYE,ORAYA,IRAYMI,IRAYMA, * DWARF,L3D,L2D, * O1,O2,O3,D1,D2,D3,N1,N2,N3,PROJ1,PROJ2,PROJ3 SAVE /MTTC/ 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 : 4*NT) ... indices of triangles sorted according to C the indices of the rays forming the triangles, i.e. the C triangle formed by rays with the lowest indices is located C in IRAM(IRAM(3*NT+1):IRAM(3*NT+1)+2), the triangle formed C by rays with the highest indices is located in C IRAM(IRAM(4*NT):IRAM(4*NT)+2) C IRAM(4*NT+1 : 4*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(4*NT+NR+1 : 4*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 ray C [I]RAM(4*NT+2*NR+2 : 4*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 quantities 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, zero for C endpoint situated inside complex block. C 5. Sequential index of a point. C 6. - 5.+NOUT Quantities to be interpolated. The kinds C of quantities are given by character strings CHOUT. 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-ORAY). C IRAYMI,IRAYMA ... Minimum and maximum of indices of rays. C GIANT . High real number which is smaller than the highest integer C existing on the computer. Here the value 2*10to9 was C selected as the highest integer on most computers C equals 2to31. C DWARF . Small real number, 100 times greater than the C highest number R satisfying the equation 1.+R=1. C C L3D ... L3D=.TRUE. indicates a 3-D computation. C L2D ... L2D=.TRUE. indicates a 2-D computation. C O1,O2,O3 ... Coordinates of the origin of the grid. C D1,D2,D3 ... Steps per gridpoint. C N1,N2,N3 ... Numbers of gridpoints. C PROJ1,PROJ2,PROJ3 ... Three components of the projection vector, C which is used in 2-D computations to project the C coordinates of gridpoints to the plane defined by rays. C Coded by Petr Bulant C C======================================================================= C