copyright (C) 2001 MSC-RPN COMM %%%MC2%%%
* p a r t o p o . h
*
* Logical parallel processor topology
*
* myproc : processor number 0,1,2, ... (npex*npey-1)
* myrow : 0,1,2, ... npex-1
* mycol : 0,1,2, ... npey-1
* numproc : npex * npey
*
* nblocx : partinionning processors in nblocx blocs along-x
* nblocy : partinionning processors in nblocy blocs along-y
*
* mybloc : bloc number 0,1,2, ... (nblocx*nblocy-1)
* myblocx : 0,1,2, ... nblocx-1
* myblocy : 0,1,2, ... nblocy-1
* numpe_perb : npex/nblocx * npey/nblocy
* blocme : processor number 0,1,2, ... within a bloc
*
* gc_ld,gc_ld2 : global positions
*
integer nblocx, nblocy, endtopo
integer
$ myproc, myrow , mycol , numproc,
$ mybloc, myblocx, myblocy, numpe_perb, blocme,
$ gc_ld , gc_ld2 , glb_pos(4), b_ni, b_nj,
$ b_north,b_south,b_east,b_west
logical north_L, east_L, south_L, west_L,
$ b_north_L,b_south_L,b_east_L,b_west_L
pointer (pagcl , gc_ld (4,0:*)),(pagcl2 , gc_ld2 (5,0:*))
*
common / partopo_L / north_L, east_L, south_L, west_L,
$ b_north_L,b_south_L,b_east_L,b_west_L
common / partopo_i1 / nblocx, nblocy, endtopo
common / partopo_i2 / myproc, myrow , mycol , numproc, glb_pos,
$ mybloc, myblocx, myblocy, numpe_perb, blocme,
$ b_ni,b_nj,b_north,b_south,b_east,b_west
common / partopo_p / pagcl, pagcl2