1 SUBROUTINE pzlamr1d( N, A, IA, JA, DESCA, B, IB, JB, DESCB )
9 INTEGER IA, IB, JA, JB, N
12 INTEGER DESCA( * ), DESCB( * )
13 COMPLEX*16 A( * ), B( * )
89 INTEGER BLOCK_CYCLIC_2D, DLEN_, DTYPE_, CTXT_, M_, N_,
90 $ MB_, NB_, RSRC_, CSRC_, LLD_
91 parameter( block_cyclic_2d = 1, dlen_ = 9, dtype_ = 1,
92 $ ctxt_ = 2, m_ = 3, n_ = 4, mb_ = 5, nb_ = 6,
93 $ rsrc_ = 7, csrc_ = 8, lld_ = 9 )
96 INTEGER I, ICTXT, MYCOL, MYROW, NPCOL, NPROW, NQ
99 INTEGER DESCAA( DLEN_ ), DESCBB( DLEN_ )
102 EXTERNAL blacs_gridinfo, pzgemr2d, zgebr2d, zgebs2d
110 IF( block_cyclic_2d*csrc_*ctxt_*dlen_*dtype_*lld_*mb_*m_*nb_*n_*
119 descaa( i ) = desca( i )
120 descbb( i ) = descb( i )
128 ictxt = descb( ctxt_ )
129 CALL pzgemr2d( 1, n, a, ia, ja, descaa, b, ib, jb, descbb, ictxt )
131 CALL blacs_gridinfo( ictxt, nprow, npcol, myrow, mycol )
132 nq = numroc( n, descb( nb_ ), mycol, 0, npcol )
134 IF( myrow.EQ.0 )
THEN
135 CALL zgebs2d( ictxt,
'C',
' ', nq, 1, b, nq )
137 CALL zgebr2d( ictxt,
'C',
' ', nq, 1, b, nq, 0, mycol )