+ Reply to Thread
Results 1 to 9 of 9

Thread: Active tissue modeling using Abaqus

  1. Active tissue modeling using Abaqus

    Hello everyone,

    I hope I do not sound too dumb; FEA and continuum mechanics are *new* to me . Fortunately, that has not stopped me from being interested in Prof. Yucesoy research on muscle modeling:

    http://www.bme.boun.edu.tr/biomechanics/fem.htm

    Now, in order for me to be able to model active tissue, this is what I think (not 100% certain) I should do, to begin with:

    0) Learn the theory of hyperelasticity and its implementation in Abaqus.
    1) Play with simple UMATs (linear/elastic/2D and then 3D/ uniaxial force or disp/ simple shear) and see if the results make sense.
    2) Learn how to create user-defined elements (UEL?)

    For theory, I am reading books by Dr. Jay D. Humphrey and Dr. Y. C. Fung (both are experts in the field of continuum biomechanics). For Abaqus implementation, I am reading Introduction to Computational Plasticity by Drs. Dunne and Petrinic. With regard to simple UMATs, I am playing with subroutines/.inp files on the Intro. to Comp. Plasticity webpage and within Abaqus Verification Manuals.

    At this stage, I am already doing 1 and 2 and running simple UMATs.

    I do realize I have my plate full. However, suggestions to make my journey a little less painful would be great!


    Thanks.

  2. #2
    Join Date
    2000-02
    Location
    Boston, USA
    Posts
    2,521
    Blog Entries
    2
    I think that you are on the right track. Unfortunately I don't think there is a short cut. What you are trying to do will take time and effort.

    -Jorgen
    Jorgen Bergstrom, Ph.D.
    PolymerFEM Administrator

  3. Thanks for your prompt reply, Dr. Bergstrom. Time and dedication is not a problem; I am concerned about the direction. Fortunately/unfortunately, I am the only person in our lab trying something completely different. That explains my presence here. Now that I am here, let me ask a few questions

    Abaqus manual for UMAT says "DDSDDE(I,J) defines the change in the Ith stress component at the end of the time increment caused by an infinitesimal perturbation of the Jth component of the strain increment array."

    Q: Why is there a time increment? Is it because of the solver (Newton-Raphson?) for the the solution of the non-linear finite element analysis (integration)? I guess for very basic (single element, linear, elastic) quasi-static analyses, I shouldn't worry about the time increment. But, what if my application demands a different time increment? Do I simply change the values of variables provided by the UMAT subroutine?

    Also, how can I debug a UMAT source code? One approach, naturally, is to start with a single element analysis under simple forces and then keep building on it. However, what if I want to know the value of a given variable (ABCDE, for instance) in a certain iteration?

    Do I check the .msg file for ABCDE by punching in write(*,*) "ABCDE" in the .inp?

    Q: Why should I not simply use UHYPER? Perhaps, UHYPER would be a good starting point. However, I am not sure if I can implement active contraction (muscle has both active and passive properties) in UHYPER and/or have it work with a user defined element. Bottomline: can I get away with using UHYPER?


    Thanks again.

  4. Dr. Bergstrom,

    I figured out the answers to the first two questions. My guesses were correct, apparently. However, I am still left with the last question. Should I go with UHYPER or UMAT? It seems UHYPER does not provide certain variables that will allow one to incorporate growth or damage and rate dependent effects. But if I am simply interested in the contractile + hyperelastic behavior of the muscle tissue, can I simply use UHYPER?

    Thanks.

  5. #5
    Join Date
    2000-02
    Location
    Boston, USA
    Posts
    2,521
    Blog Entries
    2
    Based on your description, I am not sure you need to write a UEL. I would hold off on that for a while.

    Also, since it is so easy to write a UHYPER I would start writing one of those. That is an excellent starting point for writing UMATs anyway.

    I do not think that a UHYPER will be sufficient for application. You will likely have to write a UMAT in order to capture the interesting non-linear behaviors that you mentioned.

    -Jorgen
    Jorgen Bergstrom, Ph.D.
    PolymerFEM Administrator

  6. Thanks Dr. Bergstrom for the tip about UEL; it was a little intimidating for a beginner like myself anyway. For the time being, I am working my way through some simple UHYPERs and UMATs.

  7. Hello again, Dr. Bergstrom.

    I made some progress i the last few months. From what I have read in the literature, UMATs are the only way to simulate a 3D muscle. I can use the composite layup functionality in Abaqus to embed fibers in continuum elements. Then, I am supposed to activate them by a simply function in the UMAT. However, I have to be able to use the undeformed orientation in the code to get current fiber direction and stretch, without which I can not calculate stress.

    I could use ORIENT subroutine to give a preferred direction to the fibers. And finally, there are some Fung-type and Holzapfel-type models for simulating soft tissues available in Abaqus 6.9.

    However, in all these cases, I am facing the same issue. How do I get access to the undeformed fiber direction?


    Thanks for your time.

  8. #8
    Join Date
    2000-02
    Location
    Boston, USA
    Posts
    2,521
    Blog Entries
    2
    If you use an anisotropic UMAT and use a local coordinate system, then you will automatically know the directions of the undeformed fibers since they will fixed in the local coordinate system. Does that solve your problem?

    -Jorgen
    Jorgen Bergstrom, Ph.D.
    PolymerFEM Administrator

  9. Hi Dr. Bergstrom,

    Thanks for your quick response but I am not sure yet. Could you please clarify that a little bit more?

    In an invariant-based anisotropic UMAT in Abaqus (UANISOHYPER_INV), there is one array that is barely relevant; it provides direction cosines between different families of fibers (ZETA). But how do I get the direction of the fiber in the undeformed configuration? I need it for the calculation of stretch (N^T*C*N).

    It seems ORIENT may do the job for me. It looks like it provides undeformed direction in the local coordinate system. Is this correct?

    Thanks again.

+ Reply to Thread

Similar Threads

  1. Tissue Modelling
    By zadig in forum Finite Element Modeling
    Replies: 4
    Last Post: 2009-11-20, 10:06
  2. Synthetic model of human tissue
    By douglascook in forum Biopolymers
    Replies: 4
    Last Post: 2009-10-27, 08:50
  3. Viscoelastic modelling of brain tissue in abaqus
    By ccookieman in forum Finite Element Modeling
    Replies: 1
    Last Post: 2008-09-14, 06:14
  4. Testing a UMAT for biological tissue
    By CF in forum Finite Element Modeling
    Replies: 1
    Last Post: 2005-05-05, 19:15

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts