yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #11745
Re: [Question #270627]: translate problem
Question #270627 on Yade changed:
https://answers.launchpad.net/yade/+question/270627
MOUSSIER posted a new comment:
And, just in case, this is not enough for you to localize the problem,
here is the part of the program where clumps grow, gravity is added and
stabilisation occurs :
if 0 in phase: #BOOST GROWING
dS=100*stressGoal-abs(stress) #target is 100x the real target to gain speed in the first growth phase
growFactor = 1.+dS*growSpeedBoost/stressGoal
growFactor = max(min(growSpeedBoost+1.,growFactor),1.-growSpeedBoost)
if(growFactor<0.95 or growFactor>1.05): writeInLog( "WARNING, growFactor =",growFactor)
growParticles(growFactor,1,1)
if(dS < 0.):
writeInLog( "Boost growing finished, perform normal growing.")
saveSim("Phase_0")
writeInLog( "Simulation saved to",scriptPath+"/saves/Phase0")
name="Phase_0"
extractInfos00()
phase.remove(0);phase.append(1)
#O.pause()
if 1 in phase: #NORMAL GROWING
dS=stressGoal-abs(stress)
if(abs(dS)<stressTolerance): stressReachedSince+=1
else: stressReachedSince=0
if(stressReachedSince>30 and not 2 in phase):
phase.append(2)
writeInLog( "Stress stabilized at",stressGoal,"Pa.")
# saveSim("StressOk") ; writeInLog( "Simulation saved to",scriptPath+"/saves/StressOk")
growFactor = 1.+dS*growSpeed
growFactor=max(min(growFactor,1+growSpeedBoost),1-growSpeedBoost)
growParticles(growFactor,1,1)
if 2 in phase: #set parameters
O.materials[sphereMatId].frictionAngle=radians(finalFricDegree); writeInLog( "O.materials[sphereMatId].frictionAngle=radians(",finalFricDegree,")")
setContactFriction(radians(finalFricDegree)); writeInLog( "setContactFriction(radians(",finalFricDegree,"))")
newton.gravity=[0.,-9.8,0.]; writeInLog("newton.gravity=[0.,-9.8,0.]")
phase=[2.5]
writeInLog( "Paving mass =",getMassFromIds(pavingIds),"Kg.")
if(enableGrid):writeInLog( "Grid mass =",getMassFromIds(nodesIds),"Kg.")
writeInLog( "Soil mass =",getSoilMass(),"Kg.")
O.materials[softSoilMatId].young=softSoilYoungFinal
writeInLog( "Soft soil Young =",O.materials[softSoilMatId].young,"Pa.")
for i in O.bodies[lowBoxId].intrs():
O.interactions.erase(i.id1,i.id2)
#writeInLog( "separationBoxId =",separationBoxId[0])
#O.bodies.erase(separationBoxId[0])
if 2.5 in phase:
if(getUBF()<2.*stabCrit):
unlockPaving()
saveSim("Phase2.5") ;
writeInLog( "Simulation saved to",scriptPath+"/saves/Phase2.5")
name="Phase_2.5"
extractInfos25()
O.pause()
At the end of the phase 2.5, the settlement of the sphereMatId is
abnormally high.
--
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.