menu
Anh-Thi DINH

Ghost penalty

Posted on 22/06/2018, in PhD.

Đem từ mấy cái file khác sang hẳn đây vì nó nhiều thứ để nói

Tại sao phải cần ghost penalty?

Cái này được nói trong file burman2010-ghost penalty.pdf.

In fictitious domain methods (see [5] or for more recent work [2,7,8]) one is often faced with the choice of either

  • integrating the equations over the whole computational mesh, i.e. also in the non-physical part, or
  • only integrate within the physical domain.

In the first case the method is robust, but inaccurate due to the lack of consistency.

Methods using the second approach, on the other hand, are accurate, but the condition number of the finite element matrix depends on how the domain boundary cuts the mesh. If the cut results in elements with very small intersections with the physical domain, the system matrix may be very ill-conditioned, as we show below.

References

  • Burman2014 thì nói nhiều về kỹ thuật và ứng với nhiều loại domain, còn bài báo Burman2009 thì giải thích tại sao khi thêm ghost penalty này thì condition number lại không phụ thuộc vào cách interface cắt mesh.
  • How conditioning of the matrix doesn’t depend on the way interface cuts triangles, cf. Burman2009. They way we can construct a normal vector used in the formulas
  • Lehrenfeld2015 (3.4.2) : a small introduction and some comments on this
  • There is an example in detail with Capatina2015
  • Burman2010 Note ghi chú chủ đề chính là ghost penalty luôn!
  • ghost penalty term (trang 8, ở đây)
  • Trong Liang Zhang THESIS 2017.pdf mục 5.4.2 cũng có dùng Ghost penalty, ông này cũng có nói về small support nữa, ổng làm với Arnold. Ổng cũng có so sánh 2 cái. Cái ghost penalty performs better!

Ý tưởng chính

Xem 2.2 trong bài báo của Burman2014. Cái này mình có ghi chú lần đầu trong quyển ghi chú 2. Trong form $a_h(u,v)=(f,v)$ thì $a_h(u,v)$ thêm một lượng $j(u,v)$

Trong đó $\mathcal{F}_G$ : element faces associated with $G_h$ = all elements that cut by the interface.

$n_F$ = unit normal to face $F$ with fixed but arbitary orientation. The boundary faces of the mesh $\mathcal{T}_h$ are excluded from $\mathcal{F}_G$. Cái $j(u,v)$ ở trên là dành cho model với fictitious domain.

Có thể xem định nghĩa đầy đủ và toán học của $\mathcal{F}_G$ trong Burman 2011 trang 275.


Cần chứng minh $a_h(u,u) + j(u,u) \ge C \Vert u \Vert_h^2$, trong đó $a_h$ chứa $\int_{\Omega}$ còn $\Vert \cdot \Vert_h$ chứa $\int_{\Omega_T}$. Cái sau contains part of triangles outside $\Omega$. Do đó cần $j(\cdot,\cdot)$ to recover coercivity of the part of the triangles that are not in $\Omega$


Trong Note của Lehrenfeld có giải thích ý tưởng cho ghost penalty của Burman khá hay, trang 48.

Remark 3.5 (Ghost penalty for Nitsche-XFEM). In the context of interface problem the “ghost penalty” stabilization is interesting in cases where the weights of the averaging operator should be significantly different from the hansbo -choice, for instance for large contrast problems (see [BZ12]). In this case the Nitsche-XFEM discretization lacks stability (and suffers from arising ill-conditioned linear systems). By adding the “ghost penalty” stabilization the averaging operator is freed from the constraint that has been necessary to ensure stability (essentially (3.27)).

Remark 3.7 (Conditioning). The Ghost penalty method ensures that conditioning of the resulting system matrix is well-behaved. This holds true for boundary and interface problems. Note that even for the interface problem with the hansbo -averaging (where stability is not a problem) the resulting system matrix is ill-conditioned. In contrast to the boundary problem this can however be easily fixed by suitable preconditioning strategies which is discussed in the next section.


[Burman 2011] The idea of such stabilisation methods is to introduce in the discrete formulation a minimum of artificial diffusion to ensure the positivity of the discrete bilinear form for any configuration of the boundary or interface.

Ý tưởng code

Xem thêm trong file coding node (nxfem_matlab_algorithm.pdf) và note này, ở đây muốn nói thêm vài ý chính.

Ghost penalty không có xét các cạnh biên. Cái này được nói đến trong file stabilized nistche method Hansbo Burman 2009.pdf. Trong code của mình cũng không xét các cạnh biên này, điều này làm được bằng cách lúc lấy eGP từ eNBCTs, chỉ xét các cạnh mà có sự xuất hiện hai lần, tức là các cạnh đó là cạnh chung của hai tam giác trong khi các cạnh biên thì chỉ có 1 lần xuất hiện thôi. Cụ thể là ở dòng code

