[Yade-users] [Question #674789]: Spheres cross section

2018-10-07 Thread Seti
New question #674789 on Yade:
https://answers.launchpad.net/yade/+question/674789

Hi Friends, :)

Can you please advise if I can take a cross section view in Yade after my 
simulation is finalised? 

Cheers,
Seti

-- 
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 #665857]: Uniaxial compresion

2018-03-30 Thread Seti
Question #665857 on Yade changed:
https://answers.launchpad.net/yade/+question/665857

Seti posted a new comment:
Thanks :)

-- 
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 #665857]: Uniaxial compresion

2018-03-30 Thread Seti
Question #665857 on Yade changed:
https://answers.launchpad.net/yade/+question/665857

Seti posted a new comment:
Hi Jan,

Thanks for your advise. can you please send the link to [1] as well?


Much appreciated, 
Seti

-- 
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 #665857]: Uniaxial compresion

2018-03-30 Thread Seti
Question #665857 on Yade changed:
https://answers.launchpad.net/yade/+question/665857

Seti posted a new comment:
Hi Jan,

Thanks for your advise. can you please send the link to [1] as well?


Much appreciated, 
Seti

-- 
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 #665857]: Uniaxial compresion

2018-03-30 Thread Seti
Question #665857 on Yade changed:
https://answers.launchpad.net/yade/+question/665857

Status: Answered => Open

Seti is still having a problem:
Hi Robert,


thanks for your reply, no error just below message: 


init done, will now run.
Damaged, stopping.
Compressive strength fc=691231
gnuplot 20180330T170719p8266.gnuplot
Bye.


here is the code: 


#!/usr/bin/python
# -*- coding: utf-8 -*-
from __future__ import division

from yade import plot,pack,timing
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=24e9,
poisson=.2,

sigmaT=3.5e6,
frictionAngle=atan(0.8),
epsCrackOnset=1e-4,
relDuctility=30,

intRadius=1.5,
dtSafety=.8,
damping=0.4,
strainRateTension=.5,
strainRateCompression=.5,
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 *

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))

bb=uniaxialTestFeatures()
negIds,posIds,axis,crossSectionArea=bb['negIds'],bb['posIds'],bb['axis'],bb['area']
O.dt=dtSafety*PWaveTimeStep()
print 'Timestep',O.dt

mm,mx=[pt[axis] for pt in aabbExtrema()]
coord_25,coord_50,coord_75=mm+.25*(mx-mm),mm+.5*(mx-mm),mm+.75*(mx-mm)
area_25,area_50,area_75=approxSectionArea(coord_25,axis),approxSectionArea(coord_50,axis),approxSectionArea(coord_75,axis)

O.engines=[
ForceResetter(),

InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=intRadius,label='is2aabb'),],verletDist=.05*sphereRadius),
InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=intRadius,label='ss2sc')],
[Ip2_CpmMat_CpmMat_CpmPhys()],
[Law2_ScGeom_CpmPhys_Cpm()],
),
NewtonIntegrator(damping=damping,label='damper'),
CpmStateUpdater(realPeriod=.5),

UniaxialStrainer(strainRate=strainRateTension,axis=axis,asymmetry=0,posIds=posIds,negIds=negIds,crossSectionArea=crossSectionArea,blockDisplacements=False,blockRotations=False,setSpeeds=setSpeeds,label='strainer'),

PyRunner(virtPeriod=1e-6/strainRateTension,realPeriod=1,command='addPlotData()',label='plotDataCollector',initRun=True),
PyRunner(realPeriod=4,command='stopIfDamaged()',label='damageChecker'),
]
#O.miscParams=[Gl1_CpmPhys(dmgLabel=False,colorStrain=False,epsNLabel=False,epsT=

Re: [Yade-users] [Question #665857]: Uniaxial compresion

2018-03-19 Thread Seti
Question #665857 on Yade changed:
https://answers.launchpad.net/yade/+question/665857

Status: Answered => Open

Seti is still having a problem:
Hi Robert and Jan,

Thanks so much  for your replies  :)

>Could you be more specific than "it won't run"? Maybe you could provide
details as to what happens? Is there an error? Does Yade crash? I ran
your script with 1e5 and 3.5e6. It runs.

 my model will be exploded.

>3) I would say it is a matter of postprocessing and the definition of
crack. You can save interactions and display e.g. only those, whose
damage is > 0.99

Your advise, does make sense to me, however not sure how should I do it?
is there any existing example that you can share in this regards? I just
used paraview for postprocessing - the recorded images  for preliminary
exercisers.

>This is the second time in a couple months that someone has run into
this ZeroDivisionError because they are using doModes=2. I am going to
edit the script on trunk so we don't keep running into this.

I need to use the compression mode

I used again the original script and just changed it to compression as
per below - it does not work, simulation stops in couple of secs

Would you please let me know your thoughts?

Thanks,
Seti 

###

#!/usr/bin/python
# -*- coding: utf-8 -*-
from __future__ import division

from yade import plot,pack,timing
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=24e9,
poisson=.2,

sigmaT=3.5e6,
frictionAngle=atan(0.8),
epsCrackOnset=1e-4,
relDuctility=30,

intRadius=1.5,
dtSafety=.8,
damping=0.4,
strainRateTension=.5,
strainRateCompression=.5,
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 *

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))

bb=uniaxialTestFeatures()
negIds,posIds,axis,crossSectionArea=bb['negIds'],bb['posIds'],bb['axis'],bb['area']
O.dt=dtSafety*PWaveTimeStep()
print 'Timestep',O.dt

mm,mx=[pt[axis] for pt in aabbExtrema()]
coord_25,coord_50,coord_75=mm+.25*(mx-mm),mm+.5*(mx-mm),mm+.75*(mx-mm)
area_25,area_50,area_75=approxSectionArea(coord_25,axis),approxSectionArea(coord_50,axis),approxSectionArea(coord_75,axis)

