[Yade-users] [Question #196012]: Can not get any dynamic visualization of my scene with (qt.Controller and qt.View) before the end of my calculation
New question #196012 on Yade: https://answers.launchpad.net/yade/+question/196012 Hello, I would like to visualise my simulations in live thanks to the graphical interface called by qt.Controller and qt.View. However the window of the scene and the one of the controller remains blocked. I can trigger in dynamic the scene only when my calculation is finished after O.pause(). Did you already meet this kind of issue ? Thank's for your help, Francois -- You received this question notification because you are a member of yade-users, which 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 #204830]: Value of the sliding threshold in the ElasticContactLaw
New question #204830 on Yade: https://answers.launchpad.net/yade/+question/204830 This question is related to a problem of impact between bodies (spheres) using the ElasticContactLaw: Would it be possible to have the numerical value of the sliding threshold commonly used ? Where can I find all the details on this interaction law ? Thank you, Francois -- You received this question notification because you are a member of yade-users, which 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 #210316]: Spring-dashpot contact model
New question #210316 on Yade: https://answers.launchpad.net/yade/+question/210316 Hello, Is there a working version of the spring-dashpot contact model on Yade. Thank you, Francois -- You received this question notification because you are a member of yade-users, which 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 #210316]: Spring-dashpot contact model
Question #210316 on Yade changed: https://answers.launchpad.net/yade/+question/210316 Status: Answered => Open Rioual is still having a problem: Bruno, Can you confirm me that the tangential component of this force law is taken as the minimum between a term corresponding to tangential elasticity (controlled by ks) and a term corresponding to the Coulomb law of dynamic friction for oblique sliding impacts (see for instance J.Schafer, S.Dippel and D.E.Wolf, J. Phys. I, 6 (1996) 5-20). Do you have examples where this law that you mentioned has been used Francois -- You received this question notification because you are a member of yade-users, which 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 #679196]: swelling of particles
New question #679196 on Yade: https://answers.launchpad.net/yade/+question/679196 Hello, How can I introduce in my yade code the swelling (increase of volume) of my particles with time ?? (due to thermal effects) I think it has been used with yade in the past (Charlas et al, 2013).. Thank you for your help, Best regards Fr. -- 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 #679196]: swelling of particles
Question #679196 on Yade changed: https://answers.launchpad.net/yade/+question/679196 Status: Answered => Open Rioual is still having a problem: Hello Robert, ...Thank you for your answer. But, How do i introduce a condition on the time step in yade ?? for modelling a swelling that evolves with time with a predefined law as a function of time ?? Thank you Fr. -- 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 #679196]: swelling of particles
Question #679196 on Yade changed: https://answers.launchpad.net/yade/+question/679196 Status: Answered => Solved Rioual confirmed that the question is solved: great explanations, thanks Robert! -- 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 #679295]: basic question concerning the oedemeter test code
New question #679295 on Yade: https://answers.launchpad.net/yade/+question/679295 Hello, I am testing the oedometer test program (see below) and I have a few basic questions of understanding: 1- "while 1:" (see *1*): what is exactly the condition "1" ?? what does this instruction mean ?? 2- How do you control exactly the order of the different processes: A-making the packing first by making the particles grow B- then "oedemeter section, check bulk modulus C- then starting oedemeter simulation with O.run(200,1) (on last line) you are supposed to read all the script before the line 200 times so redo the previous processes (A and B) ?? which you don't want. Thank you for your enlightements, Fr. # -*- coding: utf-8 -*- #* # Copyright (C) 2010 by Bruno Chareyre * # bruno.chareyre_at_grenoble-inp.fr * #* # This program is free software; it is licensed under the terms of the * # GNU General Public License v2 or later. See file LICENSE for details. * #*/ ## Example script for using the DEM-PFV coupling introduced with E. Catalano, as reported in: ## * [Chareyre2012a] Chareyre, B., Cortis, A., Catalano, E., Barthélemy, E. (2012), Pore-scale modeling of viscous flow and induced forces in dense sphere packings. Transport in Porous Media (92), pages 473-493. DOI 10.1007/s11242-011-9915-6 ## http://dx.doi.org/10.1007/s11242-011-9915-6 ## * [Catalano2014a] Catalano, E., Chareyre, B., Barthélémy, E. (2013), Pore-scale modeling of fluid-particles interaction and emerging poromechanical effects. International Journal for Numerical and Analytical Methods in Geomechanics. DOI 10.1002/nag.2198 ## http://arxiv.org/pdf/1304.4895.pdf ## Also used in: ## * Tong et al.2012 (http://dx.doi.org/10.2516/ogst/2012032) ## * Sari et al 2011 (http://people.3sr-grenoble.fr/users/bchareyre/pubs/SariChareyreCatalanoPhilippeVincens_Particles2011.pdf) ## The DEM-PFV is applied here to 1D consolidation (oedometer test). The example includes the determination of oedometer modulus Ee and permeability K. ## The 1D consolidation is simulated as a coupled problem and the analytical solution corresponding to the abovementionned Ee and K is used for comparison. ## See triax-tutorial/script-session1.py for more detailed explanations of the packing generation procedure. ## __ First section, similar to triax-tutorial/script-session1.py _ from yade import pack num_spheres=1000# number of spheres young=1e6 compFricDegree = 3 # initial contact friction during the confining phase finalFricDegree = 30 # contact friction during the deviatoric loading mn,mx=Vector3(0,0,0),Vector3(1,1,1) # corners of the initial packing O.materials.append(FrictMat(young=young,poisson=0.5,frictionAngle=radians(compFricDegree),density=2600,label='spheres')) O.materials.append(FrictMat(young=young,poisson=0.5,frictionAngle=0,density=0,label='walls')) walls=aabbWalls([mn,mx],thickness=0,material='walls') wallIds=O.bodies.append(walls) sp=pack.SpherePack() sp.makeCloud(mn,mx,-1,0.,num_spheres,False, 0.95,seed=1) #"seed" make the "random" generation always the same sp.toSimulation(material='spheres') triax=TriaxialStressController( maxMultiplier=1.+2e4/young, # spheres growing factor (fast growth) finalMaxMultiplier=1.+2e3/young, # spheres growing factor (slow growth) thickness = 0, stressMask = 7, max_vel = 0.005, internalCompaction=True, # If true the confining pressure is generated by growing particles ) newton=NewtonIntegrator(damping=0.2) O.engines=[ ForceResetter(), InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]), InteractionLoop( [Ig2_Sphere_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()],label="iloop" ), FlowEngine(dead=1,label="flow"),#introduced as a dead engine for the moment, see 2nd section GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.8), triax, newton ] triax.goal1=triax.goal2=triax.goal3=-1 while 1: (**1**) O.run(1000, True) unb=unbalancedForce() if unb<0.001 and abs(-1-triax.meanStress)/1<0.001: break setContactFriction(radians(finalFricDegree)) ## __ Oedometer section _ #A. Check bulk modulus of the dry material from load/unload cycles triax.stressMask=2 triax.goal1=triax.goal3=0 triax.internalCompaction=False triax.wall_bottom_activated=False #load triax.goal2=-11000; O.run(2000,1) #unload triax.goal2=-1; O.run(2000,1) #load triax.goal2=-
[Yade-users] [Question #679320]: squashing modelling
New question #679320 on Yade: https://answers.launchpad.net/yade/+question/679320 Hello, I would like to model the vertical squashing (compression) of a porous material filled with a fluid. The material is inserted in an initially cubic box with six impermeable faces. During the squashing the material is supposed to expand freely along the side faces of the box. I want to measure the force felt by top plate (face). For this model, I was inspired by the oedemeter.py code developed in yade (examples) which uses the TriaxialStressController. 1- My first question concerns the parametrization of the flow engine (* at the end of message): I want to model as initial conditions 6 impermeable boundaries as: flow.bndCondIsPressure=[False,False,False,False,False,False] #flow.bndCondValue=[0,0,0,0,0,0] but I have immediatly some error messages concerning all the bodies of the code: "55 : Vh==NULL!! id=55 Point=-261779 255626 -257189 rad=0.0669795 227 : Vh==NULL!! id=227 Point=281321 290581 293209 rad=0.0610796 285 : Vh==NULL!! id=285 Point=302977 -297801 305075 rad=0.0590901 304 : Vh==NULL!! id=304 Point=-457272 -456443 291186 rad=0.0584384 354 : Vh==NULL!! id=354 Point=-295804 297047 300808 rad=0.0567233 496 : Vh==NULL!! id=496 Point=303403 284717 -313298 rad=0.0518524 520 : Vh==NULL!! id=520 Point=310560 -309795 -315643 rad=0.0510292 572 : Vh==NULL!! id=572 Point=-336225 -819563 -802613 rad=0.0492455 CHOLMOD warning: matrix not positive definite something went wrong in Cholesky factorization, use LDLt as fallback this time 6 : Vh==NULL!! id=6 Point=-2.05296e+15 -1.03117e+16 6.74598e+16 rad=0.0686603 7 : Vh==NULL!! id=7 Point=-6.70813e+13 7.31321e+16 5.4678e+16 rad=0.068626 etc..." when I write instead: flow.bndCondIsPressure=[False,False,False,True,False,False] #flow.bndCondValue=[0,0,0,0,0,0] I have no error message apparently but this is not what I want! 2- My second question concerns the control of the dynamics of the squashing I want and the motion for the 6 plates: a motion driven by an applied strain rate (0.1) on vertical direction and free motion with no applied pressure for the 4 side faces: " triax.stressMask=5 triax.internalCompaction=False triax.goal2=-0.1 triax.goal1= 0 triax.goal3= 0 triax.wall_left_activated= True triax.wall_right_activated= True triax.wall_front_activated= True triax.wall_back_activated= True triax.wall_top_activated= True " when I ask for printing the force and position of the top plate "global plate: plate = O.bodies[triax.wall_top_id] Ftot0 = abs(O.forces.f(plate.id)[0]) Ftot1 = abs(O.forces.f(plate.id)[1]) Ftot2 = abs(O.forces.f(plate.id)[2]) xtot = plate.state.pos[0] ytot = plate.state.pos[1] ztot = plate.state.pos[2]" I get a constant force Ftot1 an no motion at all of the upper plate (xtot, ytot, ztot)=Cst !! I don't understand. Thank you very much for your enlightments, Fr. (*) #B. Activate flow engine and set boundary conditions in order to get permeability flow.dead=0 flow.defTolerance=0.3 flow.meshUpdateInterval=200 flow.useSolver=3 flow.permeabilityFactor=1 flow.viscosity=10 flow.bndCondIsPressure=[0,0,1,1,0,0] flow.bndCondValue=[0,0,1,0,0,0] flow.boundaryUseMaxMin=[0,0,0,0,0,0] O.dt=0.1e-3 O.dynDt=False O.run(1,1) ... #D. now the compression test, impermeable at the top, impermeable at the bottom plate and on the sides flow.bndCondIsPressure=[False,False,False,False,False,False] #flow.bndCondValue=[0,0,0,0,0,0] flow.updateTriangulation=True #force remeshing to reflect new BC immediately newton.damping=0 -- 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 #679295]: basic question concerning the oedemeter test code
Question #679295 on Yade changed: https://answers.launchpad.net/yade/+question/679295 Status: Answered => Solved Rioual confirmed that the question is solved: Thanks Robert Caulk, 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 #679320]: squashing modelling
Question #679320 on Yade changed: https://answers.launchpad.net/yade/+question/679320 Status: Answered => Open Rioual is still having a problem: Hello Robert, Thank you for your answer but it has no link with my problem because I do not deal with compressible flows ! In my situation, the vertical mechanical compression induces lateral mechanical expansion. Thank you for your replies! All the best Fr. -- 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 #679320]: squashing modelling
Question #679320 on Yade changed: https://answers.launchpad.net/yade/+question/679320 Status: Answered => Open Rioual is still having a problem: Hello Robert, Indeed, it is only advised by Bruno to use "custom tricks" (?) to deal with the Undrained/incompressible case. Can you tell me more for my specific case of squashing ?? Thanks, Fr. -- 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 #679320]: squashing modelling
Question #679320 on Yade changed: https://answers.launchpad.net/yade/+question/679320 Status: Answered => Open Rioual is still having a problem: Hello, -OK, Robert, I introduced a fluid bulk modulus: the error message does not appear anymore immediately but later one in the middle of the compression process. Apparently the time of apparition of the error message depends on the value given to the fluid bulk moduluswhat are the units of this parameter in yade ?? typical values ?? - I have still my second question open concerning the force and position of the top plate (see question 2 above): it does not vary during the compression process ! Thanks for your help, Best, Fr. -- 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 #679320]: squashing modelling
Question #679320 on Yade changed: https://answers.launchpad.net/yade/+question/679320 Status: Answered => Open Rioual is still having a problem: Hello Bruno Thank's for your input. 1- I tried the simulation with different smaller time scales 1e-4, 1e-5, 1e-6 and the error messages appear at fairly the same simulation time apparently: " CHOLMOD warning: matrix not positive definite something went wrong in Cholesky factorization, use LDLt as fallback this time 65 : Vh==NULL!! id=65 Point=-0.803797 -0.683743 1.61915 rad=0.0666365 147 : Vh==NULL!! id=147 Point=-0.927542 -0.647778 1.92058 rad=0.0638237 ...etc" 2- Before the error messages, the compression is processed as can be observed on the graphical output (motion of the boundaries) but nothing changes when I print the position of the upper plate and the force on this plate. See a minimal working example code of the compression process below that shows both problems 1 and 2: ## __ First section, similar to triax-tutorial/script-session1.py _ from yade import pack num_spheres=1000# number of spheres young=1e6 C=1e6 compFricDegree = 3 # initial contact friction during the confining phase finalFricDegree = 11 # contact friction during the deviatoric loading (for ice!!) mn,mx=Vector3(0,0,0),Vector3(1,1,1) # corners of the initial packing O.materials.append(FrictMat(young=young,poisson=0.5,frictionAngle=radians(compFricDegree),density=2600,label='spheres')) O.materials.append(FrictMat(young=young,poisson=0.5,frictionAngle=0,density=0,label='walls')) walls=aabbWalls([mn,mx],thickness=0,material='walls') wallIds=O.bodies.append(walls) sp=pack.SpherePack() sp.makeCloud(mn,mx,-1,0.,num_spheres,False, 0.95,seed=1) #"seed" make the "random" generation always the same sp.toSimulation(material='spheres') triax=TriaxialStressController( maxMultiplier=1.+2e4/young, # spheres growing factor (fast growth) finalMaxMultiplier=1.+2e3/young, # spheres growing factor (slow growth) thickness = 0, stressMask = 7, max_vel = 0.005, internalCompaction=True, # If true the confining pressure is generated by growing particles ) newton=NewtonIntegrator(damping=0.2) O.engines=[ ForceResetter(), InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]), InteractionLoop( [Ig2_Sphere_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()],label="iloop" ), FlowEngine(dead=1,label="flow"),#introduced as a dead engine for the moment, see 2nd section GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.8), triax, newton ] triax.goal1=triax.goal2=triax.goal3=-1 while 1: print '***' O.run(1000, True) unb=unbalancedForce() if unb<0.001 and abs(-1-triax.meanStress)/1<0.001: break setContactFriction(radians(finalFricDegree)) ##Second section: Activate flow engine and set boundary conditions for the compression (squashing) test, impermeable on each face: flow.dead=0 flow.defTolerance=0.3 flow.meshUpdateInterval=200 flow.useSolver=3 flow.permeabilityFactor=1 flow.viscosity=10 flow.boundaryUseMaxMin=[0,0,0,0,0,0] O.dt=1e-4 O.dynDt=False flow.bndCondIsPressure=[False,False,False,False,False,False] #flow.bndCondValue=[0,0,0,0,0,0] newton.damping=0 #aditional compressibility of the fluid flow.fluidBulkModulus=1e6 triax.stressMask=5 triax.internalCompaction=False triax.goal2=-0.1 triax.goal1= 0 triax.goal3= 0 triax.wall_left_activated= True triax.wall_right_activated= True triax.wall_front_activated= True triax.wall_back_activated= True triax.wall_top_activated= True global plate plate = O.bodies[triax.wall_top_id] Ftot0 = O.forces.f(plate.id)[0] Ftot1 = O.forces.f(plate.id)[1] Ftot2 = O.forces.f(plate.id)[2] xtot = plate.state.pos[0] ytot = plate.state.pos[1] ztot = plate.state.pos[2] ## a function printing variables def history(): print 't=', O.time, 'Force on the plate (Ftot)=', Ftot0, Ftot1, Ftot2 print 't=', O.time, 'Position of the plate (xtot,ytot,ztot)=', xtot, ytot, ztot O.engines=O.engines+[PyRunner(iterPeriod=200,command='history()',label='recorder')] from yade import timing print "starting squashing simulation" O.run(200,1) timing.stats() Best wishes, Fr. -- 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 #679320]: squashing modelling
Question #679320 on Yade changed: https://answers.launchpad.net/yade/+question/679320 Status: Answered => Open Rioual is still having a problem: Hello Bruno For 2/ mistake of a beginner indeed because of my previous bad understanding of a loop in yade with o.run, now it is clear, ok, thanks !! For 1/ the crash still remains All the best Fr. -- 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 #679320]: squashing modelling
Question #679320 on Yade changed: https://answers.launchpad.net/yade/+question/679320 Rioual gave more information on the question: ...The force on the upper plate doesn't stop increasing during the run: the packing might be too packed to generate a lateral expansion of the material, it may bring problems (?) Fr. -- 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 #679320]: squashing modelling
Question #679320 on Yade changed: https://answers.launchpad.net/yade/+question/679320 Status: Open => Solved Rioual confirmed that the question is solved: The strain rate is too high... Thank you all, my problem is solved! -- 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 #679387]: packing of spheres with different properties
New question #679387 on Yade: https://answers.launchpad.net/yade/+question/679387 Hello, I want to build a random packing containing two sets of spherical particles with different material properties, average radius and radius dispersion using 1)pack.SpherePack() 2) .makeCloud() and 3) .toSimulation(). How can I do that ?? Thanks, Fr. -- 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 #679387]: packing of spheres with different properties
Question #679387 on Yade changed: https://answers.launchpad.net/yade/+question/679387 Status: Answered => Open Rioual is still having a problem: OK but are you sure there is no overlap between the two sets of spheres when you do like that ? ?? Best Fr. -- 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 #679387]: packing of spheres with different properties
Question #679387 on Yade changed: https://answers.launchpad.net/yade/+question/679387 Rioual gave more information on the question: Hello Jan, Thanks for your clear answers. So, I did what you propose and I have error messages: " 0 1 2 .. 799 800 801 802 803 804 805 " A problem with the numbering of the bodies in the for loops?? My code is below Best Fr. * from yade import pack num_spheres=1000# number of spheres nspc= int(num_spheres*3/5) nspb= int(num_spheres*1/5) young=1e6 C=1e6 compFricDegree = 30 # initial contact friction during the confining phase finalFricDegree = 11 # contact friction during the deviatoric loading (for ice!!) targetPorosity = 0.5 mn,mx=Vector3(0,0,0),Vector3(1,1,1) # corners of the initial packing #walls O.materials.append(FrictMat(young=young,poisson=0.5,frictionAngle=0,density=0,label='walls')) walls=aabbWalls([mn,mx],thickness=0,material='walls') wallIds=O.bodies.append(walls) # sp=yade.pack.SpherePack() nc= sp.makeCloud(mn,mx,-0.5,0.3,nspc,False, 0.95,seed=1) #" first packing c nb =sp.makeCloud(mn,mx,-0.2,0.3,nspb,False, 0.95,seed=1) #"second packing b sp.toSimulation() for i in range(0,nc): O.bodies[i].mat = CohFrictMat(young=young,poisson=0.5,fragile=True, normalCohesion = C,shearCohesion=C,frictionAngle=radians(compFricDegree),density=2600, label='cristal') # set material of spheres with ids from nc to nb (the 2nd makeCloud) for i in range(nc,nb): O.bodies[i].mat = CohFrictMat(young=young,poisson=0.5,fragile=True, normalCohesion = C, shearCohesion=C,frictionAngle=radians(compFricDegree),density=1,label='bubble') # check for b in O.bodies: print b.id,b.mat ### -- 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 #679387]: packing of spheres with different properties
Question #679387 on Yade changed: https://answers.launchpad.net/yade/+question/679387 Status: Open => Solved Rioual 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
[Yade-users] [Question #679420]: TriaxialStressController on a cloud of particles without contact, in a fluid
New question #679420 on Yade: https://answers.launchpad.net/yade/+question/679420 Hello, Is it possible to use "TriaxialStressController" on a packing of particles which have initially no contacts (a cloud of particles) in a viscous fluid (described by the DEM PFV coupling as in the example oedemeter.py) ?? Thank you for your views, Fr. -- 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 #679387]: packing of spheres with different properties
Question #679387 on Yade changed: https://answers.launchpad.net/yade/+question/679387 Status: Solved => Open Rioual is still having a problem: Hello Jan, How do I deal with the InteractionLoop in the engines (Ip2, Law2) wheen I have these two sets of particles with different material properties constituting the packing ?? thanks, Fr. -- 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 #679420]: TriaxialStressController on a cloud of particles without contact, in a fluid
Question #679420 on Yade changed: https://answers.launchpad.net/yade/+question/679420 Status: Answered => Solved Rioual confirmed that the question is solved: Thanks Chareyre, 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 #679387]: packing of spheres with different properties
Question #679387 on Yade changed: https://answers.launchpad.net/yade/+question/679387 Status: Answered => Solved Rioual confirmed that the question is solved: Thanks Chareyre, 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
[Yade-users] [Question #679582]: coupling yade with comsol - non isothermal flow
New question #679582 on Yade: https://answers.launchpad.net/yade/+question/679582 Hello, I am thinking of using YADE with COMSOL-multiphysics to introduce a non isothermal flow coupled with particle dynamics. Is it possible to use ICY package (**) ?? has it been tested in different situations? (**) see: https://www.sciencedirect.com/science/article/pii/S0098300417313213 Thanks very much for your enlightments, Fr. -- 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 #679582]: coupling yade with comsol - non isothermal flow
Question #679582 on Yade changed: https://answers.launchpad.net/yade/+question/679582 Status: Answered => Solved Rioual confirmed that the question is solved: Not yet but I will! -- 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 #679619]: fluid solver in flow.engine for suspensions
New question #679619 on Yade: https://answers.launchpad.net/yade/+question/679619 Hello, My question concerns the flow engine and is the following of question 679420 (https://answers.launchpad.net/yade/+question/679420) Apparently, it makes no difference for the fluid solver if particles are in contact or not. There is less validation of the local hydraulic conductivity model for very dilute suspensions,according to Bruno. Can you give me an idea of the range of volume fraction of particles of the suspension for which the flow model has been validated, in yade ?? Best wishes, Fr. -- 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 #679619]: fluid solver in flow.engine for suspensions
Question #679619 on Yade changed: https://answers.launchpad.net/yade/+question/679619 Status: Answered => Open Rioual is still having a problem: Hello, I think that the localized fluidization in a saturated granular medium has been modelized with good success compared to experiments (?) so man can be rather optimistic... I will let you know in case of other benchmarking in a more dilute case, Best wishes Fr. -- 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 #679619]: fluid solver in flow.engine for suspensions
Question #679619 on Yade changed: https://answers.launchpad.net/yade/+question/679619 Status: Answered => Solved Rioual confirmed that the question is solved: Thanks Chareyre, 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
[Yade-users] [Question #679769]: Thermal engine
New question #679769 on Yade: https://answers.launchpad.net/yade/+question/679769 Hello, Can you give me some informations about the "thermal engine" associated to the flow engine ?? what is it doing and processing precisely ?? thanks, Fr. -- 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 #679769]: Thermal engine
Question #679769 on Yade changed: https://answers.launchpad.net/yade/+question/679769 Status: Answered => Solved Rioual confirmed that the question is solved: Thanks Robert Caulk, 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
[Yade-users] [Question #679772]: viscous contribution in flow engine
New question #679772 on Yade: https://answers.launchpad.net/yade/+question/679772 Hello, I want to model the undrained triaxial compression of a suspension (relatively dense). I want to use the PFV model from oedemeter.py. Shear may not be dominant in my case however in order to deal with viscous effects (shear stresses), Marzougui et al 2015 introduced indeed lubrication forces on particles in the PFV model: is this not taken into account in special cases in the flow engine in yade or i have to add special "lubrication" interactions between particles ?? (if it exists). Best, Fr. -- 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 #679772]: viscous contribution in flow engine
Question #679772 on Yade changed: https://answers.launchpad.net/yade/+question/679772 Status: Answered => Solved Rioual confirmed that the question is solved: Thanks Bruno Chareyre, 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
[Yade-users] [Question #683775]: modelling "solid bridges" between particles
New question #683775 on Yade: https://answers.launchpad.net/yade/+question/683775 Hello, I would like to model solid bridges between particles of a packing as beams linking the particles together. The beam model would be defined by a young modulus, a shear modulus, cross section and length. The solid bridges at particle scale could brake when a certain stress exceeds the tensile strength of the material. Is it possible to model this kind of solid bridge between particles with Yade ?? Couln't find any informations about that. Thank you very much for informations, Best wishes, Fr. -- 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 #683775]: modelling "solid bridges" between particles
Question #683775 on Yade changed: https://answers.launchpad.net/yade/+question/683775 Status: Answered => Open Rioual is still having a problem: Hello Dinesh, Jan, Thanks, but it is not clear to me how i can define a connection between the end of a cylinder and a sphere representing a particle? regards, FR. -- 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 #683775]: modelling "solid bridges" between particles
Question #683775 on Yade changed: https://answers.launchpad.net/yade/+question/683775 Status: Needs information => Open Rioual gave more information on the question: ...Yes, my question concerns more specifically the possibility of creating a physical cylindrical beam joining two spherical particles as a model of a solid bridge.(**) Each cylindrical beam will have the following parameters, length, cross section, young modulus, shear modulus and tensile strength ?? Thanks for your views, Fr. (**) and also the possbility to join a particle, with several beams (bridges), to its neighbouring particles, of course. -- 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 #683775]: modelling "solid bridges" between particles
Question #683775 on Yade changed: https://answers.launchpad.net/yade/+question/683775 Status: Answered => Solved Rioual confirmed that the question is solved: Thanks Bruno Chareyre, 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
[Yade-users] [Question #684881]: Introducing viscous forces in a liquid bridge
New question #684881 on Yade: https://answers.launchpad.net/yade/+question/684881 Hello, I would like to take into account liquid bonding forces between particles. Capillary forces are already implemented in YADE but for very viscous fluids or high velocity, the viscous contribution can be dominant (Capillary number >>1). It is typically an aditionnal viscous force proportional to the relative velocity between particles (see for instance: Washino et al, Powder Technology 302 (2016) 100-107). What would be the strategy to implement this liquid viscous force in Yade ?? thanks, Fr. -- 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 #684881]: Introducing viscous forces in a liquid bridge
Question #684881 on Yade changed: https://answers.launchpad.net/yade/+question/684881 Status: Answered => Open Rioual is still having a problem: Hello Jerome, Thanks for the feedback. ViscElCapMat would indeed be the closest to what I am looking for but I can not find the theoretical details of the law, in particular the implementation of the viscous contributions. In my case and according to theory, the normal viscous force is proportional to the relative translational velocity between two particles with a damping coefficient which is a function of the separation distance between the two particles. The tangential viscous force is proportional to both the relative translational and rotational velocities with two damping coefficients which are again functions of the separation distance between the particles (Washino et al, Powder Technology 302 (2016) 100-107). So this sounds more tricky ?? My best wishes Fr. -- 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 #684881]: Introducing viscous forces in a liquid bridge
Question #684881 on Yade changed: https://answers.launchpad.net/yade/+question/684881 Rioual posted a new comment: Hello Jerome, Yes, ViscElCapMat is more precisely a viscoelastic model of contact (very usual) added to a capillary force so this is not what I wanted to model: adding the viscous contribution of the liquid bridge between two particles. So I probably would need a new constitutive law as you suggest... Thanks, Fr. -- 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 #684881]: Introducing viscous forces in a liquid bridge
Question #684881 on Yade changed: https://answers.launchpad.net/yade/+question/684881 Status: Answered => Open Rioual is still having a problem: Hi Bruno, That's a very interesting option; the previous theory of viscous contribution of bridges (evoked above) was derived indeed from Reynolds equation of lubrication. Where can I get all the theoretical details of Law2_ScGeom_ImplicitLubricationPhys and references ?? I don't see viscosity as an input parameter ?? Aren't there any technical difficulties with YADE dealing with two different interaction laws for the same couple of particles ?? All the best, Fr. -- 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 #684881]: Introducing viscous forces in a liquid bridge
Question #684881 on Yade changed: https://answers.launchpad.net/yade/+question/684881 Status: Answered => Solved Rioual confirmed that the question is solved: Thanks Anton Gladky, 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
[Yade-users] [Question #686136]: Introducing a wide distribution of the value of a parameter in a contact law
New question #686136 on Yade: https://answers.launchpad.net/yade/+question/686136 Hello, I would like to use the cohesive contact law Law2_ScGeom6D_CohFrictPhys_CohesionMoment between the particles of my packing but I would like to introduce a wide given stochastic distribution of the value of the adhesion, tensile strength and shear strength in the model, which are among the parameters of the contact law. How can I handle that ?? Best regards, V. -- 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 #686136]: Introducing a wide distribution of the value of a parameter in a contact law
Question #686136 on Yade changed: https://answers.launchpad.net/yade/+question/686136 Status: Answered => Solved Rioual confirmed that the question is solved: Thanks Robert Caulk, 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
[Yade-users] [Question #686840]: sintered particles - interaction law
New question #686840 on Yade: https://answers.launchpad.net/yade/+question/686840 Hello, This question is the following of a previous question concerning sintered materials (https://answers.launchpad.net/yade/+question/236454). I would like to apply an interaction law based on "Law2_ScGeom_FrictPhys_CundallStrack" between two sintered particles and add alsoa specific adhesion. The reference state I want (no deformation, no stress) is a "sintered" state where the two particles are already interpenetrating. How do I define this mechanical reference state in the code ?? Thanks for your answer, Fr. -- 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 #686840]: sintered particles - interaction law
Question #686840 on Yade changed: https://answers.launchpad.net/yade/+question/686840 Status: Answered => Open Rioual is still having a problem: Hello, Thank you for these clarifications about the reference state. I would like also to implement indeed a specific adhesion law adapted to sintering (viscous in my case). So, as far I understood, it is advised to add this new adhesion contact law to an existing law as "Law2_ScGeom_FrictPhys_CundallStrack" ?? All the best, Fr. -- 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 #686840]: sintered particles - interaction law
Question #686840 on Yade changed: https://answers.launchpad.net/yade/+question/686840 Status: Answered => Open Rioual is still having a problem: Hello Jerome, Thank you for your feedback... In my case, my adhesion force is an expression depending on the width of the bridge between the two sintered particles (and surface tension); so I guess I have to implement it explicitely...and try to copy the way it has been done for Law2_ScGeom6D_CohFrictPhys_CohesionMoment and introduce a new adhesion interaction in option in this well known cohesive law. That's the good strategy ?? All the best, Fr. -- 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 #686840]: sintered particles - interaction law
Question #686840 on Yade changed: https://answers.launchpad.net/yade/+question/686840 Status: Answered => Open Rioual is still having a problem: Hi Bruno, Let me precise what I mean because it's not clear indeed and has apparently no link with the "yade" definition of adhesion... I mean an attractive interaction force between the two sintered particles: the sintering force. This force can be expressed as a polynomial function of the "neck" radius with a coefficient that scales with surface tension coefficient (Wakai et al, Acta Materialia, 109, 292-299 (2016)) regards, Francois -- 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 #686840]: sintered particles - interaction law
Question #686840 on Yade changed: https://answers.launchpad.net/yade/+question/686840 Rioual gave more information on the question: Hi Bruno, The sintering force Fs in the early stage of the process (0,1< c/r0 < 0,7 can be expressed as a parabolic function of the contact radius: Fs = Gammas*r0* [ a1*(c/r0)^2 + a2*(c/r0) + a3 ] Gammas : surface tension coefficient a1, a2, a3 : numerical constants c : radius of the contact between the two sintered particles r0 : radius of the particles (same radius for both particles) This is the force i want to implement.. Best, Fr. -- 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 #686840]: sintered particles - interaction law
Question #686840 on Yade changed: https://answers.launchpad.net/yade/+question/686840 Status: Answered => Open Rioual is still having a problem: Hello Jerome, Thanks for the feedback. If I understand correctly, 1- I impose "i.phys.unp = i.geom.un #plastic disp = current disp, i.e. the elastic deformation is null, fn=0" for each contact of sintered particles, after a first stage of interpenetration at the desired amount with contact law "CohFrictPhys" 2- at the same time, for the contact between the two sintered particles considered, I change the contact law to as basic FrictPhys_CundallStrack and I apply the new sintering force described above with O.forces.addF. Do you agree with that ?? Best, Fr. -- 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 #686840]: sintered particles - interaction law
Question #686840 on Yade changed: https://answers.launchpad.net/yade/+question/686840 Status: Answered => Solved Rioual 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
[Yade-users] [Question #688040]: dimensions of an imported body
New question #688040 on Yade: https://answers.launchpad.net/yade/+question/688040 Hello, I would like to know how to get the dimensions of a body imported from a .stl file (with ymport.stl) in a yade script. Is it possible ? Thanks, Best regards, F. -- 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 #688040]: dimensions of an imported body
Question #688040 on Yade changed: https://answers.launchpad.net/yade/+question/688040 Status: Needs information => Open Rioual gave more information on the question: Hello Jan, How long and large the body is in drawing units (or YADE units). Thanks, F. -- 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 #688040]: dimensions of an imported body
Question #688040 on Yade changed: https://answers.launchpad.net/yade/+question/688040 Status: Answered => Open Rioual is still having a problem: Hello Jan, I just did what you propose but I have an error message, possibly very basic mistake ??: *** fctIdscylinder=O.bodies.append(ymport.stl('Pot-FR-1.stl',color=(1,0,0),material=facetMat)) ### minX = 1e99 maxX = -1e99 minY = 1e99 maxY = -1e99 minZ = 1e99 maxZ = -1e99 for facet in fctIdscylinder: print 'facet=', facet vs = [facet.state.pos + facet.state.ori * v for v in facet.shape.vertices] # vertices in global coord system minX = min(minX,min(v[0] for v in vs)) maxX = max(maxX,max(v[0] for v in vs)) ### minY = min(minY,min(v[1] for v in vs)) maxY = max(maxY,max(v[1] for v in vs)) ### minX = min(minZ,min(v[2] for v in vs)) maxX = max(maxZ,max(v[2] for v in vs)) ### The error message is the following (facet is an integer!): vs = [facet.state.pos + facet.state.ori * v for v in facet.shape.vertices] # vertices in global coord system AttributeError: 'int' object has no attribute 'shape' Thanks for your answer! Best V. -- 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 #688178]: Force on a moving boundary imported from a stl file
New question #688178 on Yade: https://answers.launchpad.net/yade/+question/688178 Hello, I would like to control the compression of a packing (in a box) by a moving boundary imported from a stl file. I need to know and measure the force on this boundary. How do I get easily the force on this boundary ??; Do I have to go through the facets and so on ?? Can you clarify these points ?? Thank you very much for your answer, V. -- 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 #688040]: dimensions of an imported body
Question #688040 on Yade changed: https://answers.launchpad.net/yade/+question/688040 Status: Answered => Solved Rioual 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
[Yade-users] [Question #688203]: Simulation blocked after O.run in a conditional translation motion
New question #688203 on Yade: https://answers.launchpad.net/yade/+question/688203 Hello, This mistake may be obvious but I can't get it. I am studying the translation motion of a boundary WS (using TranslationEngine) as long as an conditional statement is fulfilled (the height of the boundary h_WS must be smaller than the maximum height of the packing hmaxSpheres). I use O.run(1,True) to let the engine work for one time step but the simulation seems to be frozen at the "O.run(1,True)" statement. [... PyRunner(command='kinematics_WS()',realPeriod=1,label='kine'), ... ] def kinematics_WS(): h_WS = calc_h()[0] hmaxSpheres = calc_h()[1] print 'test0','h_WS=',h_WS,'hmaxSpheres=',hmaxSpheres TransEngload2 = TranslationEngine(ids=fctIdsWS,translationAxis=[0,-1,0],velocity=10) O.engines=O.engines+[TransEngload2] while h_WS > hmaxSpheres: print 'test01' TransEngload2.dead = False print 'test02' O.run(1,True) ***frozen here!*** # O.engines=O.engines+[PyRunner(command='calc_h()')] print 'test03' h_WS = calc_h()[0] hmaxSpheres = calc_h()[1] print 'test1','h_WS=',h_WS,'hmaxSpheres=',hmaxSpheres TransEngload2.dead = True else: . Output: test0 h_WS= 130.0 hmaxSpheres= 100.369406791 test01 test02 ...frozen The boundary does not seem to move even if i put a higher step number in O.run() * Thank you for your Help, Best Vincent -- 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 #688203]: Simulation blocked after O.run in a conditional translation motion
Question #688203 on Yade changed: https://answers.launchpad.net/yade/+question/688203 Status: Needs information => Open Rioual gave more information on the question: ...Here is the code: #Start import time from yade import qt from yade import ymport #Import packing in the cylinder from prepare-packing.py O.load('init_Final_state_packing.yade') ### ## PhysicalParameters Density=2400 frictionAngle=radians(35) tc = 0.001 en = 0.05 et = 0.05 ## Import wall's geometry facetMat=O.materials.append(ViscElMat(frictionAngle=frictionAngle,tc=tc, en=en, et=et)) # **params sets kn, cn, ks, cs sphereMat=O.materials.append(ViscElMat(density=Density,frictionAngle=frictionAngle,tc=tc,en=en,et=et)) from yade import ymport #** global TransEngload2 #** # Importation de la roue Warren-Spring global fctIdsWS fctIdsWS=O.bodies.append(ymport.stl('WS-FR-1.stl',color=(1,0,0),material=facetMat)) #fctIdscylinder=O.bodies.append(ymport.stl('PotN.stl',color=(1,0,0),material=facetMat)) ## Timestep O.dt=.2*tc ## Engines O.engines=[ ## Resets forces and momenta the act on bodies ForceResetter(), ## Associates bounding volume to each body. #BoundDispatcher([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb()]), ## Using bounding boxes find possible body collisions. #InsertionSortCollider(), InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb()]), ## Interactions InteractionLoop( # the loading plate is a facet, we need to handle sphere+sphere, sphere+facet [Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()] ), ## Apply gravity GravityEngine(gravity=[0,0,-9.81]), ## Cundall damping must been disabled! NewtonIntegrator(damping=0), ## Apply kinematics to wheel PyRunner(command='kinematics_WS()',realPeriod=1,label='kine'), ] from yade import qt qt.View() def kinematics_WS(): h_WS = calc_h()[0] hmaxSpheres = calc_h()[1] print 'test0','h_WS=',h_WS,'hmaxSpheres=',hmaxSpheres TransEngload2 = TranslationEngine(ids=fctIdsWS,translationAxis=[0,-1,0],velocity=10) O.engines=O.engines+[TransEngload2] while h_WS > hmaxSpheres: print 'test01' TransEngload2.dead = False print 'test02' O.run(1,True) # O.engines=O.engines+[PyRunner(command='calc_h()')] print 'test03' h_WS = calc_h()[0] hmaxSpheres = calc_h()[1] print 'test1','h_WS=',h_WS,'hmaxSpheres=',hmaxSpheres TransEngload2.dead = True else: amTOT = sum((O.bodies[facetid].state.angMom)[1] for facetid in fctIdsWS) while (amTOT< 1e-10): O.engines=O.engines+[PyRunner(command='addTorque()',iterPeriod=1)] amTOT = sum((O.bodies[facetid].state.angMom)[1] for facetid in fctIdsWS) else: # Stop simulation et measurement of the shear torque and cohesion C_WS = 3* (imposed_T)/(2*Pi*(R0^3-R1^3)) print 'C_WS=',C_WS print 'End of the calculation for Cohesion***' # O.pause() #* #This function calculate the height of the boundary h_WS and the maximum height of the packing hmax_Spheres def calc_h(): ### #Calculate h_WS minY = 1e99 maxY = -1e99 for facet in fctIdsWS: # print 'facet=', facet facet= O.bodies[facet] vs = [facet.state.pos + facet.state.ori * v for v in facet.shape.vertices] # vertices in global coord system # print 'vs=',vs minY = min(minY,min(v[1] for v in vs)) maxY = max(maxY,max(v[1] for v in vs)) ### # print 'maxY=',maxY,'minY=',minY h_WS = maxY ### #Calculate hmax_Spheres idHMax=0# on definit une variable pour identifier quel corps a la hauteur la plus haute hMax=0.0# initialisation de la hauteur a zero for i in O.bodies: # on parcours tout les co
Re: [Yade-users] [Question #688203]: Simulation blocked after O.run in a conditional translation motion
Question #688203 on Yade changed: https://answers.launchpad.net/yade/+question/688203 Status: Needs information => Open Rioual gave more information on the question: Hello Jan, Sorry about all that. I modified my code to make it independant with a faceted cylinder for penetration and Oedometric-test.py used to make the packing. Here it is below. The simulation seems to be blocked for more than several minutes. Thee number of particles here is very low (example of packing taken from the tutorial examples oedometric-test.py). All the best, Vincent The code: * # gravity deposition, continuing with oedometric test after stabilization # shows also how to run parametric studies with yade-batch # The components of the batch are: # 1. table with parameters, one set of parameters per line (ccc.table) # 2. readParamsFromTable which reads respective line from the parameter file # 3. the simulation muse be run using yade-batch, not yade # # $ yade-batch --job-threads=1 03-oedometric-test.table 03-oedometric-test.py # # load parameters from file if run in batch # default values are used if not run from batch readParamsFromTable(rMean=.05,rRelFuzz=.3,maxLoad=1e6,minLoad=1e4) # make rMean, rRelFuzz, maxLoad accessible directly as variables later from yade.params.table import * # create box with free top, and ceate loose packing inside the box from yade import pack, plot O.bodies.append(geom.facetBox((.5,.5,.5),(.5,.5,.5),wallMask=31)) sp=pack.SpherePack() sp.makeCloud((0,0,0),(1,1,1),rMean=rMean,rRelFuzz=rRelFuzz) sp.toSimulation() O.engines=[ ForceResetter(), # sphere, facet, wall InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb(),Bo1_Wall_Aabb()]), InteractionLoop( # the loading plate is a wall, we need to handle sphere+sphere, sphere+facet, sphere+wall [Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()] ), NewtonIntegrator(gravity=(0,0,-9.81),damping=0.5), # the label creates an automatic variable referring to this engine # we use it below to change its attributes from the functions called PyRunner(command='checkUnbalanced()',realPeriod=2,label='checker'), ] O.dt=.5*PWaveTimeStep() # the following checkUnbalanced, unloadPlate and stopUnloading functions are all called by the 'checker' # (the last engine) one after another; this sequence defines progression of different stages of the # simulation, as each of the functions, when the condition is satisfied, updates 'checker' to call # the next function when it is run from within the simulation next time # check whether the gravity deposition has already finished # if so, add wall on the top of the packing and start the oedometric test def checkUnbalanced(): # at the very start, unbalanced force can be low as there is only few contacts, but it does not mean the packing is stable if O.iter<5000: return # the rest will be run only if unbalanced is < .1 (stabilized packing) if unbalancedForce()>.1: return # add plate at the position on the top of the packing # the maximum finds the z-coordinate of the top of the topmost particle O.bodies.append(wall(max([b.state.pos[2]+b.shape.radius for b in O.bodies if isinstance(b.shape,Sphere)]),axis=2,sense=-1)) global plate# without this line, the plate variable would only exist inside this function plate=O.bodies[-1] # the last particles is the plate # Wall objects are "fixed" by default, i.e. not subject to forces # prescribing a velocity will therefore make it move at constant velocity (downwards) plate.state.vel=(0,0,-.1) # start plotting the data now, it was not interesting before O.engines=O.engines+[PyRunner(command='addPlotData()',iterPeriod=200)] # next time, do not call this function anymore, but the next one (unloadPlate) instead checker.command='unloadPlate()' def unloadPlate(): # if the force on plate exceeds maximum load, start unloading if abs(O.forces.f(plate.id)[2])>maxLoad: plate.state.vel*=-1 # next time, do not call this function anymore, but the next one (stopUnloading) instead checker.command='stopUnloading()' def stopUnloading(): if abs(O.forces.f(plate.id)[2])hMax): #si le solide est une sphere et sa position est plus haut que hmax hMax=h # on enregistre sa hauteur idHMax=i.id # on garde en memoire de quel corps il s'agi
Re: [Yade-users] [Question #688203]: Simulation blocked after O.run in a conditional translation motion
Question #688203 on Yade changed: https://answers.launchpad.net/yade/+question/688203 Rioual gave more information on the question: Hello, But I have a O.pause() in the function stopUnloading() in order to stop the process of building the packing (first part). So this should desactivate the first O.run(); No ? I think I am confused in dealing with O.run() ? Thanks for your reply, Best Vincent, -- 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 #688203]: Simulation blocked after O.run in a conditional translation motion
Question #688203 on Yade changed: https://answers.launchpad.net/yade/+question/688203 Rioual gave more information on the question: Hello Jan, For me it does not change anything adding O.wait(). It is still blocking at the same line ! regards V. -- 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 #688203]: Simulation blocked after O.run in a conditional translation motion
Question #688203 on Yade changed: https://answers.launchpad.net/yade/+question/688203 Status: Needs information => Open Rioual gave more information on the question: ..Yes, it is still blocking. My yade version is Yade 2016.06a apparently. I added a print before the pause in the script: print 'End building packing' O.pause() ** Here is my output: Welcome to Yade 2016.06a TCP python prompt on localhost:9004, auth cookie `skduye' XMLRPC info provider on http://localhost:21004 Running script working-example.py End building packing /home/irstea/myYade/install/lib/x86_64-linux-gnu/yade-2016.06a/py/yade/utils.py:351: UserWarning: Function utils.facetCylinder is deprecated, use geom.facetCylinder instead. _deprecatedUtilsFunction('facetCylinder','geom.facetCylinder') [[ ^L clears screen, ^U kills line. F12 controller, F11 3d view (use h-key for showing help), F10 both, F9 generator, F8 plot. ]] [0;34mYade [[1;34m1[0;34m]: [0mWARN /home/irstea/myYade/trunk/trunk-2016.06a/pkg/common/GravityEngines.cpp:19 action: GravityEngine is deprecated, consider using Newton::gravity instead (unless gravitational energy has to be tracked - not implemented with the newton attribute). test0 h_WS= 1.3 hmaxSpheres= 0.443123580808 test01 test02 frozen Regards Vincent -- 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 #688203]: Simulation blocked after O.run in a conditional translation motion
Question #688203 on Yade changed: https://answers.launchpad.net/yade/+question/688203 Status: Needs information => Open Rioual gave more information on the question: Hello Jan, Here is the code again. Best V. ** # gravity deposition, continuing with oedometric test after stabilization # shows also how to run parametric studies with yade-batch # The components of the batch are: # 1. table with parameters, one set of parameters per line (ccc.table) # 2. readParamsFromTable which reads respective line from the parameter file # 3. the simulation muse be run using yade-batch, not yade # # $ yade-batch --job-threads=1 03-oedometric-test.table 03-oedometric-test.py # # load parameters from file if run in batch # default values are used if not run from batch readParamsFromTable(rMean=.05,rRelFuzz=.3,maxLoad=1e6,minLoad=1e4) # make rMean, rRelFuzz, maxLoad accessible directly as variables later from yade.params.table import * # create box with free top, and ceate loose packing inside the box from yade import pack, plot O.bodies.append(geom.facetBox((.5,.5,.5),(.5,.5,.5),wallMask=31)) sp=pack.SpherePack() sp.makeCloud((0,0,0),(1,1,1),rMean=rMean,rRelFuzz=rRelFuzz) sp.toSimulation() O.engines=[ ForceResetter(), # sphere, facet, wall InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb(),Bo1_Wall_Aabb()]), InteractionLoop( # the loading plate is a wall, we need to handle sphere+sphere, sphere+facet, sphere+wall [Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()] ), NewtonIntegrator(gravity=(0,0,-9.81),damping=0.5), # the label creates an automatic variable referring to this engine # we use it below to change its attributes from the functions called PyRunner(command='checkUnbalanced()',realPeriod=2,label='checker'), ] O.dt=.5*PWaveTimeStep() # the following checkUnbalanced, unloadPlate and stopUnloading functions are all called by the 'checker' # (the last engine) one after another; this sequence defines progression of different stages of the # simulation, as each of the functions, when the condition is satisfied, updates 'checker' to call # the next function when it is run from within the simulation next time # check whether the gravity deposition has already finished # if so, add wall on the top of the packing and start the oedometric test def checkUnbalanced(): # at the very start, unbalanced force can be low as there is only few contacts, but it does not mean the packing is stable if O.iter<5000: return # the rest will be run only if unbalanced is < .1 (stabilized packing) if unbalancedForce()>.1: return # add plate at the position on the top of the packing # the maximum finds the z-coordinate of the top of the topmost particle O.bodies.append(wall(max([b.state.pos[2]+b.shape.radius for b in O.bodies if isinstance(b.shape,Sphere)]),axis=2,sense=-1)) global plate# without this line, the plate variable would only exist inside this function plate=O.bodies[-1] # the last particles is the plate # Wall objects are "fixed" by default, i.e. not subject to forces # prescribing a velocity will therefore make it move at constant velocity (downwards) plate.state.vel=(0,0,-.1) # start plotting the data now, it was not interesting before O.engines=O.engines+[PyRunner(command='addPlotData()',iterPeriod=200)] # next time, do not call this function anymore, but the next one (unloadPlate) instead checker.command='unloadPlate()' def unloadPlate(): # if the force on plate exceeds maximum load, start unloading if abs(O.forces.f(plate.id)[2])>maxLoad: plate.state.vel*=-1 # next time, do not call this function anymore, but the next one (stopUnloading) instead checker.command='stopUnloading()' def stopUnloading(): if abs(O.forces.f(plate.id)[2])hMax): #si le solide est une sphere et sa position est plus haut que hmax hMax=h # on enregistre sa hauteur idHMax=i.id # on garde en memoire de quel corps il s'agit # if (idHMax == 0): return rMax # valeur de retour par default, rMAX # else: return (hMax+O.bodies[idHMax].shape.radius) hmaxSpheres = hMax+O.bodies[idHMax].shape.radius return h_WS,hmaxSpheres #* #**
Re: [Yade-users] [Question #688203]: Simulation blocked after O.run in a conditional translation motion
Question #688203 on Yade changed: https://answers.launchpad.net/yade/+question/688203 Status: Answered => Open Rioual is still having a problem: Hello Jan, I used the version of the code you sent me (I had to correct all the wrong indentations). The code is still blocking as previously after the printing of 'test02'. What do you mean by the 'problematic code is not reached at all' ?? You do not see the printing 'test0', 'test01', 'test02', 'test03' ??? If you confirm me that it is a yade version problem, I will go this way. Thanks for your feedback, V. -- 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 #688203]: Simulation blocked after O.run in a conditional translation motion
Question #688203 on Yade changed: https://answers.launchpad.net/yade/+question/688203 Status: Answered => Open Rioual is still having a problem: Hello Jan, The function 'kinematic_WS' is ruling all the different dynamic operations I have to do with the wheel in this code: A translation of the wheel under a certain condition then a rotation of the wheel under a certain condition. I am not a yade expert and I really do not know how to express that differently and to call the function externally! Thanks for your feedback, Best V. -- 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 #688203]: Simulation blocked after O.run in a conditional translation motion
Question #688203 on Yade changed: https://answers.launchpad.net/yade/+question/688203 Status: Answered => Solved Rioual 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
[Yade-users] [Question #688548]: periodic motion of a boundary
New question #688548 on Yade: https://answers.launchpad.net/yade/+question/688548 Hello, I would like to code a periodic motion of translation for a boundary with TranslationEngine (Shaking). Is there a simple way to do it ?? Thanks, Vincent -- 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 #688548]: periodic motion of a boundary
Question #688548 on Yade changed: https://answers.launchpad.net/yade/+question/688548 Status: Answered => Open Rioual is still having a problem: Hi Jan, OK, do you mean a conditional statement on O.time in a function called by Pyrunner at every time step ? regards, V. -- 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 #688548]: periodic motion of a boundary
Question #688548 on Yade changed: https://answers.launchpad.net/yade/+question/688548 Rioual gave more information on the question: Dear Jan, Let's say the simplest case of the periodic vertical motion up and down of a horizontal plate with velocities V_up (upwards) and V_down (downwards); what would be the most appropriate ? Thanks, V. -- 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 #688548]: periodic motion of a boundary
Question #688548 on Yade changed: https://answers.launchpad.net/yade/+question/688548 Status: Answered => Solved Rioual 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
[Yade-users] [Question #688822]: Exporting a packing geometry made in yade in a stl format
New question #688822 on Yade: https://answers.launchpad.net/yade/+question/688822 Hello, I would like to export a packing geometry of spheres created in yade to a .stl format in order to open it and read it in a second stage with comsol. How can I do that ?? Thanks, Vincent -- 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 #688822]: Exporting a packing geometry made in yade in a stl format
Question #688822 on Yade changed: https://answers.launchpad.net/yade/+question/688822 Status: Answered => Open Rioual is still having a problem: Hello Jan, Thanks for your reply but: - How do you triangulate the spherical packing ?? - "save triangles": do you mean i have to build by hands the stl file as explained in wikipedia i.e. save as a "built up" text file ??? Best wishes, V. -- 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 #688822]: Exporting a packing geometry made in yade in a stl format
Question #688822 on Yade changed: https://answers.launchpad.net/yade/+question/688822 Status: Answered => Open Rioual is still having a problem: Dear Jan, - My problem is related to the problem of evaporation dynamics in a porous material made with Yade so Comsol is indeed relevant. - Maybe i will have to find another way to treat the problem from the coordinates and radii of the spheres calculated in Yade if making a stl file is too tough Thank you for your input, V. -- 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 #688906]: unexpected "exit" message when running a yade code on a cluster
New question #688906 on Yade: https://answers.launchpad.net/yade/+question/688906 Hello, I have a code in yade which works very well on my local PC. I want to use it on a cluster where yade has been installed. When I make it run on line, it works well. When I send the code on a node with a script (sbatch script), the code stops at a certain moment with this message in the output file: [[ ^L clears screen, ^U kills line. F8 plot. ]] In [1]: Do you really want to exit ([y]/n)? My question is the following: - what means In[1] ?? - Why does the yade program want to exit at a certain stage on the cluster whereas it works perfectly well on line ?? Thank you for your answer, Best, Vincent -- 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 #688822]: Exporting a packing geometry made in yade in a stl format
Question #688822 on Yade changed: https://answers.launchpad.net/yade/+question/688822 Status: Answered => Solved Rioual 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 #688906]: unexpected "exit" message when running a yade code on a cluster
Question #688906 on Yade changed: https://answers.launchpad.net/yade/+question/688906 Status: Answered => Open Rioual is still having a problem: Hello, Thanks for your suggestions. I suspect the exit corresponds to the apparition of the qt graphical interface which is automatic in a normal yade script. How can I disable the qt interface in a script ?? Thanks, V. -- 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 #688906]: unexpected "exit" message when running a yade code on a cluster
Question #688906 on Yade changed: https://answers.launchpad.net/yade/+question/688906 Status: Answered => Open Rioual is still having a problem: Hello, The problem seems to be related to the use of O.run which controls the apparition of the message "In[1]:"(which, with the use of the cluster, is followed by the following statement: "Do you really want to exit ([y]/n)?" and stops the simulation) See this MWS: ## readParamsFromTable(rMean=1.2,rRelFuzz=.4,maxLoad=1e7,minLoad=1e5) # make rMean, rRelFuzz, maxLoad accessible directly as variables later from yade.params.table import * from yade import pack, plot ## PhysicalParameters Density=2400 frictionAngle=radians(25) #tc = 0.001 #en = 0.05 #et = 0.05 tc = 0.01 en = 0.0001 et = 0.0001 sphereMat=O.materials.append(ViscElMat(density=Density,frictionAngle=frictionAngle,tc=tc,en=en,et=et)) ### print 'test0' sp=pack.SpherePack() sp.makeCloud((-23,10,-23),(23,310,23),rMean=rMean,rRelFuzz=rRelFuzz) sp.toSimulation(color=(0,0,1),material=sphereMat) print 'test1' O.engines=[ ForceResetter(), # sphere, facet, wall InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb(),Bo1_Wall_Aabb()]), InteractionLoop( # the loading plate is a wall, we need to handle sphere+sphere, sphere+facet, sphere+wall [Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()] ), NewtonIntegrator(gravity=(0,-9.81,0),damping=0.1), # the label creates an automatic variable referring to this engine # we use it below to change its attributes from the functions called PyRunner(command='Poros()',iterPeriod=1,label='por'), ] O.dt=.5*PWaveTimeStep() #*** def Poros(): Rcylext=15 Ycylmax = 110 dx = (Rcylext-2)/1.414 por = utils.voxelPorosity(200,(-dx ,4,-dx),(dx,Ycylmax,dx)) print 'test2' print 'tstep=',O.iter,'Porosite=',por #** print 'test3' # POSITION OF O.RUN O.run() O.pause ### 1- If I use O.run() in the MWS script, I have in the output the apparition of "In[1]:" then the exit message and the simulation is blocked: test0 test1 test3 [[ ^L clears screen, ^U kills line. F8 plot. ]] In [1]: Do you really want to exit ([y]/n)? 2- If I use O.run(10,True) instead of O.run(), I get: test0 test1 test3 test2 tstep= 1 Porosite= 0.783404375 test2 tstep= 2 Porosite= 0.78340475 test2 tstep= 3 Porosite= 0.783404625 test2 tstep= 4 Porosite= 0.783404625 test2 tstep= 5 Porosite= 0.7834055 test2 tstep= 6 Porosite= 0.783404625 test2 tstep= 7 Porosite= 0.783404 test2 tstep= 8 Porosite= 0.783404 test2 tstep= 9 Porosite= 0.783405375 [[ ^L clears screen, ^U kills line. F8 plot. ]] In [1]: Do you really want to exit ([y]/n)? So the run is done indeed after 10 timesteps and the "In[1]:" appears only at the complete end of the run which is expected. My problem: In my more complete case, I need to use O.run() and not 0.run(X,True) because I don't know the number of timesteps required (there is an aditional conditional statement in a function called by pyrunner in the engines). So Do you know to avoid the apparition of "In[1]:" with O.run() ?? Thanks very much for your feed-back, Best wishes, Vincent nb: version of yade installed is: yade-2019-01-28.git-20242db -- 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 #688906]: unexpected "exit" message when running a yade code on a cluster
Question #688906 on Yade changed: https://answers.launchpad.net/yade/+question/688906 Status: Answered => Open Rioual is still having a problem: ..Thanks, I will try to avoid O.run() then but, Bruno, what are you referring to by #1 and #4 ...??? Vincent -- 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 #688906]: unexpected "exit" message when running a yade code on a cluster
Question #688906 on Yade changed: https://answers.launchpad.net/yade/+question/688906 Status: Open => Solved Rioual confirmed that the question is solved: From #1: O.run() returns control to Python and the simulation runs in background; if you want to wait for it to finish, use O.wait() it works ! Thanks to you all, Fr. -- 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 #689131]: Basic Problem using parallel run in Yade
New question #689131 on Yade: https://answers.launchpad.net/yade/+question/689131 Hello, I try to use the possibility of parallel calculations with Yade for the first time thanks to Openmp. This is a very basic question, sorry. When I add -j X to the Yade command where X is the number of available cores of my machine then I can check with htop that there is only one core running at 100 %CPU ; the other cores seem not to be called for running by Yade (S state). I find the same behavior using yade-2016.06a on my machine and yade-2019-01-28 on a cluster. Did I miss something in the process of using Yade in parallel ?? Thanks for your cooperation, Best Vincent -- 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 #689131]: Basic Problem using parallel run in Yade
Question #689131 on Yade changed: https://answers.launchpad.net/yade/+question/689131 Status: Answered => Open Rioual is still having a problem: Dear Robert, Can you be more precise ?? How can I adapt my script in order to have the benefits of parallel computing ?? Thanks, Cheers, V. -- 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 #689131]: Basic Problem using parallel run in Yade
Question #689131 on Yade changed: https://answers.launchpad.net/yade/+question/689131 Status: Answered => Open Rioual is still having a problem: Dear Robert, You will find in the following the script. This is inspired by oedometric-test.py (tutorial). The original code (oedometric-test.py) uses all the cores available, I tested it. Can you tell me me what could be the origin of the problem in my script ?? I had to add different translationEngines in my function called bt pyrunner: can it be related ??? Thanks, All the best, V. #* #SCRIPT: #* # gravity deposition (1) and controlled compression of the packing # load parameters from file if run in batch # default values are used if not run from batch readParamsFromTable(rMean=0.1,rRelFuzz=.04,maxLoad=1e7,minLoad=1e5) # make rMean, rRelFuzz, maxLoad accessible directly as variables later from yade.params.table import * # create box with free top, and ceate loose packing inside the box from yade import pack, plot #O.bodies.append(geom.facetBox((.5,.5,.5),(.5,.5,.5),wallMask=31)) ## PhysicalParameters Density=2400 frictionAngle=radians(25) #tc = 0.001 #en = 0.05 #et = 0.05 tc = 0.01 en = 0.0001 et = 0.0001 ## Import wall's geometry ##params=utils.getViscoelasticFromSpheresInteraction(10e3,tc,en,es) facetMat=O.materials.append(ViscElMat(frictionAngle=frictionAngle,tc=tc, en=en, et=et)) # **params sets kn, cn, ks, cs sphereMat=O.materials.append(ViscElMat(density=Density,frictionAngle=frictionAngle,tc=tc,en=en,et=et)) from yade import ymport #fctIdsWS=O.bodies.append(ymport.stl('WS-wheelMN:q.stl',color=(1,0,0),material=facetMat)) fctIdscylinder=O.bodies.append(ymport.stl('Pot- FR-1.stl',color=(1,0,0),material=facetMat)) print 'fctIdscylinder=', fctIdscylinder ### ## Recuperer les dimensions des objets stl ### minX = 1e99 maxX = -1e99 minY = 1e99 maxY = -1e99 minZ = 1e99 maxZ = -1e99 for facet in fctIdscylinder: print 'facet=', facet facet= O.bodies[facet] vs = [facet.state.pos + facet.state.ori * v for v in facet.shape.vertices] # vertices in global coord system print 'vs=',vs minX = min(minX,min(v[0] for v in vs)) maxX = max(maxX,max(v[0] for v in vs)) ### minY = min(minY,min(v[1] for v in vs)) maxY = max(maxY,max(v[1] for v in vs)) ### minZ = min(minZ,min(v[2] for v in vs)) maxZ = max(maxZ,max(v[2] for v in vs)) ### print 'minX=',minX,'minY=',minY,'minZ=',minZ print 'maxX=',maxX,'maxY=',maxY,'maxZ=',maxZ Rcylext = maxX Ycylmin = minY Ycylmax = maxY global Ycylmax global Rcylext ### sp=pack.SpherePack() sp.makeCloud((-23,10,-23),(23,310,23),rMean=rMean,rRelFuzz=rRelFuzz) sp.toSimulation(color=(0,0,1),material=sphereMat) O.engines=[ ForceResetter(), # sphere, facet, wall InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb(),Bo1_Wall_Aabb()]), InteractionLoop( # the loading plate is a wall, we need to handle sphere+sphere, sphere+facet, sphere+wall [Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()] ), NewtonIntegrator(gravity=(0,-9.81,0),damping=0.1), # the label creates an automatic variable referring to this engine # we use it below to change its attributes from the functions called PyRunner(command='checkUnbalanced()',realPeriod=2,label='checker'), PyRunner(command='Poros()',iterPeriod=100,label='por'), ] O.dt=.5*PWaveTimeStep() # the following checkUnbalanced, unloadPlate and stopUnloading functions are all called by the 'checker' # (the last engine) one after another; this sequence defines progression of different stages of the # simulation, as each of the functions, when the condition is satisfied, updates 'checker' to call # the next function when it is run from within the simulation next time # check whether the gravity deposition has already finished # if so, add wall on the top of the packing and start the oedometric test def checkUnbalanced(): # at the very start, unbalanced force can be low as there is only few contacts, but it does not mean the packing is stable if O.iter<9000: return # the rest will be run only if unbalanced is < .1 (stabilized packing) if unbalancedForce()>0.2: return # Now, we pursue the job # delete useless particles 1-At the top of the packing 2- On both sides of the packing bodiesTo
Re: [Yade-users] [Question #689131]: Basic Problem using parallel run in Yade
Question #689131 on Yade changed: https://answers.launchpad.net/yade/+question/689131 Status: Answered => Open Rioual is still having a problem: OK, here is a self contained shorter script that reproduces the problem, I got rid of the stl importations. Thanks for your feed-back, Best, Vincent, #*** #SCRIPT: #*** #gravity deposition (1), (2) continuing with oedometric test after stabilization (3) # load parameters from file if run in batch # default values are used if not run from batch readParamsFromTable(rMean=0.005,rRelFuzz=0.002,maxLoad=1e7,minLoad=1e5) # make rMean, rRelFuzz, maxLoad accessible directly as variables later from yade.params.table import * # create box with free top, and ceate loose packing inside the box from yade import pack, plot ## PhysicalParameters Density=2400 frictionAngle=radians(25) tc = 0.01 en = 0.0001 et = 0.0001 ## Import wall's geometry facetMat=O.materials.append(ViscElMat(frictionAngle=frictionAngle,tc=tc, en=en, et=et)) sphereMat=O.materials.append(ViscElMat(density=Density,frictionAngle=frictionAngle,tc=tc,en=en,et=et)) from yade import ymport fctIdscylinder = O.bodies.append(geom.facetBox((.5,.5,.5),(.5,.5,.5),wallMask=55,material=facetMat)) ### sp=pack.SpherePack() sp.makeCloud((0,0,0),(1,1,1),rMean=rMean,rRelFuzz=rRelFuzz) sp.toSimulation(color=(0,0,1),material=sphereMat) O.engines=[ ForceResetter(), # sphere, facet, wall InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb(),Bo1_Wall_Aabb()]), InteractionLoop( # the loading plate is a wall, we need to handle sphere+sphere, sphere+facet, sphere+wall [Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()] ), NewtonIntegrator(gravity=(0,-9.81,0),damping=0.1), # the label creates an automatic variable referring to this engine # we use it below to change its attributes from the functions called PyRunner(command='checkUnbalanced()',realPeriod=2,label='checker'), ] O.dt=.5*PWaveTimeStep() # the following checkUnbalanced, unloadPlate and stopUnloading functions are all called by the 'checker' # (the last engine) one after another; this sequence defines progression of different stages of the # simulation, as each of the functions, when the condition is satisfied, updates 'checker' to call # the next function when it is run from within the simulation next time # check whether the gravity deposition has already finished # if so, add wall on the top of the packing and start the oedometric test def checkUnbalanced(): # at the very start, unbalanced force can be low as there is only few contacts, but it does not mean the packing is stable if O.iter<9000: return # the rest will be run only if unbalanced is < .1 (stabilized packing) if unbalancedForce()>0.2: return # add plate at the position on the top of the packing fctIdsbouchonI = O.bodies.append(wall(max([b.state.pos[1]+b.shape.radius for b in O.bodies if isinstance(b.shape,Sphere)]),axis=1,material=facetMat)) global fctIdsbouchon fctIdsbouchon=[] fctIdsbouchon.append(fctIdsbouchonI) TransEngload= TranslationEngine(ids=fctIdsbouchon,translationAxis=[0,-1,0],velocity=1,label='load') O.engines=O.engines+[TransEngload] global TransEngload # next time, do not call this function anymore, but the next one (unloadPlate) instead checker.command='unloadPlate()' def unloadPlate(): # if the force on plate exceeds maximum load, start unloading Fn = sum(O.forces.f(O.bodies[facetid].id)[1] for facetid in fctIdsbouchon) if abs(Fn)>maxLoad: TransEngload.Velocity = 0 TransEngunload = TranslationEngine(ids=fctIdsbouchon,translationAxis=[0,1,0],velocity=0.1,label='unload') O.engines=O.engines+[TransEngunload] # next time, do not call this function anymore, but the next one (stopUnloading) instead checker.command='stopUnloading()' def stopUnloading(): Fn = sum(O.forces.f(O.bodies[facetid].id)[1] for facetid in fctIdsbouchon) if abs(Fn)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 #689131]: Basic Problem using parallel run in Yade
Question #689131 on Yade changed: https://answers.launchpad.net/yade/+question/689131 Status: Needs information => Open Rioual gave more information on the question: Hello, Thanks for your suggestions. Actually I tested the code for a lower number of particles and several cores are used in this case, it works The point is that for a higher number of particles, the script is stuck at the operation " sp.makeCloud((0,0,0),(1,1,1),rMean=rMean,rRelFuzz=rRelFuzz)" (at the beginning of the script, before the engines) and the script doesn't seem to use the different cores required, at this stage. Would there eventually be an efficient way to create a cloud of particles for a high number of particles ??? Thanks for your reply, Best, Vincent -- 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 #689131]: Basic Problem using parallel run in Yade
Question #689131 on Yade changed: https://answers.launchpad.net/yade/+question/689131 Status: Answered => Open Rioual is still having a problem: ...Thank you very much for these suggestions. But basically, how can I make this duplication of packing and write it in Yade?? How do I glue the pieces of packing to make a large global packing ?? Thanks for your input, Best, Vincent -- 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 #689131]: Basic Problem using parallel run in Yade
Question #689131 on Yade changed: https://answers.launchpad.net/yade/+question/689131 Status: Answered => Solved Rioual confirmed that the question is solved: ...I will try that; looks very relevant... All the best V. -- 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 #689537]: Tutorial example script 04-periodic-simple-shear.py does not work
New question #689537 on Yade: https://answers.launchpad.net/yade/+question/689537 Hello, I face the same problem as Jan in 2016 concerning 2 bugs in Tutorial example script 04-periodic-simple-shear.py. These bugs were reported as https://bugs.launchpad.net/yade/+bug/1634434 (L75) if stress.trace()/3.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 #689537]: Tutorial example script 04-periodic-simple-shear.py does not work
Question #689537 on Yade changed: https://answers.launchpad.net/yade/+question/689537 Status: Answered => Open Rioual is still having a problem: Hi Robert, That's ok for the second error, thanks. My worry concerns more the first error of the script.. Best Vincent -- 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 #689537]: Tutorial example script 04-periodic-simple-shear.py does not work
Question #689537 on Yade changed: https://answers.launchpad.net/yade/+question/689537 Status: Answered => Open Rioual is still having a problem: ...Thanks Bruno, the script is running now. I have two other questions: 1- the maximum rotation represented by red colors appear at the top and the bottom of the cell in the corrected script that you sent whereas in the example of YADE tutorial (https://yade-dem.org/doc/tutorial- examples.html#periodic-simple-shear) the colored layer representing high rotations is in the middle of the cell.??? 2- On a more fundamental point of view, I would like to know the point of studying a numerical periodic shear configuration that is far from the real experimental shear devices where we have shear localisation etc... Is it to be able to relate stress and strain rates on a representative volume element (RVE) and deduce for instance effective quantities as viscosities etc... for continuum theories Sorry this is not a directly yade related query but you would be welcome to bring me any light Best Vincent -- 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 #689741]: Implémentation of capillary force during mechanical contact
New question #689741 on Yade: https://answers.launchpad.net/yade/+question/689741 Hello, I would like to implement capillary forces during the mechanical contact between two spherical particles (case of a viscous material for which mechanical interactions are low). But the Capillary force in ViscElCapMat is only defined for delta_n > 0 Can I extend eventually this law ?? Is there an easy way to handle this issue ??? Thank you very much, Vincent -- 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 #689741]: Implémentation of capillary force during mechanical contact
Question #689741 on Yade changed: https://answers.launchpad.net/yade/+question/689741 Status: Answered => Open Rioual is still having a problem: ...Thank you very much for your replies.. For ViscElCapMat (*), the point is that A Gladky and al in his work (Comparison of different capillary bridges model for application in the discrete element method: https://arxiv.org/pdf/1403.7926.pdf) precises "We are neglecting effects of capillary forces during mechanical contact because we are not aware of a proved model for that case and the capillary forces are in order of magnitude much smaller than the mechanical ones". For Capillaryphys (**), Luc Scholtès in his thesis (p.62) explains that the capillary force during penetration delta_n >0 is kept constant equal to its maximal value Fcapmax (value of capillary force at contact delta_n = 0) (and supposing small penetration distances compared to radius) So my point is that a value for the capillary force may be calculated in case of penetrating particles for both formulations but I have to see if the specific geometry of penetrating particles is correctly taken into account by the implemented models, I would like a more reliable calculation of the capillary force in this case ??? All the best Vincent -- 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 #689741]: Implémentation of capillary force during mechanical contact
Question #689741 on Yade changed: https://answers.launchpad.net/yade/+question/689741 Status: Answered => Solved Rioual 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
[Yade-users] [Question #690066]: Using O.forces along normal and tangential directions at contact
New question #690066 on Yade: https://answers.launchpad.net/yade/+question/690066 Hello, I would like to add a force at the contact particles with O.forces (doing a loop on all interactions between particles). This force evolves in a complex way in time and has a normal component Fn dependant on normal strain rate and tangential component Ft dependant on tangential strain rate. Can I have access easily normal strain rates (U_n) , tangential strain rates ( U_t) and components of the normal and tangential unit vectors ( n and t) in global coordinates (to use O.forces) ??? by ScGeom ? How ?? Thanks for your help, Best Vincent -- 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 #690066]: Using O.forces along normal and tangential directions at contact
Question #690066 on Yade changed: https://answers.launchpad.net/yade/+question/690066 Status: Answered => Open Rioual is still having a problem: Dear Jan, Thanks for your precious input but i do not get you concerning the determination of t being tricky. As far as I know, I thought it was precisely defined in DEM in order to compute contact forces: https://yade-dem.org/doc/formulation.html#shear-deformation How can I get it for my purpose ?? Best Vincent -- 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 #690066]: Using O.forces along normal and tangential directions at contact
Question #690066 on Yade changed: https://answers.launchpad.net/yade/+question/690066 Status: Answered => Open Rioual is still having a problem: Dear Jan, Thanks, i get it but how do i practically do to get the components of t in global coordinates ?? That's the remaining bit for my problem.. Sorry for not being clear, Best Vincent -- 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 #690066]: Using O.forces along normal and tangential directions at contact
Question #690066 on Yade changed: https://answers.launchpad.net/yade/+question/690066 Status: Answered => Open Rioual is still having a problem: Hello Jan, I have to implement a supplementary force at each contact which can defined as: F_n = function1 of (normal strain rate, ...) F_t = function2 of (tangential strain rate, ..) where normal direction is along the centers of the particles and tangential direction is defined according to the relative velocity of the particles at the contact Now, If I want to use O.forces, I need to convert these components F_n and F_t in global coordinates. I don't see how I can avoid that task thanks to a vectorial relationship in my case !! ...Just wanted to know if there was an easy way (functions) to compute that in yade.. ?? Best wishes ! V. -- 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 #690066]: Using O.forces along normal and tangential directions at contact
Question #690066 on Yade changed: https://answers.launchpad.net/yade/+question/690066 Status: Needs information => Open Rioual gave more information on the question: Hello Jan, To be more precise: F_n = f(alfa) * normal_strain_rate + g(alfa) F_t = h(alfa) * tangential_strain_rate alfa is a dynamic variable which varies at each time step according to an evolution differential equation that involves the geometry of contact and normal strain rate...etc (d(alfa)/dt = function(alfa, normal_strain_rate, geometrical parameters , physical parameters) So that I want to use O.forces to implement that in an incremental way !! When i say "relative velocities of the particles at contact", I just said "at contact" because of potential spin on the particles... All the best! Vincent -- 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 #690066]: Using O.forces along normal and tangential directions at contact
Question #690066 on Yade changed: https://answers.launchpad.net/yade/+question/690066 Status: Answered => Open Rioual is still having a problem: Hello jan, This becomes very clean now, thanks. -What is the problem in doing addF for both bodies ? You propose me to open a New question...There is a short and efficient way tu do it, so ? - concerning the suggestion of task for a Law2 functor, this is definitely a future step for me as i will have lots of particles to deal with, can you advice me an easy way to handle that as i have no expérience of it and i start with yade ?? (A basic question Maybe treated elsewhere?) Thank you for your enlightements, V. -- 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 #690066]: Using O.forces along normal and tangential directions at contact
Question #690066 on Yade changed: https://answers.launchpad.net/yade/+question/690066 Rioual posted a new comment: Thanks Jan, that was great ! best wishes V. -- 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