Is there a way to combine a rotary and linear motion so that the axis of rotation moves with the mesh?
When I apply more than one fix move/mesh/gran I do not get the motion I am expecting. I think I need a way to update the rotation point so that after the linear motion the rotation axis origin is updated. Can this be done with a variable that is updated in a for loop with inputs from the linear motion parameters?
Any ideas about how I can set something like this up?
richti83 | Sat, 06/22/2013 - 20:25
Hi chefnins,
Hi chefnins,
make sure you are using different fix-names for the move-fixes.
Also keep in mind that rotation is non commutative.
Maybe this snipped will help you, it rotates a body arround the point 0 0 1 and aditionaly arround the yaw-(z)-axis:
variable omega1 equal 3.1415
variable omega2 equal -3.1415
fix rotcad1 all move/mesh mesh cad1 rotate/variable origin 0. 0. 1. axis 0. 1. 0. omega v_omega1 #rotate arround 0 0 1
fix rotcad2 all move/mesh mesh cad1 rotate/variable origin 0. 0. 0. axis 0. 1. 0. omega v_omega2 #rotate arround COM against rotcad1
fix rotcad3 all move/mesh mesh cad1 rotate/variable origin 0. 0. 0. axis 0. 0. 1. omega v_omega1 #rotate arround COM z-axis
It should work without /variable, but normely my rotational frequency is not constant (comes from a Multi-Body-System).
Best,
Christian
hansmannb | Thu, 12/12/2013 - 15:36
Superposition of multiple fix move/mesh
i'm struggleing with the task to creat a common path for my mesh.
what i don't understand ist how the reference frames of the single move/mesh command are bent on eath other.
example task:
first move/mesh is a rotation in x/y-plane around z axis.
startposition mesh: 0 0 0
center of rotation: 1 0 0
second rotation should be a rotation around the longitudinal axis of the mesh. this axis should always be parallel to the vector of velocity of the first move/mesh command.
fix rot1 all move/mesh mesh cad rotate/variable origin 1 0 0 axis 0 0 1 omega v_omega
fix rot2 all move/mesh mesh cad rotate/variable origin 0 0 0 axis 0 1 0 omega v_omega
i thought that the coordinates and the axis of the second move/mesh command moving along as the mesh is moved by the first move command.
But in this case the 0 1 0 axis of the second command ist alway parallel to the global 0 1 0 axis.
what is my mistake?