User login


You are here

Polycrystal plasticity in Abaqus/Explicit

Karol Frydrych's picture

Hello everyone!

My goal is to model large plastic deformations of polycrystalline metals using crystal plasticity and ALE adaptive meshing. In order to do that I want to use VUMAT subroutine in Abaqus/Explicit, since as far as I understand Abaqus/Standard is not good for large deformations and it doesn't support ALE adaptive meshing for that purpose.

My concern is how to apply different material properties in different integration points or even elements. In UMAT it is straightforward, but in VUMAT it is not. I have tried setting different values of material properties using ghost shell function which I have found on the Internet and the simple VUMAT of isotropic elasticity. It works fine when I use one element, but when I use more than one, it says that there is zero or negative dilatational modulus. I have even checked what happens, when I apply the same material properties in every material point (e.g. my props was 2.1e11, 2.1e11, 2.1e11,..., .3, .3, .3, ...), but it still gives the same message. 

Do you know what could happen? Or maybe you know better ways for dealing with different material properties in differnet material points in VUMAT? It is important for me, that I can use ALE adaptive meshing, so I think it is not possible to just define different materials inside my model domains.

I have attached also my VUMAT and input file if you think it can help.

Best regards,

Karol Frydrych

Plain text icon Input file and VUMAT subroutine8.01 KB

If you want spatially varying material properties, this can be done using preprocessing. I had to assign spatially varying material properties, so what i did was write a python code to divide my model into many sections and apply a different material property to each section. This is actually quite easy once you work out how to use Python to script the process of assigning material properties and sections. This would be compatible with adapmesh as well.


Hope that helps!

Matt Lewis's picture

You can use the SDV array for properties and then intialize them for each integration point using the SDVINI user subroutine.  You need to be careful if you use other SDVs for other user materials, but this approach is useful.

Frank Richter's picture

Subscribe to and seek assistance from the
ABAQUS mailing list
Search the archive before posting.

Good luck


Karol Frydrych's picture

I had a simple error in my loop in VUMAT, now I have corrected it and the example works fine.

Subscribe to Comments for "Polycrystal plasticity in Abaqus/Explicit"

Recent comments

More comments


Subscribe to Syndicate