Problem about the HarmonicMotionEngine's ids
Dear all,
Thanks for your kind attention. I am making a densest sample for triaxial tests by using the vibration compaction method. So I plan to use the HarmonicMotionE
Here is my python script below:
from yade import pack, qt
import math #import mathematical formulae
Gl1_Sphere.
qt.Controller(), qt.View() #open the controlling and visualization interfaces
#######
##### DEFINING VARIABLES AND MATERIALS ######
#######
nRead=utils.
num_spheres=5000,# number of spheres
key='_D10', #put you simulation's name here
unknownOk=True
)
from yade.params import table#the above five lines will be used later for batch execution
num_spheres = table.num_spheres #number of spheres
finalFricDegree = atan(0.25) #contact friction during the deviatoric loading
damp = 0.008 #the non-viscous damping coefficient
key = table.key # put you simulation's name here
young1 = 1e10 #the spheres' Young's moduolus
young2 = 1e12 #the walls' Young's moduolus
mn,mx = Vector3(
thick = 0 #the thickness of the walls
#the following lines represent the grain size distribution
dia = [0.003, 0.0031, 0.005, 0.006, 0.007, 0.008, 0.009, 0.01]
phi = [0.0, 0.231, 0.301, 0.460, 0.600, 0.737, 0.870, 1.0]
#create materials for spheres and walls
O.materials.
O.materials.
#######
#### GENERATING BODIES #####
#######
#create walls around the packing
walls=utils.
wallIds=
#use a SpherePack object to generate a random loose particles packing
sp=pack.
sp.makeCloud(
O.bodies.
#######
#### DEFINING ENGINES ####
#######
#set triaxial engine
triax=TriaxialS
thickness = thick, #thickness of boxes
stressMask = 2, #the vertical direction of wall is controlled by rate of strain
#fix the walls except the top one
wall_left_
wall_right_
wall_bottom_
wall_back_
wall_front_
internalCompaction = False, #compacting through moving the walls
stressDamping = 0, #wallDamping=0
max_vel = 0.1 #the maximum walls velocity
)
newton=
swing = HarmonicMotionE
A = (0,0.002,0),
f = (0,50,0),
fi = (0,-0.5*math.pi,0),
ids = wallIds
)
O.engines=[
ForceResetter(),
InsertionSortC
InteractionLoop(
[Ig2_
[Ip2_
[Law2_
),
GlobalStiffnes
triax,
swing,
newton
]
triax.goal2 = -14000
triax.goal1 = triax.goal3 =0
Sincerely
hjz
Question information
- Language:
- English Edit question
- Status:
- Answered
- For:
- Yade Edit question
- Assignee:
- No assignee Edit question
- Last query:
- Last reply:
Can you help with this problem?
Provide an answer of your own, or ask hjz for more information if necessary.