You are here
Anybody can help me in Drucker-Prager modeling?
Hi, there
I am writting a UMAT modeling Drucker-Prager constitutive model (non-associated flow rule) in Abaqus. When I using one element to test the code (two load steps, the first is isotropic compression, the second is loading by giving one of the element edges a certain displacement) , it looks well when the element is loaded by compression (a negative displacement, so that negative stresses according to the convention in Abaqus). However, if the element is under extension, I received a warning message of "NEGATIVE EIGENVALUE", then the force or displacement cannot converge finally.
I am wondering where is a way to solve the problem. Anybody can give me a hand?
Best regards,
Willness
- willness's blog
- Log in or register to post comments
- 19726 reads

Comments
Hi, How did you define
Hi,
How did you define the parameters inside you model? And what is the type of materials you want to simulate?
In my understanding, inDrucker-Prager model, there are two parameters. One is a value related to the cohension of your material, and the other is the so called friction angle. The first one depends on the maximum von Mises stress, while the hydrostatic compression is zero.
If the first value is very low, that means that your material can not bear larger tensile stress. This is reasonable for granular materials.
Now, does your loading path hit on this yield/failure surface?
Yixiang
Yes, I agree what you said
Thanks for your kind concern fisrt.
Actually, for conventional D-P Model, generally there are five parameters, two elastic parameters, E and v, internal frictional angle, dilation angle and conhension.
It is true that friction materials cannot bearing large tensional stress if the conhension is very low. The material fails when the tension develops (when the stress parth touch the downside yield surface). My problem is that if the yield is due to compression (upside yeild surface), the computation can continue even to very large strains. However, if the yield is due to extension, the stiffness matrix has one negative eigenvalue, which causes convergence problem finially in some conditions. I searched so hard but cannot find any useful guidence to solve it.
for associated-flow rule, there is no problem, of course.
Any suggestion?
best regards
willness
Hi, Willness Usually,
Hi, Willness
Usually, UMAT needs two parts of information. The first, how to update your stress according to a given strain increment tensor. If the plasticity is active, the stress increment can be written as dS = C(dE-dλ ß), as in classic plasticity book.
But still the second part is missing, Jacobian matrix.
I wrote one UMAT routine about the modified Drucker-Prager-Cap model two years ago, since the one was implemented in ABAQUS is not satisfactory at the region of high temperature creep. The first time I just gave the elastic stiffness matrix as the final Jacobian matrix. Of course as you know, it did not work.So I have to derive the Jacobian matrix, and write it into my UMAT routine. This result does not depend on whether it is an associate flow or not, assuming that the model obays a general non-associate flow law.
Do you have any information on how do you write the Jacobian into your routine?
BTW, you can also check this:
Simo, J. C. and T. J. R. Hughes (1997). Computational Inelasticity, Springer.
Yixiang
Thanks for you kind reply
Hi, yixiang
Yes, there are two parts in one UMAT for Abaqus, one is update of the stresses, and the ohter is update of the Jacobian matrix.
I think there should be no problem in my stress update. Yesterday, I also douted the validity of update of Jacobian Matrix. I just followed the back-euler intergration procedure in the book "Nonlinear finite element analysis of solids and structures" (by Crisfield). Yesterday I also tried to use consistent stiffness matrix. But the problem is still there. I think I have to read the book you suggested and check step by step by hand calculation of my code.
By the way, do you mean that Jacobian Matrix has nothing to do with the flow rule? As I know, for non-associate flow rule, Jacobian Matrix is nonsymmetric and it is possible to cause problem in convengence (maybe call it loss of ellipticity of boundary condition problem?). For associated flow rule, the matrix is symmetric, which is no problem for my code. Can you tell me that in your code, for non-associated flow rule, whether you treat it particularly or not?
Best regards,
Willness
A big surprise
I found that If the elastic DDSDDE is used, for simple loading on one element, the analysis can terminate. The results looks resonable. For complex loading(say simulating plate load test), it doesn't work, however.
I am afraid, there are problems in the the updating of DDSDDE in my code. Hohhhhh..
hi,willness
I would like to use Abaqus to model the viscoelastic material behaviour of soft soil .and I am glad to hear that you did much work on the abaqus umat of D-P model.
Can you help me and post me the subroutine ?
my mail is bojan.huljev@yahoo.it
thanks very much
best regards
hi there; I have some
hi there;
I have some experience with DP-Cap plasticity with abaqus. My problem was to define a yield criterion which depends on time, explicitly, sort of iterative yield criterion. Any way, I was facing almost the same problem and 90% of the time checking the boundary conditions or redefining them was solving all the problem.
Ismail Cem
Thanks for your response
Thanks for your response, icturtuk
Yes, boundary condition is a possible source to cause Negative Eigenvalue in the analysis. But I am afraid, in my verification, boundary condition is not a problem, because I used build-in Mohr-coulomb model, there is no problem. And the verification is very simple on one element. The example is actually from Abaqus manual, with changed material constitutive model.
BTW, did you use non-associated flow rule? I am afraid that's the reason causing Negative Eigenvalue. Anybody can suggest some papers or books on this topic?
thanks a lot!
Regards
Willness
did you check the stress
did you check the stress state where the problem ocurred?
If it happened at the tip of the cone, you may have to reconsider your non-associated flow rule