On Tue, Nov 18, 2025 at 11:12 AM Blauth, Sebastian < [email protected]> wrote:
> Dear PETSc developers and users, > > > > I have a question regarding the Fieldsplit preconditioner in PETSc. In > particular, I want to know how the submatrices there are created from the > parent matrix. The “obvious” way would be to take the DoF indices of the > corresponding split and “renumber” them so that the DoFs in the submatrix > have the same order as the ones of the parent matrix. I did not find any > documentation on this and as it is at least possible that the DoFs are > re-ordered, I wanted to ask this question. Obviously, in case the DoFs are > re-ordered, how can I get the mapping between the DoFs of the parent and > the submatrix? > Hi Sebastian, Inside, we call MatCreateSubmatrix(), which takes an IS on each process, and selects those global rows, in the order in which they appear in the IS, into a new parallel matrix. PCFieldsplitSetIS() can be used to specify those IS, so you can control the reordering. Does that make sense? > The thing I am wanting to work on is implementing a pressure convection > diffusion preconditioner with FEniCS for the incompressible Navier-Stokes > equations. > The parent matrix is assembled via a mixed FEM and then I use PETSc to > solve the system. I want to assemble the corresponding operators on the > pressure space from a collapsed (i.e. sub-space of the mixed FEM) function > space. However, FEniCS re-orders the DoFs there, but I can get a mapping > between the DoFs so this should not be problematic. However, I am not sure > if PETSc also does a re-ordering. > You can just create an IS with that reordering. What operator are you planning on assembling on the pressure space? Have you seen https://urldefense.us/v3/__https://arxiv.org/abs/1810.03315?__;!!G_uCfscf7eWS!ZFlvrtpVlFuXdYWcwujVNh1WjnSmuEKqsh1s3GCYbyN0_wNsVgBaJo3x-lWG3Iea3iQhp_iniM9QzDSr9iD3$ Thanks, Matt > Thanks a lot in advance and best regards, > > Sebastian > > > > -- > > Dr. Sebastian Blauth > > Fraunhofer-Institut für > > Techno- und Wirtschaftsmathematik ITWM > > Abteilung Transportvorgänge > > Fraunhofer-Platz 1, 67663 Kaiserslautern > > Telefon: +49 631 31600-4968 > > [email protected] > > https://urldefense.us/v3/__https://www.itwm.fraunhofer.de__;!!G_uCfscf7eWS!ZFlvrtpVlFuXdYWcwujVNh1WjnSmuEKqsh1s3GCYbyN0_wNsVgBaJo3x-lWG3Iea3iQhp_iniM9QzNhlmkaU$ > > <https://urldefense.us/v3/__https://www.itwm.fraunhofer.de/__;!!G_uCfscf7eWS!f_qaoCRxX3prMgl6ev5fvSFQegVfZo84xW9eJTz7uYmLjZiyJFIlm1tlqYrM3LqjOpkEoMrIJZo6J63-23-atPBnJn4et_4R-UvZoWlBpHM$> > > > -- What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead. -- Norbert Wiener https://urldefense.us/v3/__https://www.cse.buffalo.edu/*knepley/__;fg!!G_uCfscf7eWS!ZFlvrtpVlFuXdYWcwujVNh1WjnSmuEKqsh1s3GCYbyN0_wNsVgBaJo3x-lWG3Iea3iQhp_iniM9QzGRu26U1$ <https://urldefense.us/v3/__http://www.cse.buffalo.edu/*knepley/__;fg!!G_uCfscf7eWS!ZFlvrtpVlFuXdYWcwujVNh1WjnSmuEKqsh1s3GCYbyN0_wNsVgBaJo3x-lWG3Iea3iQhp_iniM9QzPGY9jGb$ >
