Aborted (core dumped) occured when I use the Hertz-Minlin contact law with non-zero krot and eta
python3.8: /builds/
python3.8: /builds/
Aborted (core dumped)
I am running a periodic triaxial test using hertz-mindlin contact law. However, the program abort suddenly as soon as I add the rolling stiffness coefficient and rolling plastic limit (as shown above). If these values are set to 0, the simulation can continue.
My code is as follows:
# encoding: utf-8
readParamsFromT
num=2500,
)
import glob, os
import numpy as np
from yade.params import table
from yade import pack, plot
isBatch=
if isBatch:
print('Running: '+O.tags[
num = table.num # number of soil particles
dScaling = 1e3 # density scaling to increase crticial time step
sigmac= -100000 # confining pressure
rate = 0.1 # strain rate
damp = 0.5 # damping coefficient
stabilityRatio = 1.e-3 # threshold for quasi-static condition
stressTolRatio = 1.e-3 # tolerance for stress goal
# corners to define specimen size
m_1=0.004*
m_2=0.008*
mn,mx=Vector3.
# Soil sphere parameters
E=7e9 # micro Young's modulus
v=0.3 # micro Poisson's ratio
kr=0.5 # rolling/bending stiffness coefficient
eta=0.5 # rolling/bending plastic limit
mu = 26 # contact friction angle
rho = 2650*dScaling # soil density
# create materials
spMat = O.materials.append(
FrictMat(
# create a cloud of ramdomly positioned spheres
O.periodic = True
O.cell.hSize = Matrix3(mx[0],0,0, 0,mx[1],0, 0,0,mx[2])
sp=pack.
sizes=[
cumm=[0,
sp.makeCloud(
# load spheres to simulation
spIds=sp.
#define engines
O.engines=[
ForceResetter(),
InsertionSor
InteractionLoop(
eta=eta
)],
[Law2_
),
PeriTriaxCon
goal=
# whether they are strains or stresses
stressMask=7,
# type of servo-control
dynCell=True,
maxStrain
# wait until the unbalanced force goes below this value
maxUnbala
relStress
doneHook=
),
NewtonIntegr
PyRunner(
]
O.dt=.3*
def compactionFinis
if unbalancedForce
def startShearing():
# set the current cell configuration to be the reference one
O.cell.trsf = Matrix3.Identity
O.cell.velGrad = Matrix3.Zero
setRefSe3()
# set loading type: constant pressure in x,y, 30% compression in z
triax.
triax.
# allow faster deformation along x,y to better maintain stresses
triax.
triax.
triax.
triax.
triax.
def Finished():
print(
O.pause()
def addPlotData():
if triax.stressMask != 7:
if isBatch:
else:
O.run()
waitIfBatch()
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Yade Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Xin Li
- Solved:
- Last query:
- Last reply: