jw_cad 外部変形 - (4164-2) はりを解く(両端ばね+鉛直・回転変位:山形分布荷重(2)) -

外部変形は データのやり取りをテキストファイルで行うので プログラム言語は 自由に選ぶことができます。図形は機能的かつシンプルなため、数多くのユーザーに受け入れられています。

 

maximaではりを解いています。

 

(はりを解く(両端ばね+鉛直・回転変位:山形分布荷重(2)))

 

スクリプト例

:はりを解く(両端ばね+鉛直・回転変位:山形分布荷重(2))
@echo off
path C:\maxima-5.49.0\bin;%path%
more +4 %0 | maxima --very-quiet & pause & goto:eof
/*

:            /\        
:  VA TA  /  │w \   VB TB
:   |//______│______\|/
    ◎                 ◎ KB
    >                   > KV

:   0         a         L ---> x
:   |---------L---------|

    y
    |
    |_____x
  /
 z

  KB : 回転ばね kNm/rad
  KV : 鉛直ばね kN/m
  TA, TB : たわみ角 左回りが正 rad
  VA, VB : たわみ 上方向が正 m
  w : 分布荷重 上方向が正 kN/m
  a : 荷重の位置 m
  Q1, Q2 : せん断力 上方向が正 kN
  M1, M2 : 曲げモーメント 左回りが正 kNm
  L : スパン長 m
  EI : 曲げ剛性(一定)

  エンコード UTF-8(BOM無し) で保存して実行してください。
*/
assume(L>0,a>=0,L>=a)$
p1:-w/a*x$
p2:-w/(L-a)*(L-x)$
/*
define(Q1(x), C1 + integrate(p1, x))$
define(M1(x), C2 + integrate(Q1(x), x))$
define(T1(x), C3 - integrate(M1(x)/EI, x))$
define(V1(x), C4 + integrate(T1(x), x))$
define(Q2(x), C5 + integrate(p2, x))$
define(M2(x), C6 + integrate(Q2(x), x))$
define(T2(x), C7 - integrate(M2(x)/EI, x))$
define(V2(x), C8 + integrate(T2(x), x))$
s: solve(
  [T1(0)=-M1(0)/KB+TA, V1(0)= Q1(0)/KV+VA,
   T2(L)= M2(L)/KB+TB, V2(L)=-Q2(L)/KV+VB,
   Q1(a)=Q2(a), M1(a)=M2(a), T1(a)=T2(a), V1(a)=V2(a)],
  [C1, C2, C3, C4, C5, C6, C7, C8])$
[Q1, M1, T1, V1]: ev([Q1(x), M1(x), T1(x), V1(x)], s)$
[Q2, M2, T2, V2]: ev([Q2(x), M2(x), T2(x), V2(x)], s)$

RA:ev(Q1,x=0)$
RB:-ev(Q2,x=L)$
MA:ev(M1,x=0)$
MB:-ev(M2,x=L)$

print("RA:",string(factor(RA)))$
print("RB:",string(factor(RB)))$
print("MA:",string(factor(MA)))$
print("MB:",string(factor(MB)))$

print("Q1-RA:",string(factor(Q1-RA)))$
print("M1-MA-RA*x:",string(factor(M1-MA-RA*x)))$
print("T1-TA+MA/KB+(MA*x+RA*x^2/2)/EI:",string(factor(T1-TA+MA/KB+(MA*x+RA*x^2/2)/EI)))$
print("V1-VA-(TA-MA/KB)*x-RA/KV+(MA*x^2/2+RA*x^3/6)/EI:",string(factor(V1-VA-(TA-MA/KB)*x-RA/KV+(MA*x^2/2+RA*x^3/6)/EI)))$
print("Q2+RB:",string(factor(Q2+RB)))$
print("M2+MB+RB*(x-L):",string(factor(M2+MB+RB*(x-L))))$
print("T2-TB+MB/KB-(MB*(x-L)+RB*(x-L)^2/2)/EI:",string(factor(T2-TB+MB/KB-(MB*(x-L)+RB*(x-L)^2/2)/EI)))$
print("V2-VB-(TB-MB/KB)*(x-L)-RB/KV-(MB*(x-L)^2/2+RB*(x-L)^3/6)/EI:",string(factor(V2-VB-(TB-MB/KB)*(x-L)-RB/KV-(MB*(x-L)^2/2+RB*(x-L)^3/6)/EI)))$ quit()$
*/

