← Back to team overview

yade-users team mailing list archive

[Question #706779]: Wall disappearing

 

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

In the name of God
Hi every one!
I encountered an strange problem. when i add some spheres bonded to each other using CohFrictMat in a triaxial box, by the first step the walls disappeared. what is wrong?
the second strange thing is that although the walls are added to simulation before the definition of material labeled as 'cube', however when the script is run, their material type is shown as 'cube'. here is the MWE:


from yade import pack
############################################
###   DEFINING VARIABLES AND MATERIALS   ###
############################################

# The following 5 lines will be used later for batch execution

ConPre=-100000
ConPre1=-5000
key='t_20%_25_100' # put you simulation's name here
targetPorosity = 0.38#the porosity we want for the packing
compFricDegree = 30 # initial contact friction during the confining phase (will be decreased during the REFD compaction process)
finalFricDegree = 30 # contact friction during the deviatoric loading

young=1e9 # contact stiffness
mn,mx=Vector3(0,0,0),Vector3(.3,.3,.3) # corners of the initial packing
O.materials.append(CohFrictMat(young=1e9,poisson=0.2,density=1500,isCohesive=False,frictionAngle=0,label='walls'))

## create walls around the packing
walls=aabbWalls([mn,mx],thickness=0)
wallIds=O.bodies.append(walls)


## create materials for spheres and plates
O.materials.append(CohFrictMat(young=1e6,poisson=0.48,density=1500,label='cube',frictionAngle=radians(compFricDegree),
    isCohesive=True,
    normalCohesion=50000000,
    shearCohesion=50000000,
    momentRotationLaw=True
))

sp=pack.SpherePack()
sp.makeCloud((0,0,0),(.3,.3,.3),rMean=.05,distributeMass=False,seed=1)


#############################
###   DEFINING ENGINES   ###
############################

triax=TriaxialStressController(
    maxMultiplier=1.+2e4/young, # spheres growing factor (fast growth)
    finalMaxMultiplier=1.+2e3/young, # spheres growing factor (slow growth)
    thickness = 0,
    stressMask = 7,
    internalCompaction=False, # If true the confining pressure is generated by growing particles
)

newton=NewtonIntegrator(damping=.1)

O.engines=[
    ForceResetter(),
    InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
    InteractionLoop(
        [Ig2_Sphere_Sphere_ScGeom6D(interactionDetectionFactor=1.12),Ig2_Box_Sphere_ScGeom6D()],
        [Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(
            setCohesionNow=True,
            setCohesionOnNewContacts=False,
            )],
        [Law2_ScGeom6D_CohFrictPhys_CohesionMoment(),Law2_ScGeom_FrictPhys_CundallStrack()]
    ),
    triax,
    newton,
]

triax.goal1=triax.goal2=ConPre1
triax.goal3=ConPre1
O.dt=0
yade.qt.Controller()

for x in [.1,.2]:
    for y in [.1,.2]:
        for z in [.1,.2]:
            s = utils.sphere((x,y,z),.08,material='cube')
            O.bodies.append(s)
########################################################
#######By adding the following lines to the terminal, the walls disppeared####
########################################################
#O.step()


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