Implementing a fiber reinforcement in a biphasic model

41 views
Skip to first unread message

Matthew Rich

unread,
Sep 30, 2021, 9:49:30 PM9/30/21
to deal.II User Group
Hi all, 

I am trying to add some anisotropy to my model via fibers. These fibers would only be active in tension and have different orientations depending on spatial location in the model. My plan of attack was to simply store and extra value at the quadrature points that had a direction representing the fiber and update directions after each time step. (is this a good way to go about doing that). I see a lot of papers doing fiber models in ABAQUS or COMSOL, but I never see any details on how to do it so I am guessing it is trivial. 

Then I stumbled upon https://doi.org/10.1016/j.compstruc.2020.106334 which uses dealii to implement a fiber model that has two grids and some sort of junction between the grid representing the bulk material and one presenting the fiber. The formulation seemed way more involved than what I was going to try. 

Am I making a gross simplification in my proposed approach. 

Matt



Wells, David

unread,
Oct 11, 2021, 1:50:47 PM10/11/21
to dea...@googlegroups.com
Hi Matt,

It is difficult to give a clear answer without some more information on how you want to compute with fibers and where the material model for the fibers is coming from.

If you have a way to compute the fourth-order tensor directly then an approach like the one in the linked paper works. A good alternative is to compute a vector field which represents the anisotropic property - a good description of this for cardiac simulations is given in Pasquale's paper from early this year:


that process (similar to what we do at UNC) involves computing a fiber field as a finite element field, so you don't necessarily need to store quadrature data - you can just compute values that you need cell-by-cell.

Best,
David

From: dea...@googlegroups.com <dea...@googlegroups.com> on behalf of Matthew Rich <mjri...@gmail.com>
Sent: Thursday, September 30, 2021 9:49 PM
To: deal.II User Group <dea...@googlegroups.com>
Subject: [deal.II] Implementing a fiber reinforcement in a biphasic model
 
--
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 dealii+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/16d823d0-da31-40fd-8eeb-8c7162fc42e0n%40googlegroups.com.

Jean-Paul Pelteret

unread,
Oct 11, 2021, 4:04:37 PM10/11/21
to dea...@googlegroups.com
Hi Matt,

As a supplement what David already mentioned, I used the QP-based approach that you laid out for skeletal muscle modelling. Although the code-related implementation details are not documented in my dissertation,  the Linear Elastic Active Skeletal Muscle Model code gallery example captures its essence for a much more simplified (single fibre family with a predefined muscle activation signal), completely linearised version of that model. That said, in the years since then I’ve thought that it might be nice to store the fibre direction field as an FE field. I think that the only complexity there is that if you have a different number of fibres in each cell (which is what I had to do) then the task of managing data at an FE level *may* be more challenging than storing it all locally.

Just in case It can be of use to you: I’ve also got a work-in-progress branch (see invariants.h and constitutive_modelling.h) that shows how to compute the values and derivatives of a number of invariants (applicable to single and coupled physics). In there are two sets of invariants that may be of interest to you: what I label I4 through to pI5 (in invariants.h) relate to transverse isotropic materials (potentially with fibre dispersion), and I6-I8 add another fibre family to permit the material being completely orthotropic. For both of these, one just needs the right Cauchy-Green tensor and a structure tensor as inputs. The idea in that branch is that you provide coefficients that are the derivatives of an energy function with respect to certain invariants to one of the CM helper classes (e.g. Physics::ConstitutiveModelling::UncoupledConstitutiveModel<Physics::Invariants::TransverseIsotropic>) and then it will return to you, for instance, d2Psi_dC_dC which is the material tangent as computed from all of the invariants. All of the derivatives that have been implemented thus far have been verified (you can check the associated tests on the branch). Actually, all that remains is for me to complete the documentation.

I hope that some of this is helpful to you. Computing the derivatives of the invariants can be tricky for some of them, so you should definitely take care there.

Best,
Jean-Paul



Reply all
Reply to author
Forward
0 new messages