O.engines=[
ForceResetter(),

InsertionSortCollider([Bo1_Sphere_Aabb(aabbEn

Re: [Yade-users] [Question #665385]: Clumping the big number of grains

2018-03-17 Thread Seti
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

2018-03-17 Thread Seti
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

2018-03-17 Thread Seti
(concreteId1,concreteId2,1.1e9),(concreteId2,concreteId2,1.1e3))),0.5,
 compression'
O.pause()
#sys.exit(0) # results in some threading exception

def addPlotData():

yade.plot.addData({'t':O.time,'i':O.iter,'eps':strainer.strain,'sigma':strainer.avgStress+isoPrestress,

'sigma.25':forcesOnCoordPlane(coord_25,axis)[axis]/area_25+isoPrestress,

'sigma.50':forcesOnCoordPlane(coord_50,axis)[axis]/area_50+isoPrestress,

'sigma.75':forcesOnCoordPlane(coord_75,axis)[axis]/area_75+isoPrestress,
})
plot.plot(subPlots=False)
#O.run()
initTest()
waitIfBatch()
O.run(5000,True)
plot.plots={'eps':('sigma')}
plot.plot(subPlots=False)
plot.saveDataTxt('sigmaTttt=1.1e4,0.5, compression')


#  PLAY THE SIMULATION HERE WITH "PLAY" BUTTON OR WITH THE COMMAND O.run(N) 
 #

rr=yade.qt.Renderer()
rr.shape=False
rr.intrPhys=True


Thanks
Seti



-- 
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 #665857]: Uniaxial compresion

2018-03-17 Thread Seti
((concreteId1,concreteId1,1.1e9),(concreteId1,concreteId2,1.1e9),(concreteId2,concreteId2,1.1e3))),0.5,
 compression'
O.pause()
#sys.exit(0) # results in some threading exception

def addPlotData():

yade.plot.addData({'t':O.time,'i':O.iter,'eps':strainer.strain,'sigma':strainer.avgStress+isoPrestress,

'sigma.25':forcesOnCoordPlane(coord_25,axis)[axis]/area_25+isoPrestress,

'sigma.50':forcesOnCoordPlane(coord_50,axis)[axis]/area_50+isoPrestress,

'sigma.75':forcesOnCoordPlane(coord_75,axis)[axis]/area_75+isoPrestress,
})
plot.plot(subPlots=False)
#O.run()
initTest()
waitIfBatch()
O.run(5000,True)
plot.plots={'eps':('sigma')}
plot.plot(subPlots=False)
plot.saveDataTxt('sigmaTttt=1.1e4,0.5, compression')


#  PLAY THE SIMULATION HERE WITH "PLAY" BUTTON OR WITH THE COMMAND O.run(N) 
 #

rr=yade.qt.Renderer()
rr.shape=False
rr.intrPhys=True


Thanks
Seti

-- 
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

2018-03-08 Thread Seti
Question #665385 on Yade changed:
https://answers.launchpad.net/yade/+question/665385

Seti gave more information on the question:
Hi  Friends,

To be more specific I know how manage the reduce and position of 3 or 4
,.. clumps in   clumping  process but not sure how mange these
parameters when I want to clump each 30 grains in 1 grains packing
or clumping each 300 grains together.


Looking forward to hear your advise.


Regards.
Seti

-- 
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 #665385]: Clumping the big number of grains

2018-03-08 Thread Seti
New question #665385 on Yade:
https://answers.launchpad.net/yade/+question/665385

Hi all,

sorry if it is, too simple question. can you please advise me how I can clump 
big numbers e.g. I need to clump 30 grains, or 300 grains - Imagine I have 
1 grains in total.


Thanks for your help,
Seti

-- 
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 #663499]: Results of Cohesive triaxial - match maker

2018-01-24 Thread Seti
New question #663499 on Yade:
https://answers.launchpad.net/yade/+question/663499

Hi all,

Back to my previous question #663085 - I have updated the script as per below - 
it is working without any error however when I change the percentage of 
materials from 10% to 90%( through this line :-  if random.random() < 0.9:)   
the stress- strain results does not change at all. 
Even I am not sure if "DEVIATORIC LOADING" phase is impaling, because the 
stress value does not go more than 100kpa in all different ratios of the 
materials combinations.

Would you please advise me where is the issue? 
Thanks 
Seti


#!/usr/bin/python
# -*- coding: utf-8 -*-
from __future__ import division

from yade import plot,pack,timing
import time, sys, os, copy
from yade import ymport, utils, pack, export
#from pylab import *
import math
import numpy as np


### DEFINING VARIABLES AND MATERIALS ###

# default parameters or from table
readParamsFromTable(noTableOk=True, # unknownOk=True,
 targetPorosity=0.45, #the porosity we want for the packing
 num_spheres=3000,# number of spheres

 young=236e9,
 poisson=.2,
 density=2600,
 frictionAngle=radians(30),
 normalCohesion=3.e6,
 shearCohesion=1.e6,
 etaRoll=0.1,

 compFricDegree=30, # contact friction during the confining phase
 finalFricDegree=30, # contact friction during the deviatoric loading
 key='_triax_base_', # put you simulation's name here

 rate=-0.02, # loading rate (strain rate)
 damp=0.7, # damping coefficient
 stabilityThreshold=0.01, # we test unbalancedForce against this value in 
different loops (see below)
)
from yade.params import table
from yade.params.table import *
mn,mx=Vector3(0,0,0),Vector3(1,1,1) # corners of the initial packing
## create materials for spheres and plates
mat1=CohFrictMat(young=young,poisson=poisson,density=density,frictionAngle=frictionAngle,normalCohesion=normalCohesion,shearCohesion=shearCohesion,momentRotationLaw=True,etaRoll=etaRoll,label='cement')
mat_1=O.materials.append(mat1)
mat2=CohFrictMat(young=young,poisson=poisson,density=density,frictionAngle=frictionAngle,normalCohesion=3.e3,shearCohesion=1.e3,momentRotationLaw=True,etaRoll=etaRoll,label='glass_sphere')
mat_2=O.materials.append(mat2)
O.materials.append(FrictMat(young=2*young,poisson=.25,frictionAngle=0,density=0,label='frictionlessWalls'))

## create walls around the packing
walls=aabbWalls([mn,mx],thickness=0,material='frictionlessWalls')
wallIds=O.bodies.append(walls)

## use a SpherePack object to generate a random loose particles packing
sp=pack.SpherePack()
sp.makeCloud(mn,mx,-1,0,num_spheres,False, 0.95,seed=1) #"seed" make the 
"random" generation always the same
O.bodies.append([sphere(center,rad,material='cement') for center,rad in sp])
cement=[]
glass_sphere=[]
for b in O.bodies:
 if not isinstance(b.shape,Sphere): # change material only on spheres
continue
 if random.random() < 0.9:
  b.mat = mat1
  b.shape.color = (1,0,0)
  b.state.mass*=mat1.density/mat1.density
  cement.append(b.id)
 else:
  b.mat = mat2
  b.shape.color = (0,1,1)
  b.state.mass*=mat2.density/mat1.density
  glass_sphere.append(b.id)


### DEFINING ENGINES ###


triax=TriaxialStressController(
 maxMultiplier=1.+2.4e5/young, # spheres growing factor (fast growth)
 finalMaxMultiplier=1.+2.4e4/young, # spheres growing factor (slow growth)
 thickness = 0,
 stressMask = 7,
 internalCompaction=True, # If true the confining pressure is generated by 
growing particles
)

newton=NewtonIntegrator(damping=damp)

O.engines=[
 ForceResetter(),
 InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
 InteractionLoop(
  #box-sphere interactions will be the simple normal-shear law, we use ScGeom 
for them
  [Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom()],
  #Boxes will be frictional (FrictMat), so the sphere-box physics is FrictMat 
vs. CohFrictMat, the Ip type will be found via the inheritance tree 
(CohFrictMat is a FrictMat) and will result in FrictPhys interaction physics
  #and will result in a FrictPhys
  [Ip2_FrictMat_FrictMat_FrictPhys(), 
Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(label="cohesiveIp"), 
Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(normalCohesion=MatchMaker(matches=((mat_1,mat_1,3.e6),(mat_1,mat_2,3.e4),(mat_2,mat_2,3.e3))),shearCohesion=MatchMaker(matches=((mat_1,mat_1,1.e6),(mat_1,mat_2,1.e4),(mat_2,mat_2,1.e3],
  #Finally, two different contact laws for sphere-box and sphere-sphere
  
[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment(
   useIncrementalForm=True, #useIncrementalForm is turned on as we want 
plasticity on the contact moments
   always_use_moment_law=False, #if we want "rolling" friction even if the 
contact is not cohesive (or cohesion is broken), we will have to turn this true 
somewhere
   label='cohesiveLaw')],

 ),
 
Gl

Re: [Yade-users] [Question #663085]: Match Maker - Cohesive Triaxial

2018-01-15 Thread Seti
Question #663085 on Yade changed:
https://answers.launchpad.net/yade/+question/663085

Seti 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 #663085]: Match Maker - Cohesive Triaxial

2018-01-15 Thread Seti
Question #663085 on Yade changed:
https://answers.launchpad.net/yade/+question/663085

Status: Answered => Solved

Seti confirmed that the question is solved:
Much appreciated.

-- 
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 #663085]: Match Maker - Cohesive Triaxial

2018-01-15 Thread Seti
New question #663085 on Yade:
https://answers.launchpad.net/yade/+question/663085

Hi All,


I am trying to use match maker for cohesive triaxial code through below script 
to control normal and shear cohesion between spheres, which I am facing with an 
error as follow: 

line 99, in 
label='cohesiveLaw')],
ValueError: Exactly 3 lists of functors must be given

Maybe I am doing something wrong to define normal and shear cohesion attributes 
- can you please advise me in this regards?
Thanks
Seti

##
#!/usr/bin/python
# -*- coding: utf-8 -*-
from __future__ import division

from yade import plot,pack,timing
import time, sys, os, copy
from yade import ymport, utils, pack, export
#from pylab import *
import math
import numpy as np


### DEFINING VARIABLES AND MATERIALS ###

# default parameters or from table
readParamsFromTable(noTableOk=True, # unknownOk=True,
 targetPorosity=0.45, #the porosity we want for the packing
 num_spheres=3000,# number of spheres

 young=236e9,
 poisson=.2,
 density=2600,
 frictionAngle=radians(30),
 normalCohesion=3.e6,
 shearCohesion=1.e6,
 etaRoll=0.1,

 compFricDegree=30, # contact friction during the confining phase
 finalFricDegree=30, # contact friction during the deviatoric loading
 key='_triax_base_', # put you simulation's name here

 rate=-0.02, # loading rate (strain rate)
 damp=0.7, # damping coefficient
 stabilityThreshold=0.01, # we test unbalancedForce against this value in 
different loops (see below)
)
from yade.params import table
from yade.params.table import *
mn,mx=Vector3(0,0,0),Vector3(1,1,1) # corners of the initial packing
## create materials for spheres and plates
mat1=CohFrictMat(young=young,poisson=poisson,density=density,frictionAngle=frictionAngle,normalCohesion=normalCohesion,shearCohesion=shearCohesion,momentRotationLaw=True,etaRoll=etaRoll,label='cement')
mat_1=O.materials.append(mat1)
mat2=CohFrictMat(young=young,poisson=poisson,density=density,frictionAngle=frictionAngle,normalCohesion=3.e3,shearCohesion=1.e3,momentRotationLaw=True,etaRoll=etaRoll,label='glass_sphere')
mat_2=O.materials.append(mat2)
O.materials.append(FrictMat(young=2*young,poisson=.25,frictionAngle=0,density=0,label='frictionlessWalls'))

## create walls around the packing
walls=aabbWalls([mn,mx],thickness=0,material='frictionlessWalls')
wallIds=O.bodies.append(walls)

## use a SpherePack object to generate a random loose particles packing
sp=pack.SpherePack()
sp.makeCloud(mn,mx,-1,0,num_spheres,False, 0.95,seed=1) #"seed" make the 
"random" generation always the same
O.bodies.append([sphere(center,rad,material='cement') for center,rad in sp])
cement=[]
glass_sphere=[]
for b in O.bodies:
 if not isinstance(b.shape,Sphere): # change material only on spheres
continue
 if random.random() < 0.9:
  b.mat = mat1
  b.shape.color = (1,0,0)
  b.state.mass*=mat1.density/mat1.density
  cement.append(b.id)
 else:
  b.mat = mat2
  b.shape.color = (0,1,1)
  b.state.mass*=mat2.density/mat1.density
  glass_sphere.append(b.id)


### DEFINING ENGINES ###


triax=TriaxialStressController(
 maxMultiplier=1.+2.4e5/young, # spheres growing factor (fast growth)
 finalMaxMultiplier=1.+2.4e4/young, # spheres growing factor (slow growth)
 thickness = 0,
 stressMask = 7,
 internalCompaction=True, # If true the confining pressure is generated by 
growing particles
)

newton=NewtonIntegrator(damping=damp)

O.engines=[
 ForceResetter(),
 InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
 InteractionLoop(
  #box-sphere interactions will be the simple normal-shear law, we use ScGeom 
for them
  [Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom()],
  #Boxes will be frictional (FrictMat), so the sphere-box physics is FrictMat 
vs. CohFrictMat, the Ip type will be found via the inheritance tree 
(CohFrictMat is a FrictMat) and will result in FrictPhys interaction physics
  #and will result in a FrictPhys
  [Ip2_FrictMat_FrictMat_FrictPhys(), 
Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(label="cohesiveIp")],
  
[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(normalCohesion=MatchMaker(matches=((mat_1,mat_1,3.e6),(mat_1,mat_2,3.e4),(mat_2,mat_2,3.e3))),shearCohesion=MatchMaker(matches=((mat_1,mat_1,1.e6),
  (mat_1,mat_2,1.e4),(mat_2,mat_2,1.e3],
  #Finally, two different contact laws for sphere-box and sphere-sphere
  
[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment(
   useIncrementalForm=True, #useIncrementalForm is turned on as we want 
plasticity on the contact moments
   always_use_moment_law=False, #if we want "rolling" friction even if the 
contact is not cohesive (or cohesion is broken), we will have to turn this true 
somewhere
   label='cohesiveLaw')],

 ),
 
GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.8),
 Triaxia

[Yade-users] [Question #663066]: Triaxial cohesive

2018-01-14 Thread Seti
New question #663066 on Yade:
https://answers.launchpad.net/yade/+question/663066

Dear all,

I have done some small changes on cohesive triaxial script - changing the 
normal and cohesion values for two type of materials - but the results does not 
make sense - unbalace force nan and mean stress zero 

can you please advise me what is my mistake thanks

#!/usr/bin/python
# -*- coding: utf-8 -*-
from __future__ import division

from yade import plot,pack,timing
import time, sys, os, copy
from yade import ymport, utils, pack, export
#from pylab import *
import math
import numpy as np


### DEFINING VARIABLES AND MATERIALS ###

# default parameters or from table
readParamsFromTable(noTableOk=True, # unknownOk=True,
 targetPorosity=0.45, #the porosity we want for the packing
 num_spheres=3000,# number of spheres

 young=236e9,
 poisson=.2,
 density=2600,
 frictionAngle=radians(30),
 normalCohesion=3.e6,
 shearCohesion=1.e6,
 etaRoll=0.1,

 compFricDegree=30, # contact friction during the confining phase
 finalFricDegree=30, # contact friction during the deviatoric loading
 key='_triax_base_', # put you simulation's name here

 rate=-0.02, # loading rate (strain rate)
 damp=0.7, # damping coefficient
 stabilityThreshold=0.01, # we test unbalancedForce against this value in 
different loops (see below)
)
from yade.params import table
from yade.params.table import *
mn,mx=Vector3(0,0,0),Vector3(1,1,1) # corners of the initial packing
## create materials for spheres and plates
mat1=CohFrictMat(young=young,poisson=poisson,density=density,frictionAngle=frictionAngle,normalCohesion=normalCohesion,shearCohesion=shearCohesion,momentRotationLaw=True,etaRoll=etaRoll,label='cement')
mat_1=O.materials.append(mat1)
mat2=CohFrictMat(young=young,poisson=poisson,density=density,frictionAngle=frictionAngle,normalCohesion=3.e6,shearCohesion=1.e6,momentRotationLaw=True,etaRoll=etaRoll,label='glass_sphere')
mat_2=O.materials.append(mat2)
O.materials.append(FrictMat(young=2*young,poisson=.25,frictionAngle=0,density=0,label='frictionlessWalls'))

## create walls around the packing
walls=aabbWalls([mn,mx],thickness=0,material='frictionlessWalls')
wallIds=O.bodies.append(walls)

## use a SpherePack object to generate a random loose particles packing
sp=pack.SpherePack()
sp.makeCloud(mn,mx,-1,0,num_spheres,False, 0.95,seed=1) #"seed" make the 
"random" generation always the same
O.bodies.append([sphere(center,rad,material='cement') for center,rad in sp])
cement=[]
glass_sphere=[]
for b in O.bodies:
 if not isinstance(b.shape,Sphere): # change material only on spheres
continue
 if random.random() < 0.5:
  b.mat = mat1
  b.shape.color = (1,0,0)
  b.state.mass*=mat1.density/mat1.density
  cement.append(b.id)
 else:
  b.mat = mat2
  b.shape.color = (0,1,1)
  b.state.mass*=mat2.density/mat1.density
  glass_sphere.append(b.id)

### DEFINING ENGINES ###


triax=TriaxialStressController(
 maxMultiplier=1.+2.4e5/young, # spheres growing factor (fast growth)
 finalMaxMultiplier=1.+2.4e4/young, # spheres growing factor (slow growth)
 thickness = 0,
 stressMask = 7,
 internalCompaction=True, # If true the confining pressure is generated by 
growing particles
)

newton=NewtonIntegrator(damping=damp)

O.engines=[
 ForceResetter(),
 InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
 InteractionLoop(
  #box-sphere interactions will be the simple normal-shear law, we use ScGeom 
for them
  [Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom()],
  #Boxes will be frictional (FrictMat), so the sphere-box physics is FrictMat 
vs. CohFrictMat, the Ip type will be found via the inheritance tree 
(CohFrictMat is a FrictMat) and will result in FrictPhys interaction physics
  #and will result in a FrictPhys
  
[Ip2_FrictMat_FrictMat_FrictPhys(),Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(label="cohesiveIp")],
  #Finally, two different contact laws for sphere-box and sphere-sphere
  
[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment(
   useIncrementalForm=True, #useIncrementalForm is turned on as we want 
plasticity on the contact moments
   always_use_moment_law=False, #if we want "rolling" friction even if the 
contact is not cohesive (or cohesion is broken), we will have to turn this true 
somewhere
   label='cohesiveLaw')]
 ),
 
GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.8),
 triax,
 newton
]
triax.goal1=triax.goal2=triax.goal3=-10
while 1:
  O.run(1000, True)
  ##the global unbalanced force on dynamic bodies, thus excluding boundaries, 
which are not at equilibrium
  unb=unbalancedForce()
  print 'unbalanced force:',unb,' mean stress: ',triax.meanStress
  if unbtargetPorosity:
 ## we decrease friction value and apply it to all the bodies and contacts
 compFricDegree = 0.95*compFricDegree
 

Re: [Yade-users] [Question #657063]: unconsolidated undrained triaxial test

2017-11-06 Thread Seti
Question #657063 on Yade changed:
https://answers.launchpad.net/yade/+question/657063

Seti posted a new comment:
Wise answer! As always -  thanks :)

-- 
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 #657063]: unconsolidated undrained triaxial test

2017-09-16 Thread Seti
Question #657063 on Yade changed:
https://answers.launchpad.net/yade/+question/657063

Status: Answered => Open

Seti is still having a problem:
Hi Bruno,

Thanks for your help. Would you please kindly confirm if there is same concept 
in below script - aggregated sample? 
SignaT: pre-stress,...


Regards,
seti

#
# Triaxial test. Axial strain rate is prescribed and transverse prestress.
# Test is possible on prism or cylinder
# An independent c++ engine may be created from this script in the future.
#

from yade import pack, plot
import os

# default parameters or from table
readParamsFromTable(noTableOk=True,
# type of test ['cyl','cube']
testType = 'cyl',

# material parameters
young = 30e6,
poisson = .2,
frictionAngle = 0.27,
sigmaT = 1.5e3,
epsCrackOnset = 1e-4,
relDuctility = 10,

# prestress
preStress = -1.5e5,
# axial strain rate
strainRate = -1,

# assamlby parameters
rParticle = .075e-3, #
width = 2e-3,
height = 5e-3,
bcCoeff = 5,

# facets division
nw = 24,
nh = 15,

# output specifications
fileName = 'young = 30e6,frictionAngle = 1.5',
exportDir = '/tmp',
runGnuplot = False,
runInGui = True,
)
from yade.params.table import *
assert testType in ['cyl','cube']

# materials
concMat = O.materials.append(CpmMat(
young=young,frictionAngle=frictionAngle,poisson=poisson,sigmaT=sigmaT,
epsCrackOnset=epsCrackOnset,relDuctility=relDuctility
))
frictMat = O.materials.append(FrictMat(
young=young,poisson=poisson,frictionAngle=frictionAngle
))

# spheres
pred = pack.inCylinder((0,0,0),(0,0,height),.5*width) if testType=='cyl' else 
pack.inAlignedBox((-.5*width,-.5*width,0),(.5*width,.5*width,height)) if 
testType=='cube' else None
sp=SpherePack()
sp = 
pack.randomDensePack(pred,spheresInCell=2000,radius=rParticle,memoizeDb='/tmp/triaxTestOnCylinder.sqlite',returnSpherePack=True)
spheres=sp.toSimulation(color=(0,1,1),material=concMat)

# bottom and top of specimen. Will have prescribed velocity
bot = [O.bodies[s] for s in spheres if 
O.bodies[s].state.pos[2]<rParticle*bcCoeff]
top = [O.bodies[s] for s in spheres if 
O.bodies[s].state.pos[2]>height-rParticle*bcCoeff]
vel = strainRate*(height-rParticle*2*bcCoeff)
for s in bot:
s.shape.color = (1,0,0)
s.state.blockedDOFs = 'xyzXYZ'
s.state.vel = (0,0,-vel)
for s in top:
s.shape.color = Vector3(0,1,0)
s.state.blockedDOFs = 'xyzXYZ'
s.state.vel = (0,0,vel)
print 'Number of elements: ', len(O.bodies)
print 'Timestep',O.dt
print 'young = 30e6,frictionAngle = 0.27,preStress = -1.5e5,sigmaT = 1.5e2'

# facets
facets = []
if testType == 'cyl':
rCyl2 = .5*width / cos(pi/float(nw))
for r in xrange(nw):
for h in xrange(nh):
v1 = Vector3( rCyl2*cos(2*pi*(r+0)/float(nw)), 
rCyl2*sin(2*pi*(r+0)/float(nw)), height*(h+0)/float(nh) )
v2 = Vector3( rCyl2*cos(2*pi*(r+1)/float(nw)), 
rCyl2*sin(2*pi*(r+1)/float(nw)), height*(h+0)/float(nh) )
v3 = Vector3( rCyl2*cos(2*pi*(r+1)/float(nw)), 
rCyl2*sin(2*pi*(r+1)/float(nw)), height*(h+1)/float(nh) )
v4 = Vector3( rCyl2*cos(2*pi*(r+0)/float(nw)), 
rCyl2*sin(2*pi*(r+0)/float(nw)), height*(h+1)/float(nh) )
f1 = facet((v1,v2,v3),color=(0,0,1),material=frictMat)
f2 = facet((v1,v3,v4),color=(0,0,1),material=frictMat)
facets.extend((f1,f2))
elif testType == 'cube':
nw2 = nw/4
for r in xrange(nw2):
for h in xrange(nh):
v11 = Vector3( -.5*width + (r+0)*width/nw2, -.5*width, 
height*(h+0)/float(nh) )
v12 = Vector3( -.5*width + (r+1)*width/nw2, -.5*width, 
height*(h+0)/float(nh) )
v13 = Vector3( -.5*width + (r+1)*width/nw2, -.5*width, 
height*(h+1)/float(nh) )
v14 = Vector3( -.5*width + (r+0)*width/nw2, -.5*width, 
height*(h+1)/float(nh) )
f11 = 
facet((v11,v12,v13),color=(0,0,1),material=frictMat)
f12 = 
facet((v11,v13,v14),color=(0,0,1),material=frictMat)
v21 = Vector3( +.5*width, -.5*width + (r+0)*width/nw2, 
height*(h+0)/float(nh) )
v22 = Vector3( +.5*width, -.5*width + (r+1)*width/nw2, 
height*(h+0)/float(nh) )
v23 = Vector3( +.5*width, -.5*width + (r+1)*width/nw2, 
height*(h+1)/float(nh) )
v24 = Vector3( +.5*width, -.5*width + (r+0)*width/nw2, 
height*(h+1)/float(nh) )
f21 = 
facet((v21,v22,v23),color=(0,0,1)

Re: [Yade-users] [Question #657063]: unconsolidated undrained triaxial test

2017-09-06 Thread Seti
Question #657063 on Yade changed:
https://answers.launchpad.net/yade/+question/657063

Status: Answered => Open

Seti is still having a problem:
Thanks Bruno,

It  makes sense -  Considering your comments- my physical samples be
completely aggregated,  if  I want to skip the consolidation part ( I
know by this assumption we change the condition to USC test when there
is confining pressure around the sample) - how should I edit the current
script  to address my requirements -

P.S. I need to model UU & CU.


Thanks 

Seti

-- 
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 #657063]: unconsolidated undrained triaxial test

2017-09-02 Thread Seti
Question #657063 on Yade changed:
https://answers.launchpad.net/yade/+question/657063

Status: Answered => Open

Seti is still having a problem:
Hi Bruno,

Thanks for help, so we as per Amiya comment I understood how model CD &
CU ,however I am not sure about your comment regards UU test. my
understanding is in UU test although we have grains movement  the volume
of sample remains the same?

Would you please advise me in this regards?


thanks,
Seti

-- 
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 #657063]: unconsolidated undrained triaxial test

2017-08-28 Thread Seti
Question #657063 on Yade changed:
https://answers.launchpad.net/yade/+question/657063

Status: Answered => Open

Seti is still having a problem:
Hi Amiya,

Thanks for reply, how about UU?


Thanks,
Seti

-- 
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 #657063]: unconsolidated undrained triaxial test

2017-08-28 Thread Seti
New question #657063 on Yade:
https://answers.launchpad.net/yade/+question/657063

Hi all,


I have a general question, my understanding is we are modelling  
"unconsolidated undrained (UU) triaxial test" through below script? is that 
correct ?
If yes, can we model CU ( consolidated undrained ) and CD (consolidated drained 
) tests by yade as well? 


Thanks for help
Seti

# -*- 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. *
#*/

## This script details the simulation of a triaxial test on sphere packings 
using Yade
## See the associated pdf file for detailed exercises
## the algorithms presented here have been used in published papers, namely:
## * Chareyre et al. 2002 
(http://www.geosyntheticssociety.org/Resources/Archive/GI/src/V9I2/GI-V9-N2-Paper1.pdf)
## * Chareyre and Villard 2005 
(https://yade-dem.org/w/images/1/1b/Chareyre_licensed.pdf)
## * Scholtès et al. 2009 (http://dx.doi.org/10.1016/j.ijengsci.2008.07.002)
## * Tong et al.2012 (http://dx.doi.org/10.2516/ogst/2012032)
##
## Most of the ideas were actually developped during my PhD.
## If you want to know more on micro-macro relations evaluated by triaxial 
simulations
## AND if you can read some french, it is here: 
http://tel.archives-ouvertes.fr/docs/00/48/68/07/PDF/Thesis.pdf

from yade import pack,plot


###   DEFINING VARIABLES AND MATERIALS   ###


# The following 5 lines will be used later for batch execution
nRead=readParamsFromTable(
num_spheres=1000,# number of spheres
compFricDegree =36.28, # contact friction during the confining phase
key='_triax_base_', # put you simulation's name here
unknownOk=True
)
from yade.params import table

num_spheres=table.num_spheres# number of spheres
key=table.key
targetPorosity = 0.42 #the porosity we want for the packing
compFricDegree = 40# contact friction during the deviatoric loading
rate=-0.1 # loading rate (strain rate)
damp=0.3 # damping coefficient
stabilityThreshold=0.01 # we test unbalancedForce against this value in 
different loops (see below)
young=229e6# contact stiffness
mn,mx=Vector3(0,0,0),Vector3(0.09,0.18,0.09) # corners of the initial packing


## create materials for spheres and plates
O.materials.append(CohFrictMat(alphaKr=0.5,young=young,poisson=0.25,frictionAngle=radians(40),normalCohesion=7.5e1,shearCohesion=2.25e1,momentRotationLaw=True,etaRoll=0.001,density=2600,isCohesive=True,label='spheres'))
O.materials.append(CohFrictMat(young=young,poisson=0.25,frictionAngle=radians(40),density=0,label='walls'))

## create walls around the packing
walls=aabbWalls([mn,mx],thickness=0,material='walls')
wallIds=O.bodies.append(walls)

## use a SpherePack object to generate a random loose particles packing
sp=pack.SpherePack()


clumps=False #turn this true for the same example with clumps
if clumps:
 ## approximate mean rad of the futur dense packing for latter use
 volume = (mx[0]-mn[0])*(mx[1]-mn[1])*(mx[2]-mn[2])
 mean_rad = pow(0.09*volume/num_spheres,0.)
 ## define a unique clump type (we could have many, see clumpCloud 
documentation)
 
c1=pack.SpherePack([((-0.2*mean_rad,0,0),0.5*mean_rad),((0.2*mean_rad,0,0),0.5*mean_rad)])
 ## generate positions and input them in the simulation
 sp.makeClumpCloud(mn,mx,[c1],periodic=False)
 sp.toSimulation(material='spheres')
 O.bodies.updateClumpProperties()#get more accurate clump masses/volumes/inertia
else:
 sp.makeCloud(mn,mx,-1,0.,num_spheres,False, 0.95,seed=1) #"seed" make the 
"random" generation always the same
 #sp.makeCloud(mn,mx,0.066,num_spheres) #"seed" make the "random" generation 
always the same
 O.bodies.append([sphere(center,rad,material='spheres') for center,rad in sp])
 #or alternatively (higher level function doing exactly the same):
 #sp.toSimulation(material='spheres')


###   DEFINING ENGINES   ###


triax=TriaxialStressController(
## TriaxialStressController will be used to control stress and strain. 
It controls particles size and plates positions.
## this control of boundary conditions was used for instance in 
http://dx.doi.org/10.1016/j.ijengsci.2008.07.002
maxMultiplier=1.+2e4/young, # spheres growing factor (fast growth)
finalMaxMultiplier=1.+2e3/young, # spheres growing factor (slow growth)
thickness = 0,
## switch stress/strain control using a b

Re: [Yade-users] [Question #656614]: Sphere size Distribution

2017-08-22 Thread Seti
Question #656614 on Yade changed:
https://answers.launchpad.net/yade/+question/656614

Seti posted a new comment:
Hi Jan,

Much appreciated :)

-- 
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 #656614]: Sphere size Distribution

2017-08-22 Thread Seti
Question #656614 on Yade changed:
https://answers.launchpad.net/yade/+question/656614

Status: Answered => Solved

Seti 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 #656614]: Sphere size Distribution

2017-08-21 Thread Seti
New question #656614 on Yade:
https://answers.launchpad.net/yade/+question/656614

Hi all,

can you please help me to find out what is wrong with below script. Thanks so 
much
That is very simple script try to model pack of spheres with specific size 
distribution,

#!/usr/bin/python
from yade import pack,utils, qt, plot
#pred = pack.inAlignedBox((0,0,0),(.045,0.045,.045))
#create material
soil1 = 
CohFrictMat(young=30e9,poisson=0.3,frictionAngle=radians(30),density=2600.0,normalCohesion=1e6,
 shearCohesion=80e6,label='soil')
#color=(1,0,0) red color
#soil1 = 
FrictMat(young=1e6,poisson=0.4,frictionAngle=radians(30),density=2500.0,label='soil')
O.materials.append(soil1)#
O.bodies.append(utils.wall(0,axis=1,sense=1))
O.materials.append(CohFrictMat(young=30e9,poisson=0.3, frictionAngle = 
radians(30) , label='wallmat'))
wallmat = O.materials[-1]

spheres=SpherePack()
#spheres=pack.randomDensePack(pred,radius=.5,rRelFuzz=0,material='soil',spheresInCell=1000,color=(1,0,0),returnSpherePack=True)
#spheres.toSimulation()
#O.bodies.append(spheres)


sp=pack.SpherePack()
psdSizes=[0.00011,0.00012,0.00013,0.00014,0.00015,0.00016,0.00017,0.00018,0.00019,0.0002]
 # (sizes or radii of the grains vary from 2mm to 9.5mm)
psdCumm=[0,0.2,0.3,.4,0.5,0.6,0.7,0.8,0.9,1.0] # for the code not using 
percentage, e.g. yade-daily

 
sp.makeCloud((0,0,0),(.0045,0.0045,.0045),-1,0,1000,False, 
0.95,psdSizes,psdCumm,False,seed=1) #"seed" make the "random" generation always 
the same
#sp.makeCloud(mn,mx,-1,0,num_spheres1,num_spheres1,False, 
0.95,psdSizes,psdCumm,False,seed=1)#"seed" make the "random" generation always 
the same 
spheres.toSimulation()
#O.bodies.append(spheres)
##

O.engines=[
 ForceResetter(),#reset forces
 InsertionSortCollider([Bo1_Wall_Aabb(),Bo1_Sphere_Aabb()]),
 InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Wall_Sphere_ScGeom()], # collision geometry
[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys()], # 
collision "physics"

[Law2_ScGeom6D_CohFrictPhys_CohesionMoment(),Law2_ScGeom_FrictPhys_CundallStrack()]
 # contact law -- apply forces
),
  # apply gravity force to particles
# damping: numerical dissipation of energy
  NewtonIntegrator(damping=0.5,gravity=(0,-9.81,0)),

#qt.SnapshotEngine(fileBase='3d-',iterPeriod=200,label='snapshot'),
   # this engine will be called after 2 steps, only once

  
PyRunner(command='checkUnbalanced()',realPeriod=100,label='checker'),
  PyRunner(command='addPlotData()',iterPeriod=100)
]

print 'Number of elements: ', len(O.bodies)
print 'Box Volume: '
print 'Reposemix,e-2repose30degree,r=.5,.0'
O.trackEnergy=True
# set timestep to a fraction of the critical timestep
# the fraction is very small, so that the simulation is not too fast
# and the motion can be observed
O.dt=1*utils.PWaveTimeStep()
#makeVideo(snapshot.snapshots,'3d.mpeg',fps=10,bps=1)
# save the simulation, so that it can be reloaded later, for experimentation
#O.saveTmp()0
#checker.command='stopUnloading()'
def checkUnbalanced():
   if unbalancedForce()<5e-2:
  print('Reached target , stopping')
  O.pause()
  plot.saveDataTxt('Reposemix,,e-2repose,30degree,r=.5,.0.txt.bz2')
  plot.saveDataTxt('Reposemix,,e-2repose,30degree,r=.5,.0.txt')
#plot.saveDataTxt('modi.data.bz2')
  # plot.saveGnuplot('bbb') is also possible

# collect history of data which will be plotted

def addPlotData():
   # each item is given a names, by which it can be the unsed in plot.plots
   # the **O.energy converts dictionary-like O.energy to plot.addData arguments
   plot.addData(i=O.iter,unbalanced=unbalancedForce(),**O.energy)
#O.save('Modifiedd.txt.bz2')
#while 1:
#O.run(100,True)
#if unbalancedForce()<1e-5:
#break
plot.plots={'i':('unbalanced',None,O.energy.keys)}
plot.plot()

O.saveTmp()

#plot.saveDataTxt('2')
from yade import qt
qt.View()
#O.run()
#from yade import qt
#qt.View()
#O.run()
# this function is called when the simulation is finished
#def finish():
   # snapshot is label of qt.SnapshotEngine
   # the 'snapshots' attribute contains list of all saved files
   #makeVideo(snapshot.snapshots,'3d.mpeg',fps=10,bps=1)
   #O.pause()


yade.qt.Controller();
# set parameters of the renderer, to show network chains rather than particles
# these settings are accessible from the Controller window, on the second tab 
("Display") as well
#rr=yade.qt.Renderer()
#rr.shape=False
#rr.intrPhys=True




-- 
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 : 

Re: [Yade-users] [Question #654914]: convergence issue! using unbalancedForce()

2017-08-02 Thread Seti
Question #654914 on Yade changed:
https://answers.launchpad.net/yade/+question/654914

Status: Answered => Open

Seti is still having a problem:
Hi Bruno,

Thanks for your response.how I can record moments?

also I changed material property  to cohesive one as per below:
soil1 = 
CohFrictMat(young=30e6,poisson=0.4,frictionAngle=radians(36.5),density=2600.0,normalCohesion=1e5,
 shearCohesion=.3e5,alphaKr=0.15,etaRoll=0.3,label='soil')

now the sample explodes. can you please advise me how I can fix it?


thanks,
Seti

-- 
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 #654914]: convergence issue! using unbalancedForce()

2017-08-02 Thread Seti
New question #654914 on Yade:
https://answers.launchpad.net/yade/+question/654914

Dear Friends,

I am not sure why my below script, does not converge, even by increasing the 
micro parameters such as friction angle, the simulation  does not reach to 
target and gives me flat surface of grains instead of a heap - it is a time 
consuming  process . can you please advise me where is my mistake? 


#!/usr/bin/python
from yade import pack,utils, qt, plot
pred = pack.inAlignedBox((0,0,0),(0.067,0.067,0.067))
#create material.
#soil1 = 
CohFrictMat(young=30e7,poisson=0.3,frictionAngle=radians(30),density=2600.0,normalCohesion=10e9,
 shearCohesion=80e9,alphaKr=0.15,label='soil')
soil1 = 
CohFrictMat(alphaKr=0.15,young=30e9,poisson=0.4,density=2600,frictionAngle=radians(36.5),momentRotationLaw=True,etaRoll=0.3,label='spheres')
#color=(1,0,0) red color
#soil1 = 
FrictMat(alphaKr=1.7,young=30e6,poisson=0.3,frictionAngle=radians(30),density=2600.0,etaRoll=.4,label='soil')
O.materials.append(soil1)
O.bodies.append(utils.wall(0,axis=1,sense=1))
O.materials.append(CohFrictMat(young=30e6,poisson=0.3, frictionAngle = 
radians(30) , label='wallmat'))
#O.materials.append(FrictMat(young=30e9,poisson=0.3, frictionAngle = 
radians(30) , label='wallmat'))
wallmat = O.materials[-1]

spheres=SpherePack()
spheres=pack.randomDensePack(pred,radius=.0025,rRelFuzz=0,material='soil',spheresInCell=1000,color=(1,0,0),returnSpherePack=True)
spheres.toSimulation()
#O.bodies.append(spheres)
#

#
O.engines=[
 ForceResetter(),#reset forces
 InsertionSortCollider([Bo1_Wall_Aabb(),Bo1_Sphere_Aabb()]),
 InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Wall_Sphere_ScGeom()], # collision geometry
[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(), 
Ip2_FrictMat_FrictMat_FrictPhys  ()],# collision "physics"

[Law2_ScGeom6D_CohFrictPhys_CohesionMoment(),Law2_ScGeom_FrictPhys_CundallStrack()]
 # contact law -- apply forces
),
  # apply gravity force to particles
# damping: numerical dissipation of energy
  NewtonIntegrator(damping=0.4,gravity=(0,-9.81,0)),

#qt.SnapshotEngine(fileBase='3d-',iterPeriod=200,label='snapshot'),
   # this engine will be called after 2 steps, only once

  
PyRunner(command='checkUnbalanced()',realPeriod=50,label='checker'),
  PyRunner(command='addPlotData()',iterPeriod=100)
]

print 'Number of elements: ', len(O.bodies)

print 'Box Volume: '
print '8000,unbalancedForce()<1e-1,0.0005, 
alphaKr=0.15,young=30e9,poisson=0.4,density=2600,frictionAngle=radians(36.5),momentRotationLaw=True,etaRoll=0.3,'
O.trackEnergy=True
# set timestep to a fraction of the critical timestep
# the fraction is very small, so that the simulation is not too fast
# and the motion can be observed
O.dt=2.1*utils.PWaveTimeStep()
#makeVideo(snapshot.snapshots,'3d.mpeg',fps=10,bps=1)
# save the simulation, so that it can be reloaded later, for experimentation
#O.saveTmp()0
#checker.command='stopUnloading()'
def checkUnbalanced():
   if unbalancedForce()<1e-2:
  print('Reached target , stopping')
  O.pause()
  plot.saveDataTxt('FrictMat,e-2repose10degree,r=.5,0, damping= 
0.5.txt.bz2')
  plot.saveDataTxt('FrictMat,e-2repose10degree,r=.5,0, damping= 0.5.txt')
#plot.saveDataTxt('modi.data.bz2')
  # plot.saveGnuplot('bbb') is also possible

# collect history of data which will be plotted

def addPlotData():
   # each item is given a names, by which it can be the unsed in plot.plots
   # the **O.energy converts dictionary-like O.energy to plot.addData arguments
   plot.addData(i=O.iter,unbalanced=unbalancedForce(),**O.energy)
#O.save('Modifiedd.txt.bz2')
#while 1:
#O.run(100,True)
#if unbalancedForce()<1e-5:
#break
plot.plots={'i':('unbalanced',None,O.energy.keys)}
plot.plot()

O.saveTmp()

#plot.saveDataTxt('2')
from yade import qt
qt.View()
#O.run()
#from yade import qt
#qt.View()
#O.run()
# this function is called when the simulation is finished
#def finish():
   # snapshot is label of qt.SnapshotEngine
   # the 'snapshots' attribute contains list of all saved files
   #makeVideo(snapshot.snapshots,'3d.mpeg',fps=10,bps=1)
   #O.pause()


yade.qt.Controller();
# set parameters of the renderer, to show network chains rather than particles
# these settings are accessible from the Controller window, on the second tab 
("Display") as well
#rr=yade.qt.Renderer()
#rr.shape=False
#rr.intrPhys=True
plot.saveDataTxt('reposefric,.2,17,17,.004mm,young=30e6,poisson=0.3,frictionAngle=radians(30),density=2600.0')

Thanks,
Seti

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

__

Re: [Yade-users] [Question #650560]: micro parameters of Frictional material

2017-07-21 Thread Seti
Question #650560 on Yade changed:
https://answers.launchpad.net/yade/+question/650560

Seti confirmed that the question is solved:
Thanks Klaus Thoeni, 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 #650560]: micro parameters of Frictional material

2017-07-21 Thread Seti
Question #650560 on Yade changed:
https://answers.launchpad.net/yade/+question/650560

Status: Answered => Solved

Seti confirmed that the question is solved:
Awesome. Thanks

-- 
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 #650560]: micro parameters of Frictional material

2017-07-20 Thread Seti
New question #650560 on Yade:
https://answers.launchpad.net/yade/+question/650560

Hi all,


How I can add rolling stiffness coefficient and plastic moment limit 
coefficient to frictional material property: it seams  "alphaKr" and "etaRoll"  
just have been defined for CohFrictMat not FrictMat .

e.g. 
O.materials.append(CohFrictMat(alphaKr=1.7,young=30e6,poisson=0.4,density=2600,frictionAngle=radians(36.5),normalCohesion=1.3e6,shearCohesion=1e6,momentRotationLaw=True,etaRoll=.4,label='spheres'))

How I can see these parameters in frictional material since, to me are not just 
related to cohesive materials.

Thanks 
Seti


-- 
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 #645300]: Meaning ofchanging color in disply window

2017-06-28 Thread Seti
Question #645300 on Yade changed:
https://answers.launchpad.net/yade/+question/645300

Status: Answered => Solved

Seti 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 #645300]: Meaning ofchanging color in disply window

2017-06-28 Thread Seti
Question #645300 on Yade changed:
https://answers.launchpad.net/yade/+question/645300

Description changed to:
Hi friends,

I have a quick silly question:

In display window ( when a code is running e.g. uniaxial text ) if the setting 
was on network mode ( showing interconnections of spheres). What Changing the 
colors from blue to red is representing,  ?e.g. strain, stress,...
 I know it is a basic and fundamental question. However always there is a 
reason behind asking any questions even the silly ones! ;)


Thanks,
Seti

-- 
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 #645300]: Meaning ofchanging color in disply window

2017-06-28 Thread Seti
New question #645300 on Yade:
https://answers.launchpad.net/yade/+question/645300

Hi friends, 

I have a quick silly question: 

In display window ( when a code is running e.g. uniaxial text ) if the setting 
was on network mode ( showing interconnections of spheres). What Changing the 
colors from blue to red is representing ? I know it is a basic and fundamental 
question. However always there is a reason behind asking any questions even the 
silly ones! ;)


Thanks,
Seti

-- 
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 #644156]: Deformation Record

2017-06-18 Thread Seti
Question #644156 on Yade changed:
https://answers.launchpad.net/yade/+question/644156

Status: Answered => Open

Seti is still having a problem:
Hi Jan,

Thanks :)

I have seen this one,Since I am not expert in coding. My understanding
was this script has been written for Triaxial test. So my question is
can I do simple changes like below and do for UCS?

UC=UCSTest()
UC.generate("test.yade")

should I add this script to original script or run separately?


Thanks,
Seti

-- 
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 #644156]: Deformation Record

2017-06-18 Thread Seti
Question #644156 on Yade changed:
https://answers.launchpad.net/yade/+question/644156

Description changed to:
hi all,

I need to save the deformation of the sample in UCS test, for post processing, 
in below script - maybe by using defToVtk  can you please let me know how? I 
could not find any example in this regards,
Thanks

#!/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=270e6,
poisson=.2,

sigmaT=30e4,
frictionAngle=atan(.75),
epsCrackOnset=1e-3,
relDuctility=20,

intRadius=1.5,
dtSafety=.8,
damping=0.4,
strainRateTension=1e-1,
strainRateCompression=1e-1,
setSpeeds=True,
# 1=tension, 2=compression (ANDed; 3=both)
doModes=2,

specimenLength=.030,
sphereRadius=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
concreteId=O.materials.append(CpmMat(young=young,frictionAngle=frictionAngle,poisson=poisson,density=4800,sigmaT=sigmaT,relDuctility=relDuctility,epsCrackOnset=epsCrackOnset,isoPrestress=isoPrestress))
#concreteId=O.materials.append(CohFrictMat(young=30e9,poisson=0.2,alphaKr=3000,alphaKtw=3000,density=2700,frictionAngle=0.6,isCohesive=True,momentRotationLaw=True,normalCohesion=-3.5e6,shearCohesion=-10e6,etaRoll=-3))
sps=SpherePack()
#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.090),0.030)
O.bodies.append(pack.randomDensePack(pred,radius=0.00325,material=concreteId))

#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)
sp.toSimulation(material=concreteId)
bb=uniaxialTestFeatures()
negIds,posIds,axis,crossSectionArea=bb['negIds'],bb['posIds'],bb['axis'],bb['area']
O.dt=dtSafety*PWaveTimeStep()
print 'Timestep',O.dt
print 'sigmaT=150e3,duc30, compression,1e-4'
mm,mx=[pt[axis] for pt in aabbExtrema()]
coord_25,coord_50,coord_75=mm+.25*(mx-mm),mm+.5*(mx-mm),mm+.75*(mx-mm)
area_25,area_50,area_75=approxSectionArea(coord_25,axis),approxSectionArea(coord_50,axis),approxSectionArea(coord_75,axis)

O.engines=[
ForceResetter(),

InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=intRadius,label='is2aabb'),],verletDist=.05*sphereRadius),
InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=intRadius,label='ss2sc')],
[Ip2_CpmMat_CpmMat_CpmPhys()],
[Law2_ScGeom_CpmPhys_Cpm()],
),

[Yade-users] [Question #644156]: Deformation Record

2017-06-17 Thread Seti
New question #644156 on Yade:
https://answers.launchpad.net/yade/+question/644156

hi all,

I need to save the deformation of the sample in UCS test, for post processing, 
in below script - maybe by using defToVtk  can you please let me know how? I 
could not find any sample in this regards,
Thanks

#!/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=270e6,
poisson=.2,

sigmaT=30e4,
frictionAngle=atan(.75),
epsCrackOnset=1e-3,
relDuctility=20,

intRadius=1.5,
dtSafety=.8,
damping=0.4,
strainRateTension=1e-1,
strainRateCompression=1e-1,
setSpeeds=True,
# 1=tension, 2=compression (ANDed; 3=both)
doModes=2,

specimenLength=.030,
sphereRadius=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
concreteId=O.materials.append(CpmMat(young=young,frictionAngle=frictionAngle,poisson=poisson,density=4800,sigmaT=sigmaT,relDuctility=relDuctility,epsCrackOnset=epsCrackOnset,isoPrestress=isoPrestress))
#concreteId=O.materials.append(CohFrictMat(young=30e9,poisson=0.2,alphaKr=3000,alphaKtw=3000,density=2700,frictionAngle=0.6,isCohesive=True,momentRotationLaw=True,normalCohesion=-3.5e6,shearCohesion=-10e6,etaRoll=-3))
sps=SpherePack()
#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.090),0.030)
O.bodies.append(pack.randomDensePack(pred,radius=0.00325,material=concreteId))

#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)
sp.toSimulation(material=concreteId)
bb=uniaxialTestFeatures()
negIds,posIds,axis,crossSectionArea=bb['negIds'],bb['posIds'],bb['axis'],bb['area']
O.dt=dtSafety*PWaveTimeStep()
print 'Timestep',O.dt
print 'sigmaT=150e3,duc30, compression,1e-4'
mm,mx=[pt[axis] for pt in aabbExtrema()]
coord_25,coord_50,coord_75=mm+.25*(mx-mm),mm+.5*(mx-mm),mm+.75*(mx-mm)
area_25,area_50,area_75=approxSectionArea(coord_25,axis),approxSectionArea(coord_50,axis),approxSectionArea(coord_75,axis)

O.engines=[
ForceResetter(),

InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=intRadius,label='is2aabb'),],verletDist=.05*sphereRadius),
InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=intRadius,label='ss2sc')],
[Ip2_CpmMat_CpmMat_CpmPhys()],
[Law2_ScGeom_CpmPhys_Cpm()],
),

