Re: [Yade-users] [Question #665385]: Clumping the big number of grains
Question #665385 on Yade changed: https://answers.launchpad.net/yade/+question/665385 Seti 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
Re: [Yade-users] [Question #665385]: Clumping the big number of grains
Question #665385 on Yade changed: https://answers.launchpad.net/yade/+question/665385 Status: Answered => Solved Seti confirmed that the question is solved: all good, Thanks Bruno. -- 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 #665857]: Uniaxial compresion
New question #665857 on Yade: https://answers.launchpad.net/yade/+question/665857 Hi all, I have done minor changes on CPM script - as per below : I have below question: 1- Why there is very limited range to change SigmaT inorder to run the script e.g. (1e1-1e4 )if I put 1e5 which is not a very big value for my material it wont run - 2- even when I run it in notifited range after couple of hours I face with below error - can you please help me to fix it? ZeroDivisionError Traceback (most recent call last) /usr/bin/yadedaily in () /usr/bin/yadedaily in stopIfDamaged() 199 print "Damaged, stopping." 200 ft,fc=max(sigma),min(sigma) --> 201 print 'Strengths fc=%g, ft=%g, |fc/ft|=%g'%(fc,ft,abs(fc/ft)) 202 title=O.tags['sigmaT=3.5e6, compression'] if 'sigmaT=3.5e6, compression' in O.tags.keys() else O.tags['params'] 203 print 'gnuplot',plot.saveGnuplot(O.tags['id'],title=title) ZeroDivisionError: float division by zero Damaged, stopping. 3- how I can track the crack in this script - I want to see changing the crack patern by changing material properties. Below is script: #!/usr/bin/python # -*- coding: utf-8 -*- from __future__ import division from yade import plot,pack,timing, qt import time, sys, os, copy #import matplotlib #matplotlib.rc('text',usetex=True) #matplotlib.rc('text.latex',preamble=r'\usepackage{concrete}\usepackage{euler}') """ A fairly complex script performing uniaxial tension-compression test on hyperboloid-shaped specimen. Most parameters of the model (and of the setup) can be read from table using yade-multi. After the simulation setup, tension loading is run and stresses are periodically saved for plotting as well as checked for getting below the maximum value so far. This indicates failure (see stopIfDamaged function). After failure in tension, the original setup is loaded anew and the sense of loading reversed. After failure in compression, strain-stress curves are saved via plot.saveGnuplot and we exit, giving some useful information like peak stresses in tension/compression. Running this script for the first time can take long time, as the specimen is prepared using triaxial compression. Next time, however, an attempt is made to load previously-generated packing (from /tmp/triaxPackCache.sqlite) and this expensive procedure is avoided. The specimen length can be specified, its diameter is half of the length and skirt of the hyperboloid is 4/5 of the width. The particle size is constant and can be specified using the sphereRadius parameter. The 3d display has displacement scaling applied, so that the fracture looks more spectacular. The scale is 1000 for tension and 100 for compression. """ # default parameters or from table readParamsFromTable(noTableOk=True, # unknownOk=True, young=70e7, poisson=.2, sigmaT=1.1e2, frictionAngle=atan(.3), epsCrackOnset=1e-4, relDuctility=5, intRadius=1.5, dtSafety=.8, damping=0.4, strainRateTension=.1, strainRateCompression=.1, setSpeeds=True, # 1=tension, 2=compression (ANDed; 3=both) doModes=2, specimenLength=.15, sphereRadius=3.5e-3, # isotropic confinement (should be negative) isoPrestress=0, ) from yade.params.table import * if 'sigmaT=3.5e6, compression' in O.tags.keys(): O.tags['id']=O.tags['id']+O.tags['sigmaT=3.5e6, compression'] # make geom; the dimensions are hard-coded here; could be in param table if desired # z-oriented hyperboloid, length 20cm, diameter 10cm, skirt 8cm # using spheres 7mm of diameter # mat1=CpmMat(young=young,frictionAngle=frictionAngle,poisson=poisson,density=4800,sigmaT=sigmaT,relDuctility=relDuctility,epsCrackOnset=epsCrackOnset,isoPrestress=isoPrestress) concreteId1=O.materials.append(mat1) #sp=pack.randomDensePack(pack.inHyperboloid((0,0,-.5*specimenLength),(0,0,.5*specimenLength),.25*specimenLength,.17*specimenLength),spheresInCell=2000,radius=sphereRadius,memoizeDb='/tmp/triaxPackCache.sqlite',returnSpherePack=True) # sp=pack.SpherePack() pred=pack.inCylinder((0,0,0.0002),(0,0,0.3),0.05) O.bodies.append(pack.randomDensePack(pred,radius=0.007)) #pred=pack.inCylinder((0,0,0),(0,0,0.03),0.005) #O.bodies.append(pack.randomDensePack(pred,radius=0.0005)) #pred=pack.inCylinder((0,0,0),(0,0,0.2),0.1) #sp=pack.randomDensePack(pred,radius=0.002,material=concreteId) #O.bodies.append(TS1) ## #sp=pack.randomDensePack(pack.inAlignedBox((-.25*specimenLength,-.25*specimenLength,-.5*specimenLength),(.25*specimenLength,.25*specimenLength,.5*specimenLength)),spheresInCell=2000,radius=sphereRadius,memoizeDb='/tmp/triaxPackCache.sqlite',returnSpherePack=True) ### ###
Re: [Yade-users] [Question #665857]: Uniaxial compresion
Question #665857 on Yade changed: https://answers.launchpad.net/yade/+question/665857 Description changed to: Hi all, I have done minor changes on CPM script - as per below : I have below questions: 1- Why there is very limited range to change SigmaT inorder to run the script e.g. (1e1-1e4 )if I put 1e5 which is not a very big value for my material it wont run - 2- even when I run it in notifited range after couple of hours I face with below error - can you please help me to fix it? ZeroDivisionError Traceback (most recent call last) /usr/bin/yadedaily in () /usr/bin/yadedaily in stopIfDamaged() 199 print "Damaged, stopping." 200 ft,fc=max(sigma),min(sigma) --> 201 print 'Strengths fc=%g, ft=%g, |fc/ft|=%g'%(fc,ft,abs(fc/ft)) 202 title=O.tags['sigmaT=3.5e6, compression'] if 'sigmaT=3.5e6, compression' in O.tags.keys() else O.tags['params'] 203 print 'gnuplot',plot.saveGnuplot(O.tags['id'],title=title) ZeroDivisionError: float division by zero Damaged, stopping. 3- how I can track the crack in this script - I want to see changing the crack patern by changing material properties. Below is script: #!/usr/bin/python # -*- coding: utf-8 -*- from __future__ import division from yade import plot,pack,timing, qt import time, sys, os, copy #import matplotlib #matplotlib.rc('text',usetex=True) #matplotlib.rc('text.latex',preamble=r'\usepackage{concrete}\usepackage{euler}') """ A fairly complex script performing uniaxial tension-compression test on hyperboloid-shaped specimen. Most parameters of the model (and of the setup) can be read from table using yade-multi. After the simulation setup, tension loading is run and stresses are periodically saved for plotting as well as checked for getting below the maximum value so far. This indicates failure (see stopIfDamaged function). After failure in tension, the original setup is loaded anew and the sense of loading reversed. After failure in compression, strain-stress curves are saved via plot.saveGnuplot and we exit, giving some useful information like peak stresses in tension/compression. Running this script for the first time can take long time, as the specimen is prepared using triaxial compression. Next time, however, an attempt is made to load previously-generated packing (from /tmp/triaxPackCache.sqlite) and this expensive procedure is avoided. The specimen length can be specified, its diameter is half of the length and skirt of the hyperboloid is 4/5 of the width. The particle size is constant and can be specified using the sphereRadius parameter. The 3d display has displacement scaling applied, so that the fracture looks more spectacular. The scale is 1000 for tension and 100 for compression. """ # default parameters or from table readParamsFromTable(noTableOk=True, # unknownOk=True, young=70e7, poisson=.2, sigmaT=1.1e2, frictionAngle=atan(.3), epsCrackOnset=1e-4, relDuctility=5, intRadius=1.5, dtSafety=.8, damping=0.4, strainRateTension=.1, strainRateCompression=.1, setSpeeds=True, # 1=tension, 2=compression (ANDed; 3=both) doModes=2, specimenLength=.15, sphereRadius=3.5e-3, # isotropic confinement (should be negative) isoPrestress=0, ) from yade.params.table import * if 'sigmaT=3.5e6, compression' in O.tags.keys(): O.tags['id']=O.tags['id']+O.tags['sigmaT=3.5e6, compression'] # make geom; the dimensions are hard-coded here; could be in param table if desired # z-oriented hyperboloid, length 20cm, diameter 10cm, skirt 8cm # using spheres 7mm of diameter # mat1=CpmMat(young=young,frictionAngle=frictionAngle,poisson=poisson,density=4800,sigmaT=sigmaT,relDuctility=relDuctility,epsCrackOnset=epsCrackOnset,isoPrestress=isoPrestress) concreteId1=O.materials.append(mat1) #sp=pack.randomDensePack(pack.inHyperboloid((0,0,-.5*specimenLength),(0,0,.5*specimenLength),.25*specimenLength,.17*specimenLength),spheresInCell=2000,radius=sphereRadius,memoizeDb='/tmp/triaxPackCache.sqlite',returnSpherePack=True) # sp=pack.SpherePack() pred=pack.inCylinder((0,0,0.0002),(0,0,0.3),0.05) O.bodies.append(pack.randomDensePack(pred,radius=0.007)) #pred=pack.inCylinder((0,0,0),(0,0,0.03),0.005) #O.bodies.append(pack.randomDensePack(pred,radius=0.0005)) #pred=pack.inCylinder((0,0,0),(0,0,0.2),0.1) #sp=pack.randomDensePack(pred,radius=0.002,material=concreteId) #O.bodies.append(TS1) ## #sp=pack.randomDensePack(pack.inAlignedBox((-.25*specimenLength,-.25*specimenLength,-.5*specimenLength),(.25*specimenLength,.25*specimenLength,.5*specimenLength)),spheresInCell=2000,radius=sphereRadius,memoizeDb='/tmp/triaxPackCache.sqlite',returnSpherePack=True) ###
Re: [Yade-users] [Question #665793]: Settlement Process doesn't end
Question #665793 on Yade changed: https://answers.launchpad.net/yade/+question/665793 Status: Needs information => Open raiden gave more information on the question: Edit: The code I use; readParamsFromTable(YM=2e5, N=2e4, T=1e4, rMean=.02,rRelFuzz=.00,maxLoad=8e1,minLoad=0e1 ,vel=1.0, clump1=0.1, clump2=0.1,clump3=0.8) I changed YM to 5e6. When I tried before it last 4-6 hours even less. I also decreased the timestep manually but it didn't help me to solve the problem. I try to achive 0.01 unbalanced force, although when I try with 0.1 it also doesn't solve the problem. -- 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 #665793]: Settlement Process doesn't end
Question #665793 on Yade changed: https://answers.launchpad.net/yade/+question/665793 Status: Open => Needs information Jan Stránský requested more information: Hello, please always try to provide a MWE [1] reproducing your problem. Also please try to be more specific in the case of significant values (e.g. at what value of unbalanced force you get in the problematic case, what value you got before, how much you changed young modulus etc.) > but this time i changed the young modulus. But i think it can't be the reason. How much you changed it? stiffness (should) determine the value of time step and therefore the simulation time.. cheers Jan [1] https://yade-dem.org/wiki/Howtoask -- 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 #665793]: Settlement Process doesn't end
New question #665793 on Yade: https://answers.launchpad.net/yade/+question/665793 Hello people, I've been working on yade for a while and now I try a settlement process. I set the particle parameters and subject them to gravitational force and velocity to a box made from fecets. the problem is that unbalanced force stuck at a value after hours and it goes on and on. Now it's already more than 60 hours but still same. It is usually took 4-6 hours with same number of particles and radii but this time i changed the young modulus. But i think it can't be the reason. Any opinions or suggestions? Thank you. -- 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