>> 2)      I want to calculate the rotational velocities of a component (block 
>> of elements) in paraview using the nodal translational velocities. How do I 
>> do that?

> It would be good to have some more clear mathematical definition of (2). I am 
> assuming it involves some sort of integration but it is not clear.

Assuming that the elements are (mostly) undergoing rigid-body motion, you could 
estimate the instant center of rotation and decompose the velocity into 
rotational and linear components. It should only take 3 points and their 
velocities (in 3-D, or 2 pts in 2-D) to estimate the instant center. For the 
2-D case, see

  http://emweb.unl.edu/NEGAHBAN/EM373/note16/note.htm

In 3-D, you get an axis, not a point. Having more than 3 (or 2 in 2-D) points 
generates a distribution of instant centers. For a deformable body, the 
distribution might not be anything like a point/line in space. You can imagine 
a pancake being flipped and see that the instantaneous angular velocity at the 
edges (far from the "axis of flip") would oscillate above and below that of the 
portion nearest the "axis of flip" -- because pancakes can curl (taco?) a good 
deal while flipping. How should ParaView report that? As a single angular 
velocity for the pancake, averaged over the entire cake? What if there are 
multiple pancakes? One average for each connected component? One for the full 
stack? :-)

For each set of nodes N_i you want to use in an estimate, you could deflect 
nodal coordinates by their velocity N_i' = N_i + delta_t * V_i and then compute 
the optimal rotation matrix using the Kabsch algorithm:

  http://en.wikipedia.org/wiki/Kabsch_algorithm

>From the optimal rotation matrix, you can choose the eigenvector with the 
>largest eigenvalue and use it as an estimate of the instant center of 
>rotation. With the instant center, you can then decompose each nodal velocity 
>into an angular velocity magnitude and linear velocity magnitude -- and 
>average over all the nodes in a connected component/block/full stack.

        David
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the ParaView Wiki at: 
http://paraview.org/Wiki/ParaView

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/paraview

Reply via email to