Re: [Yade-users] [Question #466937]: Tracking the Crack

2017-05-07 Thread Seti
Question #466937 on Yade changed:
https://answers.launchpad.net/yade/+question/466937

Status: Answered => Open

Seti is still having a problem:
Hi Robert,

Thanks so much for your recommendation, can you please explain what you
me exactly by:

 " I've had mixed luck with visualizing that vtu in paraview, so I find
it easier to use python to plot the cracks.txt file that is also
generated."


Thanks,
Seti

-- 
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 #631623]: Demonstrate creation of Shear band in triaxial test

2017-05-07 Thread Seti
New question #631623 on Yade:
https://answers.launchpad.net/yade/+question/631623

Hi all,

I need to simulate/show step by step the process of  creation the shear band/ 
cracks during the triaxial test. Can you please help me how I can do it? 

Thanks ,
Seti




-- 
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 #630997]: SnapshotEngines timeout error!

2017-05-03 Thread Seti
t.saveDataTxt('200,45')
##or even generate a script for gnuplot. Open another terminal and type  
"gnuplot plotScriptKEY.gnuplot:
#plot.saveGnuplot('200,45')
## display on the screen (doesn't work on VMware image it seems)
plot.plot()

#  PLAY THE SIMULATION HERE WITH "PLAY" BUTTON OR WITH THE COMMAND O.run(N) 
 #

rr=yade.qt.Renderer()
rr.shape=True
rr.intrPhys=True

Thanks,
Seti

-- 
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 #630995]: VTK does not work in my code

2017-05-03 Thread Seti
Question #630995 on Yade changed:
https://answers.launchpad.net/yade/+question/630995

Status: Answered => Solved

Seti 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 #630995]: VTK does not work in my code

2017-05-03 Thread Seti
Question #630995 on Yade changed:
https://answers.launchpad.net/yade/+question/630995

Summary changed to:
VTK does not work in my code

-- 
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 #630995]: VTK does not work for me!

2017-05-03 Thread Seti
New question #630995 on Yade:
https://answers.launchpad.net/yade/+question/630995

Hi all, 

Can anyone tell me why VTK and Snapshot don’t work in below script?

# encoding: utf-8
# 2012 ©Bruno Chareyre 
# This variant of triax-basic.py shows the usage of cohesive contact laws and 
moments at contacts

from yade import pack, qt

sp=pack.SpherePack()
## corners of the initial packing
mn,mx=Vector3(0,0,0),Vector3(40,40,40)

## box between mn and mx, avg radius ± ½(20%), 2k spheres
sp.makeCloud(minCorner=mn,maxCorner=mx,rMean=1,rRelFuzz=.5,num=1000)

## create material #0, which will be used as default
O.materials.append(CohFrictMat(alphaKr=0.025,young=100e6,poisson=0.4,density=2600,frictionAngle=radians(36.5),normalCohesion=2e6,shearCohesion=2e6,momentRotationLaw=True,etaRoll=0.2,label='spheres'))
O.materials.append(FrictMat(young=229e6,poisson=.4,frictionAngle=0,density=0,label='frictionlessWalls'))


## copy spheres from the packing into the scene
O.bodies.append([sphere(center,rad,material='spheres') for center,rad in sp])
## create walls around the packing
walls=aabbWalls(material='frictionlessWalls')
wallIds=O.bodies.append(walls)

triax=TriaxialCompressionEngine(
wall_bottom_id=wallIds[2],
wall_top_id=wallIds[3],
wall_left_id=wallIds[0],
wall_right_id=wallIds[1],
wall_back_id=wallIds[4],
wall_front_id=wallIds[5],
internalCompaction=False,
sigmaIsoCompaction=-150e3,
sigmaLateralConfinement=-150e3,
max_vel=10,
strainRate=0.03,
label="triax"
)

O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
InteractionLoop(
#box-sphere interactions will be the simple normal-shear law, 
we use ScGeom for them
[Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom()],
#Boxes will be frictional (FrictMat), so the sphere-box physics 
is FrictMat vs. CohFrictMat, the Ip type will be found via the inheritance tree 
(CohFrictMat is a FrictMat) and will result in FrictPhys interaction physics
#and will result in a FrictPhys

[Ip2_FrictMat_FrictMat_FrictPhys(),Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(label="cohesiveIp")],
#Finally, two different contact laws for sphere-box and 
sphere-sphere

[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment(
useIncrementalForm=True, #useIncrementalForm is turned 
on as we want plasticity on the contact moments
always_use_moment_law=False,  #if we want "rolling" 
friction even if the contact is not cohesive (or cohesion is broken), we will 
have to turn this true somewhere

label='cohesiveLaw'),Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM(recordCracks=True)]
),
#VTKRecorder(recorders=['spheres','intr','jcfpm']),


GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.5),
triax,

