Dear Jakob, 

your testcase is precisely one of the reasons why FECouplingValues was created. 
You should build a function that, given two cells, it returns the three 
vectors: 

x, y, w

which you can then use as inputs to the FECouplingValues. Notice that 
FECouplingValues won’t help you with the reorientation of the cells/weights. 
You will have to do this yourself. FECouplingValues will help you later, once 
you have the points and weights.

Wenyu Lei had this implemented for triangles, if I recall correctly, using 
exactly the reference you pointed to, but I’m not finding the repository where 
this is committed now. Maybe Wenyu can chime in?

L.




> Il giorno 2 dic 2025, alle ore 15:04, Jakob Nielsen <[email protected]> ha 
> scritto:
> 
> Dear deal.II community
> 
> I have attempted to implement a Galerkin BEM method by adapting the 
> collocation method in Step-34. This first implementation is quite crude. I 
> compute the singular integrals over identical elements i.e.
>         int_T1 psi(x) int_T1 phi(y) G(x,y) dy dx
> by wrapping the existing QGaussOneOverR in an outer loop over a QGauss 
> quadrature. In all other cases I use a tensor QGauss quadrature. Although 
> slow, the method does converges. However, I do not observe higher-order 
> convergence when increasing the order of the basis functions. I assume this 
> is due to the poor handling of the singular and near singular integrals.
> 
> I now want to improve this method focusing on the 3D problem with 
> quadrilateral elements. The plan is to use one quadrature for the double 
> integral itself through a series of coordinate transforms as proposed in [2, 
> Sec 5.2]. Note that this is also the approach taken in BEM++ [1]. This method 
> provides four different integration schemes (x_i,y_i,w_i), corresponding to 
> the different cases
>     • T1 and T2 are identical.
>     • T1 and T2 share an edge, i.e. T1(s,0) = T2(s,0).
>     • T1 and T2 share a vertex, i.e. T1(0,0) = T2(0,0).
>     • T1 and T2 do not overlap.
> In each case, the quadrature can be evaluated as
>         sum_i w_i tilde(psi)(x_i) tilde(phi)(y_i) tilde(G)(x_i,y_i).
> 
> While reading the documentation, I came across FECouplingValues, which seems 
> intended to support this type of element pair integration. However, I am 
> struggling to understand how to practically handle the different geometric 
> cases (identity, shared edge, shared vertex) and the required rotations 
> within this framework.
> 
> Concretely, I would appreciate pointers on the following:
>     • Is FECouplingValues the right tool for implementing these four 
> quadrature cases for Galerkin BEM?
>     • If so, is the intended workflow to explicitly construct paired 
> (x_i,sqrt(w_i)) and (y_i,sqrt(w_i)) for each case (and possibly for each 
> rotation), and then instantiate FECouplingValues separately for each 
> configuration? This seems rather heavy, and I am wondering if there is a 
> cleaner approach.
>     • Do you know of any examples or code fragments in deal.II (or user 
> projects) that implement Galerkin BEM?
> References:
> [1] BEM++ Documentation, http://www.bempp.org/quadrature.html
> [2] Sauter and Schwab, Boundary Element Methods, 2011
> 
> Best regards,
> Jakob 
> 
> -- 
> The deal.II project is located at http://www.dealii.org/
> For mailing list/forum options, see 
> https://groups.google.com/d/forum/dealii?hl=en
> --- 
> You received this message because you are subscribed to the Google Groups 
> "deal.II User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion visit 
> https://groups.google.com/d/msgid/dealii/a96009fc-7f70-4cba-adc6-dfbfe7168593n%40googlegroups.com.

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/dealii/9D5C511E-F823-4A34-8A96-E6AA3BD1E86D%40gmail.com.

Reply via email to