Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 1
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
    1     1  0 	c -*- fortran -*-
    2     2  0 	c
    3     3  0 	c
    4     4  0 	c  CM FORTRAN 1995-Jul-16
    5     5  0 	c     For statistical runs
    6     6  0 	c     With DOUBLE-PRECISION (REAL*8)
    7     7  0 	c     With CMF_RANDOM and (CMSSL) GEN_GJ_INVERT
    8     8  0 	c     With improved RELABELING (which we skip in this program) 
    9     9  0 	c     With imporved DISCARDING
   10    10  0 	c     With corrected NORMALIZATION
   11    11  0 	c     Available routines for HASSE, CLOSURE, ALL-PAIRS-SHORTEST-PATH
   12    12  0 	
   13    13  0 	c   ____________________________________________________BEGIN POBOX
   14    14  0 	      PROGRAM MAIN
   15    15  0 	        INCLUDE '/usr/include/cm/CMF_defs.h'
  238    16  0 	        INCLUDE '/usr/include/cm/cmssl-cmf.h'
  239    17  0 	
  846    18  0 	      parameter (mex=64)
  847    19  0 	
  848    20  0 	      integer iseed, n, i, j, xxx, runs
  849    21  0 	      real*8 x, sq, av
  850    22  0 	      real*8 pi, POBOX
  851    23  0 	      common pi
  852    24  0 	      pi=2.0d0*dasin(1.0d0)
  853    25  0 	
  854    26  0 	c......................................INITIALIZE
  855    27  0 	                 print *, '---'
  856    28  0 	                 print *, 'Function currently in use is number 1'
  857    29  0 	      write(unit=1,fmt=*) 'Function currently in use is number 1'
  858    30  0 	
  859    31  0 	                print *, 'input integer seed (6 digits or less)'
  860    32  0 	c      read *, iseed
  861    33  0 	      iseed=2323
  862    34  0 	                print *,' iseed=',iseed
  863    35  0 	      xxx=ran3(-iseed)
  864    36  0 	
  865    37  0 	 6    print *,'   input number of points (up to ',mex,')'
  866    38  0 	c      read *, n
  867    39  0 	      n=mex
  868    40  0 	                print *,'   initial N=', n
  869    41  0 	      if (n .gt. mex) then
  870    42  0 	         print *, 'too many points!'
  871    43  0 	         goto 6
  872    44  0 	      endif
  873    45  0 	
  874    46  0 	                call CM_timer_clear(0)
  875    47  0 	                call CM_timer_start(0)
  876    48  0 	
  877    49  0 	      runs=500
  878    50  0 	
  879    51  0 	      do i=1,runs
  880    52  0 	         n=mex
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 2
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
  881    53  0 	 18                    print *,'--- -------------------'
  882    54  0 	                       print *,i,'RUN'
  883    55  0 	d        write (unit=1, fmt=*) '--- -------------------'
  884    56  0 	d        write (unit=1, fmt=*) i,'RUN'
  885    57  0 	         x=POBOX(mex,n)
  886    58  0 	      if (i.ne.1)  sq = sq*(i-2) + (av**2)*(i-1)  ! partial computation
  887    59  0 	 20   av=((i-1)*av+x)/i
  888    60  0 	      if (i.ne.1)  sq = (sq+x**2-i*(av**2))/(i-1) ! finished computation
  889    61  0 	 30   print *,' action =',x
  890    62  0 	      print *,' running average=',av
  891    63  0 	      print *,' running standard deviation=',sq**.5
  892    64  0 	      print *,' running standard error of the mean=',(sq/i)**.5
  893    65  0 	      print *
  894    66  0 	
  895    67  0 	      end do
  896    68  0 	      print *,'--- CM total times '
  897    69  0 	              call CM_timer_stop(0)
  898    70  0 	              call CM_timer_print(0)
  899    71  0 	
  900    72  0 	d     write (unit=1, fmt=*) '--- END--MAIN--'
  901    73  0 	      END
  902    74  0 	c----------------------------------------------------------------
  903    75  0 	
  904    76  0 	
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 3
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    MAIN                            


STORAGE BLOCKS
    Size  Block
      44  local
       8  //
    1164  constants




VARIABLES
  Offset    Size  Type        Block           Name
       0       8  REAL8       local           FE       AV                              
     ---       4  INT4        not-referenced  FE       COMM_SETUP                      
     ---       4  INT4        not-referenced  FE       FAST_RNG_RESIDUE                
     ---       4  INT4        not-referenced  FE       FAST_RNG_STATE_FIELD            
     ---       4  INT4        not-referenced  FE       FFT_SETUP                       
     ---       4  INT4        not-referenced  FE       GEN_BIDIAG                      
     ---       8  REAL8       not-referenced  FE       GEN_GJ_INVERT                   
     ---       8  REAL8       not-referenced  FE       GEN_GJ_SOLVE                    
     ---       4  INT4        not-referenced  FE       GEN_LU_FACTOR                   
     ---       4  INT4        not-referenced  FE       GEN_QR_FACTOR                   
      40       4  INT4        local           FE       I                               
       0       4  INT4        local           FE       ISEED                           
     ---       4  INT4        not-referenced  FE       J                               
      44       4  INT4        local           FE       N                               
       0       8  REAL8       //              FE       PI                              
     ---       4  INT4        not-referenced  FE       PSHIFT_SETUP                    
     ---       4  INT4        not-referenced  FE       PSHIFT_SETUP_LOOPED             
     ---       4  INT4        not-referenced  FE       RESTORE_GEN_LU                  
     ---       4  INT4        not-referenced  FE       RESTORE_GEN_LU_FMS              
     ---       4  INT4        not-referenced  FE       RESTORE_GEN_QR                  
     ---       4  INT4        not-referenced  FE       RESTORE_GEN_QR_FMS              
      16       4  INT4        local           FE       RUNS                            
      28       8  REAL8       local           FE       SQ                              
     ---       8  REAL8       not-referenced  FE       SYM_EIGENSYSTEM_SOLVE           
     ---       4  INT4        not-referenced  FE       SYM_TRED                        
     ---       4  INT4        not-referenced  FE       VP_RNG_RESIDUE                  
     ---       4  INT4        not-referenced  FE       VP_RNG_STATE_FIELD              
       8       8  REAL8       local           FE       X                               
      12       4  INT4        local           FE       XXX                             
     ---       0  NONE        not-referenced  FE       main                            


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name


