[petsc-users] Vec Set DM and Mat Set DM

Sun, Hui hus003 at ucsd.edu
Sat Jun 21 18:35:47 CDT 2014


I was reading examples about MatSetValuesStencil and MatSetValuesBlockStencil, I cannot see any difference. Why would recommend MatSetValuesBlockedStencil please? 

It seems that there are many examples about MatSetValuesStencil but the only example about MatSetValuesBlockedStencil is snes/.../ex48. 

Hui


________________________________________
From: Jed Brown [jed at jedbrown.org]
Sent: Saturday, June 21, 2014 3:43 PM
To: Sun, Hui; petsc-users at mcs.anl.gov
Subject: RE: [petsc-users] Vec Set DM and Mat Set DM

"Sun, Hui" <hus003 at ucsd.edu> writes:

> If I have a DM object with dof=3. So in each grid point, there are 3 components. Now if I set a Mat according to this DM object, I have something like:
> MatSetValuesStencil(jac,1,&row,5,col,v,INSERT_VALUES);
>
> What shall I put in col? Usually I should have something like:
> col[0].i = i;   col[0].j = j-1;   col[1].i = i;   col[1].j = j;   etc  ...
>
> But now I want to do something like:
> col[0].i.u = i;   col[0].j.u = j-1;   col[0].i.v = i;   col[0].j.v = j-1;   col[0].i.p = i;   col[0].j.p = j-1;   etc  ...

MatStencil has col[0].c = 0 {1,2,...}, but I recommend using
MatSetValuesBlockedStencil() if possible.


More information about the petsc-users mailing list