<div dir="ltr"><div dir="ltr"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
[0] PCSetCoordinates() line 1883 in <br>
/home/yoda/wern_mc/Programme/Anaconda/envs/GSA_27/weitere_programme/petsc-3.10.0/src/ksp/pc/interface/precon.c<br>
[0] PCSetCoordinates_AGG() line 199 in <br>
/home/yoda/wern_mc/Programme/Anaconda/envs/GSA_27/weitere_programme/petsc-3.10.0/src/ksp/pc/impls/gamg/agg.c<br>
[0] Petsc has generated inconsistent data<br>
[0] Don't know how to create null space for ndm=2, ndf=4. Use <br>
MatSetNearNullSpace.<br><br></blockquote><div><br></div><div>You have more important things to deal with but PCSetCoordinates is just for elasticity, where the null space can be constructed from the coordinates. As the message says you need to use MatSetNearNullSpace, which means that you need to create the null space manually.</div><div><br></div><div>You seem to have a 2D problem and 4 dof/cell. For pressure and density you can use a vector of all 1.0. For the velocity you put the rotational mode, the x translation, and the y translational mode. So 5 vectors total.</div><div><br></div><div>MatNullSpaceCreateRigidBody is a helper function that can create the three rigid body modes for you (same process as PCSetCoordinates), then use that with the two trivial 1 vectors to get a 5 field null space.</div><div><br></div></div></div></div>