Fixed some particles in a periodic cell
Dear all,
I am trying to fix some particles with blockedDOFs, while others could move freely under external force. It works fine in an aperiodic scene, but failed in a periodic scene.
Following is a minimum code to present the situation. I print the relative position of two particles, which are supposed to be fixed. Also, the velocity of them is indeed not 0, although I set them to 0 in the script.
Thanks a lot for any help.
Huanran
#######
from yade import pack
coarseNum = 20 # coarse Number
fineNum = 10 # fine number
coarseSize = 2.5e-3
fineSize = 0.4e-3
cellLength = 0.05 # initial cell size
mn,mx=Vector3(
sigma0 = -5e3 # 5kPa confining pressure
F = 2350 * 4./3. * pi * fineSize**3 * 10 #force
F *= Vector3(0,-1,0)
O.materials.
sp=pack.
sp.makeCloud(
sp.makeCloud(
sp.toSimulation
for p in O.bodies:
if p.shape.radius == fineSize:
p.shape.color = (1,0,0)
Gl1_Sphere.
yade.qt.
O.engines=[
ForceResetter(),
InsertionSor
InteractionLoop(
[
[
[
),
GlobalStiffn
PeriTriaxCon
dynCell=True,
goal=
stressMask=7,
absStress
relStress
maxUnbala
maxStrain
doneHook=
label='triax'
),
NewtonIntegr
]
def applyForce():
triax.dead = True
O.cell.velGrad = Matrix3(0,0,0, 0,0,0, 0,0,0)
for p in O.bodies:
if p.shape.radius > fineSize:
if p.shape.radius == fineSize:
O.engines+
print("computing, be patient...")
O.run()
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Yade Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Jan Stránský
- Solved:
- Last query:
- Last reply:
This question was reopened
- by whr