[petsc-dev] Master broken after changes to PetscSection headers
Jed Brown
jed at jedbrown.org
Thu Sep 19 11:22:58 CDT 2019
Stefano Zampini <stefano.zampini at gmail.com> writes:
> So, for example, including petscmat.h we get all the constructors,
> including "petscdm.h" we don't get DMPlexCreate... (BTW, this should
> spelled DMCreatePlex if we follow the Mat convention....)
That's a legacy convention for DM. There is a usage difference in that
anyone calling DMPlexCreate will also call lots of other DMPlex*
functions, but a caller of MatCreateAIJ may not call any MatAIJ*
functions. I don't personally care whether DMPlexCreate is changed to
DMCreatePlex.
> If we plan to do any change, we should do it right before a release. Making
> it after, it will be a pain managing maint fixes and merges to master.
>
> I'm of the opinion that "petsc.h" should expose everything PETSc offers,
> including API. But what about "petscksp.h" for example? Should it only
> expose its *types.h dependencies? or the full API for all the objects down
> the hierarchy? (PC,Mat,Vec,IS etc)?
I would prefer only the *types.h, but that's a very disruptive change.
More information about the petsc-dev
mailing list