O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom()],
[Ip2_FrictMat_FrictMat_FrictPhys()],
[Law2_ScGeom_FrictPhys_CundallStrack()]
),
## We will use the global stiffness of each body to determine an optimal timestep (see https://yade-dem.org/w/images/1/1b/Chareyre&Villard2005_licensed.pdf)
GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.8),
triax,
TriaxialStateRecorder(iterPeriod=100,file='WallStresses'+table.key),
newton
]
O.engines=[ ForceResetter(), InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]), InteractionLoop( [Ig2_Sphere_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys(),Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(label="cohesiveIp")],
#[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True,label="cohesiveIp")], [Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom_CohFrictPhys_CohesionMoment(
useIncrementalForm=True, #useIncrementalForm is turned on as we want plasticity on the contact moments
always_use_moment_law=True, #if we want "rolling" friction even if the contact is not cohesive (or cohesion is broken), we will have to turn this true somewhere
label='cohesiveLaw')]
#[Law2_ScGeom_CohFrictPhys_CohesionMoment(
#useIncrementalForm=True, #useIncrementalForm is turned on as we want plasticity on the contact moments
#always_use_moment_law=True, #if we want "rolling" friction even if the contact is not cohesive (or cohesion is broken), we will have to turn this true somewhere
#label='cohesiveLaw')]
),
## We will use the global stiffness of each body to determine an optimal timestep (see https://yade-dem.org/w/images/1/1b/Chareyre&Villard2005_licensed.pdf) GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.8),
triax, TriaxialStateRecorder(iterPeriod=100,file='150,damp0.3,rate 0.005,NEW50,alphaKr=0.5,young=150e6,poisson=0.25,frictionAngle=radians(36.28),,etaRoll=0.025,density=2600,wall36.28,'+key),
newton
]
Hi Bruno,
The changes are as per below: ( As mentioned before just material property and engine)
Can you please advise?
original code:
O.materials. append( FrictMat( young=young, poisson= 0.5,frictionAng le=radians( compFricDegree) ,density= 2600,label= 'spheres' )) append( FrictMat( young=young, poisson= 0.5,frictionAng le=0,density= 0,label= 'walls' ))
O.materials.
....
.
.
.
O.engines=[ ollider( [Bo1_Sphere_ Aabb(), Bo1_Box_ Aabb()] ), Sphere_ Sphere_ ScGeom( ),Ig2_Box_ Sphere_ ScGeom( )], FrictMat_ FrictMat_ FrictPhys( )], ScGeom_ FrictPhys_ CundallStrack( )] /yade-dem. org/w/images/ 1/1b/Chareyre& Villard2005_ licensed. pdf) sTimeStepper( active= 1,timeStepUpdat eInterval= 100,timestepSaf etyCoefficient= 0.8), ecorder( iterPeriod= 100,file= 'WallStresses' +table. key),
ForceResetter(),
InsertionSortC
InteractionLoop(
[Ig2_
[Ip2_
[Law2_
),
## We will use the global stiffness of each body to determine an optimal timestep (see https:/
GlobalStiffnes
triax,
TriaxialStateR
newton
]
###############
Current code:
O.materials. append( CohFrictMat( alphaKr= 0.5,young= young,poisson= 0.25,frictionAn gle=radians( 36.28), normalCohesion= 7.5e3,shearCohe sion=2. 25e3,momentRota tionLaw= True,etaRoll= 0.001,density= 2600,isCohesive =True,label= 'spheres' )) append( CohFrictMat( young=young, poisson= 0.25,frictionAn gle=radians( 36.28), density= 0,label= 'walls' ))
O.materials.
......
.
.
.
O.engines=[
ForceResetter( ),
InsertionSortC ollider( [Bo1_Sphere_ Aabb(), Bo1_Box_ Aabb()] ),
InteractionLoo p(
[Ig2_ Sphere_ Sphere_ ScGeom( ),Ig2_Box_ Sphere_ ScGeom( )],
[Ip2_ FrictMat_ FrictMat_ FrictPhys( ),Ip2_CohFrictM at_CohFrictMat_ CohFrictPhys( label=" cohesiveIp" )], CohFrictMat_ CohFrictMat_ CohFrictPhys( setCohesionNow= True,label= "cohesiveIp" )],
[Law2_ ScGeom_ FrictPhys_ CundallStrack( ),Law2_ ScGeom_ CohFrictPhys_ CohesionMoment( alForm= True, #useIncrementalForm is turned on as we want plasticity on the contact moments use_moment_ law=True, #if we want "rolling" friction even if the contact is not cohesive (or cohesion is broken), we will have to turn this true somewhere 'cohesiveLaw' )] ScGeom_ CohFrictPhys_ CohesionMoment( talForm= True, #useIncrementalForm is turned on as we want plasticity on the contact moments use_moment_ law=True, #if we want "rolling" friction even if the contact is not cohesive (or cohesion is broken), we will have to turn this true somewhere 'cohesiveLaw' )] /yade-dem. org/w/images/ 1/1b/Chareyre& Villard2005_ licensed. pdf)
GlobalStiffnes sTimeStepper( active= 1,timeStepUpdat eInterval= 100,timestepSaf etyCoefficient= 0.8),
TriaxialStateR ecorder( iterPeriod= 100,file= '150,damp0. 3,rate 0.005,NEW50, alphaKr= 0.5,young= 150e6,poisson= 0.25,frictionAn gle=radians( 36.28), ,etaRoll= 0.025,density= 2600,wall36. 28,'+key) ,
#[Ip2_
useIncrement
always_
label=
#[Law2_
#useIncremen
#always_
#label=
),
## We will use the global stiffness of each body to determine an optimal timestep (see https:/
triax,
newton
]