← Back to team overview

yade-dev team mailing list archive

[Branch ~yade-pkg/yade/git-trunk] Rev 4002: cleaning examples

 

------------------------------------------------------------
revno: 4002
committer: bchareyre <bruno.chareyre@xxxxxxxxxxxxxxx>
timestamp: Tue 2017-02-07 17:46:13 +0100
message:
  cleaning examples
removed:
  examples/periodic-compress.py
  examples/periodic-grow.py
  examples/periodicSandPile.py
  examples/test/peri3dController_example1.py
  examples/test/peri3dController_shear.py
  examples/test/peri3dController_triaxialCompression.py
  examples/test/periodic-shear.py
  examples/test/periodic-simple-shear.py
  examples/test/periodic-simple.py
  examples/test/periodic-triax-settingHsize.py
  examples/test/periodic-triax.py


--
lp:yade
https://code.launchpad.net/~yade-pkg/yade/git-trunk

Your team Yade developers is subscribed to branch lp:yade.
To unsubscribe from this branch go to https://code.launchpad.net/~yade-pkg/yade/git-trunk/+edit-subscription
=== removed file 'examples/periodic-compress.py'
--- examples/periodic-compress.py	2013-03-28 10:53:06 +0000
+++ examples/periodic-compress.py	1970-01-01 00:00:00 +0000
@@ -1,48 +0,0 @@
-'''
-This example shows compression of a packing with a periodic cell.
-'''
-
-O.periodic=True
-O.cell.setBox(20,20,10)
-
-from yade import pack,timing
-
-O.materials.append(FrictMat(young=30e9,density=2400))
-p=pack.SpherePack()
-p.makeCloud(Vector3(0,0,0),Vector3(20,20,10),1,.5,700,True)
-for sph in p:
-	O.bodies.append(sphere(sph[0],sph[1]))
-
-
-O.timingEnabled=True
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb()],allowBiggerThanPeriod=True),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],
-		[Law2_ScGeom_FrictPhys_CundallStrack()],
-	),
-	PeriIsoCompressor(charLen=.5,stresses=[-50e9,-1e8],doneHook="print 'FINISHED'; O.pause() ",keepProportions=True),
-	NewtonIntegrator(damping=.4)
-]
-O.dt=PWaveTimeStep()
-O.saveTmp()
-#print O.cell.refSize
-from yade import qt; qt.Controller(); qt.View()
-O.run()
-O.wait()
-timing.stats()
-#while True:
-#	O.step()
-
-
-# now take that packing and pad some larger volume with it
-#sp=pack.SpherePack()
-#sp.fromSimulation() # take spheres from simulation; cellSize is set as well
-#O.reset()
-#print sp.cellSize
-#sp.cellFill((30,30,30))
-#print sp.cellSize
-#for s in sp:
-#	O.bodies.append(sphere(s[0],s[1]))

=== removed file 'examples/periodic-grow.py'
--- examples/periodic-grow.py	2013-03-28 10:53:06 +0000
+++ examples/periodic-grow.py	1970-01-01 00:00:00 +0000
@@ -1,39 +0,0 @@
-"""Script that shrinks the periodic cell progressively.
-It prints strain and average stress (computed from total volume force)
-once in a while."""
-
-from yade import timing
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb()],allowBiggerThanPeriod=True),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],
-		[Law2_ScGeom_FrictPhys_CundallStrack()],
-	),
-	NewtonIntegrator(damping=.6)
-]
-import random
-for i in xrange(250):
-	O.bodies.append(sphere(Vector3(10*random.random(),10*random.random(),10*random.random()),.5+random.random()))
-cubeSize=20
-# absolute positioning of the cell is not important
-O.periodic=True
-O.cell.setBox(cubeSize,cubeSize,cubeSize)
-O.dt=PWaveTimeStep()
-O.saveTmp()
-from yade import qt
-qt.Controller(); qt.View()
-O.run(200,True)
-rate=-1e-3*cubeSize/(O.dt*200)*Matrix3.Identity
-O.cell.velGrad=rate
-
-print 'Please be patient...'
-
-for i in range(0,25):
-	O.run(2000,True)
-	F,stiff=totalForceInVolume()
-	dim=O.cell.refSize; A=Vector3(dim[1]*dim[2],dim[0]*dim[2],dim[0]*dim[1])
-	avgStress=sum([F[i]/A[i] for i in 0,1,2])/3.
-	print 'strain',(cubeSize-dim[0])/cubeSize,'avg. stress ',avgStress,'unbalanced ',unbalancedForce()
-#O.timingEnabled=True; timing.reset(); O.run(200000,True); timing.stats()

