yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #29855
Re: [Question #707278]: Servo control of flexible membrane using ServoPIDController
Question #707278 on Yade changed:
https://answers.launchpad.net/yade/+question/707278
Status: Answered => Open
Ruidong LI is still having a problem:
Hi! Jan,
Thanks for your reply. It is really helpful. But I still have two
questions about this function:
1) return ServoPIDController(ids=[node.id],axis=axis,iterPeriod=...,target=f,...)
for the 'axis' mentioned in PIDController, should it be defined individually for each node like this?
confiningStress=5e4
cen_x = x_cyl # x coordinate of the centre of the crosssection
cen_y = y_cyl # y coordinate of the centre of the crosssection
def node2servo(node):
x,y,z = node.state.pos
area = 2* pi*r_cyl*h_cyl/len(nodes) # cylinder surface / number of nodes ?
f = confiningStress * area
axis = vector(x-cen_x, y-cen_y, z)
return ServoPIDController(ids=[node.id],axis=axis,iterPeriod=100,target=f)
2) If I want to monitor the average stress on the flexible membrane,
what should I do? My idea is that iterate all nodes and sum up the force
in the direction of the connection line between the centre of the
crosssection and the node, and then divide it by the area of the
flexible membrane. If so, how to get the force in the direction of the
connection line between the centre of the crosssection and the node for
an individual node?
Cheer,
Kyle
--
You received this question notification because your team yade-users is
an answer contact for Yade.