SUBROUTINE MU_INIT_ARRAYS(PIX1,PIX2,SWBITS) C---------------------------------------------------------------------- C- C- Purpose and Methods : Initialize arrays for the geometry of SAMUS C- stations, and the outputs from the SAMUS-WAMUS triplet finders C- C- Inputs : None C- C C The matrices PIX1 and PIX2 hide in them the geometry of the SAMUS C stations. Their contents, PIX1(I,J) and PIX2(I,J), are the two C U-centroids which match to a specific centroid pair (Xi,Yj). C If (PIX1 .NE. -1) and (PIX2 .EQ. -1), this means that only one C U is needed for that (I,J) pixel. If both PIX1 and PIX2 are -1, C the pixel is not a valid one (station's central hole). C Note: These matrices, PIX1 and PIX2, are used for triplet evaluation C in both SAM-WAM overlap AND pure SAMUS. C C The matrix SWBITS define the SAM-WAM TRIPLET FINDER output bits. Its C contents, SWBITS(I,J,K), are the specific bits which must be set C for each good triplet found in pixel (Xi,Yj). The third index, K, C represent the two different configurations to which each quadrant C can be mapped to, i.e. C K = 1 for quadrants (1,3) C K = 2 for quadrants (2,4) C The matrix SWBITS is used only in the SAM-WAM triplet finders, NOT C in the SAMUS triplet finders. C C- Created 10-JUL-1992 Guilherme Lima C C---------------------------------------------------------------------- IMPLICIT NONE INTEGER I,J INTEGER PIX1(0:31,0:31),PIX2(0:31,0:31),SWBITS(0:13,0:13,2) INTEGER ARR1(0:31,0:7),ARR2(0:31,0:7) INTEGER ARR3(0:31,0:7),ARR4(0:31,0:7) INTEGER ARR5(0:31,0:7),ARR6(0:31,0:7) INTEGER ARR7(0:31,0:7),ARR8(0:31,0:7) INTEGER ARR9(0:13,0:13),ARR10(0:13,0:13) C.. The commented lines below could be used instead of the ARR's, but C the VAX FORTRAN compiler doesn't accept them, I have no idea why. C GL, 29-AUG-92 C.. DATA ((PIX1(I,J),J=0,31),I=0,7) / DATA ARR1/ & 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 7, 8, & 13, 13, 12, 12, 11, 11, 10, 10, 9, 9, 8, -1, -1, -1, -1, -1, 1 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 1 14, 13, 13, 12, 12, 11, 11, 10, 10, 9, 9, -1, -1, -1, -1, -1, 2 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 9, 2 14, 14, 13, 13, 12, 12, 11, 11, 10, 10, 9, -1, -1, -1, -1, -1, 3 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 9, 9, 3 15, 14, 14, 13, 13, 12, 12, 11, 11, 10, 10, -1, -1, -1, -1, -1, 4 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 9, 9, 10, 4 15, 15, 14, 14, 13, 13, 12, 12, 11, 11, 10, -1, -1, -1, -1, -1, 5 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 9, 9, 10, 10, 5 27, 15, 15, 14, 14, 13, 13, 12, 12, 11, 11, -1, -1, -1, -1, -1, 6 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 9, 10, 10, 10, 11, 6 26, 27, 15, 14, 14, 14, 13, 13, 12, 12, 11, -1, -1, -1, -1, -1, 7 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 9, 9, 10, 10, 11, 11, 7 26, 26, 27, 15, 14, 14, 14, 13, 13, 12, 12, -1, -1, -1, -1, -1/ C.. DATA ((PIX1(I,J),J=0,31),I=8,15) / DATA ARR2 / 8 5, 5, 6, 6, 7, 7, 8, 8, 8, 9, 9, 10, 10, 11, 11, 12, 8 25, 26, 26, 27, 15, 14, 14, 14, 13, 13, 12, -1, -1, -1, -1, -1, 9 5, 6, 6, 7, 7, 8, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 9 25, 25, 26, 26, 27, 15, 15, 14, 14, 13, 13, -1, -1, -1, -1, -1, & 6, 6, 7, 7, 8, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, & 24, 25, 25, 26, 26, 27, 15, 15, 14, 14, 13, -1, -1, -1, -1, -1, 1 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1 24, 24, 25, 25, 26, 26, 27, 15, 15, 14, 14, -1, -1, -1, -1, -1, 2 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2 23, 24, 24, 25, 25, 26, 26, 27, 15, 15, 14, -1, -1, -1, -1, -1, 3 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3 23, 23, 24, 24, 25, 25, 26, 26, 27, 15, 15, -1, -1, -1, -1, -1, 4 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 15, -1, -1, -1, -1, -1, 5 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, -1, -1, -1, -1, -1/ C.. DATA ((PIX1(I,J),J=0,31),I=16,23) / DATA ARR3 / 6 29, 29, 28, 28, 27, 27, 26, 26, 25, 25, 24, -1, -1, -1, -1, -1, 6 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 23, 24, 7 30, 29, 29, 28, 28, 27, 27, 26, 26, 25, 25, -1, -1, -1, -1, -1, 7 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 24, 8 30, 30, 29, 29, 28, 28, 27, 27, 26, 26, 25, -1, -1, -1, -1, -1, 8 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 24, 25, 9 31, 30, 30, 29, 29, 28, 28, 27, 27, 26, 26, -1, -1, -1, -1, -1, 9 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 24, 25, 25, & 31, 30, 30, 30, 29, 29, 28, 28, 27, 27, 26, -1, -1, -1, -1, -1, & 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 24, 25, 25, 26, 1 31, 31, 31, 30, 30, 29, 29, 28, 28, 27, 27, -1, -1, -1, -1, -1, 1 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 24, 25, 25, 26, 26, 2 10, 31, 31, 30, 30, 30, 29, 29, 28, 28, 27, -1, -1, -1, -1, -1, 2 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 24, 25, 26, 26, 26, 27, 3 10, 10, 31, 31, 30, 30, 30, 29, 29, 28, 28, -1, -1, -1, -1, -1, 3 20, 21, 21, 22, 22, 23, 23, 24, 24, 24, 25, 25, 26, 26, 27, 27/ C.. DATA ((PIX1(I,J),J=0,31),I=24,31) / DATA ARR4 / 4 9, 10, 11, 31, 31, 30, 30, 30, 29, 29, 28, -1, -1, -1, -1, -1, 4 21, 21, 22, 22, 23, 23, 24, 24, 24, 25, 25, 26, 26, 27, 27, 28, 5 9, 9, 10, 10, 31, 31, 31, 30, 30, 29, 29, -1, -1, -1, -1, -1, 5 21, 22, 22, 23, 23, 24, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 6 8, 9, 9, 10, 11, 31, 31, 31, 30, 30, 29, -1, -1, -1, -1, -1, 6 22, 22, 23, 23, 24, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 7 8, 8, 9, 9, 10, 11, 31, 31, 31, 30, 30, -1, -1, -1, -1, -1, 7 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8 7, 8, 8, 9, 9, 10, 10, 31, 31, 31, 30, -1, -1, -1, -1, -1, 8 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9 7, 7, 8, 8, 9, 9, 10, 10, 11, 31, 31, -1, -1, -1, -1, -1, 9 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, & 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 31, -1, -1, -1, -1, -1, & -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, -1, -1, -1, -1, -1, 1 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1/ C.. DATA ((PIX2(I,J),J=0,31),I=0,7) / DATA ARR5 / & -1, 2, -1, 3, -1, 4, -1, 5, -1, 6, -1, 7, -1, 8, 8, 9, & 14, -1, 13, -1, 12, -1, 11, -1, 10, -1, 9, -1, -1, -1, -1, -1, 1 2, -1, 3, -1, 4, -1, 5, -1, 6, -1, 7, -1, 8, -1, 9, 9, 1 -1, 14, -1, 13, -1, 12, -1, 11, -1, 10, -1, -1, -1, -1, -1, -1, 2 -1, 3, -1, 4, -1, 5, -1, 6, -1, 7, -1, 8, -1, 9, 9, -1, 2 15, -1, 14, -1, 13, -1, 12, -1, 11, -1, 10, -1, -1, -1, -1, -1, 3 3, -1, 4, -1, 5, -1, 6, -1, 7, -1, 8, -1, 9, 9, -1, 10, 3 -1, 15, -1, 14, -1, 13, -1, 12, -1, 11, -1, -1, -1, -1, -1, -1, 4 -1, 4, -1, 5, -1, 6, -1, 7, -1, 8, -1, 9, 9, -1, 10, -1, 4 -1, 15, 15, -1, 14, -1, 13, -1, 12, -1, 11, -1, -1, -1, -1, -1, 5 4, -1, 5, -1, 6, -1, 7, -1, 8, -1, -1, 9, -1, 10, -1, 11, 5 15, -1, -1, 15, -1, 14, -1, 13, -1, 12, -1, -1, -1, -1, -1, -1, 6 -1, 5, -1, 6, -1, 7, -1, 8, -1, 9, 9, -1, 9, -1, 11, -1, 6 27, 15, -1, 15, 15, -1, 14, -1, 13, -1, 12, -1, -1, -1, -1, -1, 7 5, -1, 6, -1, 7, -1, 8, -1, 9, 9, -1, 10, -1, 11, -1, 12, 7 -1, 27, 15, -1, 15, 15, -1, 14, -1, 13, -1, -1, -1, -1, -1, -1/ C.. DATA ((PIX2(I,J),J=0,31),I=8,15) / DATA ARR6 / 8 -1, 6, -1, 7, -1, 8, -1, 9, 9, -1, 10, -1, 11, -1, 12, -1, 8 26, -1, 27, 15, -1, 15, 15, -1, 14, -1, 13, -1, -1, -1, -1, -1, 9 6, -1, 7, -1, 8, -1, 9, 9, -1, 10, -1, 11, -1, 12, -1, 13, 9 -1, 26, -1, 27, 15, -1, -1, 15, -1, 14, -1, -1, -1, -1, -1, -1, & -1, 7, -1, -1, -1, -1, 9, -1, 10, -1, 11, -1, 12, -1, 13, -1, & 25, -1, 26, -1, 27, 15, -1, -1, 15, -1, 14, -1, -1, -1, -1, -1, 1 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1 -1, 25, -1, 26, -1, 27, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2 24, -1, 25, -1, 26, -1, 27, 15, -1, -1, 15, -1, -1, -1, -1, -1, 3 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3 -1, 24, -1, 25, -1, 26, -1, 27, -1, -1, -1, -1, -1, -1, -1, -1, 4 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, -1, -1, -1, -1, -1, -1, 5 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5 23, 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, -1, -1, -1, -1, -1/ C.. DATA ((PIX2(I,J),J=0,31),I=16,23) / DATA ARR7 / 6 30, -1, 29, -1, 28, -1, 27, -1, 26, -1, 25, -1, -1, -1, -1, -1, 6 -1, 18, -1, 19, -1, 20, -1, 21, -1, 22, -1, 23, -1, 24, 24, -1, 7 -1, 30, -1, 29, -1, -1, -1, 27, -1, 26, -1, -1, -1, -1, -1, -1, 7 18, -1, 19, -1, 20, -1, 21, -1, 22, -1, 23, -1, 24, -1, 25, 25, 8 31, -1, 30, -1, 29, -1, 28, -1, 27, -1, 26, -1, -1, -1, -1, -1, 8 -1, 19, -1, 20, -1, 21, -1, 22, -1, 23, -1, 24, -1, 25, 25, -1, 9 -1, 31, -1, 30, -1, 29, -1, 28, -1, 27, -1, -1, -1, -1, -1, -1, 9 19, -1, 20, -1, 21, -1, 22, -1, 23, -1, 24, -1, 25, 25, -1, 26, & -1, 31, 31, -1, 30, -1, 29, -1, 28, -1, 27, -1, -1, -1, -1, -1, & -1, 20, -1, 21, -1, 22, -1, 23, -1, 24, -1, 25, 25, -1, 26, -1, 1 11, -1, -1, 31, -1, 30, -1, 29, -1, 28, -1, -1, -1, -1, -1, -1, 1 20, -1, 21, -1, 22, -1, 23, -1, 24, -1, -1, 25, -1, 26, -1, 27, 2 11, 11, -1, 31, 31, -1, 30, -1, 29, -1, 28, -1, -1, -1, -1, -1, 2 -1, 21, -1, 22, -1, 23, -1, 24, -1, 25, 25, -1, 25, -1, 27, -1, 3 -1, 11, 11, -1, 31, 31, -1, 30, -1, 29, -1, -1, -1, -1, -1, -1, 3 21, -1, 22, -1, 23, -1, 24, -1, 25, 25, -1, 26, -1, 27, -1, 28/ C.. DATA ((PIX2(I,J),J=0,31),I=24,31) / DATA ARR8 / 4 10, -1, 10, 11, -1, 31, 31, -1, 30, -1, 29, -1, -1, -1, -1, -1, 4 -1, 22, -1, 23, -1, 24, -1, 25, 25, -1, 26, -1, 27, -1, 28, -1, 5 -1, 10, -1, 11, 11, -1, -1, 31, -1, 30, -1, -1, -1, -1, -1, -1, 5 22, -1, 23, -1, 24, -1, 25, 25, -1, 26, -1, 27, -1, 28, -1, 29, 6 9, -1, 10, -1, 10, 11, -1, -1, 31, -1, 30, -1, -1, -1, -1, -1, 6 -1, 23, -1, -1, -1, -1, 25, -1, 26, -1, 27, -1, 28, -1, 29, -1, 7 -1, 9, -1, 10, -1, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8 8, -1, 9, -1, 10, -1, 11, 11, -1, -1, 31, -1, -1, -1, -1, -1, 8 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 9 -1, 8, -1, 9, -1, 10, -1, 11, -1, -1, -1, -1, -1, -1, -1, -1, 9 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, & 7, -1, 8, -1, 9, -1, 10, -1, 11, -1, -1, -1, -1, -1, -1, -1, & -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1 7, 7, -1, 8, -1, 9, -1, 10, -1, 11, -1, -1, -1, -1, -1, -1, 1 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1/ C.. DATA ((SWBITS(I,J,1),J=0,13),I=0,13) / DATA ARR9 / & 0, 1, 2, 3, 4, 5, 6, -1, -1, -1, -1, -1, -1, -1, 1 0, 1, 2, 3, 4, 5, 6, -1, -1, -1, -1, -1, -1, -1, 2 0, 1, 2, 3, 4, 5, 6, -1, -1, -1, -1, -1, -1, -1, 3 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 4 0, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 5 0, 1, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 6 0, 1, 2, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 7 0, 1, 2, 3, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 8 0, 1, 2, 3, 4, 13, 13, 13, 13, 13, 13, 13, 13, 13, 9 0, 1, 2, 3, 4, 5, 14, 14, 14, 14, 14, 14, 14, 14, & 0, 1, 2, 3, 4, 5, 6, -1, -1, -1, -1, -1, -1, -1, 1 0, 1, 2, 3, 4, 5, 6, -1, -1, -1, -1, -1, -1, -1, 2 0, 1, 2, 3, 4, 5, 6, -1, -1, -1, -1, -1, -1, -1, 3 0, 1, 2, 3, 4, 5, 6, -1, -1, -1, -1, -1, -1, -1/ C.. DATA ((SWBITS(I,J,2),J=0,13),I=0,13) / DATA ARR10 / & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 1, 1, 1, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 2, 2, 2, 8, 9, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 3, 3, 3, 8, 9, 10, 3, 3, 3, 3, 3, 3, 3, 3, 4 4, 4, 4, 8, 9, 10, 11, 4, 4, 4, 4, 4, 4, 4, 5 5, 5, 5, 8, 9, 10, 11, 12, 5, 5, 5, 5, 5, 5, 6 6, 6, 6, 8, 9, 10, 11, 12, 13, 6, 6, 6, 6, 6, 7 -1, -1, -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, -1, 8 -1, -1, -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, -1, 9 -1, -1, -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, -1, & -1, -1, -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, -1, 1 -1, -1, -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, -1, 2 -1, -1, -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, -1, 3 -1, -1, -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, -1/ DO I=0,7 DO J=0,31 PIX1( I, J)=ARR1(J,I) PIX1( I+8, J)=ARR2(J,I) PIX1(I+16, J)=ARR3(J,I) PIX1(I+24, J)=ARR4(J,I) PIX2( I, J)=ARR5(J,I) PIX2( I+8, J)=ARR6(J,I) PIX2(I+16, J)=ARR7(J,I) PIX2(I+24, J)=ARR8(J,I) ENDDO ENDDO DO I=0,13 DO J=0,13 SWBITS(I,J,1) = ARR9(J,I) SWBITS(I,J,2) = ARR10(J,I) ENDDO ENDDO 999 RETURN END