← Back to team overview

yade-users team mailing list archive

[Question #680662]: Small density sphere in micron size makes segment fault (core dumped)

 

New question #680662 on Yade:
https://answers.launchpad.net/yade/+question/680662

In my case, the sphere used is in micron size. When i use the real material property, especially the density, the calculation crashes after some time(Segment fault (core dumped)). Then i try to magnify the density and find the run goes well when the density amplified by one million times. 
Following is the testing code where the parameter masscof is the density amplification factor,   

from yade import geom,pack
import math
from yade import qt
import os 

os.system('rm -rf plt;mkdir ./plt/')
os.system('rm -rf out;mkdir ./out/')

# PhysicalParameters
muS = 0.57735   # Friction coefficient (30 degree)
FricAngleS = math.atan(muS)

### mass amplification factor ### 
masscof = 1e6      

# PhysicalParameters
matSph = CohFrictMat(
 density = 7990*masscof,
 young = 193e9,
 poisson = 0.3,
 frictionAngle = FricAngleS,
 momentRotationLaw = True)
SMat = O.materials.append(matSph)


# create empty sphere packing
sp = pack.SpherePack()
# generate spheres1 with a certain diameter distribution
sp.makeCloud((0,0,0.35e-3), (1.0e-3,1.0e-3,1.4e-3), psdSizes=[0.012e-3,0.0186e-3,0.0312e-3,0.0484e-3,0.053e-3], psdCumm=[0,0.1,0.5,0.9,1.0])
# add the sphere pack to the simulation
sp.toSimulation(material=SMat)

# create rectangular box1(Left) from facets
O.bodies.append(geom.facetBox((0.5e-3,0.5e-3,0.5e-3),(0.5e-3,0.5e-3,0.5e-3), wallMask=31, material=SMat))
O.bodies.append(geom.facetBox((0.5e-3,0.5e-3,0.15e-3),(0.5e-3,0.5e-3,0.2e-3), wallMask=63, color=(0,1,0), wire=False, material=SMat))

O.dt = 0.85*utils.PWaveTimeStep()
          
O.engines=[
	ForceResetter(),
	InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb()]),
	InteractionLoop(
      	# handle sphere+sphere and facet+sphere collisions
     	   [Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Facet_Sphere_ScGeom6D()],
     	   [Ip2_CohFrictMat_CohFrictMat_CohFrictPhys()],
      	   [Law2_ScGeom6D_CohFrictPhys_CohesionMoment()]
   	),
	NewtonIntegrator(damping=0.75, exactAsphericalRot=True, gravity=(0,0,-9.81)),
    qt.SnapshotEngine(fileBase="./plt/",iterPeriod=200,label='snapshot'),
   	VTKRecorder(iterPeriod=200, recorders=['spheres','colors'], fileName='./out/'),
]

#show geometry:
qtr = qt.Renderer()
qtr.bgColor = [1,1,1]
qt.Controller()
v = qt.View() 
#v.center() 
v.axes=False
v.viewDir=Vector3(0,1,0)
v.eyePosition=Vector3(1.8e-3,-5.2e-3,1.0e-3)

#O.run()


-- 
You received this question notification because your team yade-users is
an answer contact for Yade.