[petsc-users] Fwd: How to adapt vectors to matrices loaded from a viewer
Junchao Zhang
junchao.zhang at gmail.com
Fri Apr 20 16:08:05 CDT 2018
(resend from my gmail)
In a PETSc example (ex10.c
<http://www.mcs.anl.gov/petsc/petsc-current/src/ksp/ksp/examples/tutorials/ex10.c.html>)
one MatLoad A and then VecLoad b from a viewer. Since one can change mat
block size through option -matload_block_size, the code tries to pad b if A
and b's sizes mismatch, using the following test
186: MatGetSize(A,&M,NULL);
187: VecGetSize(b,&m);
188: if (M != m) { /* Create a new vector b by padding the old one */
I think the code is wrong. One has to compare local column size of A and
local size of b, and if there is a mismatch on ANY processor, then one has
to create a new b.
My questions are: Are users supposed to take this complexity? Does PETSc
provide a neat way to do that, for example, MatVecLoad(A,b,viewer)
Thanks.
--Junchao Zhang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20180420/2897f60a/attachment.html>
More information about the petsc-users
mailing list