I am currently trying to evaluate the deformation and failure behavior of unit cell models of porous polycarbonate (PC) at different strain rates using Abaqus/Explicit 2019.

The periodic unit cells in this case are body-centered cubic arrangements with spherical voids. I subject models to different strain rates as well as prescribed overall stress triaxialities (i.e. the ratio of the hydrostatic stress to the von Mises stress of the whole unit cell volume).

While three faces of the unit cell are fixed in the corresponding normal directions, all nodes of the three remaining faces are connected to a corresponding reference point such that the nodes are all undergoing the same displacement in the faces' normal directions. By prescribing the displacement of one reference point, reading the reaction force and accordingly controlling the forces on the remaining two reference points throughout the process using a VUAMP user subroutine the overall stress triaxiality is kept at the desired value.

Unit cell with 40 % void volume fraction, hexaedral mesh and reference points for boundary conditions:

The PC material is modeled via simple J

The actual problem arises when I am subjecting a unit cell to a comparatively low macroscopic strain rate of 10 1/s and an elevated overall stress triaxiality of 1 for example. After a certain amount of displacement, the reaction force begins to oscillate at a very high frequency with increasing amplitude. This leads to (premature) failure of the whole model meaning that the VUAMP detects reaction forces below zero and terminates the simulation.

The finite element models are always meshed using hexaedral elements and I have used elements without and with reduced integration as well as various hourglass stabilization options Abaqus/Explicit has to offer. The problem seems to be independent of the element type albeit elements with reduced integration show weird (hourglass?) deformations.

Behavior for C3D8R element mesh (reduced integration with "Combined" hourglass stabilization:

Behavior for C3D8 element mesh is similar albeit the oscillations don't take as long to develop a high amplitude that causes termination of the simulation.

The energies are looking as follows.

Reduced integration (C3D8R element mesh):

Full integration (C3D8 element mesh):

The issue seems not to occur if the strain rate is higher (e.g. 10^3 1/s). On the one hand I assume that the problem originates from the way the overall stress triaxiality is controlled via the VUAMP subroutine. On the other hand I wonder why the problem does not occur for higher strain rates and otherwise identical boundary conditions. I do not use mass scaling. Using the VUMAT or the built-in Abaqus material does not make a difference. At the moment the oscillations begin no elements have been removed from the model as the failure criterion is has not been met yet.

Can anybody offer some advice or has successfully faced similar problems?

I you have further questions I am eager to provide you with all informations necessary.

Kind regards,

Jonas

]]>

My model material : Elastic + Viscoelastic, Instantaneous module, Visco step

My questions are:

- In abaqus, can I control on load relaxation speed or stop it ?
- Is my issue related to material model or with the abaqus analysis ?

thanks]]>

I'm programming a Python script to study the crack propagation. When, I tried to test the code about the crack (assignSeam) and define the cracktip and crackfront, abaqus reports

I wonder if someone have experience in similar project can offer me some help to the script, i will be very grateful, the following is my script:

def creat_crack (w,H,a1_w,h1_H,my_model,my_part):

# Draw crack on the sketch and make partition

a1,h1 = a1_w*w,h1_H*H

p = mdb.models[my_model].parts[my_part]

f, e, d = p.faces, p.edges, p.datums

t = p.MakeSketchTransform(sketchPlane=f.findAt(coordin ates=(w/2.0,H/2.0,0.0),), sketchPlaneSide=SIDE1, origin=(

0.0,0.0,0.0))

s1 = mdb.models[my_model].ConstrainedSketch(name='__profile__',

sheetSize=44.72, gridSpacing=1.00, transform=t)

g, v, d, c = s1.geometry, s1.vertices, s1.dimensions, s1.constraints

s1.setPrimaryObject(option=SUPERIMPOSE)

crackLine = s1.Line(point1=(0.0,h1), point2=(a1,h1))

s1.HorizontalConstraint(entity=crackLine,addUndoSt ate=False)

p = mdb.models[my_model].parts[my_part]

pickedFaces = f.findAt(((w/2.0, H/2.0, 0.0), ))

p.PartitionFaceBySketch(faces=pickedFaces, sketch=s1)

#s1.unsetPrimaryObject()

#del mdb.models[my_model].sketches['__profile__']

# AssignSeam Creat the crack

#a = mdb.models[my_model].rootAssembly

p = mdb.models[my_model].parts[my_part]

f1, e1, d1 = p.faces, p.edges, p.datums

edges1 = e1.findAt(((a1/2.0,h1,0.0),))

pickedRegions = p.Set(edges=edges1, name='Set-1')

#pickedRegions = p.Set(edges=crackLine, name='Set-1')

mdb.models[my_model].parts[my_part].engineeringFeatures.assignSeam(

regions=pickedRegions)

#a = mdb.models[my_model].rootAssembly

#a = mdb.models[my_model].rootAssembly

#v1 = a.instances[my_part+'-1'].vertices

vert = (a1,h1,0.0)

vt = v1.findAt((vert,))

crack_Front = regionToolset.Region(vertices=vt)

#a = mdb.models[my_model].rootAssembly

#v1 = a.instances[my_part+'-1'].vertices

#verts1 = v1.findAt(((a1,h1,0.0),))

crack_Tip = regionToolset.Region(vertices=vt)

p.engineeringFeatures.ContourIntegral(name='Crack-1', symmetric=OFF,

crackFront=crack_Front, crackTip=crack_Tip,

extensionDirectionMethod=Q_VECTORS, qVectors=(((-1.0, 0.0, 0.0), (0.0, 0.0,

0.0)), ), midNodePosition=0.25, collapsedElementAtTip=SINGLE_NODE)

Best regards]]>