PARAMETERS (Offset is within Storage Block 'constants')
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 4
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
  Offset  Type    Name                            Value
       0  INT4    ARRAY_ARG                       257
       0  INT4    ARRAY_GLOBAL                    513
       0  INT4    ARRAY_LOCAL                     1025
       0  INT4    CMF_CHARACTER                   8
       0  INT4    CMF_CM200_PARIS                 3
       0  INT4    CMF_CM200_SLICEWISE             4
       0  INT4    CMF_CM2_PARIS                   0
       0  INT4    CMF_CM2_SLICEWISE               1
       0  INT4    CMF_CM5_SPARC                   2
       0  INT4    CMF_CM5_VU                      5
       0  INT4    CMF_CMSIM                       6
       0  INT4    CMF_COMPLEX                     5
       0  INT4    CMF_DOUBLE                      6
       0  INT4    CMF_DOUBLE_COMPLEX              7
       0  INT4    CMF_DOWNWARD                    1001
       0  INT4    CMF_ERROR_ALIGNED_GEOMETRY      3014
       0  INT4    CMF_ERROR_AXIS_ORDER            3002
       0  INT4    CMF_ERROR_BAD_ARGUMENT          3004
       0  INT4    CMF_ERROR_BAD_GEOMETRY          3005
       0  INT4    CMF_ERROR_BAD_OPCODE            3010
       0  INT4    CMF_ERROR_BAD_TYPE              3009
       0  INT4    CMF_ERROR_BOUNDS_VIOLATION      3011
       0  INT4    CMF_ERROR_CANNOT_INTERN         3003
       0  INT4    CMF_ERROR_FE_HOME               3007
       0  INT4    CMF_ERROR_FE_MEMORY             3008
       0  INT4    CMF_ERROR_MASK_MISMATCH         3006
       0  INT4    CMF_ERROR_NO_ALIAS              3013
       0  INT4    CMF_ERROR_NO_AXIS               3012
       0  INT4    CMF_ERROR_NULL_ARRAY            3000
       0  INT4    CMF_ERROR_RUNTIME_LAYER         3015
       0  INT4    CMF_ERROR_SPARSE_MASK           3001
       0  INT4    CMF_EXCLUSIVE                   2000
       0  INT4    CMF_FLOAT                       4
       0  INT4    CMF_INCLUSIVE                   2001
       0  INT4    CMF_LOGICAL                     1
       0  INT4    CMF_LONG_S_INTEGER              12
       0  INT4    CMF_MUTATE_ANY                  4002
       0  INT4    CMF_MUTATE_BEST                 4001
       0  INT4    CMF_MUTATE_SELECT               4000
       0  INT4    CMF_NEWS_ORDER                  0
       0  INT4    CMF_NONE                        3000
       0  INT4    CMF_NULL                        0
       0  INT4    CMF_SEGMENT_BIT                 3001
       0  INT4    CMF_SEND_ORDER                  1
       0  INT4    CMF_SERIAL_ORDER                2
       0  INT4    CMF_SIZEOF_DESCRIPTOR           18
       0  INT4    CMF_START_BIT                   3002
       0  INT4    CMF_S_INTEGER                   3
       0  INT4    CMF_UPWARD                      1000
       0  INT4    CMF_U_INTEGER                   2
       0  INT4    CMSSL_BCG                       5
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 5
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
       0  INT4    CMSSL_BCG_WDIM                  8
       0  INT4    CMSSL_BICGSTAB                  7
       0  INT4    CMSSL_BICGSTAB2                 10
       0  INT4    CMSSL_BICGSTAB2_WDIM            18
       0  INT4    CMSSL_BICGSTAB_WDIM             11
       0  INT4    CMSSL_BIT_REVERSED              1
       0  INT4    CMSSL_BLOCK_AXIS                0
       0  INT4    CMSSL_CG                        1
       0  INT4    CMSSL_CGS                       11
       0  INT4    CMSSL_CGS_WDIM                  9
       0  INT4    CMSSL_CG_WDIM                   6
       0  INT4    CMSSL_CHARACTER                 6
       0  INT4    CMSSL_COLUMN_PIVOTING           3
       0  INT4    CMSSL_COLUMN_PIVOTING_SCALE     5
       0  INT4    CMSSL_COMBINER_AND              6
       0  INT4    CMSSL_COMBINER_IOR              4
       0  INT4    CMSSL_COMBINER_MAX              3
       0  INT4    CMSSL_COMBINER_MIN              2
       0  INT4    CMSSL_COMBINER_POLL             7
       0  INT4    CMSSL_COMBINER_PRODUCT          1
       0  INT4    CMSSL_COMBINER_SUM              0
       0  INT4    CMSSL_COMBINER_XOR              5
       0  INT4    CMSSL_COMM_BY_GET               101
       0  INT4    CMSSL_COMM_BY_SEND              102
       0  INT4    CMSSL_COMM_BY_SEND_OVERWRITE    103
       0  INT4    CMSSL_COMM_BY_SEND_WITH_OP      104
       0  INT4    CMSSL_COMM_DETOUR_ROUTING       7
       0  INT4    CMSSL_COMM_FAN_OUT_OPTIMIZER    3
       0  INT4    CMSSL_COMM_HOT_WIRE_ITERATIONS  5
       0  INT4    CMSSL_COMM_HOT_WIRE_QUALITY     6
       0  INT4    CMSSL_COMM_HOT_WIRE_REMOVER     4
       0  INT4    CMSSL_COMM_MAXIMUM_DETOURS      8
       0  INT4    CMSSL_COMM_MESSAGE_SET_PIECES   9
       0  INT4    CMSSL_COMM_NOMINAL_LOAD         2
       0  INT4    CMSSL_COMM_PRIORITY_BREAKPOINT  1
       0  INT4    CMSSL_COMM_VERBOSE              10
       0  INT4    CMSSL_COMPLEX                   5
       0  INT4    CMSSL_CSHIFT                    2
       0  CHAR    CMSSL_CX_CX_XFORM               'CTOC'
       0  CHAR    CMSSL_CX_RE_XFORM               'CTOR'
       0  INT4    CMSSL_DEFAULT                   0
       0  INT4    CMSSL_DEFAULT_124               0
       0  INT4    CMSSL_DESC_LENGTH               64
       0  INT4    CMSSL_DOUBLE_COMPLEX            4
       0  INT4    CMSSL_DOUBLE_REAL               2
       0  INT4    CMSSL_EOSHIFT_0                 17
       0  INT4    CMSSL_EOSHIFT_1                 33
       0  INT4    CMSSL_EOSHIFT_ARRAY             129
       0  INT4    CMSSL_EOSHIFT_SCALAR            65
       0  INT4    CMSSL_FLOAT                     4
       0  INT4    CMSSL_F_XFORM                   1
       0  INT4    CMSSL_GMRES                     2
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 6
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
       0  INT4    CMSSL_GMRES_WDIM                5
       0  INT4    CMSSL_GRID_AXIS                 1
       0  INT4    CMSSL_IDO_ATY                   3
       0  INT4    CMSSL_IDO_AY                    1
       0  INT4    CMSSL_IDO_BREAKDOWN             -100
       0  INT4    CMSSL_IDO_END                   99
       0  INT4    CMSSL_IDO_ERROR                 -99
       0  INT4    CMSSL_IDO_SOLVE_M               2
       0  INT4    CMSSL_IDO_SOLVE_M1              5
       0  INT4    CMSSL_IDO_SOLVE_M2              7
       0  INT4    CMSSL_IDO_SOLVE_M2T             6
       0  INT4    CMSSL_IDO_SOLVE_MAX             7
       0  INT4    CMSSL_IDO_SOLVE_MIN             0
       0  INT4    CMSSL_IDO_SOLVE_MT              4
       0  INT4    CMSSL_IDO_START                 0
       0  INT4    CMSSL_INSTANCE_AXIS             2
       0  INT4    CMSSL_ITER_ALGORITHM            1
       0  INT4    CMSSL_ITER_ANORM                2
       0  INT4    CMSSL_ITER_FINFO_SIZE           2
       0  INT4    CMSSL_ITER_INFO_SIZE            20
       0  INT4    CMSSL_ITER_INIT                 2
       0  INT4    CMSSL_ITER_KSPACE               6
       0  INT4    CMSSL_ITER_KSPACE_USED          19
       0  INT4    CMSSL_ITER_LAL_INFO             10
       0  INT4    CMSSL_ITER_LITER                20
       0  INT4    CMSSL_ITER_MAXITER              4
       0  INT4    CMSSL_ITER_OMEGA                7
       0  INT4    CMSSL_ITER_OUTPUT_X             8
       0  INT4    CMSSL_ITER_PRECOND              5
       0  INT4    CMSSL_ITER_RANDOM_START         3
       0  INT4    CMSSL_ITER_RESIDUAL             9
       0  INT4    CMSSL_ITER_TOL                  1
       0  INT4    CMSSL_I_XFORM                   2
       0  INT4    CMSSL_LOGICAL                   1
       0  INT4    CMSSL_LU_RESTART                7
       0  INT4    CMSSL_METHOD_AUTOMATIC          1
       0  INT4    CMSSL_METHOD_FASTGRAPH          2
       0  INT4    CMSSL_METHOD_GET_BACKWARD       4
       0  INT4    CMSSL_METHOD_GET_INTO_SENDS     3
       0  INT4    CMSSL_METHOD_NOP                7
       0  INT4    CMSSL_METHOD_SERIAL_COMBINING   6
       0  INT4    CMSSL_METHOD_SORT_AND_SCAN      5
       0  INT4    CMSSL_NEWS                      2
       0  INT4    CMSSL_NOP                       0
       0  INT4    CMSSL_NORMAL                    0
       0  INT4    CMSSL_NOSCALE                   0
       0  INT4    CMSSL_NO_PIVOTING               2
       0  INT4    CMSSL_NO_PIVOTING_SCALE         4
       0  INT4    CMSSL_PARTIAL_PIVOTING          0
       0  INT4    CMSSL_PARTITION_DEFAULT         1
       0  INT4    CMSSL_PARTITION_LOW_STORAGE     0
       0  INT4    CMSSL_PGE_PIV                   9
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 7
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
       0  INT4    CMSSL_PGE_PIV_VAL               10
       0  INT4    CMSSL_PIPELINE_GE               3
       0  INT4    CMSSL_QCGS                      13
       0  INT4    CMSSL_QCGS_WDIM                 14
       0  INT4    CMSSL_QMR2                      6
       0  INT4    CMSSL_QMR2_WDIM                 9
       0  INT4    CMSSL_QMRBICGSTAB               8
       0  INT4    CMSSL_QMRBICGSTAB2              9
       0  INT4    CMSSL_QMRBICGSTAB_WDIM          12
       0  INT4    CMSSL_QMRCGS                    3
       0  INT4    CMSSL_QMRCGS_WDIM               13
       0  INT4    CMSSL_QMRLAL                    4
       0  INT4    CMSSL_QMRLAL_WDIM               6
       0  INT4    CMSSL_QMRS                      12
       0  INT4    CMSSL_QMRS_WDIM                 14
       0  INT4    CMSSL_QMRTF                     3
       0  INT4    CMSSL_QMRTF_WDIM                13
       0  INT4    CMSSL_QR_POST_PERMUTE           0
       0  INT4    CMSSL_QR_PRE_PERMUTE            1
       0  CHAR    CMSSL_RE_CX_XFORM               'RTOC'
       0  INT4    CMSSL_ROW_PIVOTING              0
       0  INT4    CMSSL_SCALE_N                   2
       0  INT4    CMSSL_SCALE_SQRT                1
       0  INT4    CMSSL_SEND                      1
       0  INT4    CMSSL_SINGLE_COMPLEX            3
       0  INT4    CMSSL_SINGLE_REAL               1
       0  INT4    CMSSL_SUBSTR_BCR                4
       0  INT4    CMSSL_SUBSTR_CR                 1
       0  INT4    CMSSL_SUBSTR_PGE                2
       0  INT4    CMSSL_SUBSTR_TRANSP             5
       0  INT4    CMSSL_S_INTEGER                 3
       0  INT4    CMSSL_TOTAL_PIVOTING            1
       0  INT4    CMSSL_U_INTEGER                 2
       0  INT4    DEBUG_DESC                      8
       0  INT4    ERROR_DESC                      4
       0  INT4    HOME_CM                         1
       0  INT4    HOME_CM_ONLY                    3
       0  INT4    HOME_FE                         2
       0  INT4    HOME_FE_ONLY                    4
       7  INT4    MEX                             64
       0  INT4    MODIF                           1
       0  INT4    NOT_MODIF                       0
       0  INT4    OBJECT_DESC                     1
       0  INT4    VIEW_DESC                       2
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 8
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
INTRINSIC PROCEDURES
  Name
  DASIN                           


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
  INT4    function      CMF_ALLOCATE_TABLE              
  INT4    function      CMF_ARCHITECTURE                
  LOG4    function      CMF_ARRAY_IS_ALIAS              
  LOG4    function      CMF_ARRAY_IS_ALIGNED            
  INT4    function      CMF_ARRAY_SIZE_QUANTUM          
  INT4    function      CMF_AVAILABLE_MEMORY            
  LOG4    function      CMF_AXISREORDER                 
  INT4    function      CMF_GET_ALIAS_SAFETY_LEVEL      
  INT4    function      CMF_GET_AXES_EXTENTS_PTR        
  INT4    function      CMF_GET_AXES_MAPS_PTR           
  INT4    function      CMF_GET_AXIS_EXTENT             
  INT4    function      CMF_GET_AXIS_MAP                
  INT4    function      CMF_GET_DATA_TYPE               
  INT4    function      CMF_GET_DEBUG_INFO_PTR          
  INT4    function      CMF_GET_DESCRIPTOR_KIND         
  INT4    function      CMF_GET_EXPONENT_LEN            
  INT4    function      CMF_GET_FE_ADDRESS              
  INT4    function      CMF_GET_FIELD_ID                
  INT4    function      CMF_GET_GEOMETRY_AXIS_OFFSET    
  INT4    function      CMF_GET_GEOMETRY_ID             
  INT4    function      CMF_GET_GEOMETRY_OFFSETS_PTR    
  INT4    function      CMF_GET_GEOMETRY_RANK           
  INT4    function      CMF_GET_GLOBAL_LOCATION         
  INT4    function      CMF_GET_HOME                    
  INT4    function      CMF_GET_INTEGER_LEN             
  INT4    function      CMF_GET_IS_MODIFIED             
  INT4    function      CMF_GET_OBJECT_KIND             
  INT4    function      CMF_GET_PHYSICAL_LOCATION       
  INT4    function      CMF_GET_RANK                    
  INT4    function      CMF_GET_SIGNIFICAND_LEN         
  INT4    function      CMF_GET_VP_SET_ID               
  INT4    function      CMF_IS_CM_SPACE_ALLOCATED       
  INT4    function      CMF_IS_FE_SPACE_ALLOCATED       
  INT4    function      CMF_IS_SLICEWISE                
  INT4    function      CMF_NUMBER_OF_PROCESSORS        
  LOG4    function      CMF_PADDING                     
  INT4    function      CMF_SIZEOF_ARRAY_ELEMENT        
  INT4    function      CMSSL_GET_SAFETY                
  NONE    subroutine    CM_TIMER_CLEAR                  
  NONE    subroutine    CM_TIMER_PRINT                  
  NONE    subroutine    CM_TIMER_START                  
  NONE    subroutine    CM_TIMER_STOP                   
  REAL8   function      POBOX                           
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 9
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
  REAL4   function      RAN3                            


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 10
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
  905    77  0 	      FUNCTION POBOX(mex,n)
  906    78  0 	      real*8 POBOX
  907    79  0 	      parameter (ndim=2)               ! spacetime dimension
  908    80  0 	      parameter (ifr=0)                ! value for the diagonal
  909    81  0 	      integer mex,n
  910    82  0 	
  911    83  0 	      integer iseed, i, j, ierr
  912    84  0 	      real*8 minpiv,pi, ACT, GEN_GJ_INVERT
  913    85  0 	
  914    86  0 	      real*8 c(mex,4),f(mex),dummy(mex,mex), tempd(mex,mex)
  915    87  0 	CMF$  layout c(,),f(),dummy(,),tempd(,)
  916    88  0 	      integer l(mex,mex), ldummy(mex,mex), vec(mex)
  917    89  0 	CMF$  layout l(,), ldummy(,), vec()
  918    90  0 	
  919    91  0 	      character*3 method
  920    92  0 	      method='sym'
  921    93  0 	
  922    94  0 	
  923    95  0 	c   ________________________________________________________________
  924    96  0 	      call SPRINKLE(mex,n,ndim,c,f,iseed)
  925    97  0 	d          write (unit=1,fmt=*)'--- COORDS_AND_FIELD:'
  926    98  0 	d          do 901, i=1,n
  927    99  0 	d 901 write (unit=1,fmt=*) (c(i,j),j=1,ndim), f(i)
  928   100  0 	c   ________________________________________________________________
  929   101  0 	      call SETC(mex,n,ndim,c,l)
  930   102  0 	d               write (unit=1,fmt=*)'--- CAUSAL_MATRIX :'
  931   103  0 	d          do 903, i=1,n
  932   104  0 	d 903           write (unit=1,fmt='(64I2)') (l(i,j),j=1,n)
  933   105  0 	c   ________________________________________________________________
  934   106  0 	
  935   107  0 	c                call CM_timer_clear(1)
  936   108  0 	c                call CM_timer_start(1)
  937   109  0 	c       call RELAB(mex,n,l,f)
  938   110  0 	c               print *, 'SKIPPING RELAB'
  939   111  0 	c                call CM_timer_stop(1)
  940   112  0 	c                call CM_timer_print(1)
  941   113  0 	
  942   114  0 	c   ________________________________________________________________
  943   115  0 	      if (ndim.eq.4) call link(mex,l,n)
  944   116  0 	c   ________________________________________________________________
  945   117  0 	      if (method.eq.'sym') then 
  946   118  0 	            ldummy = l + transpose(l)
  947   119  0 	         else 
  948   120  0 	            ldummy = l
  949   121  0 	      end if
  950   122  0 	
  951   123  0 	c Check symmetry    --- CHECKED, OKAY
  952   124  0 	c      if ( ANY(ldummy.ne. transpose(ldummy)) ) then
  953   125  0 	c         print *,'--- --------not symmetric'
  954   126  0 	c         call HALT
  955   127  0 	c      end if                     
  956   128  0 	
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 11
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
  957   129  0 	      forall (i=1:n) ldummy(i,i)=ifr
  958   130  0 	c   ________________________________________________________________
  959   131  0 	      call DISCARD1(mex,n,ldummy,vec)
  960   132  0 	      call DISCARD2(mex,n,ldummy,vec)
  961   133  0 	      call DELETE(mex,n,ldummy,f,vec)
  962   134  0 	c   ________________________________________________________________
  963   135  0 	c     INVERT
  964   136  0 	      dummy=real(ldummy,0.d0)     !dummy is double-precision
  965   137  0 	d             write (unit=1,fmt=*)'--- TO_BE_INVERTED :'
  966   138  0 	d          do 906, i=1,n
  967   139  0 	d 906         write (unit=1,fmt='(64F4.0)') (dummy(i,j),j=1,n)
  968   140  0 	      minpiv=gen_gj_invert(dummy,n,CMSSL_total_pivoting,ierr)
  969   141  0 	      print *,'min piv=',minpiv, ' ierr= ',ierr
  970   142  0 	
  971   143  0 	      tempd=0.0
  972   144  0 	      CALL gen_matrix_mult(tempd, dummy, real(ldummy,0.d0) ,1,2,ierr)
  973   145  0 	           forall (i=1:n) tempd(i,i) = tempd(i,i) - 1.0
  974   146  0 	           tempd = abs(tempd)
  975   147  0 	           print *, 'residuals = ', maxval(tempd), sum(tempd)/(n*n)
  976   148  0 	
  977   149  0 	d             write (unit=1,fmt=*)'--- INVERTED_MATRIX :'
  978   150  0 	d          do 907, i=1,n
  979   151  0 	d 907         write (unit=1,fmt=*) (dummy(i,j),j=1,n)
  980   152  0 	d             write (unit=1,fmt=*)'--- MIN_PIV :'
  981   153  0 	d 908         write (unit=1,fmt=*) minpiv
  982   154  0 	d         write (unit=1,fmt=*)'--- MAXVAL(abs(AA~-1)), avg(abs(AA~-1):'
  983   155  0 	d 909     write (unit=1,fmt=*) maxval(tempd), sum(tempd)/(n*n)
  984   156  0 	c   ________________________________________________________________
  985   157  0 	
  986   158  0 	d             print *, '---------- POBOX gives :'
  987   159  0 	d             print *, ACT(mex,n,dummy,f,method)
  988   160  0 	d             write (unit=1,fmt=*)'--- ACTION :'
  989   161  0 	d 910         write (unit=1,fmt=*) ACT(mex,n,dummy,f,method)
  990   162  0 	d             write (unit=1,fmt=*)'--- ----------------------------ENDRUN'
  991   163  0 	              
  992   164  0 	      POBOX=ACT(mex,n,dummy,f,method)
  993   165  0 	      END FUNCTION POBOX
  994   166  0 	c   _______________________________________________________END POBOX
  995   167  0 	
  996   168  0 	
  997   169  0 	c   ________________________________________________________________
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 12
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  REAL8   POBOX                           


