Holzapfel-Gasser-Ogden material for arteries

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • ateshian
    Developer
    • Dec 2007
    • 1824

    Holzapfel-Gasser-Ogden material for arteries

    This tutorial shows how to reproduce the Holzapfel-Gasser-Ogden material using solid mixtures in FEBio. The main features of this material are as follows:
    • Two fiber bundles, making an angle ąPHI with the circumferential direction of the artery. Each fiber follows an exponential function of the fiber stretch, with material coefficients k1 (the initial fiber modulus) and k2 (the exponential coefficient).
    • A neo-Hookean ground matrix with a shear modulus MU.
    • Incompressibility.

    Incompressibility can be simulated by using uncoupled materials in FEBio. Therefore, the neo-Hookean ground matrix can be modeled using the "Mooney-Rivlin" material in FEBio, with c1=MU and c2=0.

    The fibers can be modeled using the "fiber-exp-pow-uncoupled" material in FEBio, whose material coefficients relate to the Holzapfel model as ksi=k1, alpha=k2, and beta=2.

    Since fibers are defined relative to the circumferential direction, it is necessary to establish a local coordinate system for each element in the mesh using the <mat_axis> tag. In the example of this tutorial (two concentric cylindrical layers representing the media and adventitia of an artery, generated with PreView), the mesh elements have a consistent local node numbering that makes it easy to define the desired local coordinate system. Using <mat_axis type="local">1,4,5</mat_axis>, the local element coordinate system {x1,x2,x3} aligns with the {circumferential, axial, radial} directions of the cylindrical arterial wall.
    HolzapfelJBE04.png
    In this local cartesian coordinate system {x1,x2,x3}, the fiber directions are specified using spherical angles theta and phi in the definition of a "fiber-exp-pow-uncoupled". The spherical angle phi is the angle between the local axis x3 and the fiber direction. The spherical angle theta is the angle between x1 and the projection of the fiber onto the x1-x2 plane. Therefore, for this model, phi=90 degrees and theta=ąPHI (where PHI is the fiber orientation defined in the Holzapfel model).

    The ground matrix and each of two fibers may be combined into a "uncoupled solid mixture" to reproduce the desired features of a Holzapfel-Gasser-Ogden material in FEBio, as shown below:
    Code:
    		<material id="1" name="Media" type="uncoupled solid mixture">
    			<mat_axis type="local">1,4,5</mat_axis>
    			<solid type="Mooney-Rivlin">
    				<density>1</density>
    				<c1>3.831</c1>
    				<c2>0</c2>
    				<k>3831</k>
    			</solid>
    			<solid type="fiber-exp-pow-uncoupled">
    				<alpha>0.3579</alpha>
    				<beta>2</beta>
    				<ksi>5.3992</ksi>
    				<theta>20</theta>
    				<phi>90</phi>
    				<k>5399.2</k>
    			</solid>
    			<solid type="fiber-exp-pow-uncoupled">
    				<alpha>0.3579</alpha>
    				<beta>2</beta>
    				<ksi>5.3992</ksi>
    				<theta>-20</theta>
    				<phi>90</phi>
    				<k>5399.2</k>
    			</solid>
    		</material>
    The material properties for the media layer are taken from Table 1, Expt. no. 71, of Holzapfel, G. A., Gasser, T. C., and Ogden, R. W., 2004. Comparison of a multi-layer structural model for arterial walls with a fung-type model, and issues of material stability. J Biomech Eng 126, 264-275. (The actual experimental data is from Fung, Y. C., Fronek, K., and Patitucci, P., 1979. Pseudoelasticity of arteries and the choice of its mathematical expression. Am J Physiol 237, H620-631).

    Note that the bulk modulus <k> included in each <solid> of the uncoupled solid mixture is taken to be 1000 times c1 and 1000 times k1, to enforce near incompressibility.

    The attached sample file, HolzapfelJBE04.feb, provides a complete analysis where the properties of the adventitia layer are also provided, taken from the same paper. In this analysis, the artery is first extended axially to a stretch ratio of 1.6, then inflated with an internal pressure of 30 kPa. Length units are in mm, force in mN, stress in kPa. The results may be compared with Fig. 2 of the 2004 J Biomech Eng paper referenced above, but note that the actual analysis in that paper employed a membrane approximation, whereas the FEBio example included here is a full 3D analysis, therefore results are similar but not identical.

    Gerard Ateshian
  • pablo
    Junior Member
    • Jul 2014
    • 1

    #2
    Artery modeling.

    Hi.
    I?m working with an artery model and I would like to compare with a FEBio simulation.
    I have applied an internal pressure followed by a displacement of an internal point in the intima layer (see attached .feb file).
    I have tested the model using the Holzapfel-Gasser-Ogden material. I would like to know the physical constants for human arteries.
    I wonder if there is another better model to use instead.
    Thanks.
    Attached Files

    Comment

    • crandallc
      Junior Member
      • May 2020
      • 7

      #3
      In the new FEBio Studio there is an option for a Holzapfel-Gasser-Ogden material without creating a solid mixture. This has two constants kappa and gamma however. What are these values? and how does this model differ from the solid mixture?

      Comment

      • ateshian
        Developer
        • Dec 2007
        • 1824

        #4
        Hi,

        Please don't use that model, it doesn't work. It was included in FEBioStudio by mistake. We will take out for the release version of FEBioStudio.

        Best,

        Gerard

        Comment

        • aliraza
          Junior Member
          • May 2020
          • 5

          #5
          Actually I never used FEBio before. I want to insert fibers in a tube. I was thinking I could define fibers by choosing "solid matrix" in material and then choosing "fiber exp pow". Is there any other way we can define fibers ? I read a post where it was mentioned that we can define fibers from "Build preview" " mesh " either choosing "set fiber" or "set axes".
          Can we define the fibers in preview or we have to define fibers in ".feb" files.
          I will appreciate your help.

          Thank you!

          Comment

          • maas
            Lead Code Developer
            • Nov 2007
            • 3400

            #6
            Hi,

            When working with fibers in FEBio there are two things you have to define: the fiber orientation, and the fiber constitutive model. The option under the mesh panel you mention above, defines the fiber orientation. In the model tree, under the material item, you set the fiber's constitutive model. (Well, actually, through the Add Material menu, then select solid matrix, and then add your solid material and your fiber materials.) So, you can do both in PreView (or FEBioStudio, which I recommend you use instead of PreView.) I hope this helps. Let me know if you have any further questions.

            Cheers,

            Steve
            Department of Bioengineering, University of Utah
            Scientific Computing and Imaging institute, University of Utah

            Comment

            • aliraza
              Junior Member
              • May 2020
              • 5

              #7
              Thank you so much for your help. Actually, I am working with two concentric tubes. I am worried how to define the contact between these two tubes. Is there a need to draw two tubes or just one tube is sufficient. If I choose two concentric tubes for artery then do I have to define the contact between them and which type of contact will work. After looking the artery feb file mentioned above there were four tubes but they did not defined the contact among them. I am not sure did they plot four concentric tube or just 1 tube and then use a mesh. Is there a way we can divide single tube into 4 seperate tubes by controlling the mesh. If they draw four concentric tube then how they defined the contact between them.

              Thank you!
              Ali

              two concentric tube in my case
              2tubes.PNG

              artry feb file picture mentioned above
              4tube.PNG

              Comment

              • maas
                Lead Code Developer
                • Nov 2007
                • 3400

                #8
                It looks from the pictures that the meshes are conforming, meaning the nodes of the different tubes align at the interface. In that case, you can avoid contact altogether by welding the surface nodes. If you made the tubes separately, the easiest way to get a welded mesh is by using the Merge tool (select the two or more objects, select menu Edit\Merge or corresponding icon on toolbar, make sure to check "Weld nodes" in the next dialog box and click Ok.)
                You can also start from a single tube, convert it to an Editable mesh and then divide the mesh up into different partitions. You do this by selecting elements, and then using the partition tool (go to Mesh panel, find "Partition" button). FEBioStudio has a circular selection tool so it should be relatively easy to select elements on a cylindrical geometry. Please give this a try and let us know if you have any further questions.

                Cheers,

                Steve
                Department of Bioengineering, University of Utah
                Scientific Computing and Imaging institute, University of Utah

                Comment

                • aliraza
                  Junior Member
                  • May 2020
                  • 5

                  #9
                  Thank you so much for the help!

                  Thank you again!
                  Ali

                  Comment

                  • sfang17
                    Junior Member
                    • May 2018
                    • 6

                    #10
                    Hi,

                    This is a great tutorial for a mixture of fibers. Thank you!
                    My question is how do I implement the proportion of each fiber family if the fiber families are not equally distributed. For example, fiber family 1 consists of 30% of the total fibers while family 2 70%. One approach I had thought of is to generate a solid mixture of 10 solid tags for fibers, 7 of which representing family 1 and 3 representing family 2.
                    Is this a valid approach? If so, is the fiber stiffness "ksi" additive in this case? (it seems to me from this tutorial that it's not additive, but I would just want to confirm)
                    Thank you so much!

                    SHU

                    Comment

                    • ateshian
                      Developer
                      • Dec 2007
                      • 1824

                      #11
                      Hi SHU,

                      Since a single fiber bundle is made up of multiple fibers, you can simulate the proportion of fibers in each bundle by scaling the fiber modulus ksi. For example, if 100% of the fibers produce a modulus of ksi=10 MPa, then 30% would be 3 MPa and 70% would be 7 MPa. That would be the way to apportion the modulus of different fiber families, even when they are not all oriented in the same direction.

                      This is how the "continuous fiber distribution" materials in FEBio apportion the modulus in different fiber directions. A single value ksi is scaled in each fiber direction such that the integral over all fiber directions produces ksi.

                      Best,

                      Gerard

                      Comment

                      • tasorap
                        Junior Member
                        • Mar 2019
                        • 1

                        #12
                        Hi Steeve,

                        I am also working on an artery model that I import in FEBio Studio as "FE model", specifically a ".inp" file (note: the wall thickness in non-uniform). I tried to reproduce your suggestion for partitioning the mesh. When I select the mesh, it is of type "editable mesh"

                        Capture.PNG

                        If I select all the elements of the mesh and then I choose the "partition" option in the "edit mesh" panel, no parameters appear (picture below). Can you please guide me to partition the mesh?

                        Capture1.PNG

                        Best,
                        Tasos

                        Comment

                        • maas
                          Lead Code Developer
                          • Nov 2007
                          • 3400

                          #13
                          Hi Tasos,

                          I looks like you don't have the recent version of FEBio Studio. If you reach out to me via email (steve dot maas at utah dot edu) I'll send you the latest version.

                          Cheers,

                          Steve
                          Department of Bioengineering, University of Utah
                          Scientific Computing and Imaging institute, University of Utah

                          Comment

                          • scottho
                            Junior Member
                            • Dec 2012
                            • 9

                            #14
                            Hi Steve,

                            I was wondering if there is a way using the uncoupled solid mixture and the Exp-Power-Law fiber distribution to include the more general fiber dispersion law of part isotropic and part oriented included in a more general Gasser-Ogden-Holzapfel model:
                            kap*I1+(1-3*kap)I4 for the anisotropic part of the strain energy function? if kap is zero it seems to collapse to the current Exp-Powder-Law fiber distribution model but if kap is greater than zero but less than 1/3 (the theoretical range) it doesn't seem as though there is a model to implement this.

                            Thanks, Scott

                            Comment

                            • Silvia R
                              Junior Member
                              • Dec 2020
                              • 1

                              #15
                              Hi,
                              I am working on an arterial model that includes two layers, the media and the adventitia. I'm using as a material a solid mixture with ground matrix Neo-Hookean and two families of fiber-exp-pow with cylindrical coordinates. I setted the internal pressure at around 15kPa and imposed an axial prestrain of the 10%. However, when I try to run the model using a static analysis it often gets to error termination, while using a dynamic analysis I get to some results. I am quite new on FEBio, and I don't quite understand what's the difference between the two.
                              Also, even if I set a contact tied-elastic at the interface between the two layers in my simulation, it happens that the media wall expands and penetrate the adventitia wall. Are there some standard parameters to impose in the contact section in order to avoid this behaviour?

                              Thank you for your help!

                              Comment

                              Working...
                              X
                              😀
                              😂
                              🥰
                              😘
                              🤢
                              😎
                              😞
                              😡
                              👍
                              👎