[petsc-users] Nullspaces

Marco Cisternino marco.cisternino at optimad.it
Tue Dec 7 10:19:33 CST 2021

Good morning,
I'm still struggling with the Poisson equation with Neumann BCs.
I discretize the equation by finite volume method and I divide every line of the linear system by the volume of the cell. I could avoid this division, but I'm trying to understand.
My mesh is not uniform, i.e. cells have different volumes (it is an octree mesh).
Moreover, in my computational domain there are 2 separated sub-domains.
I build the null space and then I use MatNullSpaceTest to check it.

If I do this:
MatNullSpaceCreate(getCommunicator(), PETSC_TRUE, 0, nullptr, &nullspace);
It works

If I do this:
Vec nsp;
VecDuplicate(m_rhs, &nsp);
VecNormalize(nsp, nullptr);
MatNullSpaceCreate(getCommunicator(), PETSC_FALSE, 1, &nsp, &nullspace);
It does not work

Probably, I have wrong expectations, but should not it be the same?


Marco Cisternino, PhD
marco.cisternino at optimad.it<mailto:marco.cisternino at optimad.it>
Optimad Engineering Srl
Via Bligny 5, Torino, Italia.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20211207/b040a970/attachment-0001.html>

More information about the petsc-users mailing list