はりの計算式(12) - 境界条件 等分布荷重 -

はりの計算式を連載で紹介しています。

 

境界条件 等分布荷重 です。


支持条件

tp = 0 単純ばり

tp = 1 片持ち梁(自由固定)

tp = 2 片持ち梁(固定自由)

tp = 3 両端固定

tp = 4 1端ピン他端固定

tp = 5 1端固定他端ピン

境界条件

qA = Q(x=0) せん断力

mA = M(x=0) 曲げモーメント

tA = T(x=0) たわみ角を曲げ剛性 EI で乗じたもの

vA = V(x=0) たわみを曲げ剛性 EI で乗じたもの

からはりを計算するやり方です。

 

計算式本体

 

境界条件

 

チェック用プログラム

 

:境界条件 等分布荷重
@echo off
ruby -x %0
pause
goto:eof
#!ruby

def mq3(x, tp, l, w, qa, ma, ta, va, ei = nil, __g__ = 0)

  q = qa - w * x
  m = ma + qa * x - w / 2 * x ** 2
  t = ta - ma * x - qa / 2 * x ** 2 + w / 6 * x ** 3
  v = va + ta * x - ma / 2 * x ** 2 - qa / 6 * x ** 3 + w / 24 * x ** 4   + __g__ * (m - ma) * l ** 2

  if ei == nil
    return q, m, t, v
  else
    return q, m, t / ei, v / ei
  end
end

x = 2.5   #m
l = 5.0   #m
w = 10.0  #kN/m
e = 6.5 * 10**6 #kN/m2
t = 0.15  #m
h = 0.30  #m
g = e/15  #kN/m2

ei = e * t * h ** 3 / 12
ga = g * t * h
__g__ = 1.2 * ei / ga / l ** 2

tp = 0

if tp == 0
# o-----o
  qa = w * l / 2.0
  ma = 0.0
  ta = w * l ** 3 / 24.0
  va = 0.0
elsif tp == 1
# ------|
  qa = 0.0
  ma = 0.0
  ta = -w * l ** 3 / 6.0
  va = w * l ** 4 * (4.0 * __g__ + 1.0) / 8.0
elsif tp == 2
# |------
  qa = w * l
  ma = -w * l ** 2 / 2.0
  ta = 0.0
  va = 0.0
elsif tp == 3
# |-----|
  qa = w * l / 2.0
  ma = -w * l ** 2 / 12.0
  ta = 0.0
  va = 0.0
elsif tp == 4
# o-----|
  qa = w * l * (12.0 * __g__ + 3.0) / (8.0 * (3.0 * __g__ + 1.0))
  ma = 0.0
  ta = w * l ** 3 * (12.0 * __g__ + 1.0) / (48.0 * (3.0 * __g__ + 1.0))
  va = 0.0
elsif tp == 5
# |-----o
  qa = w * l * (12.0 * __g__ + 5.0) / (8.0 * (3.0 * __g__ + 1.0))
  ma = -w * l ** 2 / (8.0 * (3.0 * __g__ + 1.0))
  ta = 0.0
  va = 0.0
end

  q, m, t, v = mq3(x, tp, l, w, qa, ma, ta, va, ei, __g__)
  p [x, q, m, t, v]

__END__

 

x = 2.5   #m
l = 5.0   #m
w = 10.0  #kN/m
e = 6.5 * 10**6 #kN/m2
t = 0.15  #m
h = 0.30  #m
g = e/15  #kN/m2

 

計算結果は

となります。[x, q, m, t, v]

 

はりの計算式とはいえ、公式ではありません。プログラムによる数値計算用の計算式です。

境界条件 qA, mA, tA, vA を与えて 弾性曲線式を解くための計算式です。