← Back to team overview

yade-users team mailing list archive

[Question #699820]: Questions about engine settings

 

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

Hello everyone!
I encountered the following error when coupling yade with oofem for simulation.
-----------------------------------------------------------------------------------------------------------------------------------------
FATAL /home/xue/dem-fem-coupling-master/installation/_build/yade/source/pkg/common/InteractionLoop.cpp:143 action: None of given Law2 functors can handle interaction #11809+229, types geom:PolyhedraGeom=10 and phys:FrictPhys=3 (LawDispatcher::getFunctor2D returned empty functor)
-----------------------------------------------------------------------------------------------------------------------------------------
Here is the code statement I entered for the yade part.
*************************************************************************************
from libyade import yade
from yade import *
from math import *

from yade import pack,export,utils
from yade import polyhedra_utils
from yade import geom,utils
from yade import qt,ymport



matP = PolyhedraMat()
matP.density = 2650 #kg/m^3 
matP.young = 5.5E9 #Pa 1E7
#matP.young = 2.75 #Pa 1E7
matP.poisson = 0.25 # 20000/1E7
matP.frictionAngle = 0.7 #rad
O.materials.append(matP)

steel = PolyhedraMat()
steel.density = 2600 #kg/m^3 
steel.young = 55E9 #inital steel was 
steel.poisson = 0.21
steel.frictionAngle = 0.2 #rad
O.materials.append(steel)

steel1 = FrictMat()
steel.density = 2600 #kg/m^3 
steel.young = 55E9 #inital steel was 
steel.poisson = 0.21
steel.frictionAngle = 0.2 #rad
O.materials.append(steel)

sphereballast = CohFrictMat()
sphereballast.density = 2000
#sphereballast.young = 5.5E8
sphereballast.young = 3E8
sphereballast.possion = 0.5
sphereballast.frictionAngle = 0.364 #rad 0.364
sphereballast.alphaKr = 2
sphereballast.etaRoll = 1
sphereballast.isCohesive = True
O.materials.append(sphereballast)

##
O.bodies.append(ymport.textPolyhedra('/tmp/plane.dat',material=matP))
ldpltheight=-0.021
ldplt=polyhedra_utils.polyhedra(steel,v=((-0.148,0,ldpltheight),(-0.073*sqrt(3),-0.073,ldpltheight),(-0.073,-0.073*sqrt(3),ldpltheight),(0,-0.148,ldpltheight),(0.073,-0.073*sqrt(3),ldpltheight),(0.073*sqrt(3),-0.073,ldpltheight),(0.148,0,ldpltheight),(0.073*sqrt(3),0.073,ldpltheight),(0.073,0.073*sqrt(3),ldpltheight),(0,0.148,ldpltheight),(-0.073,0.073*sqrt(3),ldpltheight),(-0.073*sqrt(3),0.073,ldpltheight),(-0.148,0,ldpltheight+0.02),(-0.073*sqrt(3),-0.073,ldpltheight+0.02),(-0.073,-0.073*sqrt(3),ldpltheight+0.02),(0,-0.148,ldpltheight+0.02),(0.073,-0.073*sqrt(3),ldpltheight+0.02),(0.073*sqrt(3),-0.073,ldpltheight+0.02),(0.148,0,ldpltheight+0.02),(0.073*sqrt(3),0.073,ldpltheight+0.02),(0.073,0.073*sqrt(3),ldpltheight+0.02),(0,0.148,ldpltheight+0.02),(-0.073,0.073*sqrt(3),ldpltheight+0.02),(-0.073*sqrt(3),0.073,ldpltheight+0.02)),fixed=True, color=(0.75,0.65,0.65))
O.bodies.append(ldplt)
O.bodies.append(ymport.textPolyhedra('/tmp/pack2120qq.dat',material=matP))
O.bodies.append(ymport.textExt('/tmp/nsphere2120qq.dat',format='x_y_z_r',material=sphereballast))



O.bodies.append(utils.facet([(-0.15,-0.15,0),(0.15,-0.15,0),(0.15,0.15,0)],material=steel1))



O.engines =[
	ForceResetter(),
	InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb(),Bo1_Polyhedra_Aabb()]),
	InteractionLoop(
		[Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom(),Ig2_Facet_Polyhedra_PolyhedraGeom(),Ig2_Polyhedra_Polyhedra_PolyhedraGeom(),Ig2_Sphere_Polyhedra_ScGeom()],
		[Ip2_FrictMat_FrictMat_FrictPhys(),Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys(),Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(),Ip2_FrictMat_PolyhedraMat_FrictPhys()],
		[Law2_ScGeom_FrictPhys_CundallStrack(),Law2_PolyhedraGeom_PolyhedraPhys_Volumetric(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment()],
	),
	NewtonIntegrator(damping=0.7,gravity=(0,0,-9.8),label='newton'),
]
*****************************************************************************************************************
It can be seen that the model contains sphere, polyhedra, facet. The materials include polyhedramat and CohFrictMat. Is the error in the calculation related to the wrong engine setting?

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