class Pulo::MomentOfInertia
Public Class Methods
cone(mass, radius, height)
click to toggle source
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 52 def self.cone(mass, radius, height) (radius**2+4*height**2)*(3*mass/20) end
cuboid(mass, width, height)
click to toggle source
cuboid or plate of arbitrary depth (in direction of axis of rotation)
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 57 def self.cuboid(mass, width, height) (height**2+width**2)*(mass/12) end
cylinder(mass, radius, height)
click to toggle source
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 32 def self.cylinder(mass, radius, height) (3*radius**2+height**2)*mass/12.0 end
cylindrical_shell(mass, radius)
click to toggle source
cylindrical shell on its axis
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 28 def self.cylindrical_shell(mass, radius) (mass*radius**2) end
disc(mass, radius)
click to toggle source
disc
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 23 def self.disc(mass, radius) (mass*radius**2)/4.0 end
hoop(mass, radius)
click to toggle source
hoop
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 18 def self.hoop(mass, radius) (mass*radius**2)/2.0 end
point_mass(mass, distance)
click to toggle source
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 3 def self.point_mass(mass, distance) mass*distance**2 end
rod(mass, length)
click to toggle source
rod around its mid point
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 8 def self.rod(mass, length) (mass*distance**2)/12.0 end
rod_end(mass, length)
click to toggle source
rod around its mid point
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 13 def self.rod_end(mass, length) (mass*length**2)/3.0 end
sphere(mass, radius)
click to toggle source
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 44 def self.sphere(mass, radius) (2*mass*radius**2)/5.0 end
spherical_shell(mass, radius)
click to toggle source
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 40 def self.spherical_shell(mass, radius) (2*mass*radius**2)/3.0 end
thick_spherical_shell(mass, inner_radius,outer_radius)
click to toggle source
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 48 def self.thick_spherical_shell(mass, inner_radius,outer_radius) ((outer_radius**5-inner_radius**5)/(outer_radius**3-inner_radius**3))*(2*mass/5) end
tube(mass, inner_radius,outer_radius)
click to toggle source
# File lib/pulo/machine/mechanics/moments_of_inertia.rb, line 36 def self.tube(mass, inner_radius,outer_radius) (inner_radius**2+outer_radius**2)*mass/2.0 end