TriaxialStateRecorder(iterPeriod=1000,file=',jedddi150e3,alphaKr=0.025,150e3,young=100e6,poisson=0.4,density=2600,frictionAngle=radians(36.5),normalCohesion=2e6,shearCohesion=2e6,etaRoll=0.2,2%portland'),
NewtonIntegrator(damping=.4),
VTKRecorder(fileName='3d-vtk-',recorders=['all'],iterPeriod=1000),
qt.SnapshotEngine(fileBase='3d-',iterPeriod=200,label='snapshot'),
]
O.dt=.5*PWaveTimeStep()



# we must open the view explicitly (limitation of the qt.SnapshotEngine)
qt.View()



from yade import plot
O.engines=O.engines[0:5]+[PyRunner(iterPeriod=500,command='history()',label='recorder')]+O.engines[5:7]
def history():
plot.addData(e11=-O.engines[4].strain[0], e22=-O.engines[4].strain[1], 
e33=-O.engines[4].strain[2],
s11=-O.engines[4].stress(0)[0],
s22=-O.engines[4].stress(2)[1],
s33=-O.engines[4].stress(4)[2],
i=O.iter)

print 'Number of elements: ', len(O.bodies)
print 'Box Volume: ',  triax.boxVolume
#plot.plots={'i':(('e11',"bo"),('e22',"ro"),('e33',"go"),None,('s11',"bx"),('s22',"rx"),('s33',"gx"))}
plot.plots={'e22':'s22'}
plot.plot()

