Hi Alexander, sorry for not noticing before. neverDamage=True works ok for tensile part (no spheres are cut from the rest of the specimen), but for shear part there is still needed on more value: sigmaT=1e10 (any sufficiently large value)
CpmMat(young=E,frictionAngle=0,poisson=v,density=D,neverDamage=True,sigmaT=1e10,label = 'mat') cheers Jan 2015-07-19 10:51 GMT+02:00 Alexander <[email protected]>: > New question #269405 on Yade: > https://answers.launchpad.net/yade/+question/269405 > > Hello everybody. > > I make simple uniaxial tension test for the steel plate. The tension is > going along OY direction. The problem is that changing the poisson > coefficient doesn't influence on the displacement along OX and along OY > direction (http://i10.pixs.ru/storage/7/4/9/pic1JPG_7342749_18083749.jpg). > The problem is that this range of values is constant for any value of > poisson parameter (e.g. 0.3 like for real steel and 0.003). At the same > time Young modulus works and influences to the displacement along OY > direction. > > Here is my code: > > from yade import export > > ################################################### > # define materials and model configuration > > E = 1.338e11 # Young's modulus > v = 0.003 # Poisson's ratio > P = 150e6 # initial pressure value > D = 7850 # density > > r = 0.5 # spheres radius > r_int = 1.5 # interaction radius > > # compute force per particle > F = P*4*r**2 > > # define plate material, create "dense" packing by setting friction to > zero initially > O.materials.append(CpmMat(young=E,frictionAngle=0,poisson=v,density=D,neverDamage=True,label > = 'mat')) > > # represent plate like a set of regular monosized set of spheres > # also set boundary conditions via predefined tensile force for spheres on > ABCD and > # fixed spheres on KGHO > > O.bodies.append(pack.regularOrtho(pack.inAlignedBox((0,0,0),(16.1,16.1,2.1)),r,0)) > for b in O.bodies: > if b.state.pos[1]+r > 15.9: > O.forces.addF(b.id,(0,F,0),permanent=True) # Add force for all > spheres connected to ABCD > if b.state.pos[1]-r < 0.1: > O.forces.addF(b.id,(0,-F,0),permanent=True) # Add force for all > spheres connected to KGHO > > ################################################### > # define engines > > # simulation loop > O.engines=[ > ForceResetter(), > > > InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=r_int,label='bo1s')]), > InteractionLoop( > > [Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=r_int,label='ig2ss')], > [Ip2_CpmMat_CpmMat_CpmPhys()], > [Law2_ScGeom_CpmPhys_Cpm()] > ), > CpmStateUpdater(realPeriod=1), > NewtonIntegrator(damping=0.4), > ] > > ################################################### > # start simulation and compute strain and stress > > # set the integration timestep to be 1/2 of the "critical" timestep > O.dt=utils.PWaveTimeStep()/2 > > # run one single step > O.step() > > # reset interaction radius to the default value > bo1s.aabbEnlargeFactor=1.0 > ig2ss.interactionDetectionFactor=1.0 > > # run simulation, until static equilibrium will not reached > while unbalancedForce()>1e-2: > O.run(10,True) > > ################################################### > # save data to vtk. file > vtk = export.VTKExporter('result') > > vtk.exportSpheres(what=[('radius','b.shape.radius'),('displacement','b.state.displ()')]) > > So any ideas? > > with regards Alexander > > -- > 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 : [email protected] > Unsubscribe : https://launchpad.net/~yade-users > More help : https://help.launchpad.net/ListHelp >
_______________________________________________ Mailing list: https://launchpad.net/~yade-users Post to : [email protected] Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp

