LS Dyna

LS Dyna

Topics relate to LS-DYNA, Autodyn, Explicit STR and more

MAT_ADD_DAMAGE_GISSMO + SPG + hsv

    • Oleg Makarov
      Subscriber

      Hello! I want to use the SPG method to simulate brittle fracture with UMAT. I use UMAT to define my material model with failure criterion and MAT_ADD_DAMAGE_GISSMO to add failure mechanics to the model. My material model doesn't include any plastic behavior, only elastic deformation + failure criterion. Failure criterion quantity is written in the history variable hsv(2). I want to know how can I configure MAT_ADD_DAMAGE_GISSMO to define failure when hsv(2) becomes equal to 1 (hsv(2) = 1).

      Am I correct that I have to set DTYPE=20 + DCRIT=1 + simple LCSDG curve = {-1, 1 ; 1, 1}? Other parameters are default.

      I tried this setup but got the failure of material at D = 0.7 and hsv(2) = 0.91. Why? Where is the error?

    • Ushnish Basu
      Ansys Employee

      For brittle fracture, you can directly set the failure flags in the user material code. See the section on "Failure" in Appendix A of the Keyword Manual, and also look in the umat code for how failel or failels is set

      GISSMO provides ductile fracture using an evolving damage quantity, as described in the manual

      Also, can I presume from this post that you have managed to compile the usermat package successfully on Windows?

      • Oleg Makarov
        Subscriber

        Thank you for your answer!

        However in one of my previous questions (see https://forum.ansys.com/forums/topic/spg-method-with-umat/) developer noted that "SPG can use effective plastic strain, first principle stress, maximum shear strain or GISSMO damage value as bond failure criterion" and "SPG with UMAT has not been fully tested". Therefore will "failel" will work well for SPG like in FEM?

        GISSMO worked very well when I tried to use it with SPG and MAT_PICEWISE_LINEAR_PLASTICITY. I set DTYPE = 0, LCSDG curve with very small failure plastic strains, and failure looked great. But now I want to use my own failure criterion without using plastic strains but history variable. When I set DTYPE = 20 and LCSDG curve = {-1, 1 ; 1, 1} (to define critical history variable values) failure looks strange. I simulate uniaxial compression of the cylindrical specimen and at some moment my specimen fails when hsv = 0.91 and D = 0.7 (on the next time step D rapidly increases to 3.994). I don't know where is the problem. Please see the pictures below. There are screenshots of hsv(2) and hsv(30) in timesteps just before and after the fracture occurred. Hsv(2) is driving history variable for fracture in GISSMO and hsv(30) is the damage value (ND history variable in GISSMO). hsv(2) is equal to hsv(34) (ND+4 in GISSMO) therefore everything should work well but it is not.

        P.S.: I compiled LS-Dyna on Ubuntu, not Windows.

      • Oleg Makarov
        Subscriber

         

        I checked failel without GISSMO. If (hsv(2).gt.1.) then failel = .true. The results are even more strange. Right now “failure” (if I can call it like that) occurs when hsv(2) = 0.97 and the stress distribution becomes not uniform. And in the same time, the specimen remains solid like particles are still bonded and there is no material spalling.

         

    • Ushnish Basu
      Ansys Employee

      The developer said the following: "Users cannot use both  FEM failure way and SPG failure. SPG uses IDAM in *SECTION_SOLID_SPG to define the failure criteria. SPG doesn't support other failure criteria except the criteria defined in IDAM.  IDAM=0 defines the GISSMO damage value as the SPG failure.  Meanwhile, DTYPE=0 to turn off damage effect in material." I take that to mean that the failel setting in the umat will not be applicable, but I am clarifying that point. 

      I will make a couple of suggestions for now:

      1. Use a Dev version of the code instead of R14, in case this is due to a bug in SPG that might have been fixed
      2. Print the relevant variables at each computational timestep from within the umat routine for some specific element, since the failure may have occured between the timesteps recorded in d3plot. Alternatively, use a curve to output d3plot at the computational timestep around the time of failure
    • Ushnish Basu
      Ansys Employee

      Also, I would suggest not specifying DCRIT, but only DTYP and LCSDG

    • Ushnish Basu
      Ansys Employee

      After further checking, the developer said that SPG does not support user materials, unfortunately. I have asked him to consider implementing it

Viewing 4 reply threads
  • You must be logged in to reply to this topic.