!オンサイト木橋の3点曲げ時の鋼板の局部座屈をオイラー座屈から推定する
implicit none
!#--入力
real(8) :: em=7.694d3  ! MPa :木材のヤング率
!real(8) :: em=7.0d3  ! MPa :木材のヤング率
real(8) :: ek=206.d3   ! MPa :鋼材のヤング率
real(8) :: bm=840.d0   !  mm :木材の幅
!real(8) :: bm=960.d0   !  mm :木材の幅
real(8) :: hm=120.d0   !  mm :角材の高さ
real(8) :: tk=9.d0     !  mm :鋼板の厚さ
real(8) :: hk1=500.d0  !  mm :鋼板全体の高さ
!real(8) :: hk1=800.d0  !  mm :鋼板全体の高さ
real(8) :: hk2=163.d0  !  mm :鋼板孔無し部分の高さ
!real(8) :: hk2=239.d0  !  mm :鋼板孔無し部分の高さ
real(8) :: bk=95.d0    !  mm :鋼の鉛直材の幅
real(8) :: ell=7.d3    !  mm :スパン
!real(8) :: ell=16.490d3    !  mm :スパン
real(8) :: ellk=630.d0 !  mm :真ん中の鋼板の長さ
!---
real(8) :: im,ik1,ika,ik2,izen,izena,pcrj,pj,ik3,elle,pcre,pe
real(8) :: elle2,ik22,pcrj2,pj2,pcre2,pe2
real(8) :: pi=asin(1.d0)*2.d0
!---計算
elle=hk1-2.d0*hk2 !鋼板鉛直材の長さ
!elle2=hk1-2.d0*hm !鋼板鉛直材の長さ2
elle2=hk1-2.d0*(hm-10.d0) !鋼板鉛直材の長さ2
ik1=tk*hk1**3/12 !孔無し鋼板の断面2次モーメント
ika=tk*(hk1**3-elle**3)/12 !孔空き鋼板の断面2次モーメント
ik2=hk2*tk**3/12 !鋼板上部孔無し部分の弱軸周りの断面2次モーメント
ik22=hm*tk**3/12 !鋼板上部孔無し部分の弱軸周りの断面2次モーメント2
im=bm*(hk1**3-(hk1-hm*2.d0)**3)/12 !木材の断面2次モーメント
izen=ik1*2.d0+im*em/ek !孔無し断面の全体の断面2次モーメント
izena=ika*2.d0+im*em/ek !孔空き断面の全体の断面2次モーメント
pcrj=4.d0*pi**2/(ellk**2)*ek*ik2 !鋼板上部のオイラー座屈荷重
pcrj2=4.d0*pi**2/(ellk**2)*ek*ik22 !鋼板上部のオイラー座屈荷重2
pj=8.d0*pcrj*izena/(ell*(hk1-hk2)*hk2*tk) !このときの全体の荷重
pj2=8.d0*pcrj2*izena/(ell*(hk1-hm)*hm*tk) !このときの全体の荷重2
ik3=bk*tk**3/12 !鋼板鉛直材の弱軸周りの断面2次モーメント
pcre=4.d0*pi**2/(elle**2)*ek*ik3 !鋼板鉛直材のオイラー座屈荷重
pcre2=4.d0*pi**2/(elle2**2)*ek*ik3 !鋼板鉛直材のオイラー座屈荷重2
pe=pcre*4.d0 !このときの全体の荷重
pe2=pcre2*4.d0 !このときの全体の荷重2
!---出力
print'(A)',"1.鋼板中央上部の弱軸周りのオイラー座屈の荷重は、諸元を"
print'(A,f9.3,A)'," b  =",tk," mm ,"
print'(A,f9.3,A)'," h  =",hk2," mm , "
print'(A,f9.3,A)',"ell =",ellk," mm ,"
print'(A)',"とし、アンカープレートの位置で両端固定とみなしたとき、"
print'(A,f9.3,A)',"Pcr =",pcrj*1.d-3," kN ."
print'(A)',"----------------------------------------------------------------------------"
print'(A)',"また、中央断面での軸方向応力分布の台形部分が圧縮力として作用したと考えると、"
print'(A)',"このときの全体の荷重は、"
print'(A,f9.3,A)'," P  =",pj*1.d-3," kN ."
print'(A)',"============================================================================"
print'(A)',"2.鋼板中央上部の弱軸周りのオイラー座屈の荷重は、諸元を"
print'(A,f9.3,A)'," b  =",tk," mm ,"
print'(A,f9.3,A)'," h  =",hm," mm , "
print'(A,f9.3,A)',"ell =",ellk," mm ,"
print'(A)',"とし、アンカープレートの位置で両端固定とみなしたとき、"
print'(A,f9.3,A)',"Pcr =",pcrj2*1.d-3," kN ."
print'(A)',"----------------------------------------------------------------------------"
print'(A)',"また、中央断面での軸方向応力分布の台形部分が圧縮力として作用したと考えると、"
print'(A)',"このときの全体の荷重は、"
print'(A,f9.3,A)'," P  =",pj2*1.d-3," kN ."
print'(A)',"============================================================================"
print'(A)',"3.鋼板鉛直材の弱軸周りのオイラー座屈の荷重は、諸元を"
print'(A,f9.3,A)'," b  =",tk," mm ,"
print'(A,f9.3,A)'," h  =",bk," mm , "
print'(A,f9.3,A)',"ell =",elle," mm ,"
print'(A)',"とし、孔が無くなった位置で両端固定とみなしたとき、"
print'(A,f9.3,A)',"Pcr =",pcre*1.d-3," kN ."
print'(A)',"----------------------------------------------------------------------------"
print'(A)',"また、梁の断面に働くせん断力が圧縮力として作用したと考えると、"
print'(A)',"このときの全体の荷重は、"
print'(A,f9.3,A)'," P  =",pe*1.d-3," kN ."
print'(A)',"============================================================================"
print'(A)',"4.鋼板鉛直材の弱軸周りのオイラー座屈の荷重は、諸元を"
print'(A,f9.3,A)'," b  =",tk," mm ,"
print'(A,f9.3,A)'," h  =",bk," mm , "
print'(A,f9.3,A)',"ell =",elle2," mm ,"
print'(A)',"とし、孔が無くなった位置で両端固定とみなしたとき、"
print'(A,f9.3,A)',"Pcr =",pcre2*1.d-3," kN ."
print'(A)',"----------------------------------------------------------------------------"
print'(A)',"また、梁の断面に働くせん断力が圧縮力として作用したと考えると、"
print'(A)',"このときの全体の荷重は、"
print'(A,f9.3,A)'," P  =",pe2*1.d-3," kN ."
print'(A)',"============================================================================"
print'(A)',"（おまけ）"
print'(A)',"荷重100kN載荷時の初等梁理論による梁中央部のたわみは、"
print'(A,f9.3,A)'," v  =",100.d3*ell**3/(48.d0*ek*izen)," mm ."
end
