← Back to team overview

yade-users team mailing list archive

[Question #266828]: How to reset the repulsive forces at the beginning of a compression test

 

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

Hello,
This question is related to question #264456 : https://answers.launchpad.net/yade/+question/264456
I created a spherical assembly made up of smaller spheres bounded with cohesion which I submit to compression. The ojective of the simulations is to reproduce failure in the spherical assembly induced by successive decohesion.
Due to initial interpenetration, there is some repulsive forces that broke the cohesion at the beginnig of the test (If I increase the gap between balls there are not enough contacts between spheres. 

So I though to reset the repulsive forces to solve this problem, by using unp equal to penetration depth.
But I couldn't manage to succeed in this task.

Is anyone can help me to do this?

thanks.

Regards, Damien

this is piece of my code (I left only the creation of the sphere assembly-the problem appears even without loading this assembly):

from yade import pack
from math import *

cohN=50e6
cohT=35e6
E=50e9
nu=0.3
d=2310
phi=35
rayon_s=0.005
rayon_g=0.05

O.materials.append(CohFrictMat(young=E,poisson=nu,density=d,frictionAngle=radians(phi),normalCohesion=cohN,shearCohesion=cohT,label='sol'))

sp=pack.regularHexa(yade._packPredicates.inSphere(center=(0,0,0),radius=rayon_g),gap=0,radius=rayon_s,material='sol') 
O.bodies.append(sp)

O.engines=[
	ForceResetter(),
	InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=1),Bo1_Box_Aabb()]),
	InteractionLoop(
		[Ig2_Sphere_Sphere_ScGeom6D(interactionDetectionFactor=1),Ig2_Box_Sphere_ScGeom6D()],
		[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True,setCohesionOnNewContacts=False),Ip2_FrictMat_FrictMat_FrictPhys()],
		[Law2_ScGeom6D_CohFrictPhys_CohesionMoment()]),
	GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=5,timestepSafetyCoefficient=0.8, defaultDt=utils.PWaveTimeStep()),
	NewtonIntegrator(damping=0.3)]

O.dt=utils.PWaveTimeStep()
O.usesTimeStepper=True

-- 
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.


Follow ups