Hi, I am trying to find the function you commented, DMPlexCreateInterpolator(), from DMPlex manual page, but I do not think this function is visible. Any comment about this? Thanks,
> On Fri, Jul 8, 2022 at 11:26 PM Mike Michell <[email protected]> > wrote: > >> I am using DMPlex for a code with written in Fortran in 2D and 3D. There >> were two questions. >> >> - As a follow up of the previous inquiry: >> https://www.mail-archive.com/[email protected]/msg43856.html >> Is the local-to-local halo exchange available in Fortran now or still >> pending? Currently local-to-global and global-to-local communication are >> used since local-to-local has not been allowed for Fortran. >> > > Sorry, it is still on my TODO list. I am trying to get stuff cleared out. > > >> - One code solves discretized equations at each vertex, and another code >> I want to couple physics is solving equations at each cell centroid. >> Basically, the value at cell centroid needs to be mapped to vertex (or vice >> versa) through interpolation/extrapolation for coupling of two codes. Does >> petsc function provide this kind of mapping between cell centroid and >> vertex? The grids for the two codes can be overlapped. I was trying to find >> some FEM infrastructures in petsc, but so far havent found that kind of >> functionality. Can I get any comments on that? >> > > Yes, you can create both P0 and P1 discretizations (PetscFECreateLagrange) > in two different DMs using DMClone(), and then create an interpolation > operator (DMPlexCreateInterpolator) which maps between them. Let me know if > something is not clear there. > > Thanks, > > Matt > > >> Thanks, >> Mike >> >> > > -- > 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://www.cse.buffalo.edu/~knepley/ > <http://www.cse.buffalo.edu/~knepley/> >