STORAGE BLOCKS
    Size  Block
      27  local
     153  constants




VARIABLES
  Offset    Size  Type        Block           Name
      48       4  REAL4       local           FE       CMSSL_TOTAL_PIVOTING            
       4       4  INT4        local           FE       I                               
      52       4  INT4        local           FE       IERR                            
      56       4  INT4        local           FE       ISEED                           
     ---       4  INT4        not-referenced  FE       J                               
    2792       3  CHAR        local           FE       METHOD                          
     ---       4  INT4        dummy           FE       MEX                             
       0       8  REAL8       local           FE       MINPIV                          
     ---       4  INT4        dummy           FE       N                               
     ---       8  REAL8       not-referenced  FE       PI                              
     ---       0  NONE        global          FE       _cmpe_pobox_0                   
     ---       0  NONE        global          FE       _cmpe_pobox_0_                  
     ---       0  NONE        global          FE       _cmpe_pobox_1                   
     ---       0  NONE        global          FE       _cmpe_pobox_1_                  
     ---       0  NONE        global          FE       _cmpe_pobox_2                   
     ---       0  NONE        global          FE       _cmpe_pobox_2_                  
     ---       0  NONE        global          FE       _cmpe_pobox_3                   
     ---       0  NONE        global          FE       _cmpe_pobox_3_                  
     ---       0  NONE        global          FE       _cmpe_pobox_4                   
     ---       0  NONE        global          FE       _cmpe_pobox_4_                  
     ---       0  NONE        global          FE       _cmpe_pobox_5                   
     ---       0  NONE        global          FE       _cmpe_pobox_5_                  
     ---       0  NONE        global          FE       _cmpe_pobox_6                   
     ---       0  NONE        global          FE       _cmpe_pobox_6_                  
     ---       0  NONE        global          FE       _cmpe_pobox_7                   
     ---       0  NONE        global          FE       _cmpe_pobox_7_                  
     ---       0  NONE        not-referenced  FE       pobox                           


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
     ---     ---  REAL8       local-automatic CM       C                               
     ---     ---  REAL8       local-automatic CM       DUMMY                           
     ---     ---  REAL8       local-automatic CM       F                               
     ---     ---  INT4        local-automatic CM       L                               
     ---     ---  INT4        local-automatic CM       LDUMMY                          
     ---     ---  REAL8       local-automatic CM       TEMPD                           
     ---     ---  INT4        local-automatic CM       VEC                             
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 13
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    IFR                             0
       0  INT4    NDIM                            2
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name
  ABS                             
  DLBOUND                         
  MAXVAL                          
  REAL                            
  SUM                             
  TRANSPOSE                       


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
  REAL8   function      ACT                             
  NONE    subroutine    DELETE                          
  NONE    subroutine    DISCARD1                        
  NONE    subroutine    DISCARD2                        
  REAL8   function      GEN_GJ_INVERT                   
  NONE    subroutine    GEN_MATRIX_MULT                 
  NONE    subroutine    LINK                            
  NONE    subroutine    SETC                            
  NONE    subroutine    SPRINKLE                        


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  SUM (into scalar)             147
  MAXVAL (into scalar)          147
  GET                           145
  BLOCKMOVE                     118
  VECTOR SEND                   129, 145
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 14
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 15
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
  998   170  0 	      SUBROUTINE sprinkle(mex,n,ndim,coor,field,iseed)
  999   171  0 	      integer :: mex, n, ndim, iseed
 1000   172  0 	      real*8, array(:,:), INTENT(OUT) :: coor
 1001   173  0 	      real*8, array(:),   INTENT(OUT) :: field
 1002   174  0 	
 1003   175  0 	      real*8 x(DUBOUND(coor,1),DUBOUND(coor,2))
 1004   176  0 	CMF$  layout coor(,), field(), x(,)
 1005   177  0 	      real*8 pi
 1006   178  0 	
 1007   179  0 	      pi=2.0d0*dasin(1.0d0)
 1008   180  0 	
 1009   181  0 	      coor=0                       ! make sure coor starts with 0
 1010   182  0 	      CALL CMF_RANDOM(x)           ! FILL x WITH 0 < RANDOM < 1
 1011   183  0 	      coor(:,1)=x(:,1)-x(:,2)      ! x
 1012   184  0 	      coor(:,2)=x(:,1)+x(:,2)-1.0  ! t
 1013   185  0 	      CALL FLD(field,mex,coor)
 1014   186  0 	      end
 1015   187  0 	
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 16
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    SPRINKLE                        


