On Sun, 10 Jun 2007, Ben Tay wrote:
> Hi, > > I need to insert values into a matrix and then solve this poisson eqn as > part of my cfd code. For efficiency sake, I simply use > > "do j=1,size_y > > do i=1,size_x > > matsetvalue .... > > end do > > end do" > > to insert values into all the cells > > Then for specific cells, I need to enter some other values. In other words, > for specific rows of the matrix, I need to zero the whole row and insert new > values. How can I do that? > > I tried to use MatZeroRows but it says it's not for unassembled matrix. But > I need to zero the particular row, insert values, and then finally assembly > it. Is there a command to do this? matassemblybegin/end matzerorows matsetvalues, matsetvalues, matsetvalue matssemblybegin/end For improved efficiency you will want to call MatSetOption(mat,MAT_KEEP_ZEROED_ROWS); before the matzerorows() > > Thanks >
