「(2022)令和6年二級建築士試験学科Ⅲ(建築構造)〔No.5〕」sympyのTrussでやってみた。
Qiita_建築士
https://qiita.com/mrrclb48z/items/893cb0967e4ddb2945f7
公式ホームページ
(2022)令和4年二級試験問題〔No.5〕と正答肢
・PDFページ下
https://www.jaeic.or.jp/shiken/2k/2k-mondai.files/2k-2022-1st-gakka3_4.pdf#page=5
https://www.jaeic.or.jp/shiken/2k/2k-mondai.files/2k-2022-1st-gokakukijun-r1.pdf
オリジナル
・Youtube 検索中
sympyで
・勉強中
sympyのTrussで
# ver0.1
from sympy.physics.continuum_mechanics.truss import Truss
import math
from sympy import *
P=10 # var('P')
t = Truss()
t.add_node (( "3",0.0,4.0))
t.add_node (( "C",0.0,3.0),("D",0.5,3.0))
t.add_node (( "1",0.0,2.0),("2",1.0,2.0))
t.add_node (( "A",0.0,0.0),("B",2.0,0.0))
#
t.add_member (("3C","3","C"),("3D","3","D"))
t.add_member (("CD","C","D"))
t.add_member (("C1","C","1"),("D1","D","1"),("D2","D","2"))
t.add_member (("12","1","2"))
t.add_member (("1A","1","A"),("2A","2","A"),("2B","2","B"))
t.add_member (("AB","A","B"))
t.apply_support(("A" ,"roller"),("B","pinned"))
t.apply_load (("3",P,0.0))
p = t.draw()
p.show()
#
t.solve()
print("#",t.reaction_loads['R_B_y'] )
print("#",t.internal_forces["AB"],t.internal_forces["CD"])
# 20.0000000000000
# 0 0
# 解 1
いつもの? sympyの実行環境と 参考のおすすめです。
[(テンプレート)]
(https://qiita.com/mrrclb48z/items/00dd08b0317069be9342)