yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #11390
[Question #268374]: Assertion `!isnan(mat1->sigmaT)' failed.
New question #268374 on Yade:
https://answers.launchpad.net/yade/+question/268374
Hi all,
My Yade gives the error message which is
"
python: /tmp/buildd/yadedaily-1.14.0-54-f44c022~trusty/pkg/dem/ConcretePM.cpp:46: virtual void Ip2_CpmMat_CpmMat_CpmPhys::go(const boost::shared_ptr<Material>&, const boost::shared_ptr<Material>&, const boost::shared_ptr<Interaction>&): Assertion `!isnan(mat1->sigmaT)' failed.
Aborted (core dumped)
"
when running the following script:
from yade import pack, export
#setting frict materials -----
fyoung = 8e9
fpoisson = 0.25
frictAng = 0
fden = 2500
#setting rock materials -----
ryoung = 2e7
rpoisson = 0
rfrictAng = 0
reps = 0.06
rden = 1000
frict = O.materials.append(FrictMat(
young = fyoung,
poisson = fpoisson,
frictionAngle = frictAng,
density = fden))
temp_con = O.materials.append(CpmMat(
young = ryoung,
poisson = rpoisson,
frictionAngle = rfrictAng,
epsCrackOnset = 1e-13,
density = rden,
relDuctility = 0))
#building boxes -----
box_length = 500.0
box_height = 80.0
box_depth = 4.0
box = geom.facetBox((box_length/2, box_depth/2, box_height/2),
(box_length/2, box_depth/2, box_height/2),
wallMask = 31,
material = frict)
O.bodies.append(box)
#adding deposit -----
sample = pack.SpherePack()
sample.makeCloud((0, 0.375, 0), (box_length, box_depth - 0.375, 100), rMean = 0.75, rRelFuzz = 0.25)
s = sample.toSimulation(material = temp_con)
#defining engines -----
thres = 9000
O.engines = [
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor = 1, label = 'ctr1'), Bo1_Facet_Aabb(), Bo1_Wall_Aabb()], verletDist = 0),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor = 1, label = 'ctr2'), Ig2_Facet_Sphere_ScGeom(), Ig2_Wall_Sphere_ScGeom()],
[Ip2_CpmMat_CpmMat_CpmPhys(cohesiveThresholdIter = thres), Ip2_FrictMat_CpmMat_FrictPhys(), Ip2_FrictMat_FrictMat_FrictPhys()],
[Law2_ScGeom_FrictPhys_CundallStrack(), Law2_ScGeom_CpmPhys_Cpm()],
),
NewtonIntegrator(damping = 0.3, gravity = (0, 0, -9.81)),
PyRunner(command = 'modifyLayer()', iterPeriod = 100, label = 'controller'),
]
O.dt = 0.2 *utils.PWaveTimeStep()
height = 20
def modifyLayer():
if O.iter < thres:
return
if O.iter > 11000:
O.pause()
for i in s:
if O.bodies[i].state.pos[2] > height:
O.bodies.erase(i) #delete spheres that are above the target height
s.remove(i) #also,delete the corresponding ids in the id list
export.text('sample.txt')
I don't know what has gone wrong with it.
Thanks a lot!
--
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.
Follow ups