VIPerPW
Mechanical
- May 15, 2011
- 1
Greetings,
I want to implement Knowles hyperelastic model in Abaqus. I've already done it using subroutine UHYPER and it works fine, but what I need is a working UMAT code, as it is supposed to be a base for a future visco-hyperelastic model.
I derived the tangent modulus related to Zaremba Jaumann's objective stress rate and the rate of deformation. I based my derivation on the information given in Holzapfel's book and J. Weiss' doctoral thesis. I checked it for numerous times and I think the tangent modulus is correct. Next, having the tangent modulus, I wrote UMAT.
In order to compare the results generated by UMAT and UHYPER I performed a simple job with a single cubic element. One surface of the cube is pinned, wheras the opposite surface is displaced so that the final stretch of the element is 1.04.
Both UMAT and UHYPER perform fine and the results (stresses) are exactly the same. What is more the predicted stresses are more-less the same as those predicted by the analytical solution of simple tension test for Knowles material with the given set of material constants.
This makes me think that the tangent modulus which I have developed is correct.
Now about the problem. It appears when I launch a more complicated job with larger number of finite elements.
The UHYPER subroutine still works fine but the job using UMAT encounters convergence problems. The size of the increment is being decreased and it finally crashes after too many attempts.
I tried to solve this problem by decreasing the initial size of an increment. This helps indeed but the increments are so small that I'm afraid I would need a week to geat my job completed.
I quite don't know what is the source of the problem. I suspected that this is related to the incompressibility. The material that I model is assumed to be an incompressible material and I take it into account in my UMAT by using high bulk modulus. The theory manual says that due to the high modulus the element stiffness matrix can be almost singular and this enforces small size of the increments.
But if this is indeed the reason of the problem, then everything should work fine for a smaller bulk modulus (please correct me if I'm wrong). I tried launching a job with much smaller bulk modulus and the convergence problem still exists.
Any help would be much appreciated.
I use hybrid hex elements without reduced integration. Nonlinera geometry is on.
Regards,
VIPer
I want to implement Knowles hyperelastic model in Abaqus. I've already done it using subroutine UHYPER and it works fine, but what I need is a working UMAT code, as it is supposed to be a base for a future visco-hyperelastic model.
I derived the tangent modulus related to Zaremba Jaumann's objective stress rate and the rate of deformation. I based my derivation on the information given in Holzapfel's book and J. Weiss' doctoral thesis. I checked it for numerous times and I think the tangent modulus is correct. Next, having the tangent modulus, I wrote UMAT.
In order to compare the results generated by UMAT and UHYPER I performed a simple job with a single cubic element. One surface of the cube is pinned, wheras the opposite surface is displaced so that the final stretch of the element is 1.04.
Both UMAT and UHYPER perform fine and the results (stresses) are exactly the same. What is more the predicted stresses are more-less the same as those predicted by the analytical solution of simple tension test for Knowles material with the given set of material constants.
This makes me think that the tangent modulus which I have developed is correct.
Now about the problem. It appears when I launch a more complicated job with larger number of finite elements.
The UHYPER subroutine still works fine but the job using UMAT encounters convergence problems. The size of the increment is being decreased and it finally crashes after too many attempts.
I tried to solve this problem by decreasing the initial size of an increment. This helps indeed but the increments are so small that I'm afraid I would need a week to geat my job completed.
I quite don't know what is the source of the problem. I suspected that this is related to the incompressibility. The material that I model is assumed to be an incompressible material and I take it into account in my UMAT by using high bulk modulus. The theory manual says that due to the high modulus the element stiffness matrix can be almost singular and this enforces small size of the increments.
But if this is indeed the reason of the problem, then everything should work fine for a smaller bulk modulus (please correct me if I'm wrong). I tried launching a job with much smaller bulk modulus and the convergence problem still exists.
Any help would be much appreciated.
I use hybrid hex elements without reduced integration. Nonlinera geometry is on.
Regards,
VIPer