=== removed file 'examples/periodicSandPile.py'
--- examples/periodicSandPile.py	2013-08-01 05:04:49 +0000
+++ examples/periodicSandPile.py	1970-01-01 00:00:00 +0000
@@ -1,54 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-# © 2012 Bruno Chareyre <bruno.chareyre@xxxxxxxxxxx>
-"""Script showing how large bodies can be combined with periodic boundary conditions using InsertioSortCollider::allowBiggerThanPeriod=True (1)."""
-
-from yade import pack
-from pylab import rand
-from yade import qt
-
-O.periodic=True
-length=0.4
-height=0.6
-width=0.2
-thickness=0.01
-
-O.cell.hSize=Matrix3(length, 0, 0,
-		     0 ,3.*height, 0,
-		    0, 0, width)
-
-O.materials.append(FrictMat(density=1,young=1e5,poisson=0.3,frictionAngle=radians(30),label='boxMat'))
-lowBox = box( center=(length/2.0,height-thickness/2.0,width/2.0), extents=(length*1000.0,thickness/2.0,width*1000.0) ,fixed=True,wire=False)
-O.bodies.append(lowBox)
-
-radius=0.01
-O.materials.append(FrictMat(density=1000,young=1e4,poisson=0.3,frictionAngle=radians(30),label='sphereMat'))
-sp=pack.SpherePack()
-sp.makeCloud((0.*length,height+1.2*radius,0.25*width),(0.5*length,2*height-1.2*radius,0.75*width),-1,.2,2000,periodic=True)
-O.bodies.append([sphere(s[0],s[1],color=(0.6+0.15*rand(),0.5+0.15*rand(),0.15+0.15*rand())) for s in sp])
-
-O.dt=0.2*PWaveTimeStep()
-O.usesTimeStepper=True
-newton=NewtonIntegrator(damping=0.6,gravity=(0,-10,0))
-
-O.engines=[
-	ForceResetter(),
-	#(1) This is where we all big bodies, else it would crash due to the very large bottom box:
-	InsertionSortCollider([Bo1_Box_Aabb(),Bo1_Sphere_Aabb()],allowBiggerThanPeriod=True),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],
-		[Law2_ScGeom_FrictPhys_CundallStrack()]
-	),
-	GlobalStiffnessTimeStepper(timeStepUpdateInterval=100,timestepSafetyCoefficient=0.8,defaultDt=O.dt),
-	newton
-]
-
-Gl1_Sphere.stripes=1
-
-from yade import qt
-qt.View()
-print('Press PLAY button')
-
-
-

