Is there classical XFEM examples available

Asked by Xujun Zhao

In classical XFEM, there are two typical problems: weak discontinuity ( Eshelby's problem, inclusion/matrix with eigenstrains ) and strong discontinuity (cracks). I am curious why there are no such demo examples from this library. Can we do that with the codes? I am especially interested in the first one that inclusion and matrix have different material properties.

Question information

Language:
English Edit question
Status:
Answered
For:
PUM library Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Mehdi Nikbakht (m-nikbakht) said :
#1

The current implementation of the PUM library only supports strong discontinuities on which solutions shows jumps. Inside PUM class, we have used the Heaviside function as enrichment functions and we have assumed that discontinuities end up in the cell facets (no tip enrichment).

To support weak discontinuities, you need to derive a class from GenericPUM to support other enrichment functions (like level set). You may also need to support discontinuous Quadrature elements to consider different material properties in each side of discontinuities (As a temporary solution, you can manually modify the generated code to support different material properties on quadrature points on the elements crossed by discontinuities).

Revision history for this message
Xujun Zhao (xzhao99) said :
#2

If I derive another class, like level set, to support weak discontinuity and different material properties, It seems to me that I have to modify ffcpum scripts to enable the numerical quadratures in the enriched element. am I right? I think the current pum library also doesn't implement numerical integration, instead it is done in the ffc-pum scripts.

Revision history for this message
Mehdi Nikbakht (m-nikbakht) said :
#3

In order to define discontinuous QuadratureElement, ffcpum needs to be modified. I have created a blueprint for it in the PUM form compiler page.

https://blueprints.launchpad.net/ffc-pum/+spec/discontinuous-quadrature-element

However, i can't promise that this will be implemented in near future. You are welcome to try to implement it.

As a temporary solution (hack), you can define a constant function for the material property and compile your form. Then you can manually modify the generated code to have different values based on the position of the quadrature point w.r.t. discontinuity surface.

Can you help with this problem?

Provide an answer of your own, or ask Xujun Zhao for more information if necessary.

To post a message you must log in.