Re: [Yade-users] [Question #694217]: Normal stiffness of contact under tension
Question #694217 on Yade changed: https://answers.launchpad.net/yade/+question/694217 Aaron Liu posted a new comment: Hi Bruno, I think u are right. But I would like to have a model that two hard particles are in contact with each other and another soft bonding material spread in the interspace. for example, you have a box of glass beads compacted well and then inject glue into gaps until it fulfills all the space. So in this case, when two particles are in compression, the stiffness is mostly dependent on the stiffness of the particle itself. cause they are in contact and soft bonding material could be ignored. But when you pull them away from each other, the bonding material should play the key role of stiffness. Best, Aaron -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #694492]: Normal stiffness define
Question #694492 on Yade changed: https://answers.launchpad.net/yade/+question/694492 Status: Answered => Solved Aaron Liu confirmed that the question is solved: Thanks Jan Stránský, that solved my question. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #694492]: Normal stiffness define
Question #694492 on Yade changed: https://answers.launchpad.net/yade/+question/694492 Status: Answered => Open Aaron Liu is still having a problem: Hi Jan, Thank you so much again for your complete answers. >What does "soft" and "hard" exactly mean? Low and high stiffness? Low and high >strength? I mean the stiffness here. I see what you mean. We have many ways to represent and model the two-phase (particle and cement). If I would like to model the cement as the interaction between particles. And let stiffness under compression and tension are different. For example, two particles(E=1e10) are connected and their interaction tension stiffness is 1e4 Pa and compression stiffness is 1e8 pa. Since 1/(E1.D1)+1/(E2.D2) is used to define the normal stiffness as (https://www.yade-dem.org/doc/yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_FrictPhys) described, and the normal stiffness no matter compression and tension is the same and has to be related to E of particles. I am still wondering that is there any ways to define the stiffness of a pair of compression and tension differently and the stiffness is independent to E of particles. Best, Aaron -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
[Yade-users] [Question #694492]: Normal stiffness define
New question #694492 on Yade: https://answers.launchpad.net/yade/+question/694492 Hi guys, I was wondering the normal stiffness in yade is calculated by (https://yade-dem.org/doc/formulation.html#normal-stiffness). And I posted one similar question ( https://answers.launchpad.net/yade/+question/694217) before but I am struggling again for some questions: 1. The normal stiffness of compression and tension is the same in the definition, does that mean the macro-material is one phase? In another word, two particles are connected by cement, if they have the same tension and compression stiffness, does that mean that the cement has the same mechanical properties as particles. However, Assume that cement is very soft and particles are hard, I think the tensile stiffness would be much smaller than compression. So is this situation could be realized by Yade? Thank u very much. Cheers, Aaron -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #694253]: JCFpmMat parameters define
Question #694253 on Yade changed: https://answers.launchpad.net/yade/+question/694253 Aaron Liu confirmed that the question is solved: Thanks Jérôme Duriez, that solved my question. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #694253]: JCFpmMat parameters define
Question #694253 on Yade changed: https://answers.launchpad.net/yade/+question/694253 Status: Answered => Solved Aaron Liu confirmed that the question is solved: Hi Jérôme and Luc, Thank u so much for the kind explanation. I will take a research on it further. Best, Aaron -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
[Yade-users] [Question #694253]: JCFpmMat parameters define
New question #694253 on Yade: https://answers.launchpad.net/yade/+question/694253 Dear Yade users, I found the JCFpmMat and related functors might be good to simulate bonded particle problems(https://answers.launchpad.net/yade/+question/635871). I was trying to simulate a uniaxial compression of a cubic brick that is making by using soft bonding material connecting hard sand particles(the mechanical parameters could be given). So my brick is made of two parts: soft bonding material and hard particles. Here are my questions. In JCFpmMat (https://yade-dem.org/doc/yade.wrapper.html#yade.wrapper.JCFpmMat), it defines a lot of stiffness, strength parameters which are really confusing. 1. What are the differences between cohesion and jointCohesion? 2. What is the meaning of joint surface, does it describe the strength/stiffness of debonding? if so, why do we have to define the stiffness of debonding? why not just define the stiffness of the bonding material itself? 3. What is the young in my case, it depends on IP2 functor, but I did not find related information. Does it mean the Young modulus of particles? from __future__ import division from __future__ import print_function from future import standard_library standard_library.install_aliases() from yade import plot,pack,timing import time, sys, os, copy readParamsFromTable(noTableOk=True, # unknownOk=True, young=1e6, poisson=.6, sigmaT=3.5e6, frictionAngle=radians(20), epsCrackOnset=1e-4, relDuctility=30, intRadius=1.5, dtSafety=.8, damping=0.4, strainRateTension=-1, strainRateCompression=-.5, setSpeeds=True, specimenLength=.04, sphereRadius=0.0005, # isotropic confinement (should be negative) isoPrestress=0, jointDil=radians(0), jointFrict=radians(20), OUT='compressionTest_JCFPM' ) from yade.params.table import * #alphaKr=30,alphaKtw=30, #O.materials.append(JCFpmMat(type=1,young=1e10,frictionAngle=radians(30),density=2600,poisson=0.3,tensileStrength=1e6,cohesion=1e6,jointNormalStiffness=1e7,jointShearStiffness=1e7,jointCohesion=1e6,jointFrictionAngle=atan(0.8),jointDilationAngle=radians(0)) O.materials.append(JCFpmMat(type=1,young=1e6,frictionAngle=radians(30),density=3000,poisson=0.3,tensileStrength=3e7,cohesion=1e6,jointNormalStiffness=1e7,jointShearStiffness=1e4,jointCohesion=1e4,jointFrictionAngle=jointFrict,jointDilationAngle=jointDil)) #O.materials.append(CohFrictMat(young=young,poisson=poisson,density=2600,frictionAngle=radians(30),normalCohesion=1e3,shearCohesion=1e3,momentRotationLaw=True,etaRoll=0.1,label='spheres')) #concreteId=O.materials.append(FrictMat(young=15e6,poisson=.4,frictionAngle=0,density=0,label='frictionlessWalls')) sp=pack.randomDensePack(pack.inAlignedBox((0,0,0),(specimenLength,specimenLength,specimenLength)),spheresInCell=2000,radius=sphereRadius,memoizeDb='/tmp/triaxPackCache.sqlite',returnSpherePack=True) sp.toSimulation() bb=uniaxialTestFeatures() negIds,posIds,axis,crossSectionArea=bb['negIds'],bb['posIds'],bb['axis'],bb['area'] O.dt=0.9*PWaveTimeStep() O.engines=[ ForceResetter(), InsertionSortCollider([Bo1_Sphere_Aabb(label='is2aabb'),],verletDist=.05*sphereRadius), InteractionLoop( [Ig2_Sphere_Sphere_ScGeom()], [Ip2_JCFpmMat_JCFpmMat_JCFpmPhys(cohesiveTresholdIteration=1,label='interactionPhys')], [Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM(recordCracks=True,Key=OUT,label='interactionLaw'),Law2_ScGeom_FrictPhys_CundallStrack()] ), NewtonIntegrator(damping=damping,label='damper'), #CpmStateUpdater(realPeriod=.5), UniaxialStrainer(strainRate=strainRateTension,axis=axis,asymmetry=0,posIds=posIds,negIds=negIds,crossSectionArea=crossSectionArea,blockDisplacements=False,blockRotations=False,setSpeeds=setSpeeds,label='strainer'), PyRunner(virtPeriod=1e-3/strainRateTension,realPeriod=1,command='addPlotData()',label='plotDataCollector',initRun=True), #PyRunner(realPeriod=4å,command='stopIfDamaged()',label='damageChecker'), # ] def addPlotData(): yade.plot.addData({'t':O.time,'i':O.iter,'eps':-(strainer.strain),'sigma':-(strainer.avgStress+isoPrestress),}) print(strainer.strain) plot.plots={'eps':('sigma',)} plot.plot(subPlots=False) O.saveTmp('initial'); O.timingEnabled=False O.run() #InteractionLoop( # # ), #O.materials.append(JCFpmMat(type=1,young=1e8,frictionAngle=radians(30),density=3000,poisson=0.3,tensileStrength=1e6,cohesion=1e6,jointNormalStiffness=1e7,jointShearStiffness=1e7,jointCohesion=1e6,jointFrictionAngle=atan(0.8),jointDilationAngle=radians(0)) Cheers, Aaron -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.
Re: [Yade-users] [Question #694217]: Normal stiffness of contact under tension
Question #694217 on Yade changed: https://answers.launchpad.net/yade/+question/694217 Aaron Liu confirmed that the question is solved: Thanks Jan Stránský, that solved my question. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #694217]: Normal stiffness of contact under tension
Question #694217 on Yade changed: https://answers.launchpad.net/yade/+question/694217 Status: Answered => Solved Aaron Liu confirmed that the question is solved: Jan, Thank u so much. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #694217]: Normal stiffness of contact under tension
Question #694217 on Yade changed: https://answers.launchpad.net/yade/+question/694217 Status: Answered => Open Aaron Liu is still having a problem: Hi Jan, Thank u so much for your kind reply. It is really helpful for understanding. >However, for simple models, the stiffness of compression and tension equals, >which is just from the definition of elastic material. If you need different behavior, you have to use some more fancy material models. Does it mean that the whole material is made of the same material? I was wondering that when the mechanical properties(Elastic modulus and strength) of bonding material is distinct from particle material, like assume the bonding material is very soft and particles are tough, what material model and the physical module would be better satisfied? Cheers, Aaron -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
[Yade-users] [Question #694217]: Normal stiffness of contact under tension
New question #694217 on Yade: https://answers.launchpad.net/yade/+question/694217 Hi guys, I am a new user of Yade and I am trying to simulate a cohesive material consists of sand particles that are connected by some elastic material. I choose the CohfrictMat as material and Ip2_CohFrictMat_CohFrictMat_CohFrictPhys for bonding. The question is when I define the normal stiffness of bonding (or contact), it is calculated by [1] harmonic average like: 1/(E1.D1)+1/(E2.D2). It is reasonable when two particles are compacting to each other. But when the two particles are under tension stress and leave each other, the stiffness of bonding should have nothing to do with the modulus of particle self and it should only depend on the bonding material itself. Also the shear stiffness should be different. As we know[2] the tensile crack is one of the main mechanism of compression. So how to define the stiffness of tensile? ###here is my code from __future__ import division from __future__ import print_function from future import standard_library standard_library.install_aliases() from yade import plot,pack,timing import time, sys, os, copy readParamsFromTable(noTableOk=True, # unknownOk=True, young=1e6, poisson=.6, sigmaT=3.5e6, frictionAngle=atan(0.8), epsCrackOnset=1e-4, relDuctility=30, intRadius=1.5, dtSafety=.8, damping=0.4, strainRateTension=-1, strainRateCompression=-.5, setSpeeds=True, specimenLength=.04, sphereRadius=0.001, # isotropic confinement (should be negative) isoPrestress=0, ) from yade.params.table import * #alphaKr=30,alphaKtw=30, O.materials.append(CohFrictMat(young=young,poisson=poisson,density=2600,frictionAngle=radians(30),normalCohesion=1e3,shearCohesion=1e3,momentRotationLaw=True,etaRoll=0.1,label='spheres')) #concreteId=O.materials.append(FrictMat(young=15e6,poisson=.4,frictionAngle=0,density=0,label='frictionlessWalls')) sp=pack.randomDensePack(pack.inAlignedBox((0,0,0),(specimenLength,specimenLength,specimenLength)),spheresInCell=2000,radius=sphereRadius,memoizeDb='/tmp/triaxPackCache.sqlite',returnSpherePack=True) sp.toSimulation() bb=uniaxialTestFeatures() negIds,posIds,axis,crossSectionArea=bb['negIds'],bb['posIds'],bb['axis'],bb['area'] O.dt=0.5*PWaveTimeStep() O.engines=[ ForceResetter(), InsertionSortCollider([Bo1_Sphere_Aabb(label='is2aabb'),],verletDist=.05*sphereRadius), InteractionLoop( [Ig2_Sphere_Sphere_ScGeom6D()], [Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow = True)], #setCohesionNow = True,setCohesionOnNewContacts = True [Law2_ScGeom6D_CohFrictPhys_CohesionMoment(useIncrementalForm=True), Law2_ScGeom_FrictPhys_CundallStrack()], ), NewtonIntegrator(damping=damping,label='damper'), #CpmStateUpdater(realPeriod=.5), UniaxialStrainer(strainRate=strainRateTension,axis=axis,asymmetry=0,posIds=posIds,negIds=negIds,crossSectionArea=crossSectionArea,blockDisplacements=False,blockRotations=False,setSpeeds=setSpeeds,label='strainer'), PyRunner(virtPeriod=1e-3/strainRateTension,realPeriod=1,command='addPlotData()',label='plotDataCollector',initRun=True), #PyRunner(realPeriod=4,command='stopIfDamaged()',label='damageChecker'), # ] plot.plots={'eps':('sigma',)} def addPlotData(): yade.plot.addData({'t':O.time,'i':O.iter,'eps':-(strainer.strain),'sigma':-(strainer.avgStress+isoPrestress),}) plot.plot(subPlots=False) O.timingEnabled=False O.run() Best regards, Aaron [1] https://www.yade-dem.org/doc/yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_FrictPhys [2] Potyondy, D. O., & Cundall, P. A. (2004). A bonded-particle model for rock. International journal of rock mechanics and mining sciences, 41(8), 1329-1364. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #680577]: how to move a wall by applying a specific force?
Question #680577 on Yade changed: https://answers.launchpad.net/yade/+question/680577 Aaron Liu confirmed that the question is solved: Thanks Jan Stránský, that solved my question. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #680577]: how to move a wall by applying a specific force?
Question #680577 on Yade changed: https://answers.launchpad.net/yade/+question/680577 Status: Answered => Solved Aaron Liu confirmed that the question is solved: Thanks Jan, that solved my question. And next time I'll follow you advise to provide a MWE and make the question clearer. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #680577]: how to move a wall by applying a specific force?
Question #680577 on Yade changed: https://answers.launchpad.net/yade/+question/680577 Status: Needs information => Open Aaron Liu gave more information on the question: Hi Jan, Thanks for your kind reply. I am sorry for the vague expression. The body with wall_id ID is a Wall. Thanks, Xin -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
[Yade-users] [Question #680577]: how to move a wall by applying a specific force?
New question #680577 on Yade: https://answers.launchpad.net/yade/+question/680577 Hi all, I need to move a wall by applying a specific force in the simulation. This force may change within the processs. I have tried to use the command O.forces.addF(wall_id,Vector3(10,0.,0.)) but the position of the wall is not chnaged. Can you please give some suggestions on how to do that? Xin -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp