[petsc-dev] DMPLEX cannot support two different edges for the same two vertices, hence DMPLEX cannot?

Jed Brown jed at jedbrown.org
Wed Dec 1 17:55:36 CST 2021

Matthew Knepley <knepley at gmail.com> writes:

> On Wed, Dec 1, 2021 at 5:17 PM Abhyankar, Shrirang G <
> shrirang.abhyankar at pnnl.gov> wrote:
>> “You can certainly have many fields on a given edge, but I don't know
>> what it would mean to have two edges since no topological query could tell
>> the difference.”
>> The two edges in a power grid represent two parallel power lines that are
>> connected between two locations (vertices). There are line ids (stored in
>> the component data) to distinguish the two lines.
> Yes, so you can tell the difference in the function space (since difference
> current passes down each one), but _topologically_ you cannot. If you put
> duplicate cells in, then
> some topological queries will give unexpected results, like the join of the
> two vertices.

This could be modeled with some ghost vertices. So instead of

  a ------ b

you would set up

  a ---o---- b

Those ghost vertices don't have to "do" anything, but they make the edges topologically distinct.

Shri, what problems might this cause?

More information about the petsc-dev mailing list