Flux jump across internal interface for DRT elements

I haven’t found a good answer on this, but I was wondering if it would be possible to use a potential jump (i.e. jump(u)) across an internal boundary, in place of a flux jump, when using DRT elements in a mixed formulation, as they are discontinuous. I’m not really sure how this would be handled, but I’ve been playing around with this example. I’m new to RT elements and I’m trying to get an intuition for how they work.


Not sure about DRT, but to specify jump on an internal boundary, you have to mark it with an unsigned int at the first place. Then, if you’ve initialized the measure dS with the facet IDs, now you can do jump form specifically on internal boundary as:

An example is assume you want to penalize gradient jump on internal boundary ID 5, you can do:

dS = Measure('dS', domain=mesh, subdomain_data=boundaries)
dot(jump(grad(test)), jump(trial)) * dS(5)

Note, that if 5 is not specified beforehand, this term will be an empty form so there’ll be nothing happening.


Hi Victor–thanks for your suggestion about using DG. I’d been working with DG elements for drift-diffusion systems, and I was running into problems, so I wanted to try out DRT elements for my problem. I have an internal interface still on which I want to impose a jump condition, but I wasn’t sure if there is a way to handle jump terms in DRT.