eGP = eNBCTs(:,posF); % contain triangle K

Thật ra ý tưởng không xét cạnh biên nó là xét các cạnh thỏa nó là giao của hai tam giác. Các cạnh biên chỉ thuộc 1 tam giác nên không lấy. Cái ý này đọc ở note của Lehrenfeld trang 48 pdf.

Fictitious domain

Fictitious domain (hiểu) : Là một domain bình thường $\Omega$ nhưng biên của nó có thể “co giãn” và thay đổi được. Có thể xem interface thì là phân biệt hai miền $\Omega_i$ thì fictitious domain này có $\partial \Omega$ đóng vai trò giống như interface nhưng không có phân biệt rõ hai miền.

Mesh $\mathcal{T}_h$ to hơn và bao phủ luôn cái $\Omega$, cái ghost penalty terms act also on the part of the elements that are outside the domain.

Cái này nói nhiều trong bài báo Burman2009. Trong đây có nói $C_P$ cũng phụ thuộc vào $\Gamma$ nhưng không có phụ thuộc vào cách $\Gamma$ cắt the mesh. Do trong phương trình không có $K_i$ so với $K$. Do đó có thể control condition under a good bound.

Cách làm

Trong bài báo Burman2014 thì tác giả miêu tả các thức để có thể tính lượng $j(u,v)$. Ta không xét các edges ở rìa ngoài của $\Omega_i$, nghĩa là vẫn xét các cạnh rìa trong không bị cắt bởi interface. Nhưng trong bài báo Capatina2015 thì ổng lại bảo chỉ xét các edges bị cắt bởi interface thôi, nghĩa là không có xét các cạnh ko bị cắt!

$\Rightarrow$ Do hai pp này cơ bản là khác, 1 cái làm việc trên conforming, 1 cái làm việc với non-conforming FEM (có thêm lượng jum qua edge) nên sẽ làm theo cách của Burman!!!

Trong note của Lehrenfeld2015 cũng có nói về cái ghost này, cái này cũng lấy ý tưởng từ Burman thôi! Mục 3.4.2.

Có sự khác nhau lớn giữa ý tưởng ghost penalty của Capatina2015 và của Burman2014. Cái sau thì chỉ cần cộng thêm lượng $j_i(u,v)$ vào $a_h(u,v)$ là xong. Nhưng cái đầu thì nó cộng thêm lượng $A_h$ nữa, lượng này là 2 terms tính trên các cạnh bị cắt

Được cái bài báo Capatina2015 nếu khá chi tiết các thông số cụ thể cho các parameters.

Nonconforming NXFEM with ghost penalty

Có nói ở phần trước rồi. Cái nonconforming này nói trong bài báo **Capatina2015 ** (của El-Otmany), đại ý thế này

  • nonconfotming là có thể không liên tục qua các edges, có thêm lượng $\int_e[v]=0$ qua các edge trong cách định nghĩa không gian $V_h$.
  • Còn của Hansbo là không liên tục qua $\Gamma$ chứ vẫn liên tục qua các edges (conforming).
  • discrete form khác, cái này có cộng thêm lượng $A_h$ (bên dưới) vào bilinear nữa, ngoài cái penalty và ghost penalty. Tức là

trong đó,

Note about parameters

Được nói đến ở cuối mục 3.1 bài báo cutfem discretizing geometry and pde hansbo burman 2014 .pdf.

Another important observation is that for the discretization using ghost penalty and weights depending only on the diffusion, preconditioning the system matrix using diagonal scaling with $\alpha_1, \alpha_2$ leads to a system whose condition number is independent of both the mesh/boundary intersection and the contrast in the diffusion (for details, see [35]). Note that the use of the weights (4) and the penalty parameters (6) or (7) do not allow a similar robust limit formulation.

Hiểu là: Với ghost penalty terms thì lựa chọn $\kappa_i$ chỉ ở dạng đơn giản thôi cũng được. Còn ở dạng phức tạp (có cả $K_i$) thì không có tác dụng về mặt condition number!!! Trong bài báo này cũng giải thích thêm là cai1 dạng phức tạp chỉ có tác dụng “trị” large contrast problem mà thôi, ko có tác dụng về mặt small cut. Đây cũng là motivation của ghost penalty!!!

  • Ghost penalty thì nên dùng với choice
  • KHÔNG NÊN dùng với choice (chỉ giải quyết được vấn đề large contrast - $\alpha_2$ quá khác so với $\alpha_2$ mà không giải quyết được cái small support)
Top