blob: afbb22c6697490ba0d33dc2384bbbefee0e9a69b [file] [log] [blame]
c---------------------------------------------------------------------
c---------------------------------------------------------------------
implicit none
c---------------------------------------------------------------------
c The following include file is generated automatically by the
c "setparams" utility. It defines
c maxcells: the square root of the maximum number of processors
c problem_size: 12, 64, 102, 162 (for class T, A, B, C)
c dt_default: default time step for this problem size if no
c config file
c niter_default: default number of iterations for this problem size
c---------------------------------------------------------------------
include 'npbparams.h'
integer ncells, grid_points(3)
common /global/ ncells, grid_points
double precision tx1, tx2, tx3, ty1, ty2, ty3, tz1, tz2, tz3,
> dx1, dx2, dx3, dx4, dx5, dy1, dy2, dy3, dy4,
> dy5, dz1, dz2, dz3, dz4, dz5, dssp, dt,
> ce(5,13), dxmax, dymax, dzmax, xxcon1, xxcon2,
> xxcon3, xxcon4, xxcon5, dx1tx1, dx2tx1, dx3tx1,
> dx4tx1, dx5tx1, yycon1, yycon2, yycon3, yycon4,
> yycon5, dy1ty1, dy2ty1, dy3ty1, dy4ty1, dy5ty1,
> zzcon1, zzcon2, zzcon3, zzcon4, zzcon5, dz1tz1,
> dz2tz1, dz3tz1, dz4tz1, dz5tz1, dnxm1, dnym1,
> dnzm1, c1c2, c1c5, c3c4, c1345, conz1, c1, c2,
> c3, c4, c5, c4dssp, c5dssp, dtdssp, dttx1, bt,
> dttx2, dtty1, dtty2, dttz1, dttz2, c2dttx1,
> c2dtty1, c2dttz1, comz1, comz4, comz5, comz6,
> c3c4tx3, c3c4ty3, c3c4tz3, c2iv, con43, con16
common /constants/ tx1, tx2, tx3, ty1, ty2, ty3, tz1, tz2, tz3,
> dx1, dx2, dx3, dx4, dx5, dy1, dy2, dy3, dy4,
> dy5, dz1, dz2, dz3, dz4, dz5, dssp, dt,
> ce, dxmax, dymax, dzmax, xxcon1, xxcon2,
> xxcon3, xxcon4, xxcon5, dx1tx1, dx2tx1, dx3tx1,
> dx4tx1, dx5tx1, yycon1, yycon2, yycon3, yycon4,
> yycon5, dy1ty1, dy2ty1, dy3ty1, dy4ty1, dy5ty1,
> zzcon1, zzcon2, zzcon3, zzcon4, zzcon5, dz1tz1,
> dz2tz1, dz3tz1, dz4tz1, dz5tz1, dnxm1, dnym1,
> dnzm1, c1c2, c1c5, c3c4, c1345, conz1, c1, c2,
> c3, c4, c5, c4dssp, c5dssp, dtdssp, dttx1, bt,
> dttx2, dtty1, dtty2, dttz1, dttz2, c2dttx1,
> c2dtty1, c2dttz1, comz1, comz4, comz5, comz6,
> c3c4tx3, c3c4ty3, c3c4tz3, c2iv, con43, con16
integer EAST, WEST, NORTH, SOUTH,
> BOTTOM, TOP
parameter (EAST=2000, WEST=3000, NORTH=4000, SOUTH=5000,
> BOTTOM=6000, TOP=7000)
integer cell_coord (3,maxcells), cell_low (3,maxcells),
> cell_high (3,maxcells), cell_size(3,maxcells),
> predecessor(3), slice (3,maxcells),
> grid_size (3), successor(3),
> start (3,maxcells), end (3,maxcells)
common /partition/ cell_coord, cell_low, cell_high, cell_size,
> grid_size, successor, predecessor, slice,
> start, end
integer IMAX, JMAX, KMAX, MAX_CELL_DIM, BUF_SIZE, IMAXP, JMAXP
parameter (MAX_CELL_DIM = (problem_size/maxcells)+1)
parameter (IMAX=MAX_CELL_DIM,JMAX=MAX_CELL_DIM,KMAX=MAX_CELL_DIM)
parameter (IMAXP=IMAX/2*2+1,JMAXP=JMAX/2*2+1)
c---------------------------------------------------------------------
c +1 at end to avoid zero length arrays for 1 node
c---------------------------------------------------------------------
parameter (BUF_SIZE=MAX_CELL_DIM*MAX_CELL_DIM*(maxcells-1)*60*2+1)
double precision
> u (-2:IMAXP+1,-2:JMAXP+1,-2:KMAX+1, 5,maxcells),
> us (-1:IMAX, -1:JMAX, -1:KMAX, maxcells),
> vs (-1:IMAX, -1:JMAX, -1:KMAX, maxcells),
> ws (-1:IMAX, -1:JMAX, -1:KMAX, maxcells),
> qs (-1:IMAX, -1:JMAX, -1:KMAX, maxcells),
> ainv (-1:IMAX, -1:JMAX, -1:KMAX, maxcells),
> rho_i (-1:IMAX, -1:JMAX, -1:KMAX, maxcells),
> speed (-1:IMAX, -1:JMAX, -1:KMAX, maxcells),
> square (-1:IMAX, -1:JMAX, -1:KMAX, maxcells),
> rhs ( 0:IMAXP-1, 0:JMAXP-1, 0:KMAX-1, 5,maxcells),
> forcing ( 0:IMAXP-1, 0:JMAXP-1, 0:KMAX-1, 5,maxcells),
> lhs ( 0:IMAXP-1, 0:JMAXP-1, 0:KMAX-1,15,maxcells),
> in_buffer(BUF_SIZE), out_buffer(BUF_SIZE)
common /fields/ u, us, vs, ws, qs, ainv, rho_i, speed, square,
> rhs, forcing, lhs, in_buffer, out_buffer
double precision cv(-2:MAX_CELL_DIM+1), rhon(-2:MAX_CELL_DIM+1),
> rhos(-2:MAX_CELL_DIM+1), rhoq(-2:MAX_CELL_DIM+1),
> cuf(-2:MAX_CELL_DIM+1), q(-2:MAX_CELL_DIM+1),
> ue(-2:MAX_CELL_DIM+1,5), buf(-2:MAX_CELL_DIM+1,5)
common /work_1d/ cv, rhon, rhos, rhoq, cuf, q, ue, buf
integer west_size, east_size, bottom_size, top_size,
> north_size, south_size, start_send_west,
> start_send_east, start_send_south, start_send_north,
> start_send_bottom, start_send_top, start_recv_west,
> start_recv_east, start_recv_south, start_recv_north,
> start_recv_bottom, start_recv_top
common /box/ west_size, east_size, bottom_size,
> top_size, north_size, south_size,
> start_send_west, start_send_east, start_send_south,
> start_send_north, start_send_bottom, start_send_top,
> start_recv_west, start_recv_east, start_recv_south,
> start_recv_north, start_recv_bottom, start_recv_top
integer t_total, t_rhs, t_xsolve, t_ysolve, t_zsolve, t_bpack,
> t_exch, t_xcomm, t_ycomm, t_zcomm, t_last
parameter (t_total=1, t_rhs=2, t_xsolve=3, t_ysolve=4,
> t_zsolve=5, t_bpack=6, t_exch=7, t_xcomm=8,
> t_ycomm=9, t_zcomm=10, t_last=10)
logical timeron
common /tflags/ timeron