RA: (L*(KB*KV*((2*a-3*L)*a^2-L^2*(3*a-7*L))-20*EI*(KV*L*(a-2*L)-6*KB))*w+120*EI*KB*KV*(2*(VB-VA)-L*(TB+TA))
)/(20*((KB*L+6*EI)*KV*L^2+24*EI*KB))$
RB: L*w/2-RA$
MA:-KB*(L*(KV*L*((3*(KB*L+2*EI)*a-(7*KB*L+24*EI)*L)*a^2+L^2*(3*KB*L+16*EI)*(a+L))+60*EI*(KB*a*(3*L-a)+2*EI*(2*a-L)))*w
+120*EI*(KV*L*(3*(KB*L+2*EI)*(VB-VA)-L*(KB*L*(TB+2*TA)+6*EI*TA))+12*EI*KB*(TB-TA))
)/(60*(KB*L+2*EI)*((KB*L+6*EI)*KV*L^2+24*EI*KB))$
MB:-KB*(L*(KV*L*((3*(KB*L+2*EI)*a-2*(KB*L-3*EI)*L)*a^2-2*L^2*(KB*L+7*EI)*(a+L))+60*EI*(KB*(a-L)*(a+2*L)+2*EI*(2*a-L)))*w
+120*EI*(KV*L*(3*(KB*L+2*EI)*(VB-VA)-L*(KB*L*(2*TB+TA)+6*EI*TB))-12*EI*KB*(TB-TA))
)/(60*(KB*L+2*EI)*((KB*L+6*EI)*KV*L^2+24*EI*KB))$

Q1: RA-w*x^2/(2*a)$
M1: MA+RA*x-w*x^3/(6*a)$
T1: TA-MA/KB-(MA*x+RA*x^2/2)/EI+w*x^4/(24*EI*a)$
V1: VA+(TA-MA/KB)*x+RA/KV-(MA*x^2/2+RA*x^3/6)/EI+w*x^5/(120*EI*a)$
Q2:-RB-w*(x-L)^2/(2*(a-L))$
M2:-MB-RB*(x-L)-w*(x-L)^3/(6*(a-L))$
T2: TB-MB/KB+(MB*(x-L)+RB*(x-L)^2/2)/EI+w*(x-L)^4/(24*EI*(a-L))$
V2: VB+(TB-MB/KB)*(x-L)+RB/KV+(MB*(x-L)^2/2+RB*(x-L)^3/6)/EI+w*(x-L)^5/(120*EI*(a-L))$

p:if a>x then p1 else p2$
Q:if a>x then Q1 else Q2$
M:if a>x then M1 else M2$
T:if a>x then T1 else T2$
V:if a>x then V1 else V2$

KB:1000$
KV:1000*10$
[TA, TB]: [-1,-2]/1000$
[VA, VB]: [-1,-2]/1000$
w:-10$
a:2.0$
[L,B,D,E,G,fs]: [5,0.15,0.30,6.5,6.5/15,1.2]$

EI: E * B * D^3 / 12 * 10^6$ /* kN*m*m */

plot2d([Q,M,T*1000,V*1000,p], [x,0,L], grid2d, [title, "Euler-Bernoulli's beam"],
  [legend,"Q kN","M kNm","T x1/1000 rad","V mm","p kN/m"], 
  [color,red,blue,green,magenta,brown])$

?sleep(10)$
quit()$

 

(計算結果)

  L=5.0m

  KB=1000 kNm/rad

  KV=10000 kN/m

  VA=-1/1000 m

  VB=-2/1000 m

  TA=-1/1000 rad

  TB=-2/1000 rad

  w=-10 kN/m

  a=2.0m

  B x D = 150x300mm

  E65-F225 構造用集成材 すぎ(JAS)

 

両端にばねがあり、そこにたわみとたわみ角を与えたはりの計算式を導入しました。

 

分布荷重 p があるとき、計算式には荷重項が追加されます。

荷重項は

  Q += ∫ p dx

  M += ∫∫ p dx dx

  T -= ∫∫∫ p dx dx dx / EI

  V -= ∫∫∫∫ p dx dx dx dx / EI

となるイメージです。