Mechanics of Materials
Stress, strain, torsion, bending, and deflection.
Mechanics of Materials
Mechanics of Materials (also called Strength of Materials) studies the behavior of solid bodies subjected to various types of loading. This discipline bridges the gap between statics and structural design, enabling engineers to determine stresses, strains, and deformations in structural elements.
Stress and Strain
Normal Stress
Normal stress () is the internal force per unit area acting perpendicular to a cross-section:
Where:
- = axial force (N or kN)
- = cross-sectional area (m or mm)
Units: Pascal (Pa) = N/m, or more commonly MPa = N/mm
Tensile stress: Positive (stretching) Compressive stress: Negative (shortening)
Normal Strain
Normal strain () is the change in length per unit original length:
Strain is dimensionless but often expressed in units of mm/mm or as a percentage.
Hooke's Law
For linear elastic materials:
Where is the modulus of elasticity (Young's modulus), typically:
- Steel: GPa
- Concrete: GPa
- Aluminum: GPa
Deformation Under Axial Load
For members with varying cross-sections or loads:
Poisson's Ratio
When a material is stretched axially, it contracts laterally:
Typical values:
- Steel:
- Concrete:
- Rubber:
Shear Stress and Strain
Shear Stress
Where is the shear force and is the area over which it acts.
Shear Strain
Where is the shear displacement and is the height.
Shear Modulus
Relationship between elastic constants:
Stress-Strain Relationships
Key Points on Stress-Strain Curve
- Proportional Limit: End of linear region
- Elastic Limit: Maximum stress for elastic behavior
- Yield Point (): Onset of plastic deformation
- Ultimate Strength (): Maximum stress
- Fracture Point: Failure
Offset Yield Strength
For materials without clear yield point, use 0.2% offset method:
Draw a line parallel to the elastic region, offset by . The intersection with the stress-strain curve gives the yield strength.
Torsion of Circular Shafts
Shear Stress Distribution
For a circular shaft under torque :
Where:
- = radial distance from center
- = polar moment of inertia
Maximum shear stress (at outer surface, ):
Where is the polar section modulus.
Polar Moment of Inertia
Solid circular shaft:
Hollow circular shaft:
Angle of Twist
For varying torque or cross-section:
Power Transmission
Where is rotational speed in RPM.
Bending of Beams
Flexure Formula
For a beam in pure bending:
Where:
- = bending moment
- = distance from neutral axis
- = moment of inertia about neutral axis
Maximum bending stress:
Where is the distance to the extreme fiber and is the section modulus.
Section Modulus for Common Shapes
| Shape | Section Modulus |
|---|---|
| Rectangle | |
| Solid Circle | |
| Hollow Circle | |
| I-beam | (calculate using parallel axis) |
Shear Stress in Beams
Where:
- = shear force
- = first moment of area above (or below) the point
- = moment of inertia
- = width at the point of interest
For a rectangular cross-section, maximum shear stress at neutral axis:
Beam Deflections
Differential Equation of the Elastic Curve
Successive integration gives slope and deflection:
Common Deflection Formulas
Simply supported beam, central point load :
Simply supported beam, uniform load :
Cantilever beam, end point load :
Cantilever beam, uniform load :
Superposition Method
For multiple loads, add individual deflections:
Combined Stresses
Principal Stresses
For a general 2D stress state (, , ):
Maximum Shear Stress
Mohr's Circle
A graphical method for stress transformation:
- Center at
- Radius =
Column Buckling
Euler's Critical Load
For a slender column with pinned ends:
Effective Length
For different end conditions, use effective length :
| End Conditions | |
|---|---|
| Pinned-Pinned | 1.0 |
| Fixed-Free | 2.0 |
| Fixed-Pinned | 0.7 |
| Fixed-Fixed | 0.5 |
Slenderness Ratio
Where is the radius of gyration.
Critical Stress
Real-World Application: Steel Beam Design
Designing a steel beam for a floor system.
Beam Analysis Example
import math
# Beam loading and geometry
beam_params = {
'span': 8.0, # meters
'dead_load': 5.0, # kN/m (self-weight + permanent loads)
'live_load': 10.0, # kN/m (occupancy load)
'support_type': 'simply_supported',
'steel_grade': 'A992', # Fy = 345 MPa
'E': 200000 # MPa (steel modulus)
}
# Load factors (LRFD)
factored_load = 1.2 * beam_params['dead_load'] + 1.6 * beam_params['live_load']
# Calculate maximum moment (simply supported, uniform load)
L = beam_params['span']
w = factored_load
M_max = w * L**2 / 8 # kN-m
M_max_Nmm = M_max * 1e6 # Convert to N-mm
# Calculate maximum shear
V_max = w * L / 2 # kN
# Required section modulus
Fy = 345 # MPa
phi_b = 0.9 # Resistance factor for bending
S_required = M_max_Nmm / (phi_b * Fy) # mm^3
# Required moment of inertia for deflection limit
deflection_limit = L * 1000 / 360 # L/360 in mm (for live load)
w_service = beam_params['live_load'] # kN/m (unfactored live load)
# delta = 5wL^4 / (384EI), solve for I
I_required = (5 * w_service * (L * 1000)**4) / (384 * beam_params['E'] * deflection_limit)
print(f"Steel Beam Design:")
print(f" Span: {L} m")
print(f" Factored load: {factored_load:.2f} kN/m")
print(f" Maximum moment: {M_max:.2f} kN-m")
print(f" Maximum shear: {V_max:.2f} kN")
print(f"\nSection Requirements:")
print(f" Required section modulus: {S_required/1000:.0f} x 10^3 mm^3")
print(f" Required moment of inertia: {I_required/1e6:.0f} x 10^6 mm^4")
print(f" Deflection limit: {deflection_limit:.1f} mm (L/360)")
# Example W-section selection
W_section = {
'designation': 'W310x52',
'S': 748e3, # mm^3
'I': 119e6, # mm^4
'd': 317, # mm (depth)
'tw': 7.6, # mm (web thickness)
}
# Check adequacy
S_ratio = W_section['S'] / S_required
I_ratio = W_section['I'] / I_required
print(f"\nSelected Section: {W_section['designation']}")
print(f" Section modulus ratio: {S_ratio:.2f} (>1.0 OK)")
print(f" Moment of inertia ratio: {I_ratio:.2f} (>1.0 OK)")
if S_ratio >= 1.0 and I_ratio >= 1.0:
print(f" Design: ADEQUATE")
else:
print(f" Design: SELECT LARGER SECTION")
Your Challenge: Shaft Design for Torsion
Design a solid circular shaft to transmit power while limiting stress and angle of twist.
Goal: Determine the required shaft diameter for given power transmission requirements.
Problem Setup
import math
# Shaft requirements
shaft_config = {
'power': 75, # kW
'speed': 600, # RPM
'length': 2.0, # meters
'allowable_shear': 60, # MPa
'allowable_twist': 1.0, # degrees per meter
'G': 80000 # MPa (steel shear modulus)
}
# TODO: Calculate required shaft diameter
# Step 1: Calculate torque from power
omega = 2 * math.pi * shaft_config['speed'] / 60 # rad/s
T = shaft_config['power'] * 1000 / omega # N-m
T_Nmm = T * 1000 # N-mm
# Step 2: Diameter based on shear stress
# tau_max = 16T / (pi * d^3)
# d^3 = 16T / (pi * tau_allow)
d_stress = (16 * T_Nmm / (math.pi * shaft_config['allowable_shear'])) ** (1/3)
# Step 3: Diameter based on angle of twist
# phi = TL / (GJ) = 32TL / (pi * G * d^4)
# Convert allowable twist to radians per mm
allowable_twist_rad = math.radians(shaft_config['allowable_twist'] / 1000) # rad/mm
# d^4 = 32TL / (pi * G * phi_allow)
L_mm = shaft_config['length'] * 1000
d_twist = (32 * T_Nmm * L_mm / (math.pi * shaft_config['G'] * allowable_twist_rad * L_mm)) ** 0.25
# Step 4: Select governing diameter
d_required = max(d_stress, d_twist)
# Round up to nearest standard size (5mm increments)
d_selected = math.ceil(d_required / 5) * 5
print(f"Shaft Design Results:")
print(f" Power: {shaft_config['power']} kW at {shaft_config['speed']} RPM")
print(f" Torque: {T:.2f} N-m = {T_Nmm:.0f} N-mm")
print(f"\nDiameter Requirements:")
print(f" Based on shear stress: {d_stress:.1f} mm")
print(f" Based on angle of twist: {d_twist:.1f} mm")
print(f" Governing diameter: {d_required:.1f} mm")
print(f" Selected diameter: {d_selected} mm")
# Verify design
J_selected = math.pi * d_selected**4 / 32
tau_actual = T_Nmm * (d_selected/2) / J_selected
phi_actual = T_Nmm * L_mm / (shaft_config['G'] * J_selected)
phi_actual_deg = math.degrees(phi_actual) * 1000 # deg per meter
print(f"\nDesign Verification:")
print(f" Actual shear stress: {tau_actual:.2f} MPa (limit: {shaft_config['allowable_shear']} MPa)")
print(f" Actual twist: {phi_actual_deg:.3f} deg/m (limit: {shaft_config['allowable_twist']} deg/m)")
print(f" Stress utilization: {tau_actual/shaft_config['allowable_shear']*100:.1f}%")
print(f" Twist utilization: {phi_actual_deg/shaft_config['allowable_twist']*100:.1f}%")
What modifications would be needed if the shaft were hollow instead of solid, and how would that affect the weight?
ELI10 Explanation
Simple analogy for better understanding
Self-Examination
What is the relationship between stress and strain for a linear elastic material, and what does the stress-strain curve reveal?
How do you calculate the maximum shear stress in a circular shaft under torsion?
What is the flexure formula and how is it used to determine bending stresses in beams?
How do combined loading conditions affect the stress state at a point in a structural member?
What methods are used to calculate beam deflections, and when is each most appropriate?