STORAGE BLOCKS
    Size  Block
       8  local
     112  constants




VARIABLES
  Offset    Size  Type        Block           Name
     ---       4  INT4        dummy           FE       ISEED                           
     ---       4  INT4        dummy           FE       MEX                             
     ---       4  INT4        dummy           FE       N                               
     ---       4  INT4        dummy           FE       NDIM                            
       0       8  REAL8       local           FE       PI                              
     ---       0  NONE        global          FE       _cmpe_sprinkle_0                
     ---       0  NONE        global          FE       _cmpe_sprinkle_0_               
     ---       0  NONE        global          FE       _cmpe_sprinkle_1                
     ---       0  NONE        global          FE       _cmpe_sprinkle_1_               
     ---       0  NONE        global          FE       _cmpe_sprinkle_2                
     ---       0  NONE        global          FE       _cmpe_sprinkle_2_               
     ---       0  NONE        global          FE       _cmpe_sprinkle_3                
     ---       0  NONE        global          FE       _cmpe_sprinkle_3_               
     ---       0  NONE        global          FE       _cmpe_sprinkle_4                
     ---       0  NONE        global          FE       _cmpe_sprinkle_4_               
     ---       0  NONE        global          FE       _cmpe_sprinkle_5                
     ---       0  NONE        global          FE       _cmpe_sprinkle_5_               
     ---       0  NONE        not-referenced  FE       sprinkle                        


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
     ---     ---  REAL8       dummy-asu-shape CM       COOR                            
     ---     ---  REAL8       dummy-asu-shape CM       FIELD                           
     ---     ---  REAL8       local-automatic CM       X                               


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name
  DASIN                           
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 17
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
  DUBOUND                         


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
  NONE    subroutine    CMF_RANDOM                      
  NONE    subroutine    FLD                             


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  NEWS                          183
  BLOCKMOVE                     183, 184


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 18
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1016   188  0 	      SUBROUTINE fld(field,mex,coor)
 1017   189  0 	      integer :: mex
 1018   190  0 	      real*8, array(:,:), INTENT(IN) :: coor
 1019   191  0 	      real*8, array(:),   INTENT(OUT) :: field
 1020   192  0 	
 1021   193  0 	      real*8 u(DUBOUND(coor,1))
 1022   194  0 	      real*8 v(DUBOUND(coor,1))
 1023   195  0 	
 1024   196  0 	      real*8 pi
 1025   197  0 	      common pi
 1026   198  0 	CMF$  layout coor(,), field(), u(), v()
 1027   199  0 	
 1028   200  0 	      pi=2.0d0*dasin(1.0d0)
 1029   201  0 	
 1030   202  0 	      u(:)=(coor(:,1)+coor(:,2))
 1031   203  0 	      v(:)=(coor(:,1)-coor(:,2))
 1032   204  0 	
 1033   205  0 	      if ( ANY(abs(u).gt. 1.0 .or. abs(v).gt. 1.0)) then
 1034   206  0 	        CALL HALT
 1035   207  0 	      end if
 1036   208  0 	
 1037   209  0 	c     Function 1:
 1038   210  0 	          field=(1.0d0+dcos(pi*u))*(1.0d0+cos(pi*v))
 1039   211  0 	c     Function 2:
 1040   212  0 	c         field = (u + v) * (1.0d0+dcos(pi*u))*(1.0d0+dcos(pi*v))
 1041   213  0 	c     Function 3:
 1042   214  0 	c         field = (u - v) * (1.0d0+dcos(pi*u))*(1.0d0+dcos(pi*v))
 1043   215  0 	c The next two functions are meant to test lorentz invariance. They both
 1044   216  0 	c should give zero, and are related by a boost.  Hence, ignoring
 1045   217  0 	c finite size effects, pobox should do as good a job on one of
 1046   218  0 	c them as on the other.  Of course, should also test boost-related
 1047   219  0 	c functions which have nonzero actions.
 1048   220  0 	c     Function 4:
 1049   221  0 	c  field =   (1.0d0-dcos(4.0d0*pi*u)) * (1.0d0+dcos( pi*v))
 1050   222  0 	c     Function 5:
 1051   223  0 	c  field =   (1.0d0-dcos(2.0d0*pi*u)) * (1.0d0-dcos(2.0d0*pi*v))
 1052   224  0 	c     Function 10:
 1053   225  0 	c  field = (3.0d0*u+5.0d0*v+7.0d0)* ( (u*u-1.0d0)*(v*v-1.0d0) )**2.0d0
 1054   226  0 	c
 1055   227  0 	
 1056   228  0 	cc      print *, 'f(', u , ',' , v , ')=' , field
 1057   229  0 	      end
 1058   230  0 	
 1059   231  0 	c   ________________________________________________________________
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 19
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    FLD                             


