yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #15583
Re: [Question #657061]: Compression strength
Question #657061 on Yade changed:
https://answers.launchpad.net/yade/+question/657061
Status: Answered => Open
SayedHessam is still having a problem:
Dear Jan,
Thank you for your perfect response.
However, my result is different than my reference. Because the graph is based on LOAD and DISPLACEMENT. While my result is based on FORCE. So, How can I change force to load in my script?
Here is my final script:
from yade import pack
from math import *
from yade import plot
from yade import qt
vitesse=0.1
cohN=50e5
cohT=35e5
E=50e9
nu=0.3
d=2310
phi=35
rayon_s=0.005
rayon_g=0.05
rayon_boite=rayon_g+0.0001
espace=0.0
gravity=0
O.materials.append(CohFrictMat(young=E,poisson=nu,density=d,frictionAngle=radians(phi),normalCohesion=cohN,shearCohesion=cohT,label='sol'))
O.materials.append(CohFrictMat(young=10e13,poisson=0,density=10000,frictionAngle=radians(10),normalCohesion=0,shearCohesion=0,label='walls'))
mn,mx=(-rayon_boite*2,-rayon_boite,-rayon_boite*2),(rayon_boite*2,rayon_boite,rayon_boite*2)
walls=utils.aabbWalls([mn,mx],thickness=0,material='walls')
wallIds=O.bodies.append(walls)
sp=pack.regularHexa(yade._packPredicates.inSphere(center=(0,0,0),radius=rayon_g),gap=espace,radius=rayon_s,material='sol')
O.bodies.append(sp)
for i in O.interactions:
i.phys.unp = i.phys.penetrationDepth
def plotAddData():
plot.addData(
dspl = O.bodies[3].state.displ()[1],
force = O.forces.f(3)[1],
)
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()),
TranslationEngine(
translationAxis=(0,-1,0),
ids=[3],
label='tl',
velocity=vitesse
),
NewtonIntegrator(damping=0.3, gravity=[0, gravity, 0]),
PyRunner(iterPeriod=10,command='plotAddData()'),
]
O.dt=utils.PWaveTimeStep()
O.usesTimeStepper=True
qt.Controller()
qt.View()
plot.plots = {'dspl': 'force'}
plot.plot()
O.saveTmp()
--
You received this question notification because your team yade-users is
an answer contact for Yade.