How do I calculate the weight tolerance for a steel gate post?

I'm building a new gate that is 6.5' wide and 6' tall on sleeve hinges. My post is 2 3/8" Schedule 40 steel sunk 2.5' into the ground with 6' above ground.

My soil is very sandy and my hole ended up substantially wider then I intended. I had to use 6 50lb bags of Quickcrete to fill it up entirely.

Given all this, how would I calculate load tolerance for this post?

For computing the foundation's strength you need material parameters for your "sand." By "sand," I infer poorly graded sand--that's usually what normal people describe as "sand." Conservatively assuming a relative density of 25% provides an angle of internal friction of 30° and a density of 105#/ft³. Following Lateral Capacity of Model Rigid Piles in Cohesionless Soils by Prasad and Chari and back calculating your foundation's diameter as 13 inches, I get a foundation strength of 12300#-in. See below.

The steel post itself can fail right above the concrete where it exits the foundation. The AISC produces the Steel Construction Manual which will provide a strength. If your post is not what they define as "compact," then the steel manual's strength is what you want to use, where that strength will account for the post's sidewall buckling before the post can reach other higher strength failure modes. If it's compact, however, the steel manual overestimates the strength for your application (in my opinion), and you should use what's called an elastic section modulus instead of the steel manual's plastic section modulus. Your schedule 40 post has a sidewall thickness of 0.154", where that implies a slenderness ratio of 2.375"/0.154" = 15.4. That's less than the compactness threshold of (0.07)(29000ksi)/(50ksi) = 40.6 from the steel manual's page 16.1-19 (page 75 under the pdf's pagination), so the pipe is compact.

To compute the strength, then, you should use the elastic section modulus instead of the plastic section modulus. Multiplying the pipe's yield stress by its elastic section modulus provides a strength value. Grabbing the formula for the elastic section modulus from a random website and computing it provides S = 0.560 in³. I found two companies on the first page of Google's results with yield stress values for fence posts. There was a 30 ksi and 50 ksi based on different classes under ASTM F1083. Taking the lesser value implies a post strength of (30ksi)(0.560in³)(1000#/k) = 16800#-in. That's without any safety factor.

Given your gate's 6'-6" width and assuming that the gate's weight will be uniformly distributed, the gate's moment demand follows as P(39in). Taking a safety factor of 2 for the steel post, I back calculate a maximum gate weight of

P = 0.5(16800#-in)/(39in) = 215#.

Taking a safety factor of 3 for the post foundation, I back calculate a maximum gate weight of

P = 0.333(12300#-in)/(39in) = 105#.

The safety factor of 3 may seem excessive, but the unreduced strength is an actual failure load. This is the load where the thing unstably crashes to the ground. Cyclic loading of sands can introduce a wiggle if you get too close to the strength, where you want to stay well below the strength.

Foundation strength SciPy session:

# Fence post foundation strength against the couple imposed by a gate.
# Good for cohesionless soils.
#
# Yenumula V.S.N. Prasad, T.R. Chari,
# Lateral Capacity of Model Rigid Piles in Cohesionless Soils,
# Soils and Foundations,
# Volume 39, Issue 2,
# 1999,
# Pages 21-29.

from math import pi as π, tan
from scipy import integrate
from scipy.optimize import brentq
from scipy.interpolate import make_interp_spline as spline

D = 30. # in
A = (6*0.37*12*12*12 + D*π*(2.375/2)**2) / D # in²
B = 2 * (A / π)**0.5 # in
print("Effective post diameter: %s inches" % B)

ϕ = 30. # degrees
γ = 105./12/12/12 # pounds per cubic inch

p_06 = lambda x: 0.6*γ*x*10**(1.3*tan(ϕ*π/180) + 0.3)

# Compute the net horizontal force corresponding to center of rotation x
def horizontal(x):
z = [0.,   0.6*x,  x,            D]
p = [0., p_06(x), 0., -1.7*p_06(x)]
soln, err = integrate.quad(spline(z, p, k=1), 0., D)
return 0.80 * B * soln

# Find the center of rotation depth corresponding to zero horizontal force
x = brentq(horizontal, 0.001*D, 0.999*D)

# Find the moment corresponding to zero horizontal force
z = [0.,   0.6*x,  x,            D]
p = [0., p_06(x), 0., -1.7*p_06(x)]
pz = spline(z, p, k=1)
soln, err = integrate.quad(lambda z: z*pz(z), 0., D)
M = 0.80 * B * soln

print("Center of rotation depth: %s inches" % x)
print("Net horizontal force: %s pounds" % horizontal(x))
print("Net moment at failure (no safety factor): %s pound-inches" % M)


Output:

Effective post diameter: 12.978917985116274 inches

Center of rotation depth: 18.888888888891653 inches

Net horizontal force: 9.485967333280999e-14 pounds

Net moment at failure (no safety factor): -12307.612465873386 pound-inches

• Thorough answer! I’m interpreting your 215# as failure, but is there any way (other than a 3x safety factor) of predicting sag? Or is it really just, “it’s sandy, so hard to say”? Oct 29, 2023 at 17:45
• @Aloysius Defenestrate, I think that the soils people prefer the Mohr Coloumb failure surface for accurately describing the actual onset of failure (something like Drucker Prager is preferred, I think, for continuity properties that go along with computational plasticity). I would keep it elastic by running a 3D FEM model on the soil, ramping up the gate's moment until I found a speck of soil failing Mohr Coloumb. This is the applied moment where the moment-rotation curve first breaks non-linear. This is a serviceability limit state, not a failure limit state, so safety factor of 1. Oct 29, 2023 at 18:46
• You keep this up, we're going to have to ask SE to enable MathJax here! (Then expect you to learn & use it. ;) Oct 31, 2023 at 12:03
• @FreeMan, with the utf8 character set already available, LaTeX wouldn't add much. I would love to scatter some \frac macros around, though. Oct 31, 2023 at 13:28
• @popham would filling the schedule 40 post with rebar and concrete have any effect on the maximum gate weight? Nov 7, 2023 at 1:40