はりの計算式(3) - 片持ち 分布荷重(2) -

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

 




数式処理ソフト maximaruby による 計算プログラム

 

:片持ち梁 n次分布荷重
@echo off
path C:\maxima-5.47.0\bin;%path%
ruby -x %~f0
pause
goto:eof

#!ruby
f = open "| maxima --very-quiet", "w"
f.print <<~Maxima
  assume(L > 0, GA >= 0, EI > 0, __g__ >= 0, n > 0)$

  p: -w * (x / L) ^ n$
  Q: C1 + integrate(p, x)$
  M: C2 + integrate(Q, x)$
  r: -M$
  G: fs * EI / GA * Q$
  T: C3 + integrate(r, x)$
  V: C4 + integrate(T + G, x)$

  s: solve( 
 /* ----| A端自由・B端固定 */
    [ev(Q, x = 0) = 0, ev(M, x = 0) = 0, ev(T, x = L) = 0, ev(V, x = L) = 0],
    [C1, C2, C3, C4, C5, C6, C7, C8])$

  [Q, M, T, V]: ev([Q, M, T, V], s)$

  print("q =", string(factor(ratsimp(factor(ratsubst(__g__, fs*EI/GA/L^2, Q))))))$
  print("m =", string(factor(ratsimp(factor(ratsubst(__g__, fs*EI/GA/L^2, M))))))$
  print("t =", string(factor(ratsimp(factor(ratsubst(__g__, fs*EI/GA/L^2, T))))))$
  print("v =", string(factor(ratsimp(factor(ratsubst(__g__, fs*EI/GA/L^2, V))))))$
  quit()$
Maxima
f.close
__END__

 

計算結果は

となります。計算結果の整理は筆算でおこないました。