frequently ask ? : Science : Physics : Mechanics : Dynamics : 3D

+ Search
Add Entry AlertManage Folder Edit Entry Add page to http://del.icio.us/
Did You Find This Entry Useful?

2 of 4 people (50%) answered Yes
Recently 2 of 4 people (50%) answered Yes

Entry

Physics: Dynamics: 3D: Simulation: How to write a simple rigid body simulation: Mass:Discrete:Point?

Feb 2nd, 2006 12:30
Knud van Eeden,


----------------------------------------------------------------------
--- Knud van Eeden --- 01 February 2021 - 00:00 am -------------------
Physics: Dynamics: 3D: Simulation: How to write a simple rigid body 
simulation: Mass:Discrete:Point?
===
Steps: Overview:
1. -Split the movement in
    1. Translation
    2. Rotation
    as these movements can be handled completely independent of each
    other.
2. You start with the simplest system
   1. -Start with point masses
       1. -Start with 1 mass
       2. -Then 2 masses
       3. -Then 3 masses
       4. -Then N masses
       5. -Then connect these point masses on wireframe joints, so
           similating the simplest human body
           1. -First use a stiff body, where the parts can not move
           2. -Then a body where the parts (e.g. the arms) can move
               while rotating
   2. -Then use continuous masses
       1. -Use rigid body segments
       2. -Finally use the human body
           (which is here just 'more of the same')
---
1. -Translation
    1. -Calculate the center of mass
       1. -Calculate the displacement in the x-direction
           1. -Use sum x-forces equals mass times x-acceleration
               1. -Solve this differential equation for x
                         ..
                         x  = sum( x-forces )
                              ---------------
                                   mass
                   1. -That gives the x-distance moved
       2. Calculate the displacement in the y-direction
           1. -Use sum y-forces equals mass times y-acceleration
               1. -Solve this differential equation for y
                         ..
                         y  = sum( y-forces )
                              ---------------
                                   mass
                   1. -That gives the y-distance moved
       3. Calculate the displacement in the z-direction
           1. -Use sum z-forces equals mass times z-acceleration
               1. -Solve this differential equation for z
                         ..
                         z  = sum( z-forces )
                              ---------------
                                   mass
                   1. -That gives the z-distance moved
2. -Rotation
 1. -Given
     1. -Given time
         1. -Time begin
         2. -Time end
         3. -Time total steps
     2. -Given angles
         1. -Given initial angle in the x-direction
         2. -Given initial angle in the y-direction
         3. -Given initial angle in the z-direction
     3. -Given angular velocities
         1. -Given initial angular velocity in x-direction
         2. -Given initial angular velocity in y-direction
         3. -Given initial angular velocity in z-direction
     4. -Given masses
         1. -Given values of masses
         2. -Given position of masses
             1. massposition in x-direction
             2. massposition in y-direction
             3. massposition in z-direction
     5. -Given forces
         1. -Force value
             1. -Force value in x-direction
             2. -Force value in y-direction
             3. -Force value in z-direction
         2. -Force position
             1. -Force position in x-direction
             2. -Force position in y-direction
             3. -Force position in z-direction
 2. -Process
     1. Repeat the following steps for the first to last time interval
            1. -Calculate center of gravity
            2. -Calculate inertia
                1. -Moment of inertia
                    1. -Moment of inertia in x-direction
                    2. -Moment of inertia in y-direction
                    3. -Moment of inertia in z-direction
                2. -Product of inertia
                    1. -Product of inertia in x-direction
                    2. -Product of inertia in y-direction
                    3. -Product of inertia in z-direction
                3. -Calculate the 3 eigenvalues
                4. -Calculate the 3 eigenvectors
                5. -Calculate the 3 orthogonal principal axes
                6. -Put the principal axes origin in the center of mass
            3. Calculate the 3 Euler rotational equations
               1. -Calculate the sum of the torques
                   1. -Use the given initial forces
                       1. -Use the given initial force values
                       2. -Use the given initial force positions
               2. -Use the 3 given initial angular velocities
               3. -Use the 3 given initial angles
               4. -Solve the 3 differential equations
                            ..                 .   .
                   1. Ixx . x  + (Izz - Iyy) . x . y = sum(torques x)
                            ..                 .   .
                   2. Iyy . y  + (Ixx - Izz) . x . z = sum(torques y)
                            ..                 .   .
                   3. Izz . z  + (Iyy - Ixx) . x . y = sum(torques z)
                      1. -Output the angle rotated around principal
                          axis 1
                      2. -Output the angle rotated around principal
                          axis 2
                      3. -Output the angle rotated around principal
                          axis 3
               5. -Translate this to new 3D positions of the body
                   1. -Use a rotation around 3 axes
                       1. -Use a rotation around the x-axis
                           1 -Input the angle rotated around principal
                              axis 1
                       2. -Use a rotation around the y-axis
                           1 -Input the angle rotated around principal
                              axis 2
                       3. -Use a rotation around the z-axis
                           1 -Input the angle rotated around principal
                              axis 3
        3. -Output
            1. -Show this 3D positions of the body
                1. -Show this on a 2D screen
                    1. -Project 3D to 2D
===
Internet: see also:
---
Physics: Dynamics: 3D: Link: Overview: Can you give an overview of 
links?
http://www.faqts.com/knowledge_base/view.phtml/aid/39259/fid/1857
----------------------------------------------------------------------