Thanks! On a similar note, is it possible to define data on faces of a parallel (distributed) dmplex? I have seen the example particular to finite volume methods. But the examples I am building are block-spectral where each element has a higher order polynomial running (much like spectral element methods without the nuisance to separate edge modes and nodal modes). What I am interested in is,
1. Define face data with multiple DOFs. 2. A quick way of exchanging this face data between processors for calculating fluxes. I have written all of this by hand already. Just wanted to check and compare if dmplex would offer some performance improvement. Additionally, petscFV could be extended to petscSD (SD stands for spectral difference), where finite volume implementation is the zeroth order special case. Thank you. Sincerely, Prateek Gupta, PhD On Fri, Jul 15, 2022 at 5:43 PM Matthew Knepley <[email protected]> wrote: > On Fri, Jul 15, 2022 at 7:08 AM Prateek Gupta <[email protected]> > wrote: > >> Hi, >> Is it possible to generate data using PetscSection with varying degrees >> of freedom? I am building a sample example on a mixed grid (with both >> hexahedra and tetrahedra) and thinking if it is possible to generate the >> face data using PetscSection (or something else) on the resulting. The quad >> faces have p*p data points and tri faces have p*(p-1)/2 data points. >> > > Yes, you can set the size to whatever you want using > > PetscSectionSetDof() > PetscSectionSetFieldDof() > > The DMPlexCreateSection() routine is overly simplistic here since I assume > all k-cells have the same layout. > > Thanks, > > Matt > > >> Thank you. >> Sincerely, >> Prateek Gupta, PhD >> > -- > 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/> >
