Question #698647 on Yade changed: https://answers.launchpad.net/yade/+question/698647
Status: Open => Answered Karol Brzezinski proposed the following answer: Hi Bence, the simplest way to do this is to repeat c1 three times and c2 seven times in the list passed to makeClumpCloud(). However, you won't get exactly 30%, rather approximately 30%. Cheers, Karol ################## from yade import pack O.bodies.append(geom.facetBox((0,0,0),(0.6,1,0.8),wallMask=55,fixed=True)) sp=pack.SpherePack() c1=pack.SpherePack([((0,0,0),.05),((0.1,0,0),0.05),((0.2,0,0),.05)]) sp=pack.SpherePack() c2=pack.SpherePack([((0,0,0),.05),((0.1,0,0),0.05)]) sp.makeClumpCloud((-0.5,-1,-0.8),(0.5,1,0.8),[c1,c1,c1,c2,c2,c2,c2,c2,c2,c2],num=-1) sp.toSimulation() O.engines=[ ForceResetter(), InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb()]), InteractionLoop( [Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom()], [Ip2_FrictMat_FrictMat_FrictPhys()], [Law2_ScGeom_FrictPhys_CundallStrack()] ), NewtonIntegrator(gravity=(0,-9.81,0),damping=0.2), ] O.dt=.5*PWaveTimeStep() O.saveTmp() c1_count = 0 c2_count = 0 for b in O.bodies: if isinstance(b.shape,Clump): if b.state.mass >1.5: c1_count += 1 else: c2_count += 1 print("C1/(C1+C2) = {:.2f}".format(c1_count/(c1_count+c2_count))) -- 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