=== removed file 'examples/test/peri3dController_example1.py'
--- examples/test/peri3dController_example1.py	2013-03-28 11:13:12 +0000
+++ examples/test/peri3dController_example1.py	1970-01-01 00:00:00 +0000
@@ -1,67 +0,0 @@
-# peri3dController_example1.py
-# script, that explains funcionality and input parameters of Peri3dController
-
-from yade import pack, plot
-
-# create some material
-O.materials.append(CpmMat(neverDamage=True,young=25e9,frictionAngle=.7,poisson=.2,sigmaT=3e6,epsCrackOnset=1e-4,relDuctility=30))
-
-# create periodic assembly of particles
-initSize=1.2
-sp=pack.randomPeriPack(radius=.05,initSize=Vector3(initSize,initSize,initSize),memoizeDb='/tmp/packDb.sqlite')
-sp.toSimulation()
-
-# plotting 
-#plot.live=False
-plot.plots={'progress':('sx','sy','sz','syz','szx','sxy',),'progress_':('ex','ey','ez','eyz','ezx','exy',)}
-def plotAddData():
-	plot.addData(
-		progress=p3d.progress,progress_=p3d.progress,
-		sx=p3d.stress[0],sy=p3d.stress[1],sz=p3d.stress[2],
-		syz=p3d.stress[3],szx=p3d.stress[4],sxy=p3d.stress[5],
-		ex=p3d.strain[0],ey=p3d.strain[1],ez=p3d.strain[2],
-		eyz=p3d.strain[3],ezx=p3d.strain[4],exy=p3d.strain[5],
-	)
-
-# in how many time steps should be the goal state reached
-nSteps=4000
-
-O.dt=PWaveTimeStep()/2
-EnlargeFactor=1.5
-EnlargeFactor=1.0
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=EnlargeFactor,label='bo1s')]),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=EnlargeFactor,label='ig2ss')],
-		[Ip2_CpmMat_CpmMat_CpmPhys()],[Law2_ScGeom_CpmPhys_Cpm()]),
-	NewtonIntegrator(),
-	Peri3dController(
-							goal=(20e-4,-6e-4,0, -2e6,3e-4,2e6), # Vector6 of prescribed final values (xx,yy,zz, yz,zx,xy)
-							stressMask=0b101100,    # prescribed ex,ey,sz,syz,ezx,sxy;   e..strain;  s..stress
-							nSteps=nSteps, 			# how many time steps the simulation will last
-							# after reaching nSteps do doneHook action
-							doneHook='print "Simulation with Peri3dController finished."; O.pause()',
-
-							# the prescribed path (step,value of stress/strain) can be defined in absolute values
-							xxPath=[(465,5e-4),(934,-5e-4),(1134,10e-4)],
-							# or in relative values
-							yyPath=[(2,4),(7,-2),(11,0),(14,4)],
-							# if the goal value is 0, the absolute stress/strain values are always considered (step values remain relative)
-							zzPath=[(5,-1e7),(10,0)],
-							# if ##Path is not explicitly defined, it is considered as linear function between (0,0) and (nSteps,goal)
-							# as in yzPath and xyPath
-							# the relative values are really relative (zxPath gives the same - except of the sign from goal value - result as yyPath)
-							zxPath=[(4,2),(14,-1),(22,0),(28,2)],
-							xyPath=[(1,1),(2,-1),(3,1),(4,-1),(5,1)],
-							# variables used in the first step
-							label='p3d'
-							),
-	PyRunner(command='plotAddData()',iterPeriod=1),
-]
-
-O.step()
-bo1s.aabbEnlargeFactor=ig2ss.interactionDetectionFactor=1.
-
-O.run(); #O.wait()
-plot.plot(subPlots=False)

