[petsc-users] Cohesive Element Support

Blaise A Bourdin bourdin at lsu.edu
Fri Jun 19 10:15:38 CDT 2020



On Jun 18, 2020, at 5:28 AM, Matthew Knepley <knepley at gmail.com<mailto:knepley at gmail.com>> wrote:

On Wed, Jun 17, 2020 at 4:05 PM Jacob Faibussowitsch <jacob.fai at gmail.com<mailto:jacob.fai at gmail.com>> wrote:
Hello,

I am looking to perform large scale fracture and crack propagation simulations and have a few questions regarding PETSc support for this. Specifically I am looking for cohesive surface element support with a few twists:

1. Is there support for zero thickness surface elements? For example modeling virtually flat patches of adhesives holding together two larger structures being pulled apart.

This is how PyLith works: https://github.com/geodynamics/pylith<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgeodynamics%2Fpylith&data=02%7C01%7Cbourdin%40lsu.edu%7Ca6ad0b6927f7495344ad08d813729554%7C2d4dad3f50ae47d983a09ae2b1f466f8%7C0%7C0%7C637280730142259699&sdata=T5m2PUCrxF4%2BPYYnqvp6%2F8pLQeH0U7MjqADvwkFjGYY%3D&reserved=0>

2. Is there support for “joining” two possibly distinct meshes with cohesive surface elements? For example say I have two distinct cylinders representing fibers which would “touch" to form an X shape.

No, it would have to be coded.

3. In a similar vein, is there support for a mesh to fracture entirely along a crack formed through the cohesive elements? Imagine the aforementioned X configuration separating entirely into two separate cylinders again.

No, it would have to be coded.

4. Is there a mechanism by which you can classify existing elements as cohesive elements?

See 1.

5. Is there an already implemented way of imposing tie-constraints between independent meshes? This would potentially be used to tie high order cohesive cells which would have a non-conforming interface to the “regular” mesh.

There is nothing for non-conforming interfaces.

From googling I have come across DMPlexCreateHybridMesh(), DMPlexConstructCohesiveCells(), and DMPlexCreateCohesiveSubmesh(). While these do implement cohesive cells  these functions don’t at first glance seem to allow one to implement the above.

Having worked with cohesive elements for more than a decade, I would be cautious about a new code using them for fracture. To me, it appears
that variational fracture codes, like those from Blaise Bourdin and J. J. Marigo's group have much better geometric flexibility, and Maurini's work on
the solver clears up the hardest part.

I definitely concur with this and would be happy to help…

Blaise

--
A.K. & Shirley Barton Professor of  Mathematics
Adjunct Professor of Mechanical Engineering
Adjunct of the Center for Computation & Technology
Louisiana State University, Lockett Hall Room 344, Baton Rouge, LA 70803, USA
Tel. +1 (225) 578 1612, Fax  +1 (225) 578 4276 Web http://www.math.lsu.edu/~bourdin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20200619/aaafc9f8/attachment.html>


More information about the petsc-users mailing list