← Back to team overview

yade-users team mailing list archive

[Question #688250]: code for sand drop simulation

 

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

I am trying to simulate the sand free fall.
The bodies that represent the sand create them as polyhedra, add the interaction code according to the YADE guide.
When the code is executed from the terminal, the creation of all the created bodies can be visualized, but when the simulation is started from the YADE window, the polyhedra disappear and in the end it seems the following warning:

WARN  /build/yade-fDuCoe/yade-2018.02b/pkg/common/InsertionSortCollider.cpp:242 action: verletDist is set to 0 because no spheres were found. It will result in suboptimal performances, consider setting a positive verletDist in your script.

WARN  /build/yade-fDuCoe/yade-2018.02b/pkg/dem/Shop_01.cpp:423 PWaveTimeStep: PWaveTimeStep has not found any suitable spherical body to calculate dt. dt is set to 1.0

This is the complete code ... (the comments of the code are in Spanish)

Algoritmo_3.py

Tipo
Texto
Tamaño
3 KB (3.032 bytes)
Espacio usado
3 KB (3.032 bytes)
Ubicación
INV
Propietario
yo
Modificado
16:35 por mí
Abierto
16:37 por mí
Creado el
16:35 con GNOME
Añadir descripción
Los lectores pueden descargar
from yade import pack, plot, utils, polyhedra_utils, export


#Altura de caida del material
hc=0


#EQUIPO

#coordenadas centro
x=0
y=0
z=0

#coordenadas extension
f=0.45
a=0.50
h=1


#estrutura del equipo de pluviacion 
O.bodies.append(geom.facetBox((x,y,z),(f,a,(h+hc)),wallMask=31,wire=True))


#PROBETA

#Radio
r=0.05

#Altura de la probeta
height=0.1

#Probeta 1
#Coordenadas centro
xp1=0.1
yp1=0
zp1=1

#Algoritmo YADE para crear la probeta 1
O.bodies.append(geom.facetCylinder((xp1,yp1,(-zp1-hc+(height/2))), radius=r, height=height, fixed=True, wallMask=6, color=(0.933,0.090,.894), wire=False))

#Probeta 2
#Coordenadas centro
xp2=0.1
yp2=0
zp2=1

#Algoritmo YADE para crear la probeta 1
O.bodies.append(geom.facetCylinder((-xp2,yp2,(-zp2-hc+(height/2))), radius=r, height=height, fixed=True, wallMask=6, color=(0,0,1), wire=False))

#MATERIAL

#coordenadas perimetro de particulas
#esquina inferior
xi=0.225
yi=0.225
zi=0.2

#esquina superior
xs=0.225
ys=0.25
zs=0.5

#tamano de las particulas segun el estudio de angularidad 
#sizemin particulas de menor tamano segun la angularidad
a=.12 #ancho (m)
l=.12 #largo (m)
r=.12 #radio (m)

#sizemin particulas de mayor tamano segun la angularidad
A=.12 #ancho (m)
L=.12 #largo (m)
R=.12 #radio (m)

#Propiedades mecanicas del material
polyMat=PolyhedraMat()
polyMat.density=1418 #kg/m3
polyMat.frictionAngle=radians(36) #rad

#Algoritmo YADE para agregarel material
O.materials.append(polyMat)


#Algoritmo YADE para crear las particulas en forma de poliedros con las dimensiones de ancho, largo y radio del ensayo de angularidad
polyhedra_utils.fillBox(((-xi),(-yi),(zi+hc)),(xs,ys,(zs+hc)),polyMat,sizemin=[a,l,r],sizemax=[A,L,R])


O.engines=[ForceResetter(),#reinicia las fuerzas para cada interaccion
InsertionSortCollider(#Funcion para detectar las colisiones entre los cuerpo presentes en la simulacion
[Bo1_Polyhedra_Aabb(),Bo1_Facet_Aabb()]), 
InteractionLoop( #Funcion para controlar las interaciones de los cuerpos presentes en la simulacion
[Ig2_Polyhedra_Polyhedra_ScGeom()], #controla las posibles combinaciones de interaccion entre los cuerpos
[Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys()], #controla las posibles combinaciones de interaccion de los mat en la simulaci
[Law2_PolyhedraGeom_PolyhedraPhys_Volumetric()]), #Son las leyes matematicas que se van a estudiar en el comportamiento de la simulacion este codigo no creo ningun cuerpo ni interaccion
GlobalStiffnessTimeStepper(),
NewtonIntegrator(gravity=(0,0,-9.81))] #Corresponde al motor que une todas las leyes fisico matematicas de movimiento y compartamiento del material simulado

I want to know if anyone knows how I can solve this problem ... I already tried the GlobalStiffnessTimeStepper codes that suggested it in a previous post, but it didn't work.

I thank you if you can help me ...

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.