yade-users team mailing list archive
Mailing list archive
Re: [Question #678987]: error in applying constant displacement using state.vel.
Question #678987 on Yade changed:
Status: Open => Answered
Jérôme Duriez proposed the following answer:
The error says it all: the you're asking in "disk*.state.vel=something"
to access (and modify) the state.vel of list objects, and not Body
objects. Yade Body objects do have a state.vel, (Python) lists do not.
Your disk1, disk2 indeed are lists of bodies ids, because your top and
bottom disks are composed of many facet bodies.
You need to touch (for state.vel modifications) the bodies themselves, not their (list of) ids.
General method is:
body = O.bodies[id] # this is a body when id is an integer
body.state.vel = (0,0,1) # this will then be possible
Not that I do not think you really need top and bottom *disks*. You could use as well a single Box/Wall/... body, even though it will match less nicely the cylinder shape of your sample.
You received this question notification because your team yade-users is
an answer contact for Yade.