New question #680627 on Yade:
https://answers.launchpad.net/yade/+question/680627

Hello,
I'd like to use PeriodicFlowEngine in my script.It use periodic boundary.I‘d 
like to know how PeriodicFlowEngine handle periodic boundary for the fluid 
part.I checked the pressure field in Paraview,but I found that the pressure 
field has not gradient distribution and it is irregular.Is the 
PeriodicFlowEngine working properly?
Thank you for any suggestions.
##########################################
O.periodic=True
O.cell.setBox(5,5,5)

from yade import pack,timing
##psd (gap--type)
psdSizes,psdCumm=[.1,0.15,0.2,1.0,1.5],[0,0.10,0.35,0.35,1.]

O.materials.append(FrictMat(young=2e8,density=2600,poisson=.3,frictionAngle=40,label='spheres'))
p=pack.SpherePack()

p.makeCloud(Vector3(0,0,0),Vector3(5,5,5),psdSizes=psdSizes,psdCumm=psdCumm,distributeMass=True,num=6000,periodic=True)

p.toSimulation()


O.timingEnabled=True
O.engines=[
        ForceResetter(),
        InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
        InteractionLoop(
                [Ig2_Sphere_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom()],
                [Ip2_FrictMat_FrictMat_FrictPhys()],
                [Law2_ScGeom_FrictPhys_CundallStrack()],
        ),
        
PeriIsoCompressor(charLen=.5,stresses=[-5e6,-1e5],doneHook="test()",maxUnbalanced=1e-3,keepProportions=True),
        ##firstly  reach a sigmaiso 5e6,then restore to final sigmaiso 100kpa
        NewtonIntegrator(gravity=(0,0,0),damping=.4),
        PeriodicFlowEngine(dead=1,label="flow"),
        #PyRunner(command='O.pause()',iterPeriod=50),
        PyRunner(command='flow.saveVtk()',iterPeriod=1),
]


O.dt=PWaveTimeStep()
O.saveTmp()

def test():


    for i in O.bodies:
        if isinstance(i.shape,Sphere):                   
            if i.shape.radius > 0.2:
                i.state.blockedDOFs='xyzXYZ'
                i.state.vel=(0,0,0);i.state.angVel=(0,0,0)

    print '###########record Finish########## cell=', O.cell.size 
    O.pause()


    O.dt=1e-4
    O.saveTmp()
    flow.dead=0
    flow.bndCondIsPressure=[1,1,0,0,0,0]
    flow.bndCondValue=[0,1000,0,0,0,0]
    flow.updateTriangulation=True
    flow.duplicateThreshold=0.7

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

Reply via email to