=== removed file 'examples/test/peri3dController_shear.py'
--- examples/test/peri3dController_shear.py	2013-04-24 19:49:00 +0000
+++ examples/test/peri3dController_shear.py	1970-01-01 00:00:00 +0000
@@ -1,61 +0,0 @@
-# peri3dController_shear.py
-# script, that explains funcionality and input parameters of Peri3dController on the example of
-# shear test with rotated periodic cell (that enables strain localization).
-#   The simulation is run on rotated cell to enable localization and strain softening
-# (you can also try simulation with different angles of rotation to pbtain different results.
-
-
-from yade import pack,plot,qt
-
-# define material
-O.materials.append(CpmMat(young=25e9,poisson=.2,sigmaT=3e6,epsCrackOnset=1e-4,relDuctility=1e-6))
-
-# create periodic assembly of particles
-initSize=1.2
-sp=pack.randomPeriPack(radius=.05,initSize=Vector3(initSize,initSize,initSize),memoizeDb='/tmp/packDb.sqlite')
-angle=0.
-#angle=pi/4
-rot=Matrix3(cos(angle),-sin(angle),0, sin(angle),cos(angle),0, 0,0,1)
-sp.toSimulation(rot=rot)
-
-# plotting 
-plot.live=False
-plot.plots={'iter':('sx','sy','sz','syz','szx','sxy',),'iter_':('ex','ey','ez','eyz','ezx','exy',),'exy':('sxy',)}
-def plotAddData():
-	plot.addData(
-		iter=O.iter,iter_=O.iter,
-		sx=p3d.stress[0],sy=p3d.stress[1],sz=p3d.stress[2],
-		syz=p3d.stress[3],szx=p3d.stress[4],sxy=p3d.stress[5],
-		ex=p3d.strain[0],ey=p3d.strain[1],ez=p3d.strain[2],
-		eyz=p3d.strain[3],ezx=p3d.strain[4],exy=p3d.strain[5],
-	)
-
-O.dt=PWaveTimeStep()/2
-
-# define the first part of simulation, hydrostatic compression
-enlargeFactor=1.5
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=enlargeFactor,label='bo1s')]),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=enlargeFactor,label='ig2ss')],
-		[Ip2_CpmMat_CpmMat_CpmPhys()],[Law2_ScGeom_CpmPhys_Cpm()]),
-	NewtonIntegrator(),
-	Peri3dController(	goal=(0,0,0, 0,0,5e-3), # Vector6 of prescribed final values
-							stressMask=0b011111,
-							nSteps=2000,
-							doneHook='print "Simulation with Peri3dController finished."; O.pause()',
-							maxStrain=.5,
-							label='p3d'
-							),
-	PyRunner(command='plotAddData()',iterPeriod=1),
-]
-O.step()
-bo1s.aabbEnlargeFactor=ig2ss.interactionDetectionFactor=1.0
-
-renderer=qt.Renderer()
-renderer.intrPhys,renderer.shape=True,False
-Gl1_CpmPhys.dmgLabel=False
-qt.View()
-O.run()
-#plot.plot()

=== removed file 'examples/test/peri3dController_triaxialCompression.py'
--- examples/test/peri3dController_triaxialCompression.py	2013-04-24 19:49:00 +0000
+++ examples/test/peri3dController_triaxialCompression.py	1970-01-01 00:00:00 +0000
@@ -1,79 +0,0 @@
-# peri3dController_triaxialCompression.py
-# script, that explains funcionality and input parameters of Peri3dController on the example of
-# triaxial compression.
-#   Firstly, a hydrostatic preassure is applied, then a strain along z axis is increasing
-# while x- and y- stress is constant
-#   The simulation is run on rotated cell to enable localization and strain softening
-# (you can also try simulation with command sp.toSimulation() with no rotation,
-# in this case there is almost no difference, but in script peri3dController_shear,
-# the cell rotation has significant effect)
-
-from yade import pack,plot,qt
-
-# define material
-O.materials.append(FrictMat())
-
-# create periodic assembly of particles
-initSize=1.2
-sp=pack.randomPeriPack(radius=.05,initSize=Vector3(initSize,initSize,initSize),memoizeDb='/tmp/packDb.sqlite')
-angle=0
-rot=Matrix3(cos(angle),0,-sin(angle), 0,1,0, sin(angle),0,cos(angle))
-sp.toSimulation(rot=rot)
-
-# plotting 
-plot.live=False
-plot.plots={'iter':('sx','sy','sz','syz','szx','sxy',),'iter_':('ex','ey','ez','eyz','ezx','exy',),'ez':('sz',)}
-def plotAddData():
-	plot.addData(
-		iter=O.iter,iter_=O.iter,
-		sx=p3d.stress[0],sy=p3d.stress[1],sz=p3d.stress[2],
-		syz=p3d.stress[3],szx=p3d.stress[4],sxy=p3d.stress[5],
-		ex=p3d.strain[0],ey=p3d.strain[1],ez=p3d.strain[2],
-		eyz=p3d.strain[3],ezx=p3d.strain[4],exy=p3d.strain[5],
-	)
-
-O.dt=PWaveTimeStep()/2
-
-# define the first part of simulation, hydrostatic compression
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb()]),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],[Law2_ScGeom_FrictPhys_CundallStrack()]),
-	NewtonIntegrator(),
-	Peri3dController(	goal=(-1e7,-1e7,-1e7, 0,0,0), # Vector6 of prescribed final values
-							stressMask=0b000111,
-							nSteps=500,
-							doneHook='print "Hydrostatic load reached."; O.pause()',
-							youngEstimation=.5e9, # needed, when only nonzero prescribed values are stress
-							maxStrain=.5,
-							label='p3d'
-							),
-	PyRunner(command='plotAddData()',iterPeriod=1),
-]
-O.run(); O.wait()
-
-# second part, z-axis straining and constant transversal stress
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb()]),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],[Law2_ScGeom_FrictPhys_CundallStrack()]),
-	NewtonIntegrator(),
-	Peri3dController(	goal=(-1e7,-1e7,-4e-1, 0,0,0), # Vector6 of prescribed final values
-							stressMask=0b000011,
-							nSteps=1000,
-							xxPath=[(0,1),(1,1)], # the first (time) zero defines the initial value of stress considered nonzero
-							yyPath=[(0,1),(1,1)],
-							doneHook='print "Simulation with Peri3dController finished."; O.pause()',
-							maxStrain=.5,
-							label='p3d',
-							strain=p3d.strain, # continue from value reached in previous part
-							stressIdeal=Vector6(-1e7,-1e7,0, 0,0,0), # continue from value reached in previous part
-							),
-	PyRunner(command='plotAddData()',iterPeriod=1),
-]
-O.run();O.wait()
-plot.plot(subPlots=False)

