yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #14693
[Question #626465]: The relationship between stress-strain curve and load speed
New question #626465 on Yade:
https://answers.launchpad.net/yade/+question/626465
Hello,
I wrote an example using the function 'Peri3dController' to control load condition. I found the following phenomena.
(1) If I just change the critical time step 'O.dt' but remain the number of load steps 'nSteps' unchanged, the stress-strain curve of the sample will change obviously.
(2) If I just change the number of load steps 'nSteps' but remain the critical step 'O.dt' unchanged, the stress-strain curve of the sample will change obviously as well.
(3) If I change the number of load steps 'nSteps' and critical step 'O.dt' but remain the product of 'nStep' and 'O.dt' unchanged, the stress-strain curve of the sample will change but not obviously.
In conclusion, I think the stress-strain curve of the sample is not just related to critical step 'O.dt' and the number of load steps 'nSteps', but related to their product, that is the load speed( strain divide load time).
Do I have some misunderstandings about it? The following is my code.
#########################################################
import string
from yade import plot,qt
from yade.pack import *
from yade import pack, plot
O.materials.append(CpmMat(damLaw=0,young=170e9,density=4800,frictionAngle=atan(0.8),poisson=0.4,sigmaT=20e8,epsCrackOnset=0.8e-4,relDuctility=300))
initSize=0.028
sp=pack.randomPeriPack(radius=.000625,initSize=Vector3(initSize,initSize,initSize))
O.periodic=True
sp.toSimulation()
# critical time step
O.dt=5e-8
plot.plots={'ey':('sy',)}
def plotAddData():
plot.addData(
sy=p3d.stress[1],
ey=p3d.strain[1],
)
EnlargeFactor=1.5
EnlargeFactor=1.0
O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=EnlargeFactor,label='bo1s')]),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=EnlargeFactor,label='ig2ss')],
[Ip2_CpmMat_CpmMat_CpmPhys()],[Law2_ScGeom_CpmPhys_Cpm()]),
NewtonIntegrator(),
Peri3dController(
# number of load steps
nSteps=20000,
doneHook='print "Simulation with Peri3dController finished."; O.pause()',
label='p3d'
),
PyRunner(command='plotAddData()',iterPeriod=1),
]
p3d.stressMask=0b100001
p3d.goal=(0,-0.008,0,0,0,0)
O.step()
bo1s.aabbEnlargeFactor=ig2ss.interactionDetectionFactor=1.
O.run(); O.wait()
plot.saveDataTxt('output.txt')
plot.plot(subPlots=False)
--
You received this question notification because your team yade-users is
an answer contact for Yade.