Hi

I am having trouble with static condensation when a facet-BND BFI is used.

In the attached code, HDG is used to solve Poisson equation with 1 Neumann bc.

I artifically increase the stab parameter by a factor of 2 on the Neumann boundary with the following command,

a += SymbolicBFI(alpha*order**2/h*jump_u*jump_v, BND, skeleton=True)

The local solver in the static condensation implementation seems not seeing this BFI, and produce a wrong solution (comparing with condensation=False).

Best,

Guosheng

Attachment: testBND.py

Dear Guosheng,

Static condensation of inner unknowns is only provided for (the sum of) element-based integrals, i.e. standard volume integrals or element_boundary integrals.

For skeleton-based integrals (i.e. loops over facets) the general assumptions on the couplings prohibits an element-wise static condensation.

For the specific case that you mean hear, the integrals could theoretically be added to the element-wise integrals and thus allow for static condensation. But that is not how it is implemented right now. It is treated as a “skeleton”-integral and his hence not considered during static condensation.

To fix your problem make sure to implement your integrals as element_boundary integrals.

Best,

Christoph

i see!

i will try to put everything in element boundary formulation… it should be easy to do with the help of a facet dg p0 space.

thanks fotr the clarification