Changed to allow summing multiple entities.

psblas3-type-indexed
Salvatore Filippone 21 years ago
parent bf754a9274
commit 6860f244cc

@ -173,7 +173,7 @@ subroutine psb_dins(m, n, x, ix, jx, blck, desc_a, info,&
! this row belongs to me ! this row belongs to me
! copy i-th row of block blck in x ! copy i-th row of block blck in x
do col = 1, n do col = 1, n
x(loc_row,jx+col-1) = blck(iblock+i-1,jblock+col-1) x(loc_row,jx+col-1) = x(loc_row,jx+col-1) + blck(iblock+i-1,jblock+col-1)
enddo enddo
end if end if
enddo enddo
@ -363,7 +363,7 @@ subroutine psb_dinsvm(m, x, ix, jx, blck, desc_a,info,&
if (loc_row.ge.1) then if (loc_row.ge.1) then
! this row belongs to me ! this row belongs to me
! copy i-th row of block blck in x ! copy i-th row of block blck in x
x(loc_row,jx) = blck(iblock+i-1) x(loc_row,jx) = x(loc_row,jx) + blck(iblock+i-1)
end if end if
enddo enddo
@ -541,13 +541,13 @@ subroutine psb_dinsvv(m, x, ix, blck, desc_a, info,&
if (loc_row.ge.1) then if (loc_row.ge.1) then
! this row belongs to me ! this row belongs to me
! copy i-th row of block blck in x ! copy i-th row of block blck in x
x(loc_row) = blck(iblock+i-1) x(loc_row) = x(loc_row) + blck(iblock+i-1)
end if end if
enddo enddo
else if (liflag == psb_upd_loc_) then else if (liflag == psb_upd_loc_) then
k = min(ix+m-1,loc_rows) k = min(ix+m-1,loc_rows)
do i=ix,k do i=ix,k
x(i) = blck(i-ix+1) x(i) = x(i) + blck(i-ix+1)
enddo enddo
else else
info=-1 info=-1

@ -173,7 +173,7 @@ subroutine psb_iins(m, n, x, ix, jx, blck, desc_a, info,&
! this row belongs to me ! this row belongs to me
! copy i-th row of block blck in x ! copy i-th row of block blck in x
do col = 1, n do col = 1, n
x(loc_row,jx+col-1) = blck(iblock+i-1,jblock+col-1) x(loc_row,jx+col-1) = x(loc_row,jx+col-1) + blck(iblock+i-1,jblock+col-1)
enddo enddo
end if end if
enddo enddo
@ -296,7 +296,7 @@ subroutine psb_iinsvm(m, x, ix, jx, blck, desc_a, info,&
if (loc_row.ge.1) then if (loc_row.ge.1) then
! this row belongs to me ! this row belongs to me
! copy i-th row of block blck in x ! copy i-th row of block blck in x
x(loc_row,jx) = blck(iblock+i-1) x(loc_row,jx) = x(loc_row,jx) + blck(iblock+i-1)
end if end if
enddo enddo
@ -463,7 +463,7 @@ subroutine psb_iinsvv(m, x, ix, blck, desc_a, info,&
if (loc_row.ge.1) then if (loc_row.ge.1) then
! this row belongs to me ! this row belongs to me
! copy i-th row of block blck in x ! copy i-th row of block blck in x
x(loc_row) = blck(iblock+i-1) x(loc_row) = x(loc_row) + blck(iblock+i-1)
end if end if
enddo enddo

@ -173,7 +173,7 @@ subroutine psb_zins(m, n, x, ix, jx, blck, desc_a, info,&
! this row belongs to me ! this row belongs to me
! copy i-th row of block blck in x ! copy i-th row of block blck in x
do col = 1, n do col = 1, n
x(loc_row,jx+col-1) = blck(iblock+i-1,jblock+col-1) x(loc_row,jx+col-1) = x(loc_row,jx+col-1) + blck(iblock+i-1,jblock+col-1)
enddo enddo
end if end if
enddo enddo
@ -363,7 +363,7 @@ subroutine psb_zinsvm(m, x, ix, jx, blck, desc_a,info,&
if (loc_row.ge.1) then if (loc_row.ge.1) then
! this row belongs to me ! this row belongs to me
! copy i-th row of block blck in x ! copy i-th row of block blck in x
x(loc_row,jx) = blck(iblock+i-1) x(loc_row,jx) = x(loc_row,jx) + blck(iblock+i-1)
end if end if
enddo enddo
@ -541,13 +541,13 @@ subroutine psb_zinsvv(m, x, ix, blck, desc_a, info,&
if (loc_row.ge.1) then if (loc_row.ge.1) then
! this row belongs to me ! this row belongs to me
! copy i-th row of block blck in x ! copy i-th row of block blck in x
x(loc_row) = blck(iblock+i-1) x(loc_row) = x(loc_row) + blck(iblock+i-1)
end if end if
enddo enddo
else if (liflag == psb_upd_loc_) then else if (liflag == psb_upd_loc_) then
k = min(ix+m-1,loc_rows) k = min(ix+m-1,loc_rows)
do i=ix,k do i=ix,k
x(i) = blck(i-ix+1) x(i) = x(i) + blck(i-ix+1)
enddo enddo
else else
info=-1 info=-1

Loading…
Cancel
Save