User login


You are here

Problem in implementation of free volume diffusion equation

Hey everyone, I am trying to implement constitutive equations of bulk metallic glass into ABAQUS by VUMAT. However, the free volume concentration equation in the constitutive equations consists a diffusion terms which required to solve a Laplacian operation. The simplified free volume concentration equation is shown below:                                                

             dV/dt = A Laplacian(V) + B dP/dt 

Where V is free volume concentration, Laplacian(V) = d^2(V)/(dx)^2 + d^2(V)/(dy)^2, A and B are material coefficient, and dP/dt is plastic strain rate. In order to implement it into VUMAT, I convert the PDE above into forward Euler incremental equation as below                                                 

            dV= A(dt) Laplacian(V) + B dP 

I understand that by the finite difference method, Laplacian takes the form as                                                 

          Laplacian ( f(x,y) ) = ( f(x-h,y) + f(x+h,y) + f(x,y-h) + f(x,y+h) - 4f(x,y) ) / h^2

However, I still don’t know how to implement the Laplacian into VUMAT because according to finite Laplacian equation above, in order to obtain dV in a material point, I need to call back free volume concentration value of 4 nearby material points, and the h value, which is the distance between the material point I want to study and its neighbor material point. Is anyone has experience in solving this kind of problems? Or my problem can simply be solved by using some built in function in ABAQUS? Any opinion or suggestion are welcomed, and that would be great if can provide the example solution for this kind of problem. Thanks and regards.  

Microsoft Office document icon Constitutive Equations.doc808 KB


Not sure if I have got your question. If you use the forward Euler scheme to discrtise the system equation, you only need to calculate Laplacian(V) at last time point at which the whole V field is supposed to be know.

Alexander Polishchuk's picture


I think solving a diffusion equation in VUMAT is completely wrong way. If you deal with a coupled problem (stress-displacement + something else, like diffusion or heat transfer) specific elements are used with additional degrees of freedom (unknowns in the nodes). In this case when UMAT is called V is already known and you have to do only stress update as it is described in the manual. VUMAT deals with material characteristics in one point. This is sufficient to program non-gradient (also known as first-order) models. Access to variables in the neighborhood is possible through utility routines (see manual), but anyway it is very unlikely that you have to solve diffusion equation in VUMAT.

Subscribe to Comments for "Problem in implementation of free volume diffusion equation"

More comments


Subscribe to Syndicate