=== removed file 'examples/test/periodic-shear.py'
--- examples/test/periodic-shear.py	2013-03-28 19:23:34 +0000
+++ examples/test/periodic-shear.py	1970-01-01 00:00:00 +0000
@@ -1,41 +0,0 @@
-O.periodic=True
-O.cell.setBox(.55,.55,.55)
-O.bodies.append(facet([[.4,.0001,.3],[.2,.0001,.3],[.3,.2,.2]]))
-O.bodies.append(sphere([.3,.1,.4],.05,fixed=False))
-O.bodies.append(sphere([.200001,.2000001,.4],.05,fixed=True))
-O.bodies.append(sphere([.3,0,0],.1,fixed=True))
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb()],label='isc'),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],
-		[Law2_ScGeom_FrictPhys_CundallStrack()]
-	),
-	NewtonIntegrator(gravity=(0,0,-10)),
-	#PyRunner(command='doCellFlip()',realPeriod=5)
-]
-
-def doCellFlip():
-	flip=1 if O.cell.trsf[1,2]<0 else -1;
-	flipCell(Matrix3(0,0,0, 0,0,flip, 0,0,0))
-
-#g=0.
-#while False:
-#	O.cellShear=Vector3(.2*sin(g),.2*cos(pi*g),.2*sin(2*g)+.2*cos(3*g))
-#	time.sleep(0.001)
-#	g+=1e-3
-O.cell.trsf=Matrix3(1,0,0, 0,1,.5, 0,0,1)
-O.dt=2e-2*PWaveTimeStep()
-O.step()
-O.saveTmp()
-rrr=yade.qt.Renderer()
-rrr.intrAllWire,rrr.bound=True,True
-#isc.watch1,isc.watch2=0,-1
-
-#import yade.qt,time
-#v=yade.qt.View()
-#v.axes=True
-#v.grid=(True,True,True)
-
-

