Contact Mechanics

Dear all,

I am new to fenics so I apologize if my questions are too basic. I was wondering if it is possible to use fenics for structural contact mechanics.

As an example let’s say that we have a beam of 1x1x5m in dimension that consists of five blocks-cubes (each of them has dimension 1x1x1m). The left and right (1st and 5th) blocks of the ‘beam’ are fixed and a force is applied in the center of the central block (3rd block). This means that we are dealing with a highly nonlinear time-depended problem. The friction applied between the blocks is the main variable that will affect the accuracy of the model.
That said, I expect that the model will fail either by a fracture mechanism or because a block (probably the central one) will fall apart (them the rest of the blocks will follow).

My main questions are:
Is it possible to introduce friction in fenics?
Does fenics support any kind of fracture mechanism (like cohesive elements or phase field models)?
In general do you know if it is possible to run such a simulation using fenics?

Thank you in advance!

1 Like

Hi,
phase-field models for fracture are quite easy to implement in FEniCS, see for instance:
https://bitbucket.org/cmaurini/gradient-damage/src/master/
but they will not be the right method for your problem

Cohesive elements can also be more or less implemented through Discontinous Galerkin interpolation, a demo will soon be available on COMET numerical tours. You can introduce friction through an appropriate choice of cohesive law.
Best

Hi Jeremy,
Thanks a lot for your response. I will take a look on the links you provided and I will let you know if I have further questions.
Best!

Hi Jeremy,

I also wonder about CZM implementation. any new about that?
I hope you can give me some hints here. Say I want to use traction separation law between two materials. The implementation is similar as in penalty contact, right? how one deals with the jumps at the interface? is it like in https://fenicsproject.org/olddocs/dolfin/1.5.0/python/demo/documented/biharmonic/python/documentation.html or is it a new variable like in phase field modelling for fracture?