print "computing, be patient..."
#First run without moment and without cohesion
O.run(12,True)

#This will reload the autosaved compacted sample
O.reload()

#second run with rolling friction
O.engines[2].lawDispatcher.functors[1].always_use_moment_law = True
O.run(12,True)
O.reload()

#third run with rolling friction + cohesion
O.engines[2].lawDispatcher.functors[1].always_use_moment_law = True
#We assign cohesion to all contacts at the next iteration
O.engines[2].physDispatcher.functors[1].setCohesionNow = True
O.run(12,True)
#plot.saveDataTxt('200,45')
##or even generate a script for gnuplot. Open another terminal and type  
"gnuplot plotScriptKEY.gnuplot:
#plot.saveGnuplot('200,45')
## 

Re: [Yade-users] [Question #620981]: record deformed shape in cohesive triaxil test

2017-04-19 Thread Seti
Question #620981 on Yade changed:
https://answers.launchpad.net/yade/+question/620981

Status: Answered => Solved

Seti confirmed that the question is solved:
Hi Robert,


Thanks for your time and recommendation.


Hi Hien,

thanks for recommendation. I meant force network.



Cheers,
Seti

-- 
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 #443228]: segmentation fault using two kinds of cohefricmats under cohesive triaxial test

2017-04-19 Thread Seti
Question #443228 on Yade changed:
https://answers.launchpad.net/yade/+question/443228

Seti posted a new comment:
awesome, it is working. Thanks Jan :)

-- 
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 #443228]: segmentation fault using two kinds of cohefricmats under cohesive triaxial test

2017-04-18 Thread Seti
Question #443228 on Yade changed:
https://answers.launchpad.net/yade/+question/443228

Seti requested more information:
Hi Jan,

I ran  script on Ubuntu 16.04 and had segmentation fault!!!


Regards,
Seti

-- 
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 #443228]: segmentation fault using two kinds of cohefricmats under cohesive triaxial test

2017-04-18 Thread Seti
Question #443228 on Yade changed:
https://answers.launchpad.net/yade/+question/443228

Seti requested more information:
Hi Jan,

I ran  script on Ubuntu 16.04 and had segmentation fault!!!


Regards,
Seti

-- 
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 #620981]: record deformed shape in cohesive triaxil test

2017-04-18 Thread Seti
Question #620981 on Yade changed:
https://answers.launchpad.net/yade/+question/620981

Status: Answered => Open

Seti is still having a problem:
Hi Robert,

thanks for reply and sorry for not being specific.

I meant tracking the force chains in cohesive triaxial tests - Visual
observation in 3d Sample


Thanks,
Seti

-- 
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 #620981]: record deformed shape in cohesive triaxil test

2017-04-17 Thread Seti
New question #620981 on Yade:
https://answers.launchpad.net/yade/+question/620981

Hi all,

can you please advise how I can record deformed shape in cohesive triaxil test?


Cheers
Seti

-- 
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 #466937]: Tracking the Crack

2017-02-20 Thread Seti
New question #466937 on Yade:
https://answers.launchpad.net/yade/+question/466937

Hi All,


Sorry for  preliminary question!

How I can show/track cracks in samples  by changing color? e.g. triaxial test

Thanks 
Seti

-- 
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 #462863]: Cohesive triaxial

2017-02-18 Thread Seti
Question #462863 on Yade changed:
https://answers.launchpad.net/yade/+question/462863

Seti gave more information on the question:
for example below script will work for 
 sigmaIsoCompaction=-150e3,
sigmaLateralConfinement=-150e3,
if I change the to 50e3 results are not make sense ( much lower that 
experimental results)

# encoding: utf-8
# 2012 ©Bruno Chareyre <bruno.chare...@hmg.inpg.fr>
# This variant of triax-basic.py shows the usage of cohesive contact laws and 
moments at contacts

from yade import pack

sp=pack.SpherePack()
## corners of the initial packing
mn,mx=Vector3(0,0,0),Vector3(10,10,10)

## box between mn and mx, avg radius ± ½(20%), 2k spheres
sp.makeCloud(minCorner=mn,maxCorner=mx,rRelFuzz=.2,num=1000)

## create material #0, which will be used as default
O.materials.append(CohFrictMat(young=229e6,poisson=0.4,density=2600,frictionAngle=radians(36.5),normalCohesion=1e6,shearCohesion=1e6,momentRotationLaw=True,etaRoll=0.14,label='spheres'))
O.materials.append(FrictMat(young=229e6,poisson=.4,frictionAngle=0,density=0,label='frictionlessWalls'))


## copy spheres from the packing into the scene
O.bodies.append([sphere(center,rad,material='spheres') for center,rad in sp])
## create walls around the packing
walls=aabbWalls(material='frictionlessWalls')
wallIds=O.bodies.append(walls)

triax=TriaxialCompressionEngine(
wall_bottom_id=wallIds[2],
wall_top_id=wallIds[3],
wall_left_id=wallIds[0],
wall_right_id=wallIds[1],
wall_back_id=wallIds[4],
wall_front_id=wallIds[5],
internalCompaction=False,
sigmaIsoCompaction=-50e3,
sigmaLateralConfinement=-50e3,
max_vel=10,
strainRate=0.03,
label="triax"
)

O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
InteractionLoop(
#box-sphere interactions will be the simple normal-shear law, 
we use ScGeom for them
[Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom()],
#Boxes will be frictional (FrictMat), so the sphere-box physics 
is FrictMat vs. CohFrictMat, the Ip type will be found via the inheritance tree 
(CohFrictMat is a FrictMat) and will result in FrictPhys interaction physics
#and will result in a FrictPhys

[Ip2_FrictMat_FrictMat_FrictPhys(),Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(label="cohesiveIp")],
#Finally, two different contact laws for sphere-box and 
sphere-sphere

[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment(
useIncrementalForm=True, #useIncrementalForm is turned 
on as we want plasticity on the contact moments
always_use_moment_law=False,  #if we want "rolling" 
friction even if the contact is not cohesive (or cohesion is broken), we will 
have to turn this true somewhere
label='cohesiveLaw')]
),

GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.5),
triax,

TriaxialStateRecorder(iterPeriod=100,file='50e3,young=229e6,poisson=0.4,density=2600,frictionAngle=radians(36.5),normalCohesion=1e6,shearCohesion=1e6,etaRoll=0.14,'),
NewtonIntegrator(damping=.4)
]


from yade import plot
O.engines=O.engines[0:5]+[PyRunner(iterPeriod=20,command='history()',label='recorder')]+O.engines[5:7]
def history():
plot.addData(e11=-O.engines[4].strain[0], e22=-O.engines[4].strain[1], 
e33=-O.engines[4].strain[2],
s11=-O.engines[4].stress(0)[0],
s22=-O.engines[4].stress(2)[1],
s33=-O.engines[4].stress(4)[2],
i=O.iter)

#plot.plots={'i':(('e11',"bo"),('e22',"ro"),('e33',"go"),None,('s11',"bx"),('s22',"rx"),('s33',"gx"))}
plot.plots={'e22':'s22'}
plot.plot()

print "computing, be patient..."
#First run without moment and without cohesion
O.run(2,True)

#This will reload the autosaved compacted sample
O.reload()

#second run with rolling friction
O.engines[2].lawDispatcher.functors[1].always_use_moment_law = True
O.run(2,True)
O.reload()

#third run with rolling friction + cohesion
O.engines[2].lawDispatcher.functors[1].always_use_moment_law = True
#We assign cohesion to all contacts at the next iteration
O.engines[2].physDispatcher.functors[1].setCohesionNow = True
O.run(3,True)

Thanks for help
seti

-- 
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 #462863]: Cohesive triaxial

2017-02-16 Thread Seti
New question #462863 on Yade:
https://answers.launchpad.net/yade/+question/462863

Hi All,

I really need to model the cohesive triaxial test, i just have tried to do some 
changes on original triax script (changing engine and material property from 
friction to cohesive) which does not work for some reasons, maybe i am doing 
something wrong! ( question number 451417.

I have found below script in test folder which with  its own current inputs 
stress -strain graph makes sense however when i change inputs such as friction, 
young, or normal , shear cohesion the results are not convenience ,
Can you please assist in this issue? 

https://github.com/yade/trunk/commit/19e81a785b19a8eab2718ebb5ad5eb9456355818

regards,
Seti 

-- 
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 #428798]: Triaxial test on Cylinder loose Sample

2017-01-04 Thread Seti
New question #428798 on Yade:
https://answers.launchpad.net/yade/+question/428798

Hi All,

Happy new year :)

Can you please advise me how I can model the triaxial test on Cylindrical 
sample where the sample is not cemented ( loose sample).

I need to control the porosity of sample exactly what we can do through [1] 
triaxial model for cubic samples.

[1] https://github.com/yade/trunk/blob/master/examples/concrete/triax.py


Cheers,
Seti


-- 
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 #406569]: Triaxial test on Cylinder Sample

