← Back to team overview

yade-users team mailing list archive

Re: [Question #696759]: How can polyhedron use CpmMat 、Ip2_CpmMat_CpmMat_CpmPhys()and Law2_ScGeom_CpmPhys_Cpm() ?

 

Question #696759 on Yade changed:
https://answers.launchpad.net/yade/+question/696759

    Status: Answered => Open

weijie is still having a problem:
Hi Jan, and thank you again.

I modified the script as you say,it works.But when I add walls to
compress polyhedra, there's another error. The script and errors are as
follows:

script:
######################
from __future__ import print_function
from yade import polyhedra_utils,qt
concrete = CpmMat(
	young = 24e9,
	poisson =  .2,
	frictionAngle = atan(0.8),
	epsCrackOnset = 1e-4,
	relDuctility =30,
	sigmaT = 3.5e6,
)
concreteId = O.materials.append(concrete)
poly1= polyhedra_utils.polyhedra(material=concrete,size=(1,1,1),seed=5) 
O.bodies.append(poly1)
poly1.state.pos = (0,0,0)
w1 = utils.wall((-0.75,0,0), axis=0, sense=0)
w2 = utils.wall((0.75,0,0), axis=0, sense=0)
v=0.1
w1.state.vel = (+v,0,0)
w2.state.vel = (-v,0,0)
O.bodies.append((w1,w2))
O.engines = [
    ForceResetter(),
    InsertionSortCollider([Bo1_Polyhedra_Aabb(),Bo1_Wall_Aabb()]),
    InteractionLoop(
        [Ig2_Polyhedra_Polyhedra_ScGeom(),Ig2_Wall_Polyhedra_PolyhedraGeom()],
        [Ip2_CpmMat_CpmMat_CpmPhys()],
        [Law2_ScGeom_CpmPhys_Cpm()],
    ),
    NewtonIntegrator(),
]

O.dt = 1e-6
O.run()
###############

error:

<FATAL ERROR> ThreadRunner:35 void yade::ThreadRunner::run(): Exception occured: 
Body #0: Body::material type CpmMat doesn't correspond to Body::state type State (should be CpmState instead).

How to solve it?

Best regards
Jie

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