=== removed file 'examples/test/periodic-simple-shear.py'
--- examples/test/periodic-simple-shear.py	2014-04-03 13:30:10 +0000
+++ examples/test/periodic-simple-shear.py	1970-01-01 00:00:00 +0000
@@ -1,57 +0,0 @@
-# coding: utf-8
-# 2009 © Václav Šmilauer <eudoxos@xxxxxxxx>
-# 2011 ©Bruno Chareyre <bruno.chareyre@xxxxxxxxxxx>
-"Test and demonstrate use of PeriTriaxController."
-from yade import pack,qt
-
-O.periodic=True
-O.cell.setBox(.1,.1,.1)
-#O.cell.Hsize=Matrix3(0.1,0,0, 0,0.1,0, 0,0,0.1)
-sp=pack.SpherePack()
-radius=5e-3
-num=sp.makeCloud((0,0,0),(.1,.1,.1),radius,.2,500,periodic=True) # min,max,radius,rRelFuzz,spheresInCell,periodic
-O.bodies.append([sphere(s[0],s[1]) for s in sp])
-
-
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb()],verletDist=.05*radius),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],
-		[Law2_ScGeom_FrictPhys_CundallStrack()]
-	),
-	PeriTriaxController(dynCell=True,mass=0.2,maxUnbalanced=0.01,relStressTol=0.02,goal=[-1e4,-1e4,0],stressMask=3,globUpdate=5,maxStrainRate=[1.,1.,1.],doneHook='triaxDone()',label='triax'),
-	NewtonIntegrator(damping=.2),
-]
-
-phase=0
-def triaxDone():
-	global phase
-	if phase==0:
-		print 'Here we are: stress',triax.stress,'strain',triax.strain,'stiffness',triax.stiff
-		print 'Now shearing.'
-		O.cell.velGrad=Matrix3(0,6,0, 0,0,0, 0,0,0)
-		triax.stressMask=7
-		triax.goal=[-1e4,-1e4,-1e4]
-		phase+=1
-		O.pause()
-	#elif phase==1:
-		#print 'Here we are: stress',triax.stress,'strain',triax.strain,'stiffness',triax.stiff
-		#phase+=1
-		##print 'Done, pausing now.'
-		##O.pause()
-		
-O.dt=PWaveTimeStep()
-#O.run(7000);
-#qt.View()
-##r=qt.Renderer()
-##r.bgColor=1,1,1
-#O.wait()
-#O.saveTmp()
-#O.cell.velGrad=Matrix3(0,0,0, -6,0,0, 0,0,0)
-#O.run(5000);
-#O.wait()
-
-#O.cell.velGrad=Matrix3(0,6,0, 0,0,0, 0,0,0)
-#O.run(5000);

=== removed file 'examples/test/periodic-simple.py'
--- examples/test/periodic-simple.py	2013-03-28 11:13:12 +0000
+++ examples/test/periodic-simple.py	1970-01-01 00:00:00 +0000
@@ -1,33 +0,0 @@
-"""Simple test of periodic collider.
-A few spheres falling down in gravity field and one moving accross.
-Includes a clump.
-"""
-
-from yade import timing
-
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb()],label='collider'),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],
-		[Law2_ScGeom_FrictPhys_CundallStrack()],
-	),
-	TranslationEngine(translationAxis=(1,0,0),velocity=10,ids=[0]),
-	NewtonIntegrator(damping=.4,gravity=[0,0,-10])
-]
-O.bodies.append(sphere([-4,0,11],2,fixed=True))
-O.bodies.append(sphere([0,-2,5.5],2))
-O.bodies.append(sphere([0,2,5.5],2))
-O.bodies.appendClumped([sphere([0,4,8],.8),sphere([0,5,7],.6)])
-# sets up the periodic cell
-O.periodic=True
-O.cell.setBox(10,10,10)
-# normally handled in by the simulation... but we want to have the rendering right before start
-#O.cell.postProcessAttributes()
-O.dt=.1*PWaveTimeStep()
-O.saveTmp()
-from yade import qt
-qt.Controller()
-qt.View()
-#O.timingEnabled=True; timing.reset(); O.run(200000,True); timing.stats()