STORAGE BLOCKS
    Size  Block
       8  //
     132  constants




VARIABLES
  Offset    Size  Type        Block           Name
     ---       4  INT4        dummy           FE       MEX                             
       0       8  REAL8       //              FE       PI                              
     ---       0  NONE        global          FE       _cmpe_fld_0                     
     ---       0  NONE        global          FE       _cmpe_fld_0_                    
     ---       0  NONE        global          FE       _cmpe_fld_1                     
     ---       0  NONE        global          FE       _cmpe_fld_1_                    
     ---       0  NONE        global          FE       _cmpe_fld_2                     
     ---       0  NONE        global          FE       _cmpe_fld_2_                    
     ---       0  NONE        global          FE       _cmpe_fld_3                     
     ---       0  NONE        global          FE       _cmpe_fld_3_                    
     ---       0  NONE        global          FE       _cmpe_fld_4                     
     ---       0  NONE        global          FE       _cmpe_fld_4_                    
     ---       0  NONE        not-referenced  FE       fld                             


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
     ---     ---  REAL8       dummy-asu-shape CM       COOR                            
     ---     ---  REAL8       dummy-asu-shape CM       FIELD                           
     ---     ---  REAL8       local-automatic CM       U                               
     ---     ---  REAL8       local-automatic CM       V                               


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name
  ABS                             
  ANY                             
  COS                             
  DASIN                           
  DCOS                            
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 20
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
  DUBOUND                         


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
  NONE    subroutine    HALT                            


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  ANY (into scalar)             205
  NEWS                          202
  BLOCKMOVE                     202, 203, 210


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 21
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1060   232  0 	      SUBROUTINE setc(mex,n,ndim,coor,l)
 1061   233  0 	      integer :: mex,n,ndim
 1062   234  0 	      real*8, array(:,:), INTENT(IN) :: coor   ! coor(mex,4)
 1063   235  0 	      integer, array(:,:),INTENT(OUT) :: l    ! l(mex,mex)
 1064   236  0 	
 1065   237  0 	
 1066   238  0 	      real*8 dt(DUBOUND(coor,1),DUBOUND(coor,1))
 1067   239  0 	      real*8 dx(DUBOUND(coor,1),DUBOUND(coor,1))
 1068   240  0 	CMF$  layout coor(,), l(,), dt(,), dx(,)
 1069   241  0 	      integer i,j
 1070   242  0 	
 1071   243  0 	      l=0                           ! set the causal matrix to zero
 1072   244  0 	      if (ndim.eq.2) then
 1073   245  0 	         forall (i=1:n, j=1:n) dt(i,j)=coor(i,2)-coor(j,2)
 1074   246  0 	         forall (i=1:n, j=1:n) dx(i,j)=coor(i,1)-coor(j,1)
 1075   247  0 	         where (dt.lt.0.0 .and. dt*dt.ge.dx*dx) 
 1076   248  0 	              l=1
 1077   249  0 	            elsewhere 
 1078   250  0 	              l=0
 1079   251  0 	         end where
 1080   252  0 	      end if
 1081   253  0 	
 1082   254  0 	      if (ndim.eq.4) then
 1083   255  0 	         print *, "Not implemented yet."
 1084   256  0 	         CALL HALT
 1085   257  0 	      end if
 1086   258  0 	
 1087   259  0 	      end
 1088   260  0 	
 1089   261  0 	c   ________________________________________________________________
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 22
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    SETC                            


STORAGE BLOCKS
    Size  Block
       8  local
     104  constants




VARIABLES
  Offset    Size  Type        Block           Name
       0       4  INT4        local           FE       I                               
       4       4  INT4        local           FE       J                               
     ---       4  INT4        dummy           FE       MEX                             
     ---       4  INT4        dummy           FE       N                               
     ---       4  INT4        dummy           FE       NDIM                            
     ---       0  NONE        global          FE       _cmpe_setc_0                    
     ---       0  NONE        global          FE       _cmpe_setc_0_                   
     ---       0  NONE        global          FE       _cmpe_setc_1                    
     ---       0  NONE        global          FE       _cmpe_setc_1_                   
     ---       0  NONE        global          FE       _cmpe_setc_2                    
     ---       0  NONE        global          FE       _cmpe_setc_2_                   
     ---       0  NONE        global          FE       _cmpe_setc_3                    
     ---       0  NONE        global          FE       _cmpe_setc_3_                   
     ---       0  NONE        global          FE       _cmpe_setc_4                    
     ---       0  NONE        global          FE       _cmpe_setc_4_                   
     ---       0  NONE        global          FE       _cmpe_setc_5                    
     ---       0  NONE        global          FE       _cmpe_setc_5_                   
     ---       0  NONE        not-referenced  FE       setc                            


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
     ---     ---  REAL8       dummy-asu-shape CM       COOR                            
     ---     ---  REAL8       local-automatic CM       DT                              
     ---     ---  REAL8       local-automatic CM       DX                              
     ---     ---  INT4        dummy-asu-shape CM       L                               


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 23
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
INTRINSIC PROCEDURES
  Name
  DUBOUND                         
  SPREAD                          


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
  NONE    subroutine    HALT                            


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  BLOCKMOVE                     245(2), 246(2), 248, 250
  SPREAD                        245(2), 246(2)


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 24
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1090   262  0 	      SUBROUTINE relab(mex,n,l,f)
 1091   263  0 	      integer mex, n, i, j, k
 1092   264  0 	      real*8 f(mex)
 1093   265  0 	CMF$  layout f()
 1094   266  0 	      integer l(mex,mex),m(mex),sig(mex)
 1095   267  0 	CMF$  layout l(,), m(), sig()
 1096   268  0 	
 1097   269  0 	      call tri(mex,n,l,sig)
 1098   270  0 	        forall (i=1:n) l(sig(i),:)=l(i,:)    ! execute permutation
 1099   271  0 	        forall (j=1:n) l(:,sig(j))=l(:,j)    ! on causal matrix
 1100   272  0 	        forall (i=1:n) f(sig(i))=f(i)        ! on field values
 1101   273  0 	      end
 1102   274  0 	
 1103   275  0 	
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 25
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    RELAB                           


STORAGE BLOCKS
    Size  Block
       8  local
      44  constants




VARIABLES
  Offset    Size  Type        Block           Name
       0       4  INT4        local           FE       I                               
       4       4  INT4        local           FE       J                               
     ---       4  INT4        not-referenced  FE       K                               
     ---       4  INT4        dummy           FE       MEX                             
     ---       4  INT4        dummy           FE       N                               
     ---       0  NONE        global          FE       _cmpe_relab_0                   
     ---       0  NONE        global          FE       _cmpe_relab_0_                  
     ---       0  NONE        global          FE       _cmpe_relab_1                   
     ---       0  NONE        global          FE       _cmpe_relab_1_                  
     ---       0  NONE        global          FE       _cmpe_relab_2                   
     ---       0  NONE        global          FE       _cmpe_relab_2_                  
     ---       0  NONE        global          FE       _cmpe_relab_3                   
     ---       0  NONE        global          FE       _cmpe_relab_3_                  
     ---       0  NONE        global          FE       _cmpe_relab_4                   
     ---       0  NONE        global          FE       _cmpe_relab_4_                  
     ---       0  NONE        global          FE       _cmpe_relab_5                   
     ---       0  NONE        global          FE       _cmpe_relab_5_                  
     ---       0  NONE        not-referenced  FE       relab                           


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
     ---     ---  REAL8       dummy-adjust    CM       F                               
     ---     ---  INT4        dummy-adjust    CM       L                               
     ---     ---  INT4        not-referenced  CM       M                               
     ---     ---  INT4        local-automatic CM       SIG                             


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 26
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
INTRINSIC PROCEDURES
  Name
  DLBOUND                         
  SPREAD                          


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
  NONE    subroutine    TRI                             


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  BLOCKMOVE                     270, 271(2)
  VECTOR SEND                   270, 271, 272
  SPREAD                        270, 271


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 27
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1104   276  0 	        SUBROUTINE tri(mex,n,zeta,sig)       ! a serial subroutine
 1105   277  0 	        implicit integer (a-z)               ! which generates a
 1106   278  0 	        dimension sig(mex), zeta(mex,mex)    ! permutation in order
 1107   279  0 	CMF$    layout sig(), zeta(,)                ! to make the adjacency
 1108   280  0 	10      m=0                                  ! matrix upper triangular
 1109   281  0 	        l=0
 1110   282  0 	11      sig=0
 1111   283  0 	20      m=m+1
 1112   284  0 	30      if (sig(m).eq.0) goto 40
 1113   285  0 	130     if (m.eq.n) return
 1114   286  0 	        goto 20
 1115   287  0 	40      t=m+1
 1116   288  0 	50      r=t
 1117   289  0 	60      if (r.gt.n) goto 100
 1118   290  0 	70      if (sig(r).ne.0 .or. zeta(r,m).eq.0) goto 90
 1119   291  0 	80      sig(r)=m
 1120   292  0 	        m=r
 1121   293  0 	        goto 50
 1122   294  0 	90      r=r+1
 1123   295  0 	        goto 60
 1124   296  0 	100     l=l+1
 1125   297  0 	        q=sig(m)
 1126   298  0 	        sig(m)=l
 1127   299  0 	110     if (q.eq.0) goto 130
 1128   300  0 	        r=m+1
 1129   301  0 	120     m=q
 1130   302  0 	        goto 60
 1131   303  0 	        end
 1132   304  0 	
 1133   305  0 	c   ________________________________________________________________
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 28
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    TRI                             


STORAGE BLOCKS
    Size  Block
      20  local
     128  constants




VARIABLES
  Offset    Size  Type        Block           Name
       4       4  INT4        local           FE       L                               
       0       4  INT4        local           FE       M                               
     ---       4  INT4        dummy           FE       MEX                             
     ---       4  INT4        dummy           FE       N                               
      16       4  INT4        local           FE       Q                               
      12       4  INT4        local           FE       R                               
       8       4  INT4        local           FE       T                               
     ---       0  NONE        global          FE       _cmpe_tri_0                     
     ---       0  NONE        global          FE       _cmpe_tri_0_                    
     ---       0  NONE        not-referenced  FE       tri                             


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
     ---     ---  INT4        dummy-adjust    CM       SIG                             
     ---     ---  INT4        dummy-adjust    CM       ZETA                            


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 29
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  READ VALUE FROM PROCESSOR     284, 290, 297, 290


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 30
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1134   306  0 	      SUBROUTINE discard1(mex,n,ldu,vec)     ! a subroutine to
 1135   307  0 	      integer :: mex,n                       ! locate a zero column
 1136   308  0 	      integer, array(:,:),INTENT(IN)  :: ldu   
 1137   309  0 	      integer, array(:),  INTENT(OUT) :: vec
 1138   310  0 	
 1139   311  0 	CMF$  layout ldu(,), vec()
 1140   312  0 	      integer i,j
 1141   313  0 	
 1142   314  0 	      if (n.eq.1) then
 1143   315  0 	         print *,' matrix of rank 1 and so no deletion possible'
 1144   316  0 	         print *,' exiting discard1 immediately'
 1145   317  0 	         goto 40
 1146   318  0 	      end if
 1147   319  0 	      if (n.lt.1) then
 1148   320  0 	         print *,' matrix of rank < 1 not possible !'
 1149   321  0 	         call halt
 1150   322  0 	      end if
 1151   323  0 	
 1152   324  0 	      vec=sum(ldu,dim=1)              ! recall: ldu has diagonal ifr
 1153   325  0 	      where (vec.ge.1) vec=1          ! will delete where vec=0
 1154   326  0 	
 1155   327  0 	 40   end
 1156   328  0 	c   ________________________________________________________________
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 31
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    DISCARD1                        


STORAGE BLOCKS
    Size  Block
     156  constants




VARIABLES
  Offset    Size  Type        Block           Name
     ---       4  INT4        not-referenced  FE       I                               
     ---       4  INT4        not-referenced  FE       J                               
     ---       4  INT4        dummy           FE       MEX                             
     ---       4  INT4        dummy           FE       N                               
     ---       0  NONE        global          FE       _cmpe_discard1_0                
     ---       0  NONE        global          FE       _cmpe_discard1_0_               
     ---       0  NONE        not-referenced  FE       discard1                        


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
     ---     ---  INT4        dummy-asu-shape CM       LDU                             
     ---     ---  INT4        dummy-asu-shape CM       VEC                             


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name
  SUM                             


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
  NONE    subroutine    HALT                            


NAME LISTS
  Name


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 32
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  BLOCKMOVE                     324
  SUM (into vector)             324


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 33
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1157   329  0 	      SUBROUTINE discard2(mex,n,ldu,vec)     ! a subroutine to
 1158   330  0 	      integer :: mex,n                       ! locate identical columns
 1159   331  0 	      integer, array(:,:),INTENT(IN)  :: ldu
 1160   332  0 	      integer, array(:),  INTENT(OUT) :: vec
 1161   333  0 	
 1162   334  0 	      integer m(DUBOUND(vec,1))
 1163   335  0 	CMF$  layout ldu(,), vec(), m()
 1164   336  0 	      integer i
 1165   337  0 	
 1166   338  0 	      if (n.eq.1) then
 1167   339  0 	         print *,' matrix of rank 1 and so no deletion possible'
 1168   340  0 	         print *,' exiting discard 2 immediately'
 1169   341  0 	         goto 50
 1170   342  0 	      end if
 1171   343  0 	      if (n.lt.1) then
 1172   344  0 	         print *,' matrix of rank < 1 not possible !'
 1173   345  0 	         call halt
 1174   346  0 	      end if
 1175   347  0 	
 1176   348  0 	      i=0
 1177   349  0 	      do 111, while (i.lt.n)
 1178   350  0 	         i=i+1
 1179   351  0 	         m=sum(abs(ldu(1:n,1:n)-spread(ldu(i,1:n),1,n)),2)
 1180   352  0 	         m(1:i)=1
 1181   353  0 	         where (m.ge.1) m=1
 1182   354  0 	         vec=vec*m
 1183   355  0 	 111  end do                    ! will delete where vec=0
 1184   356  0 	
 1185   357  0 	 50   end
 1186   358  0 	
 1187   359  0 	c   ________________________________________________________________
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 34
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    DISCARD2                        


STORAGE BLOCKS
    Size  Block
       4  local
     169  constants




VARIABLES
  Offset    Size  Type        Block           Name
       0       4  INT4        local           FE       I                               
     ---       4  INT4        dummy           FE       MEX                             
     ---       4  INT4        dummy           FE       N                               
     ---       0  NONE        global          FE       _cmpe_discard2_0                
     ---       0  NONE        global          FE       _cmpe_discard2_0_               
     ---       0  NONE        global          FE       _cmpe_discard2_1                
     ---       0  NONE        global          FE       _cmpe_discard2_1_               
     ---       0  NONE        global          FE       _cmpe_discard2_2                
     ---       0  NONE        global          FE       _cmpe_discard2_2_               
     ---       0  NONE        not-referenced  FE       discard2                        


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
     ---     ---  INT4        dummy-asu-shape CM       LDU                             
     ---     ---  INT4        local-automatic CM       M                               
     ---     ---  INT4        dummy-asu-shape CM       VEC                             


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name
  ABS                             
  DUBOUND                         
  SPREAD                          
  SUM                             


STATEMENT FUNCTIONS
  Type    Name

Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 35
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm

EXTERNALS
  Type    Unit_Kind     Name
  NONE    subroutine    HALT                            


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  BLOCKMOVE                     351(3), 354
  SUM (into vector)             351
  SPREAD                        351


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 36
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1188   360  0 	      SUBROUTINE delete(mex,n,zeta,f,vec)    ! deletes all
 1189   361  0 	      integer :: mex,n                       ! marked columns/rows
 1190   362  0 	      integer, array(:,:),INTENT(INOUT)  :: zeta
 1191   363  0 	      integer, array(:),  INTENT(INOUT) :: vec
 1192   364  0 	      real*8,  array(:),  INTENT(INOUT) :: f
 1193   365  0 	
 1194   366  0 	      integer vec_zeta(DUBOUND(vec,1),DUBOUND(vec,1))
 1195   367  0 	CMF$  layout zeta(,), f(), vec()
 1196   368  0 	      integer i,j,s
 1197   369  0 	      parameter (killmark=-94321)
 1198   370  0 	
 1199   371  0 	      if (n.lt.DUBOUND(vec,1)) vec(n+1:)= -1
 1200   372  0 	      s=count(vec.eq.0)         ! count the number of points to be deleted
 1201   373  0 	        print *, 'deleting ',s,' of ',n,' points'
 1202   374  0 	d      write(unit=1,fmt=*) '--- DELETING ',s,' of ',n,' points'
 1203   375  0 	d      do 501, i=1,n
 1204   376  0 	d501         if (vec(i).eq.0) write (unit=1,fmt=*) i
 1205   377  0 	        where (vec.eq.0) vec=-1
 1206   378  0 	
 1207   379  0 	        forall(i=1:n, j=1:n, vec(i).eq.-1 .or. vec(j).eq.-1)
 1208   380  0 	     +                           zeta(i,j) = killmark
 1209   381  0 	        forall(i=1:n, vec(i).eq.-1) f(i) = killmark
 1210   382  0 	
 1211   383  0 	        if (n.lt.DUBOUND(vec,1)) then
 1212   384  0 	           zeta(:,n+1:)=killmark
 1213   385  0 	           zeta(n+1:,:)=killmark
 1214   386  0 	           f(n+1:)=killmark
 1215   387  0 	        end if
 1216   388  0 	
 1217   389  0 	cd              write (unit=1, fmt=*) '--- as'
 1218   390  0 	cd              do 9052, i=1,n
 1219   391  0 	cd 9052         write (unit=1,fmt=*) (zeta(i,j),j=1,n)
 1220   392  0 	cd        write (unit=1, fmt=*) 'will delete s=',s,' of n=',n,' points'
 1221   393  0 	
 1222   394  0 	        if (s.eq.0) goto 9999
 1223   395  0 	
 1224   396  0 	        zeta=reshape([n-s,n-s],source=pack(zeta,zeta.ne.killmark),pad=[-2])
 1225   397  0 	        f=reshape([n-s],source=pack(f,f.ne.killmark),pad=[-2])
 1226   398  0 	
 1227   399  0 	        forall (i=1:n, j=1:n, max(i,j).ge.n-s+1) zeta(i,j)=0
 1228   400  0 	        forall (i=1:n, i.ge.n-s+1) f(i)=0
 1229   401  0 	        n=n-s
 1230   402  0 	cd              write (unit=1, fmt=*) '---delete generated'
 1231   403  0 	cd              do 907, i=1,n
 1232   404  0 	cd 907             write (unit=1,fmt=*) (zeta(i,j),j=1,n)
 1233   405  0 	 9999    end
 1234   406  0 	
 1235   407  0 	c   ________________________________________________________________
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 37
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    DELETE                          


STORAGE BLOCKS
    Size  Block
      12  local
     132  constants




VARIABLES
  Offset    Size  Type        Block           Name
       0       4  INT4        local           FE       I                               
       4       4  INT4        local           FE       J                               
     ---       4  INT4        dummy           FE       MEX                             
     ---       4  INT4        dummy           FE       N                               
       0       4  INT4        local           FE       S                               
     ---       0  NONE        global          FE       _cmpe_delete_0                  
     ---       0  NONE        global          FE       _cmpe_delete_0_                 
     ---       0  NONE        global          FE       _cmpe_delete_1                  
     ---       0  NONE        global          FE       _cmpe_delete_10                 
     ---       0  NONE        global          FE       _cmpe_delete_10_                
     ---       0  NONE        global          FE       _cmpe_delete_11                 
     ---       0  NONE        global          FE       _cmpe_delete_11_                
     ---       0  NONE        global          FE       _cmpe_delete_12                 
     ---       0  NONE        global          FE       _cmpe_delete_12_                
     ---       0  NONE        global          FE       _cmpe_delete_13                 
     ---       0  NONE        global          FE       _cmpe_delete_13_                
     ---       0  NONE        global          FE       _cmpe_delete_1_                 
     ---       0  NONE        global          FE       _cmpe_delete_2                  
     ---       0  NONE        global          FE       _cmpe_delete_2_                 
     ---       0  NONE        global          FE       _cmpe_delete_3                  
     ---       0  NONE        global          FE       _cmpe_delete_3_                 
     ---       0  NONE        global          FE       _cmpe_delete_4                  
     ---       0  NONE        global          FE       _cmpe_delete_4_                 
     ---       0  NONE        global          FE       _cmpe_delete_5                  
     ---       0  NONE        global          FE       _cmpe_delete_5_                 
     ---       0  NONE        global          FE       _cmpe_delete_6                  
     ---       0  NONE        global          FE       _cmpe_delete_6_                 
     ---       0  NONE        global          FE       _cmpe_delete_7                  
     ---       0  NONE        global          FE       _cmpe_delete_7_                 
     ---       0  NONE        global          FE       _cmpe_delete_8                  
     ---       0  NONE        global          FE       _cmpe_delete_8_                 
     ---       0  NONE        global          FE       _cmpe_delete_9                  
     ---       0  NONE        global          FE       _cmpe_delete_9_                 
     ---       0  NONE        not-referenced  FE       delete                          


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 38
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
     ---     ---  REAL8       dummy-asu-shape CM       F                               
     ---     ---  INT4        dummy-asu-shape CM       VEC                             
     ---     ---  INT4        not-referenced  CM       VEC_ZETA                        
     ---     ---  INT4        dummy-asu-shape CM       ZETA                            


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    KILLMARK                        -94321
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name
  COUNT                           
  DUBOUND                         
  MAX                             
  PACK                            
  RESHAPE                         
  SPREAD                          


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  COUNT (into scalar)           372, 396, 397
  BLOCKMOVE                     379(2), 381, 396, 397
  FE TO CM ARRAY TRANSFER       396, 397
  SPREAD                        379(2)
  PACK (without vector arg)     396, 397
  RESHAPE                       396, 397


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 39
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1236   408  0 	      FUNCTION ACT(mex,n,cinv,f,method)    ! compute the action
 1237   409  0 	      real*8 ACT
 1238   410  0 	      integer :: mex,n
 1239   411  0 	      real*8, array(:,:),INTENT(IN)  :: cinv
 1240   412  0 	      real*8, array(:),  INTENT(INOUT)  :: f
 1241   413  0 	      character*3 method
 1242   414  0 	
 1243   415  0 	CMF$  layout cinv(,) , f()
 1244   416  0 	      real*8 norm
 1245   417  0 	
 1246   418  0 	      if (n.lt.DUBOUND(f,1)) f(n+1:)=0.0
 1247   419  0 	      norm=0.0            ! give us zero, if we forget to define method
 1248   420  0 	      if (method.eq.'sym') norm=-2.0
 1249   421  0 	      if (method.eq.'ret') norm=-1.0
 1250   422  0 	      act=norm * SUM( SPREAD(f,1,DUBOUND(cinv,1)) 
 1251   423  0 	     &                 * cinv * spread(f,2,DUBOUND(cinv,1)) )
 1252   424  0 	      END FUNCTION ACT
 1253   425  0 	
 1254   426  0 	c   ________________________________________________________________
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 40
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  REAL8   ACT                             


STORAGE BLOCKS
    Size  Block
       8  local
     134  constants