2016-12-08 Thread Seti
Question #406569 on Yade changed:
https://answers.launchpad.net/yade/+question/406569

Seti 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 #406569]: Triaxial test on Cylinder Sample

2016-12-08 Thread Seti
Question #406569 on Yade changed:
https://answers.launchpad.net/yade/+question/406569

Status: Answered => Solved

Seti confirmed that the question is solved:
Hi Jan,


Thank so much for prompt reply. 

Cheers

-- 
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 #406569]: Triaxial test on Cylinder Sample

2016-12-08 Thread Seti
Question #406569 on Yade changed:
https://answers.launchpad.net/yade/+question/406569

Seti posted a new comment:
and cohesion between grains/spheres ?

Thanks

-- 
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 #406569]: Triaxial test on Cylinder Sample

2016-12-08 Thread Seti
New question #406569 on Yade:
https://answers.launchpad.net/yade/+question/406569

Hi All,

I need to know how to model/control  deviatoric and confining loading, 
stiffness( Ks,Kn,M ,...) through below script.

 https://github.com/yade/trunk/blob/master/examples/concrete/triax.py


Thanks for you assist 



Cheers,
Seti

-- 
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 #403663]: Modeling 2 materilas by CPM model

2016-11-21 Thread Seti
Question #403663 on Yade changed:
https://answers.launchpad.net/yade/+question/403663

Status: Answered => Open

Seti is still having a problem:
Hi Jan,


Thanks for your help, , in a sample with just two materials. I have done a 
series of parametric studies to understand how changing( say increasing) the 
percentage of material #1 has effect on the strength of sample.  By increasing 
the percentage of mat 1 ( %10, %30, %70) the strength of sample has been 
increased respectively. However when I increase the percentage of mat 1 to 90% 
I have drop in stress - strain curve ( strength even less that 30 %) 

Is there any issue with the script or there is a convergence problem
here?

Thanks so much for your help.


#!/usr/bin/python
# -*- coding: utf-8 -*-
from __future__ import division

from yade import plot,pack,timing
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=30e9,
poisson=.2,

sigmaT=1.1e9,
frictionAngle=atan(.57),
epsCrackOnset=1e-4,
relDuctility=30,

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=atan(.32),poisson=poisson,density=4800,sigmaT=sigmaT,relDuctility=relDuctility,epsCrackOnset=epsCrackOnset,isoPrestress=isoPrestress)
mat2=CpmMat(young=30e9,frictionAngle=frictionAngle,poisson=poisson,density=4800,sigmaT=sigmaT,relDuctility=relDuctility,epsCrackOnset=epsCrackOnset,isoPrestress=isoPrestress)
concreteId1=O.materials.append(CpmMat(young=young,frictionAngle=atan(.32),poisson=poisson,density=4800,sigmaT=sigmaT,relDuctility=relDuctility,epsCrackOnset=epsCrackOnset,isoPrestress=isoPrestress))
concreteId2=O.materials.append(CpmMat(young=young,frictionAngle=frictionAngle,poisson=poisson,density=4800,sigmaT=sigmaT,relDuctility=relDuctility,epsCrackOnset=epsCrackOnset,isoPrestress=isoPrestress))
#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.002),(0,0,0.3),0.05)
O.bodies.append(pack.randomDensePack(pred,radius=0.008))

#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)


sp.toSimulation()

for b in O.bodies:
  if random.random() < 0.3:
b.mat = mat1
b.shape.color = (1,0,0)
  else:
b.mat = m

