Question #204380 on Yade changed:
https://answers.launchpad.net/yade/+question/204380

    Status: Answered => Open

liucheng83 is still having a problem:
Hi, Jan
Thank you for you reply,  I thought it maybe there is two sim1 in description 
in multi.table, but just 9 line alone, the problem is still being here.
 And I try the yade-stable with the version "Welcome to Yade 
0.80.1+2+10~precise1, from 2012-06-01"  in ub 12.04. The problem is still here, 
sometimes it is ok with one line in multi.table.

The multi.table is here 
-----------------------
!OMP_NUM_THREADS description nSpheres young
1       sim1    500     2.00E+006
1       sim2    500     4.00E+006
1       sim3    500     6.00E+006
1       sim4    500     8.00E+006
1       sim5    500     1.00E+007
1       sim6    500     1.20E+007
1       sim7    500     1.40E+007
1       sim8    500     1.60E+007
1       sim9    500     1.80E+007
1       sim1    600     2.00E+006
1       sim2    600     4.00E+006
1       sim3    600     6.00E+006
1       sim4    600     8.00E+006
1       sim5    600     1.00E+007
1       sim6    600     1.20E+007
1       sim7    600     1.40E+007
1       sim8    600     1.60E+007
1       sim9    600     1.80E+007
1       sim1    700     2.00E+006
1       sim2    700     4.00E+006
1       sim3    700     6.00E+006
1       sim4    700     8.00E+006
1       sim5    700     1.00E+007
1       sim6    700     1.20E+007
1       sim7    700     1.40E+007
1       sim8    700     1.60E+007
1       sim9    700     1.80E+007

----------------------
The  periodic-triax.py is here
-----------------------

# 2012-07-15 lc
#"Test and demonstrate use of PeriTriaxController."
from yade import *
#from yade import pack,qt,plot
from yade import pack,plot
O.periodic=True

O.load('./ggg/pack_ini'+'.xml')

############################################
###   DEFINING VARIABLES AND MATERIALS   ###
############################################

# The following 5 lines will be used later for batch execution
nRead=utils.readParamsFromTable(
        nSpheres=500,# number of spheres
        young=5e6,
        unknownOk=True
)
from yade.params import table

young=table.young
poisson=0.3
density=2700
nSpheres=table.nSpheres # number of spheres
compFricDegree = 2 # contact friction during the confining phase
finalFricDegree = 30  # contact friction during the deviatoric loading
compPressure= 1e6


# put you simulation's name here
key='E'+str(young) 
key_N='N'+str(nSpheres)+'E'+str(young) 
            
O.materials[0].young=young


O.dt=0.5*utils.PWaveTimeStep()

O.engines=[
        ForceResetter(),
        InsertionSortCollider([Bo1_Sphere_Aabb()]),
        InteractionLoop(
                [Ig2_Sphere_Sphere_ScGeom()],
                [Ip2_FrictMat_FrictMat_FrictPhys()],
                [Law2_ScGeom_FrictPhys_CundallStrack()]
        ),
        
PeriTriaxController(dynCell=True,mass=mass,maxUnbalanced=0.01,relStressTol=0.001,goal=(-1*compPressure,-1*compPressure,-1*compPressure),stressMask=7,globUpdate=5,maxStrainRate=(.1,.1,.1),doneHook='triaxDone()',label='triax'),
        NewtonIntegrator(damping=.2),
]


def addPlotData():
        plot.addData(unbalanced=utils.unbalancedForce(),i=O.iter,
                sxx=-triax.stress[0],syy=-triax.stress[1],szz=-triax.stress[2],
                exx=-triax.strain[0],eyy=-triax.strain[1],ezz=-triax.strain[2],
                # save all available energy data
                Etot=O.energy.total(),**O.energy
        )

# enable energy tracking in the code
O.trackEnergy=True


# define another plot
plot.plots={'i':('exx','eyy','ezz',None,'sxx','syy','szz'),
     ' i':('ezz')   
}

phase=0
def triaxDone():
        global phase
        if phase==0:    
                O.cell.trsf=Matrix3.Identity
                
O.engines=O.engines+[PyRunner(command='addPlotData()',iterPeriod=100)]
                triax.goal=(-1*compPressure,-1*compPressure,-0.2)
                triax.stressMask=3
                # allow faster deformation along x,y to better maintain stresses
                triax.maxStrainRate=(1.,1.,.01) 
                phase+=1
        elif phase==1:
                print 'Here we are: 
stress',triax.stress,'strain',triax.strain,'stiffness',triax.stiff
                print 'Done, pausing now.'
                O.pause()               
                plot.saveDataTxt('./ggg/results'+key+O.tags['description'])
                
O.run()
utils.waitIfBatch()
----------------------

-- 
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp

Reply via email to