VARIABLES
  Offset    Size  Type        Block           Name
     ---       3  CHAR        dummy           FE       METHOD                          
     ---       4  INT4        dummy           FE       MEX                             
     ---       4  INT4        dummy           FE       N                               
       0       8  REAL8       local           FE       NORM                            
     ---       0  NONE        global          FE       _cmpe_act_0                     
     ---       0  NONE        global          FE       _cmpe_act_0_                    
     ---       0  NONE        global          FE       _cmpe_act_1                     
     ---       0  NONE        global          FE       _cmpe_act_1_                    
     ---       0  NONE        not-referenced  FE       act                             


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
     ---     ---  REAL8       dummy-asu-shape CM       CINV                            
     ---     ---  REAL8       dummy-asu-shape CM       F                               


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name
  DUBOUND                         
  SPREAD                          
  SUM                             


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 41
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  SUM (into scalar)             422
  BLOCKMOVE                     422(4)
  SPREAD                        422(2)


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 42
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1255   427  0 	      SUBROUTINE HALT
 1256   428  0 	              print *,' HALTED'
 1257   429  0 	      stop
 1258   430  0 	      end
 1259   431  0 	
 1260   432  0 	
 1261   433  0 	c--------be sure not calculations are restricted to (n,n[,n])
 1262   434  0 	c    _______________________________________________________________
 1263   435  0 	c      SUBROUTINE HASSE(mex,n,Z)              ! returns the
 1264   436  0 	c                                             ! hasse matrix of Z
 1265   437  0 	c        integer mex,n,nn                     ! (assumed irreflexive)
 1266   438  0 	c        integer Z(mex,mex)
 1267   439  0 	cCMF$    layout  Z(,) ,
 1268   440  0 	c        integer T(mex,mex,mex), Z0(mex,mex), U(mex,mex)
 1269   441  0 	cCMF$    layout T(,,), Z0(,), U(,)
 1270   442  0 	c
 1271   443  0 	c
 1272   444  0 	c
 1273   445  0 	c        Z0=Z                             ! start with Z0=Z
 1274   446  0 	c        do nn=1,n-1
 1275   447  0 	c                T=0                     ! guarantee T=0 outside (n,n,n)
 1276   448  0 	c                forall(i=1:n,j=1:n,k=1:n) T(i,j,k)=Z(i,j)+Z0(j,k)
 1277   449  0 	c                U=maxval(T,dim=2)
 1278   450  0 	c                Z=merge(1,0, Z.ge.1 .and. U.le.1)
 1279   451  0 	c                                        ! if there already exists a path (Z)
 1280   452  0 	c                                        ! and there is a nearest-neighbor (U)
 1281   453  0 	c        end do                          ! keep path (1) else delete it (0)
 1282   454  0 	c        end
 1283   455  0 	
 1284   456  0 	
 1285   457  0 	c   ________________________________________________________________
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 43
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  NONE    HALT                            


STORAGE BLOCKS
    Size  Block
      47  constants




VARIABLES
  Offset    Size  Type        Block           Name
     ---       0  NONE        not-referenced  FE       halt                            


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 44
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1286   458  0 	      FUNCTION RAN3(idum)
 1287   459  0 	      real*8 RAN3
 1288   460  0 	      real*8 ma(55)
 1289   461  0 	CMF$  layout ma()
 1290   462  0 	
 1291   463  0 	      if (idum.lt.0) then
 1292   464  0 	        CALL CMF_RANDOMIZE(-idum)     ! to seed use idum < 0
 1293   465  0 	      else
 1294   466  0 	        CALL CMF_RANDOM(ma)           ! FILL ma WITH 0 < RANDOM < 1
 1295   467  0 	        ran3=ma(1)
 1296   468  0 	      end if
 1297   469  0 	      return
 1298   470  0 	      end
 1299   471  0 	c   ________________________________________________________________
 1300   472  0 	c this no doubt is returning a poissson-distributed integer.
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 45
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  REAL8   RAN3                            


STORAGE BLOCKS
    Size  Block
     440  local
      52  constants




VARIABLES
  Offset    Size  Type        Block           Name
     ---       4  INT4        dummy           FE       IDUM                            
     ---       0  NONE        not-referenced  FE       ran3                            


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name
       0     440  REAL8       local           CM       MA                              


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
  NONE    subroutine    CMF_RANDOM                      
  NONE    subroutine    CMF_RANDOMIZE                   


NAME LISTS
  Name


CONSTRUCT NAMES
  Name



Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 46
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
COMMUNICATION ROUTINES
  Name                          Line Number (number of times)
  READ VALUE FROM PROCESSOR     467


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 47
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1301   473  0 	      INTEGER FUNCTION NPT(nexp,iseed)
 1302   474  0 	      integer nexp, iseed, n, j
 1303   475  0 	      real*8 x, p
 1304   476  0 	      real*8 ran3, pdv
 1305   477  0 	      x=ran3(iseed)
 1306   478  0 	      n=nexp
 1307   479  0 	      p=0
 1308   480  0 	      j=0
 1309   481  0 	 100  p=p+pdv(j,n)
 1310   482  0 	      if (x.lt.p) goto 200
 1311   483  0 	      j=j+1
 1312   484  0 	      goto 100
 1313   485  0 	 200  npt=j
 1314   486  0 	      end
 1315   487  0 	
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 48
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  INT4    NPT                             


STORAGE BLOCKS
    Size  Block
      24  local
      72  constants




VARIABLES
  Offset    Size  Type        Block           Name
     ---       4  INT4        dummy           FE       ISEED                           
      16       4  INT4        local           FE       J                               
      20       4  INT4        local           FE       N                               
     ---       4  INT4        dummy           FE       NEXP                            
      16       8  REAL8       local           FE       P                               
       8       8  REAL8       local           FE       X                               
     ---       0  NONE        not-referenced  FE       npt                             


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name
  REAL8   function      PDV                             
  REAL8   function      RAN3                            


NAME LISTS
  Name


CONSTRUCT NAMES
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 49
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
  Name



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 50
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
 1316   488  0 	      REAL FUNCTION pdv(i,n)
 1317   489  0 	      integer i, n, j
 1318   490  0 	      real*8 f
 1319   491  0 	      f=0
 1320   492  0 	      do j=1,i
 1321   493  0 	         f=f+alog(real(j))
 1322   494  0 	      end do
 1323   495  0 	      pdv=i*alog(real(n))-f-real(n)
 1324   496  0 	      pdv=exp(pdv)
 1325   497  0 	      end
 1326   498  0 	
 1327   499  0 	C----------------------------------------------------------------------------
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 51
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
ENTRY POINTS
  Offset  Type    Name
       0  REAL4   PDV                             


STORAGE BLOCKS
    Size  Block
      12  local
      52  constants




VARIABLES
  Offset    Size  Type        Block           Name
       4       8  REAL8       local           FE       F                               
     ---       4  INT4        dummy           FE       I                               
       0       4  INT4        local           FE       J                               
     ---       4  INT4        dummy           FE       N                               
     ---       0  NONE        not-referenced  FE       pdv                             


ARRAYS
  Offset    Size  Type        Block/Class     Home     Name


PARAMETERS (Offset is within Storage Block 'constants')
  Offset  Type    Name                            Value
       0  INT4    _DOUBLE_                        64
       0  INT4    _DOUBLE_COMPLEX_                64
       0  INT4    _DOUBLE_INT_                    64
       0  INT4    _SINGLE_                        32
       0  INT4    _SINGLE_COMPLEX_                32
       0  INT4    _SINGLE_INT_                    32


INTRINSIC PROCEDURES
  Name
  ALOG                            
  EXP                             
  REAL                            


STATEMENT FUNCTIONS
  Type    Name


EXTERNALS
  Type    Unit_Kind     Name


NAME LISTS
  Name


CONSTRUCT NAMES
  Name
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 52
Symbol Storage Map   File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm



COMMUNICATION ROUTINES
  Name                          Line Number (number of times)


Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 53
Source Listing File: /tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
Tue Aug 22 11:35:23 1995 Connection Machine Fortran Version 2.2	page: 54
Utility Stats
Input File:	/tmp_mnt/home/B6D/salgado/POSETS/CM5/Jul26robpobox.fcm
Base File:	Jul26robpobox
COMMAND QUALIFIERS

	-dp -nod_lines -extend_source -list -IPATH=/usr/cmfortran-2.2.11/include -IPATH=/usr/cmfortran-2.2.11/include/cm Jul26robpobox.fcm 

	analysis_data
	check = (no bounds,overflow,no underflow )
	continuations = 19
	directives
	extend_source
	f77
	i4
	ifconvert
	level_of_vectorization = 100
	list
	machine_code
	intlogops
	optimize = (local,no global,no code_motion )
	overlap
	show = (no dictionary,no include,no map,no preprocessor,no single )
	standard = (no syntax,no source,no semantic )
	warnings = (no declarations,general,no ultrix,no vaxeln )
	postoptimize
	preoptimize
	loadstoremotion
	ucephase
	uaephase
	prcphase
	prsphase
	ucepost
	uaepost
	prcpost
	prspost
	cppost
	complex_lower
	safety = 0
	pnodes = -1
	peephole
	axisreorder
	loopreversal
	dp
	trcback
	skip_garbage
	newforall
	killuselessalloc
	new_modifies
	prc2
	prs2
	redo_modifies
	defer_modifies
	comb_cp
	source_fc
	source_node
	const
	transp
	cp_last
	bb_merge
	meoptimize
	mecopypropagate
	memergetemps
	merepl
	mesgsize = 10000
	mescalarnumber = 10000
	merge
	amode
	single_complex_opt
	prover = ()
	peschedule
	peschalias
	pe_asm_machine_code
	pe_asm_comments
	pe_asm_srclines
