Search
Close this search box.
Notifications
Clear all

UMAT Problem with multiple Element Meshes

4 Posts
2 Users
0 Likes
1,125 Views
Posts: 4
Topic starter
(@Thygema)
New Member
Joined: 15 years ago

Hi everone,

I have written a UMAT to simulate metal-foams with the constitutive model

of Deshpande & Fleck.

#### Constitutive Model & Implementation

It has an oval like yield criterion in the J2/I1 plane. (I1 meaning the first

Invariant of sigma, J2 meaning the second Invariant of the deviatoric part of

sigma)

This yield criterion is used to calculate the new stresses with the help of the

Closest-Point-Projection Algorithm (CPP).

All of the aforementioned works fine.

#### Calculation of Jacobian-Matrix

To calculate DDSDDE I use kind of a forward differential approach because

its the only DDSDDE that let ABAQUS/Standard converge.

I start from sigma_n1(stress at the end of the increment) and use 6 different

pertubations to calculate each row of DDSDDE.

With the use of

(1) deltaEpsilon = (a,0,0,0,0,0)

for the Iteration of the pertubated stress, I calculate sigma_n1* (the

perturbated stress) with my Implementatino of the CPP-Algorithm

Then I use the forward differential scheme,

(2) df(x) / dx = ( f(x+h) - f(x) ) / h

to calculate the Jacobian-matrix.

In this case I calculate the first row,

(3) DDSDDE(1,i) = ( sigma_n1*(i) - sigma_n1(i) ) / epsilon(i)

(epsilon(i) is always a)

#### Verifying/testing the UMAT

My testing refers to a simple compression test with a cube:

I tested the UMAT using a cube with a single-element mesh and it worked

fine.

It works for given stresses or strains.

All the ouput (sigma/eps curves...) is and the wallclock time it takes is ok.

Then I created a multiple-element mesh cube and tried to analyse it.

The Analysis smoothly runs through the purely elastic region, enters the

elastoplastic region and continues quite a while. Then it suddenly stops at a

Point and ABAQUS tells me the equilibrium conditions do not converge any more.

The strain and strains ABAQUS stops increase with lesser elements.

It works completely for 2x2x2 elements, but not for 3x3x3 and more.

I have tried to mess around with DDSDDE and calculate it explicitely but it

did not work out. The only one that worked is the aforementioned.

I would be very thankful if anybody has an idea on how to find and fix this problem.

Greetings, ixfem

(I have to excuse for my poor english, but its not my first language.)

3 Replies
Posts: 3998
(@jorgen)
Member
Joined: 4 years ago

It sounds to me that your Jacobian is not sufficiently good at large strains.
I recommend that you try to refine it.

-Jorgen

3 Replies
Posts: 4
Topic starter
(@Thygema)
New Member
Joined: 15 years ago

Hi,

thanks for your reply.

I know that my UMAT works with sigma, epsilon even though there are strains up to 40%. Do you think that this might be the Problem?

I tried to vary the way to calculate the UMAT with forward, backward, analytical, using the elastoplastic Tangent Modulus, the consisten Jacobian and so on. Although the only one that worked was the one Im using right now (see my last post). Does anyone have tips/literature on how to create a more precise DDSDDE?

Greetings, ixfem

Reply
Posts: 3998
(@jorgen)
Member
Joined: 4 years ago

I dont quite follow your comment: UMAT works with sigma, epsilon even .... What do you mean?

You should be able to get reasonably good convergence even with an approximate Jacobian. Perhaps there is still some problem with you DDSDDE calculation?

As an alternative, you can change the number of attempts that Abaqus takes before cutting the time step size. This may solve your problem without having to modify your code.

-Jorgen

Reply
Share: