subroutine cpllhs (lftblk, nrwtop, nrwblk, rgtblk, nrwbot) c double precision lftblk(1), rgtblk(1) integer nrwtop, nrwblk, nrwbot c ***----------------------------------------------------------*** c * On input, lftblk and rgtblk are assumed to be of * c * dimension nrwtopxnrwblk and nrwbotxnrwblk, respectively. * c * During repacking, nrwbot rows of zero are appended to * c * the bottom of lftblk and nrwtop rows of zero are inserted * c * at the top of rgtblk. On output, lftblk and rgtblk are * c * both of dimension nrwblkxnrwblk. * c ***----------------------------------------------------------*** integer k c ***----------------------------------------------------------*** c * Repack lftblk. * c ***----------------------------------------------------------*** do 10 k = nrwtop*nrwblk, nrwtop+1, -1 lftblk(k+((k-1)/nrwtop)*nrwbot) = lftblk(k) 10 continue do 20 k = 1, nrwbot*nrwblk lftblk(k+(1+(k-1)/nrwbot)*nrwtop) = 0.d0 20 continue c ***----------------------------------------------------------*** c * Repack rgtblk. * c ***----------------------------------------------------------*** do 30 k = nrwbot*nrwblk, 1, -1 rgtblk(k+(1+(k-1)/nrwbot)*nrwtop) = rgtblk(k) 30 continue do 40 k = 1, nrwtop*nrwblk rgtblk(k+((k-1)/nrwtop)*nrwbot) = 0.d0 40 continue return end