Re: [Yade-users] [Question #403663]: Modeling 2 materilas by CPM model

2016-11-13 Thread Seti
Question #403663 on Yade changed:
https://answers.launchpad.net/yade/+question/403663

Status: Solved => Open

Seti is still having a problem:
Hi Jan,

Just a quick question, I am wondering to combine more materials in CPM model ( 
say 5 items), would you please advise me how I can specify the percentage of 
each material? 
My idea is as per below: 

##
from yade import pack
import random

mat1 = CpmMat() # ...
mat2 = CpmMat() # ...
mat3 = CpmMat() # ...
mat4 = CpmMat() # ...
mat5 = CpmMat() # ...

sp = pack.randomDensePack(pack.inAlignedBox((0,0,0),(1,1,1)),
radius=.05,spheresInCell=500,returnSpherePack=True)
sp.toSimulation()

for b in O.bodies:
  if random.random() < 0.2:
b.mat = mat1
b.shape.color = (1,0,0)
 elif random.random() < 0.1:
b.mat = mat2
b.shape.color = (0,1,0)
 elif random.random() < 0.3:
b.mat = mat3
b.shape.color = (0,0,1)
 elif random.random() < 0.2:
b.mat = mat4
b.shape.color = (1,1,0)
  else:
b.mat = mat5
  b.shape.color = (0,1,1)


Cheers,
Seti

-- 
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 #403663]: Modeling 2 materilas by CPM model

2016-10-31 Thread Seti
Question #403663 on Yade changed:
https://answers.launchpad.net/yade/+question/403663

Status: Answered => Solved

Seti 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 #403663]: Modeling 2 materilas by CPM model

2016-10-31 Thread Seti
Question #403663 on Yade changed:
https://answers.launchpad.net/yade/+question/403663

Status: Answered => Open

Seti is still having a problem:
Hi Jan,

Thanks so much for your reply,  would you please let me know what is
meaning of " if random.random() < 0.2:" commend in your example?

I have tried  to do a quick test based on your recommendation, below
error will be pop up related to  "if random.random() < 0.2:" line

"IndentationError: expected an indented block"


Cheers,
Seti

-- 
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 #403663]: Modeling 2 materilas by CPM model

2016-10-31 Thread Seti
New question #403663 on Yade:
https://answers.launchpad.net/yade/+question/403663

Hi All,

I have the same question which has been asked in  Q # 372295. I really need to 
know how I can control the percentage of spheres when I am modelling  different 
materials through CPM model.

Can you please shed some lights on this issue? 


Cheers,
Seti

-- 
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 #402288]: Compiling

2016-10-08 Thread Seti
Question #402288 on Yade changed:
https://answers.launchpad.net/yade/+question/402288

Seti 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


Re: [Yade-users] [Question #402288]: Compiling

2016-10-08 Thread Seti
Question #402288 on Yade changed:
https://answers.launchpad.net/yade/+question/402288

Status: Answered => Solved

Seti confirmed that the question is solved:
Thanks Anton and Jan,

-- 
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 #402288]: Compiling

2016-09-26 Thread Seti
New question #402288 on Yade:
https://answers.launchpad.net/yade/+question/402288

Hi All, 

I have downloaded "trunk-2016.06a" on my PC ( in "yade-source-1" folder)  and 
tried to compile it as per below: 
cd /home/elaheh/yade-source-1
scons PREFIX=/home/elaheh/YADE-1

However I have faced with below error

scons: *** No SConstruct file found.
File "/usr/lib/scons/SCons/Script/Main.py", line 923, in _main


please note that I have   SConstructin below address
home/elaheh/yade-source-1/trunk-2016.06a

1- 
Would you please advise me where is my mistake? and how should I fix it? 
2- 
Have I downloaded the latest version of YADE? 


Thanks,
Seti





-- 
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 #399298]: Machmaker in CPM model

2016-09-22 Thread Seti
Question #399298 on Yade changed:
https://answers.launchpad.net/yade/+question/399298

Status: Answered => Open

Seti is still having a problem:
Hi Jan,

Thanks so much for your assist and sorry for slow reply.

I just sent an email to you. As I have mentioned in my email I need to
control all of the parameters that have effect on Cohesion between
spheres in CPM model.

Also I need to use matchmaker for inter-granular friction between
spheres.


Appreciate for that.

Seti

-- 
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 #399298]: Machmaker in CPM model

2016-09-19 Thread Seti
Question #399298 on Yade changed:
https://answers.launchpad.net/yade/+question/399298

Status: Answered => Open

Seti is still having a problem:
Thanks Jan for kind support. I have downloaded yade from
"https://github.com/yade/trunk;

is that what you have recommended?

if yes,
1- How I can install it? 
installing package was really easy just copy/past the mentioned commend lines 
from "https://yade-dem.org/doc/installation.html; however I am not sure how 
should I install the source codes. would you please assist me ?

2- I have found the source code of CPM on truck and I suppose I should
change below lines to add matchmaker to control the cohesion. so dose it
mean if I do changes in "  trunk/pkg/dem/ConcretePM.hpp" and save it
then run YADE it will work?

###
class Ip2_CpmMat_CpmMat_CpmPhys: public IPhysFunctor{
public:
virtual void go(const shared_ptr& pp1, const 
shared_ptr& pp2, const shared_ptr& interaction);
FUNCTOR2D(CpmMat,CpmMat);
DECLARE_LOGGER;

YADE_CLASS_BASE_DOC_ATTRS(Ip2_CpmMat_CpmMat_CpmPhys,IPhysFunctor,"Convert 2 
:yref:`CpmMat` instances to :yref:`CpmPhys` with corresponding parameters. Uses 
simple (arithmetic) averages if material are different. Simple copy of 
parameters is performed if the :yref:`material` is shared between both 
particles. See :yref:`cpm-model` for detals.",
((long,cohesiveThresholdIter,10,,"Should new contacts 
be cohesive? They will before this iter#, they will not be afterwards. If 0, 
they will never be. If negative, they will always be created as cohesive (10 by 
default)."))
((shared_ptr,E,,,"Instance of 
:yref:`MatchMaker` determining how to compute interaction's normal modulus. If 
``None``, average value is used."))
);
}; 

##

Thanks

-- 
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 #399298]: Machmaker in CPM model

2016-09-19 Thread Seti
Question #399298 on Yade changed:
https://answers.launchpad.net/yade/+question/399298

Status: Answered => Open

Seti is still having a problem:
Hi Jan,


Thank so much for your reply. I am using "yadedaily" for this code.   

Yade: 
Yade 1.20.0 

Yadedaily :
  Yade 2016.06a-20-d4840e5~xenial

-- 
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 #399298]: Machmaker in CPM model

2016-09-18 Thread Seti
Question #399298 on Yade changed:
https://answers.launchpad.net/yade/+question/399298

Seti gave more information on the question:
I have tried to add below lines to CPM Model, and I faced with error as
per below:

[Ip2_CpmMat_CpmMat_CpmPhys(sigmaT=MatchMaker(matches=((concreteId1,concreteId2,3.5e3),(concreteId2,concreteId2,3.5e6))),relDuctility=MatchMaker(matches=((concreteId1,concreteId2,30),(concreteId2,concreteId2,40],

Error:

line 101, in 

AttributeError: No such attribute: sigmaT.


Would you please advise? 

Regards,
Seti

-- 
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 #399298]: Machmaker in CPM model

2016-09-18 Thread Seti
New question #399298 on Yade:
https://answers.launchpad.net/yade/+question/399298

Hi all,

I am trying to combine two different material in CPM , However, I am not sure, 
can I use matchmaker in CPM model? 
if yes: 

1- Which parameters are representing the cohesion between spheres in CPM model 
? sigmaT? relDuctility?
2-Can I change these parameters(sigmaT, relDuctility)  by match maker? 


Thanks,

-- 
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 #355386]: Can not instal Yadedaily on Ubuntu 16.04

2016-08-23 Thread Seti
Question #355386 on Yade changed:
https://answers.launchpad.net/yade/+question/355386

Status: Answered => Open

Seti is still having a problem:
Thanks Anton, I have done based on your recommendation .  I have
installed Yadedaily , Now the problem is , I can not run the script
which worked properly in previous version of ubuntu. Can you please
advise ?

-- 
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 #355386]: Can not instal Yadedaily on Ubuntu 16.04

2016-08-21 Thread Seti
Question #355386 on Yade changed:
https://answers.launchpad.net/yade/+question/355386

Seti posted a new comment:
FYI:

sudo apt-get update
Hit:1 http://au.archive.ubuntu.com/ubuntu xenial InRelease
Hit:2 http://au.archive.ubuntu.com/ubuntu xenial-updates InRelease 
Hit:3 http://au.archive.ubuntu.com/ubuntu xenial-backports InRelease   
Hit:4 http://security.ubuntu.com/ubuntu xenial-security InRelease  
Ign:5 http://www.yade-dem.org/packages trusty/ InRelease 
Ign:6 http://ppa.launchpad.net/yade-users/external/ubuntu xenial InRelease
Hit:7 http://www.yade-dem.org/packages trusty/ Release
Ign:8 http://ppa.launchpad.net/yade-users/external/ubuntu xenial Release
Ign:10 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
Packages
Ign:11 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main i386 
Packages
Ign:12 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main all 
Packages
Ign:13 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en_AU
Ign:14 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en
Ign:15 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
DEP-11 Metadata
Ign:16 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main DEP-11 
64x64 Icons
Ign:10 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
Packages
Ign:11 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main i386 
Packages
Ign:12 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main all 
Packages
Ign:13 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en_AU
Ign:14 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en
Ign:15 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
DEP-11 Metadata
Ign:16 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main DEP-11 
64x64 Icons
Ign:10 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
Packages
Ign:11 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main i386 
Packages
Ign:12 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main all 
Packages
Ign:13 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en_AU
Ign:14 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en
Ign:15 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
DEP-11 Metadata
Ign:16 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main DEP-11 
64x64 Icons
Ign:10 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
Packages
Ign:11 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main i386 
Packages
Ign:12 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main all 
Packages
Ign:13 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en_AU
Ign:14 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en
Ign:15 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
DEP-11 Metadata
Ign:16 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main DEP-11 
64x64 Icons
Ign:10 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
Packages
Ign:11 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main i386 
Packages
Ign:12 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main all 
Packages
Ign:13 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en_AU
Ign:14 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en
Ign:15 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
DEP-11 Metadata
Ign:16 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main DEP-11 
64x64 Icons
Err:10 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
Packages
  404  Not Found
Ign:11 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main i386 
Packages
Ign:12 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main all 
Packages
Ign:13 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en_AU
Ign:14 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main 
Translation-en
Ign:15 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main amd64 
DEP-11 Metadata
Ign:16 http://ppa.launchpad.net/yade-users/external/ubuntu xenial/main DEP-11 
64x64 Icons
Reading package lists... Done
W: Target Packages (Packages) is configured multiple times in 
/etc/apt/sources.list:55 and /etc/apt/sources.list:56
W: Target Translations (en_AU) is configured multiple times in 
/etc/apt/sources.list:55 and /etc/apt/sources.list:56
W: Target Translations (en) is configured multiple times in 
/etc/apt/sources.list:55 and /etc/apt/sources.list:56
W: Target Packages (Packages) is configured multiple times in 
/etc/apt/sources.list:55 and /etc/apt/sources.list:57
W: Target Translations (en_AU) is configured

Re: [Yade-users] [Question #355386]: Can not instal Yadedaily on Ubuntu 16.04

2016-08-21 Thread Seti
Question #355386 on Yade changed:
https://answers.launchpad.net/yade/+question/355386

Description changed to:
Hi all,

Since I have updated the Ubuntu on my PC the yadedaily  does not work either. I 
have tried to install it again, which I faced to below error , would you please 
advise? Thanks 
###
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 yadedaily : Depends: libyadedaily (= 2016.06a-20-d4840e5~trusty-1) but it is 
not going to be installed
 Depends: python-yadedaily (= 2016.06a-20-d4840e5~trusty-1)
E: Unable to correct problems, you have held broken packages
###

Regards, Seti

-- 
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 #355386]: Can not instal Yadedaily on Ubuntu 16.04

2016-08-21 Thread Seti
Question #355386 on Yade changed:
https://answers.launchpad.net/yade/+question/355386

Summary changed to:
Can not instal Yadedaily on  Ubuntu 16.04

-- 
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 #355386]: Can not use Yadedaily

2016-08-21 Thread Seti
New question #355386 on Yade:
https://answers.launchpad.net/yade/+question/355386

Hi all,

Since I have updated the Ubuntu on my PC the yadedaily  does not work either. I 
have tried to instil it again, which I faced to below error , would you please 
advise? Thanks 
###
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 yadedaily : Depends: libyadedaily (= 2016.06a-20-d4840e5~trusty-1) but it is 
not going to be installed
 Depends: python-yadedaily (= 2016.06a-20-d4840e5~trusty-1)
E: Unable to correct problems, you have held broken packages
###

Regards, Seti

-- 
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 #329634]: Compression test - calibration

2016-08-09 Thread Seti
New question #329634 on Yade:
https://answers.launchpad.net/yade/+question/329634

Hi All, 


I have tried to model a simple compression test as per below. and did  some 
parametric studies - Obviously by increasing the  \ values of frictional angle, 
the amount of stress  should be increased  however it does not happen ( e.g. 
frictional angle have been changes from 5 degree to 35 degree)  


I am sure now there is something wrong with script. maybe model of 
packing,. 
Would you please advise? 


Here is the script: 

from yade import pack,plot

idParticulate=O.materials.append(CohFrictMat(young=30e9,poisson=0.3,alphaKr=3000,alphaKtw=3000,density=2700,frictionAngle=0.087,isCohesive=True,momentRotationLaw=True,normalCohesion=-3.5e1,shearCohesion=-10e1,etaRoll=-3))#,etaTwis=-3

pred=pack.inCylinder((0,0,0),(0,0,0.5),0.07)

TS=pack.randomDensePack(pred,radius=0.008,material=idParticulate)
O.bodies.append(TS)

bb=uniaxialTestFeatures()
negIds,posIds,axis,crossSectionArea=bb['negIds'],bb['posIds'],bb['axis'],bb['area']

O.dt=1e-5*PWaveTimeStep()

O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=1.5,label='bo1s')]),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom6D(interactionDetectionFactor=1.5,label='ig2ss')],
[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True,setCohesionOnNewContacts=False)],
[Law2_ScGeom6D_CohFrictPhys_CohesionMoment()]
),
NewtonIntegrator(),
UniaxialStrainer(strainRate=-0.5,axis=axis,asymmetry=0,posIds=posIds,negIds=negIds,crossSectionArea=crossSectionArea,blockDisplacements=False,blockRotations=False,setSpeeds=False,label='strainer'),
PyRunner(virtPeriod=1e-6/0.5,realPeriod=1,command='addPlotData()',iterPeriod=100,label='plotDataCollector',initRun=True)
]


###3


##


bo1s.aabbEnlargeFactor=1.0
ig2ss.interactionDetectionFactor=1.0
O.trackEnergy=True
plot.plots={'eps':('sigma',)} #,'sigma.50')},'t':('eps')} 
#'sigma.25','sigma.50','sigma.75')}

O.saveTmp('initial');

print 'Number of elements: ', len(O.bodies)

print 
'normalCohesion=-3.5e1,shearCohesion=-10e1,phi:555,(0,0,0),(0,0,0.5correct),0.07)'


#def addPlotData():
   
#yade.plot.addData(t=O.time,i=O.iter,eps=-strainer.strain,sigma=-strainer.avgStress)

#O.step()
#plot.plots={'eps':('sigma')}

def addPlotData():

yade.plot.addData({'t':O.time,'i':O.iter,'eps':-strainer.strain,'sigma':strainer.avgStress
})

O.run(5,True)
plot.plots={'eps':('sigma')}
plot.plot(subPlots=False)
plot.saveDataTxt('uniax10e1,phi:5final.txt.bz2')



Thanks for your time. 


Seti

-- 
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 #295225]: Cohesion Distribution

2016-06-30 Thread Seti
Question #295225 on Yade changed:
https://answers.launchpad.net/yade/+question/295225

Seti posted a new comment:
Thanks Jerome, I have opened another question. Hope it helps :(

-- 
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 #295225]: Cohesion Distribution

2016-06-30 Thread Seti
Question #295225 on Yade changed:
https://answers.launchpad.net/yade/+question/295225

Seti posted a new comment:
Thanks Jerome, I have opened another question. Hope it help :(

-- 
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 #288004]: Using cohesion instead of Clumping

2016-06-30 Thread Seti
Question #288004 on Yade changed:
https://answers.launchpad.net/yade/+question/288004

Status: Answered => Open

Seti is still having a problem:
Hi Bruno,

Sorry for any inconvenience, I have tried to put more detailed in my
question as per below.

Hi All,

I am trying to model a cemented sample for compression test. The sample  is 
made by two materials (1- Loose sand, 2- bonder , bounding the sand grains), 
obviously each material has own cohesion.
Based on YADE documentation the cohesion between two material is calculated as 
per below
a_i=C_i min(R_1,R_2)^2, i=n,s.

However I need to choose C _max for C_i  instead of C_min.
I was told "MatchMaker" in Ip2_CohFrictMat_CohFrictMat_CohFrictPhys should do 
what I am looking for. I have tried below engine, however it does not work. Do 
you have any idea why the code is not working the error is as per below: 

"AttributeError: No such attribute: shearCohesion."

I Just put a snip of code :

O.engines=[
ForceResetter(),

InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb(),Bo1_Facet_Aabb(),Bo1_Wall_Aabb()]),
InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom()],
[Ip2_FrictMat_FrictMat_FrictPhys()],
[Ip2_FrictMat_FrictMat_FrictPhys  (),

[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(normalCohesion=MatchMaker(matches=((mat1,mat2,500),(mat2,mat2,1e6))),shearCohesion=MatchMaker(matches=((mat1,mat2,50e6),(mat2,mat2,80e6))),label="cohesiveIp")],
 [Law2_ScGeom_MindlinPhys_Mindlin(includeMoment=True,includeAdhesion=True)],

[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment(
   useIncrementalForm=True,
   always_use_moment_law=False,
   label='cohesiveLaw')]


Thanks,

Seti

-- 
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 #295814]: MatchTracker for Cohesion

2016-06-30 Thread Seti
New question #295814 on Yade:
https://answers.launchpad.net/yade/+question/295814

Hi All,

As you may know the "iAdhesion" is computed from the minima of "iCohesion".

However I need to change this logic, I was told  "MatchMaker" in 
Ip2_CohFrictMat_CohFrictMat_CohFrictPhys should do what I am looking for. I 
have tried below engine, however it does not work.

O.engines=[
ForceResetter(),

InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb(),Bo1_Facet_Aabb(),Bo1_Wall_Aabb()]),
InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom()],[Ip2_FrictMat_FrictMat_FrictPhys()],

[Ip2_FrictMat_FrictMat_MindlinPhys(en=MatchMaker(matches=((mat1,mat2,.6),(mat2,mat2,.9))),es=MatchMaker(matches=((mat1,mat2,.6),(mat2,mat2,.9))),krot=3)],
   

[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(normalCohesion=MatchMaker(matches=((mat1,mat2,500),(mat2,mat2,1e6))),shearCohesion=MatchMaker(matches=((mat1,mat2,50e6),(mat2,mat2,80e6))),label="cohesiveIp")],
 [Law2_ScGeom_MindlinPhys_Mindlin(includeMoment=True,includeAdhesion=True)],

[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment(
useIncrementalForm=True, #useIncrementalForm is turned 
on as we want plasticity on the contact moments
always_use_moment_law=False,  #if we want "rolling" 
friction even if the contact is not cohesive (or cohesion is broken), we will 
have to turn this true somewhere
label='cohesiveLaw')]

Would you please advise?

Thanks 

Seti

-- 
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 #295666]: dense sample/triaxial test

2016-06-26 Thread Seti
New question #295666 on Yade:
https://answers.launchpad.net/yade/+question/295666

Hi All,

I need to make a very dense sample ( say 80% density) for triaxial test. I was 
thinking to turn off the friction angle while I am packing grains then by 
starting to imply confining pressure the friction angle be increased ( say  30 
degree). However I am not sure if I can do it on YADE, If so, How?
If not, is there another way to model a granular sample with different 
porosity? 

Sorry because lack of my knowledge in this regards and thanks for your help in 
advance.

Regards,
Seti




-- 
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 #295225]: Cohesion Distribution

2016-06-25 Thread Seti
Question #295225 on Yade changed:
https://answers.launchpad.net/yade/+question/295225

Status: Answered => Open

Seti is still having a problem:
Thanks Jerome, 
I tried to go for your recommendation to use "MatchMaker" however I am not sue 
how I should use it for various cohesion, what I have seen in documentation, 
the MatchMaker have been used to assign different frictions , however I have 
done below attempt which to me is incomplete, would you please advise me how 
should I use MatchMaker to assign different cohesion:


here is the snip of code: 

# Batch execution
nRead=utils.readParamsFromTable(
num_spheres1=500,# number of spheres len(O.bodies) to verify: 10006 = 
1 particles + 6 walls is correct
num_spheres2=500,# number of spheres len(O.bodies) to verify: 10006 = 
1 particles + 6 walls is correct
compFricDegree = 30, # contact friction during the confining phase (1)
unknownOk=True,
isoForce=10, # stress for the isotropic compression phase (1)
conStress=10 # confinement stress, for the deviatoric loading 
session (2)
)
from yade.params import table
 
num_spheres1=500  # number of spheres called from table
num_spheres2=500
targetPorosity = 0.6  #the porosity we want for the packing 
(3 specimens: (Ei,n) = (1,0.382), (2,0.387), (3,0.409) )
compFricDegree = table.compFricDegree   # initial contact friction during the 
confining phase (will be decreased during the REFD compaction process)
finalFricDegree = 30   # contact friction 
during the deviatoric loading
rate=0.01# 
loading rate (strain rate)
damp=0.3   # 
damping coefficient
stabilityThreshold=0.001# initial value: 0.001
key='_kozooocki,,100kpa,100kpa,30,30,30e9_0.085,0.085,0.085,0.8,D=varried,clumping
 3,0.z5 ' # simulation's name here
young=30e9 # contact 
stiffness k_n/Ds
mn,mx=Vector3(-0.085,-0.085,-0.085),Vector3(0.085,0.085,0.085) # corners of the 
initial packing
thick = 0.01# thickness of 
the plates
 
 
## create materials for spheres and plates
O.materials.append(FrictMat(young=young,poisson=0.3,frictionAngle=radians(compFricDegree),momentRotationLaw=True,etaRoll=1,density=2600,isCohesive=True,alphaKr=0.05,label='spheres1'))
O.materials.append(CohFrictMat(young=young,poisson=0.3,frictionAngle=radians(compFricDegree),momentRotationLaw=True,etaRoll=1,density=2600,isCohesive=True,alphaKr=0.05,label='spheres2'))
O.materials.append(FrictMat(young=young,poisson=0.3,frictionAngle=0,density=0,label='walls'))
 
## create walls around the packing
walls=utils.aabbWalls([mn,mx],thickness=thick,oversizeFactor=1.5,material='walls')
wallIds=O.bodies.append(walls)
 
## use a SpherePack object to generate a random loose particles packing
sp=pack.SpherePack()
psdSizes=[0.002,0.003,0.004,0.005,0.006,0.007,0.008] # (sizes or radii of the 
grains vary from 2mm to 9.5mm)
#psdCumm=[1,9,25,50,69,90,95,100] # the correspondent amount (percentage) of 
each diameter, uncomment for yade-stable
psdCumm=[0.14,0.28,0.34,0.50,0.65,0.85,1.00] # for the code not using 
percentage, e.g. yade-daily
...





O.engines=[
ForceResetter(),

InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb(),Bo1_Facet_Aabb(),Bo1_Wall_Aabb()]),
InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom(),,Ig2_Wall_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom()],

[Ip2_FrictMat_FrictMat_MindlinPhys(en=MatchMaker(matches=((spheres1,spheres2,.6),(spheres2,spheres2,.55))),es=MatchMaker(matches=((spheres1,spheres2,.6),(spheres2,spheres2,.55))),alphaKr=MatchMaker(matches=((spheres1,spheres2,.1),(spheres2,spheres2,.3))),krot=3),Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(label="cohesiveIp")],
 [Law2_ScGeom_MindlinPhys_Mindlin(includeMoment=True,includeAdhesion=True)],

[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment(
useIncrementalForm=True, #useIncrementalForm is turned 
on as we want plasticity on the contact moments
always_use_moment_law=False,  #if we want "rolling" 
friction even if the contact is not cohesive (or cohesion is broken), we will 
have to turn this true somewhere
label='cohesiveLaw')]
),
## We will use the global stiffness of each body to determine an 
optimal timestep (see 
https://yade-dem.org/w/images/1/1b/Chareyre_licensed.pdf)

GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.5),
triax,
TriaxialStateRecorder(iterPeriod=50,file='WallStresses'+key),
 

Re: [Yade-users] [Question #295225]: Cohesion Distribution

2016-06-19 Thread Seti
Question #295225 on Yade changed:
https://answers.launchpad.net/yade/+question/295225

Status: Answered => Open

Seti is still having a problem:
Dear Jerome,

Thanks for prompt reply.


My exact question is, why C is the smallest value of cohesion between two 
grains. Just imagine , the first material be loose sand and the the second 
material be something which we are using for cementation ( bonding the loose 
sand) - which definitely has the bigger value of cohesion in comparison with 
the loose sand , in this case assuming the the smallest value of cohesion means 
we do not consider the effect of binder in our calculation. It is my thought, 
please correct me if I am wrong.


Regards,
Seti

-- 
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 #295225]: Cohesion Distribution

2016-06-17 Thread Seti
Question #295225 on Yade changed:
https://answers.launchpad.net/yade/+question/295225

Status: Answered => Open

Seti is still having a problem:
Hi Jerome,

Thanks so much for your response. I need to understand how you model the
adhesion between two neighbour grains when they have different property
( in particular different cohesion). considering below formula when I
have 2 different material Ci how be calculated?

a_i=C_i min(R_1,R_2)^2, i=n,s.

2- Would you please let me how can I access to source of code for
calculating the adhesion/adhesion?


I really appreciate your time.

Thanks
Seti

-- 
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 #295225]: Cohesion Distribution

2016-06-13 Thread Seti
New question #295225 on Yade:
https://answers.launchpad.net/yade/+question/295225

Hi All,

Would you please let me know, how can can model a cemented - 100% bonded - 
sample with three different material which have different level of cohesion. 

 In other words  if all of the grains connected to each other - very dense 
sample - how the force/strength/cohesion (?) between neighbourhood grains with 
different material properties  will be calculated on YADE.

2- If contacts between some spheres during the compression test re-appeared. 
how can I write the script to prevent  taking into account  the cohesion 
between these particular spheres. 

3- How can I introduce limitation for implying force, I mean, implying fn on 
sample, where fmin

Re: [Yade-users] [Question #294932]: passing grains

2016-06-06 Thread Seti
Question #294932 on Yade changed:
https://answers.launchpad.net/yade/+question/294932

Seti gave more information on the question:
another question: Can I define particular length for wall? I need to
create ground wall = 30d (the wall in x direction, the wall which grains
fall down on it)

 ( where d is grain's diameter).

Thanks so much for your time

-- 
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 #294932]: passing grains

2016-06-05 Thread Seti
as well
#rr=yade.qt.Renderer()
#rr.shape=False
#rr.intrPhys=True

Regards,

Seti


-- 
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 #291202]: Clumping - angl of repose

2016-05-05 Thread Seti
Question #291202 on Yade changed:
https://answers.launchpad.net/yade/+question/291202

Status: Answered => Open

Seti is still having a problem:
Yes, I have even tried O.dt=.1*utils.PWaveTimeStep() , no different !

-- 
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 #291202]: Clumping - angl of repose

2016-05-05 Thread Seti
Question #291202 on Yade changed:
https://answers.launchpad.net/yade/+question/291202

Seti gave more information on the question:
Yes, I have even tried O.dt=.1*utils.PWaveTimeStep() , no difference!

-- 
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 #291202]: Clumping - angl of repose

2016-05-05 Thread Seti
Question #291202 on Yade changed:
https://answers.launchpad.net/yade/+question/291202

Seti gave more information on the question:
I think this explosion is depended on percentage of clumping . I mean by 
increasing the ratio of clumping the sample explode sooner. I am not sure what 
is the conflict.
Does anybody experience in this regard.

Thanks 
Seti

-- 
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 #291202]: Clumping - angl of repose

2016-05-05 Thread Seti
Question #291202 on Yade changed:
https://answers.launchpad.net/yade/+question/291202

Status: Answered => Open

Seti is still having a problem:
Hi Kalus, 
Thanks for your response . I have tried to use mackeCloud , easily as per 
below, However I have the same problem. Would you please?

from yade import pack,utils, qt, plot

#create material
soil1 = 
CohFrictMat(young=30e9,poisson=0.3,frictionAngle=radians(30),density=2600.0,normalCohesion=1e6,
 shearCohesion=80e6,label='soil')
#color=(1,0,0) red color

O.materials.append(soil1)
O.bodies.append(utils.wall(0,axis=1,sense=1))
O.materials.append(CohFrictMat(young=30e9,poisson=0.3, frictionAngle = 
radians(30) , label='wallmat'))
wallmat = O.materials[-1]

sp=SpherePack()
sp.makeCloud((0,0,0),(14.5,14.5,14.5),rMean=0.5,rRelFuzz=0.0)
#sp.makeCloud((0,0,0),(14.5,14.5,14.5),rMean=0.2,rRelFuzz=0.0,False,0.95,[0.2,0.3,0.4,0.5,0.6,0.7,0.8],[0.14,0.28,0.34,0.50,0.65,0.85,1.00])
#spheres.toSimulation()
sp.toSimulation()
#O.bodies.append(spheres)

-- 
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 #292180]: Finding Scripts

2016-04-25 Thread Seti
Question #292180 on Yade changed:
https://answers.launchpad.net/yade/+question/292180

Status: Answered => Solved

Seti 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


Re: [Yade-users] [Question #292180]: Finding Scripts

2016-04-24 Thread Seti
Question #292180 on Yade changed:
https://answers.launchpad.net/yade/+question/292180

Seti gave more information on the question:
Even tried below link. 
http://bazaar.launchpad.net/~yade-pkg/yade/git-trunk/files/head:/examples/

-- 
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 #292180]: Finding Scripts

2016-04-24 Thread Seti
New question #292180 on Yade:
https://answers.launchpad.net/yade/+question/292180

Hi Folks,

Sorry for basic question.In the YADE documentation sometimes you are referring 
to some scripts , I am not sure where should I found those ones. For example  I 
googled "biaxialSmooth.py  or retainingSmooth.py  or undrained.py" in 
GitHub(?). 
However could not find them.Would you please assist? 

Cheers
Seti

-- 
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 #291202]: Clumping - angl of repose

2016-04-16 Thread Seti
New question #291202 on Yade:
https://answers.launchpad.net/yade/+question/291202

Hi all,


In below code I have tried to study the effect of percentage/ratio of clumping 
on repose angle. before adding the clumping section the scrip worked properly 
however by adding clump grain do not fall down because of their gravity and the 
sample explodes .

Would you please advise?

Thanks
#!/usr/bin/python
from yade import pack,utils, qt, plot
pred = pack.inAlignedBox((0,0,0),(14.5,14.5,14.5))
#create material
soil1 = 
CohFrictMat(young=30e9,poisson=0.3,frictionAngle=radians(30),density=2600.0,normalCohesion=1e6,
 shearCohesion=80e6,label='soil')
#color=(1,0,0) red color
#soil1 = 
FrictMat(young=1e6,poisson=0.4,frictionAngle=radians(30),density=2500.0,label='soil')
O.materials.append(soil1)
O.bodies.append(utils.wall(0,axis=1,sense=1))
O.materials.append(CohFrictMat(young=30e9,poisson=0.3, frictionAngle = 
radians(30) , label='wallmat'))
wallmat = O.materials[-1]
45
spheres=SpherePack()
spheres=pack.randomDensePack(pred,radius=.5,material='soil',spheresInCell=1000,color=(1,0,0),returnSpherePack=True)
spheres.toSimulation()
#O.bodies.append(spheres)
#

#
O.engines=[
 ForceResetter(),#reset forces
 InsertionSortCollider([Bo1_Wall_Aabb(),Bo1_Sphere_Aabb()]),
 InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Wall_Sphere_ScGeom()], # collision geometry
[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys()], # 
collision "physics"

[Law2_ScGeom6D_CohFrictPhys_CohesionMoment(),Law2_ScGeom_FrictPhys_CundallStrack()]
 # contact law -- apply forces
),
  # apply gravity force to particles
# damping: numerical dissipation of energy
  NewtonIntegrator(damping=0.5,gravity=(0,-9.81,0)),

#qt.SnapshotEngine(fileBase='3d-',iterPeriod=200,label='snapshot'),
   # this engine will be called after 2 steps, only once

  
PyRunner(command='checkUnbalanced()',realPeriod=200,label='checker'),
  PyRunner(command='addPlotData()',iterPeriod=200)
]
 
#CLUMPING###


#create a box:
#id_box = 
O.bodies.append(box((0,0,0),(.0045,0.0045,.0045),fixed=True,material=Mat))

#create assembly of spheres:
#sp=pack.SpherePack()
#sp.makeCloud((0,0,0),(.004,0.004,.004),rMean=.00018,rRelFuzz=.0001,num=1000,periodic=False)
#O.bodies.append([sphere(c,r,material=Mat) for c,r in sp])

#print len(sp),' particles generated.'
print 'Roundness coefficient without clumps is: ',O.bodies.getRoundness()

 show how to use makeClumpTemplate():


#dyad:
#relRadList1 = [.0002,.0002]
#relPosList1 = [[.0003,0,0],[0.0006,0,0]]

#peanut:
relRadList2 = [.0002,0.0004,0.0002]
relPosList2 = [[0.0003,0,0],[0,0,0],[0.0006,0,0]]

#stick:
#relRadList3 = [1,1,1,1,1]
#relPosList3 = [[0,1,0],[0,2,0],[0,3,0],[0,4,0],[0,5,0]]

templates= []
#templates.append(clumpTemplate(relRadii=relRadList1,relPositions=relPosList1))
templates.append(clumpTemplate(relRadii=relRadList2,relPositions=relPosList2))
#templates.append(clumpTemplate(relRadii=relRadList3,relPositions=relPosList3))


 show how to use replaceByClumps():


#replace by 50% dyads, 30% peanuts and 10% sticks:
#O.bodies.replaceByClumps(templates,[.5,.3,.1])
O.bodies.replaceByClumps(templates,[0.5])

 show how to use getRoundness():


#create a list of all standalone spheres:
standaloneList = []
for b in O.bodies:
if b.isStandalone:
standaloneList.append(b.id)

print 'Roundness coefficient for spheres and clumps is: 
',O.bodies.getRoundness()
print 'Roundness coefficient just for clumps is: 
',O.bodies.getRoundness(standaloneList)

#sp.toSimulation()

print 'Number of elements: ', len(O.bodies)
print 'Box Volume: '
print 'Clumprepose,0.5,.25,30,3grain,0.5%'
O.trackEnergy=True
# set timestep to a fraction of the critical timestep
# the fraction is very small, so that the simulation is not too fast
# and the motion can be observed
O.dt=1*utils.PWaveTimeStep()
#makeVideo(snapshot.snapshots,'3d.mpeg',fps=10,bps=1)
# save the simulation, so that it can be reloaded later, for experimentation
#O.saveTmp()0
#checker.command='stopUnloading()'
def checkUnbalanced():
   if unbalancedForce()<5e-2:
  print('Reached target , stopping')
  O.pause()
  plot.saveDataTxt('Clumprepose,0.5,.5,30,3grain,0.5%.bz2')
  plot.saveDataTxt('Clumprepose,0.5,.5,30,3grain,0.5%.txt')
#plot.saveDataTxt('modi.data.bz2')
  # plot.saveGnuplot('bbb') is also possible

# collect history of data which will be plotted

def addPlotData():
   # each item is given a names, by which it can be the unsed in plot.plots
   # the **O.energy converts dictionary-like O.energy to plot.addData arguments
   

Re: [Yade-users] [Question #290423]: Interal friction angle - repose angle

2016-04-16 Thread Seti
Question #290423 on Yade changed:
https://answers.launchpad.net/yade/+question/290423

Status: Answered => Solved

Seti confirmed that the question is solved:
Thanks Jérôme Duriez, that solved my question.

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #290423]: Interal friction angle - repose angle

2016-04-11 Thread Seti
Question #290423 on Yade changed:
https://answers.launchpad.net/yade/+question/290423

Description changed to:
Hi all,

As I have understood in YADE by considering  Mohr-Coulomb theory the
INTERNAL friction ( which be assigned to material as its property)  is
combination  of static friction and interlocking .

In other words combination of peak and residual friction angle (?)
So as you may know, we can assume the angle of repose ( the static angle of 
material) equal to residual friction angel.
If I do some parametric study on friction angle definitely by increasing the 
internal friction angle ( the only kind of friction in YADE???) , the repose 
angle will be increase. Now this  question will be raised,  is there any chance 
to introduce peak and residual friction angle individually in order to compare 
angle of repose to residual friction angle ?

if no , is  INTERNAL friction , mean of peak and residual ? or,


I hope explain my question in appropriate way. if no, no drama, I will try 
again ;)

-- 
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 #290423]: Interal friction angle - repose angle

2016-04-11 Thread Seti
New question #290423 on Yade:
https://answers.launchpad.net/yade/+question/290423

Hi all,

As I have understand in YADE by considering  Mohr-Coulomb theory the  INTERNAL 
friction ( which be assigned to material as its property)  is combination  of 
static friction and interlocking .

In other words combination of peak and residual friction angle (?)
So as you may know, we can assume the angle of repose ( the static angle of 
material) equal to residual friction angel.
If I do some parametric study on friction angle definitely by increasing the 
internal friction angle ( the only kind of friction in YADE???) , the repose 
angle will be increase. Now this  question will be raised,  is there any chance 
to introduce peak and residual friction angle individually in order to compare 
angle of repose to residual friction angle ?

if no , is  INTERNAL friction , mean of peak and residual ? or,


I hope explain my question in appropriate way. if no, no drama, I will try 
again ;)


-- 
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 #286479]: uniaxial tension-compression test

2016-03-20 Thread Seti
Question #286479 on Yade changed:
https://answers.launchpad.net/yade/+question/286479

Status: Answered => Open

Seti is still having a problem:
Hi Jan,  Thanks for your reply and sorry for any inconvenience.

I want to run CPM for compressio.

and as you have mentioned 
I want to understand what the number in doModes means?

Cheers,
Ela

-- 
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 #288004]: Using cohesion instead of Clumping

2016-03-07 Thread Seti
New question #288004 on Yade:
https://answers.launchpad.net/yade/+question/288004

Hi All,

As per my previous questions I am thinking to define  cohesion between 
particles instead of clump them together. However I am wondering If I can 
introduce cohesion just between some percentage of whole grains. I mean just 
some of the particles stick to each other and the others just have frictional 
contacts. And Can I control this ration same as what we are doing in clump?
Is  there any scripts or documentation to help me in this regards.

Regards
Seti

-- 
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


  1   2   >