Hi everyone,

I’m facing some issues regarding the implementation of an external material routine in COMSOL. The aim is to provide a general stress-deformation routine for an elastic-ideal plastic material behavior. To validate the implementation in a first step, I reduced the hyperelastic material description to the well-known and already implemented Neo-Hookean material model.

The model represents a square. On the left edge the horizontal and on the lower edge the vertical displacement is fixed, respectively. On the right edge a horizontal displacement is applied to simulate a tensile test.

In a first step the model is discretized using just one single element with linear ansatz functions for discretization. In this case, the external material routine and the implemented version in COMSOL lead to identical results, as shown in the Figure. Left is the external material model and, on the right, the predefined Neo-Hookean with elastic-ideal plastic behavior, Figures 1 and 2.

Furthermore, the convergence for the external material is fine. The same holds for the case, that the mesh is refined in vertical direction, Figures 3 and 4.

However, as soon as there is an additional node in horizontal direction, whether from using higher-order elements or more elements with linear ansatz functions in horizontal direction, the model does no longer converge in the plastic domain. Even in the elastic domain the stress-strain-curve looks like some noise has been added, Figure 5.

Since, the routine works properly for one element I’m not sure where to locate the issue. One aspect that caught my intention is the skewness of the elements. When using multiple elements in horizontal direction it slightly starts to change, Figure 6. This is not the case for the other simulations. But this is just a random thought. Has anyone ever tried to implement such routine in COMSOL and has experienced the same issue?

Many thanks in advance.

More Natalie Rauter's questions See All
Similar questions and discussions