=== removed file 'examples/test/periodic-triax-settingHsize.py'
--- examples/test/periodic-triax-settingHsize.py	2014-01-23 18:08:34 +0000
+++ examples/test/periodic-triax-settingHsize.py	1970-01-01 00:00:00 +0000
@@ -1,46 +0,0 @@
-# coding: utf-8
-# 2011 ©Bruno Chareyre <bruno.chareyre@xxxxxxxxxxx>
-"Demonstrate the compression of a periodic cell with non-trivial initial geometry."
-from yade import pack,qt
-O.periodic=True
-
-O.cell.hSize=Matrix3(1.0, -0.15, -0.10,
-		     -0.2 ,1.5, 0.3,
-		    0.3, -0.3, 1.0)
-sp=pack.SpherePack()
-num=sp.makeCloud(hSize=O.cell.hSize, rMean=-0.01,rRelFuzz=.2, num=500,periodic=True, porosity=0.52,distributeMass=False)
-O.bodies.append([sphere(s[0],s[1]) for s in sp])
-
-
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb()]),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],
-		[Law2_ScGeom_FrictPhys_CundallStrack()]
-	),
-	#We compress the packing isotropicaly first
-	PeriTriaxController( dynCell=True,mass=0.2,maxUnbalanced=0.01, relStressTol=0.01,goal=(-1e4,-1e4,-1e4), stressMask=7,globUpdate=5, maxStrainRate=(1.,1.,1.), doneHook='triaxDone()', label='triax'),
-	NewtonIntegrator(damping=.2),
-	#PyRunner(iterPeriod=500,command='print "strain: ",triax.strain," stress: ",triax.stress')
-]
-O.dt=0.5*PWaveTimeStep()
-qt.View()
-
-phase=0
-def triaxDone():
-	global phase
-	if phase==0:
-		print 'Here we are: stress',triax.stress,'strain',triax.strain
-		#Here we reset the transformation, the compressed packing corresponds to null strain
-		O.cell.trsf=Matrix3.Identity
-		print 'Now εxx will go from 0 to .4 while σzz and σyy will be kept the same.'
-		triax.stressMask=6
-		triax.goal=(-0.4,-1e4,-1e4)
-
-		phase+=1
-	elif phase==1:
-		print 'Here we are: stress',triax.stress,'strain',triax.strain
-		print 'Done, pausing now.'
-		O.pause()

=== removed file 'examples/test/periodic-triax.py'
--- examples/test/periodic-triax.py	2014-01-23 18:08:34 +0000
+++ examples/test/periodic-triax.py	1970-01-01 00:00:00 +0000
@@ -1,48 +0,0 @@
-# coding: utf-8
-# 2009 © Václav Šmilauer <eudoxos@xxxxxxxx>
-"Test and demonstrate use of PeriTriaxController."
-from yade import pack,qt
-O.periodic=True
-
-O.cell.hSize=Matrix3(0.1, 0, 0,
-		     0 ,0.1, 0,
-		    0, 0, 0.1)
-		    
-sp=pack.SpherePack()
-radius=5e-3
-num=sp.makeCloud(Vector3().Zero,O.cell.refSize,radius,.2,500,periodic=True) # min,max,radius,rRelFuzz,spheresInCell,periodic
-O.bodies.append([sphere(s[0],s[1]) for s in sp])
-
-
-O.engines=[
-	ForceResetter(),
-	InsertionSortCollider([Bo1_Sphere_Aabb()],verletDist=.05*radius),
-	InteractionLoop(
-		[Ig2_Sphere_Sphere_ScGeom()],
-		[Ip2_FrictMat_FrictMat_FrictPhys()],
-		[Law2_ScGeom_FrictPhys_CundallStrack()]
-	),
-	#PeriTriaxController(maxUnbalanced=0.01,relStressTol=0.02,goal=[-1e4,-1e4,0],stressMask=3,globUpdate=5,maxStrainRate=[1.,1.,1.],doneHook='triaxDone()',label='triax'),
-	#using cell inertia
-	PeriTriaxController(dynCell=True,mass=0.2,maxUnbalanced=0.01,relStressTol=0.02,goal=(-1e4,-1e4,0),stressMask=3,globUpdate=5,maxStrainRate=(1.,1.,1.),doneHook='triaxDone()',label='triax'),
-	NewtonIntegrator(damping=.2),
-]
-O.dt=PWaveTimeStep()
-O.run();
-qt.View()
-
-phase=0
-def triaxDone():
-	global phase
-	if phase==0:
-		print 'Here we are: stress',triax.stress,'strain',triax.strain,'stiffness',triax.stiff
-		print 'Now εz will go from 0 to .2 while σx and σy will be kept the same.'
-		triax.goal=(-1e4,-1e4,-0.2)
-		phase+=1
-	elif phase==1:
-		print 'Here we are: stress',triax.stress,'strain',triax.strain,'stiffness',triax.stiff
-		print 'Done, pausing now.'
-		O.pause()
-		
-	
-