simple beam,a downward point load 2 はりの応力とSFD，BMD 基本例題4.18 P97 「材料力学演習(20221021)」をsympyでやってみたい。 

#### ・申し訳ありません。sympyのBeamができていません。数をこなして戻ってきます。 
・SLOPE と BMDがでました。他

:::note info
[問題8A) P124 simple beam,a downward point load 3
]()
:::

# オリジナル
[基本例題4.18 p97](http://zairikiweb.starfree.jp/zai_enshuh/zai_enshuh_ver.3.3.pdf#page=102)＜[「材料力学演習(20221021)一括(ver.3.3)」を勉強したい。#sympy](https://qiita.com/mrrclb48z/items/c3274daf5f7a99cfe027#%E4%BD%9C%E6%A5%AD%E4%B8%AD%E7%A7%81%E3%81%AE%E8%A7%A3%E7%AD%94sympy)
　　　　　　　　　　？？？タブレット等で、pdfを開く事ができないかも。？？？　

# sympyで。微分で(オリジナル 様の方法です。)
・ver0.1 基本例題4.18 P97
```python
# ver0.1 基本例題4.18 P97
from sympy import *
from decimal import Decimal, ROUND_HALF_UP
var('FAC,x,a,b,c,MAC,FCB,P,MCB,l,RB',real=True)
var('P1,P2'                         ,real=True)
RA = Symbol('RA')
def myRound1(x, d=1):
    p = Decimal(str(x)).quantize(Decimal(str(1/10**d)), rounding=ROUND_HALF_UP)
    p = float(p)
    return p
MAC=RA*x                     ;print("# MAC =",MAC)
MCD=RA*x-P1*(x-a)            ;print("# MCB =",MCB)
MDB=RA*x-P1*(x-a)-P2*(x-a-b) ;print("# MDB =",MDB)
FAC=diff(MAC,x)              ;print("# FAC  =",FAC)   
FCD=diff(MCD,x)              ;print("# FCD  =",FCD)
FDB=diff(MDB,x)                             ;print("# FDB  =",FDB)
RA =solve(Eq(MDB.subs({x:a+b+c}),0),RA)[0]  ;print("# RA   =",RA)
print()
rep={a:0.2,b:0.5,c:0.3,P1:200,P2:400}
print("# RA   =",myRound1(RA.subs(rep)))
# MAC = RA*x
# MCB = MCB
# MDB = -P1*(-a + x) - P2*(-a - b + x) + RA*x
# FAC  = RA
# FCD  = -P1 + RA
# FDB  = -P1 - P2 + RA
# RA   = (P1*b + P1*c + P2*c)/(a + b + c)

# RA   = 280.0
```

# sympyのBeamで
・ver0.2  基本例題4.18 P97
**??? 以下はエラーです。**
**(1)SFDで、...ValueError: value of A was not passed.**
**(2)計算と作図が、同時にできませんでした。?b2にしてもだめでした。**

```python
# ver0.2 基本例題4.18 P97
# ??? 以下はエラーです。
from sympy import *
from decimal import Decimal, ROUND_HALF_UP
from sympy.physics.continuum_mechanics.beam import Beam
from sympy import symbols
E,I,P=symbols('E,I,P')
R1,M1=symbols('R1,M1')
R2,M2=symbols('R2,M2')
var('  P1,  P2,  la,  lb,  lc')
var('myP1,myP2,myla,mylb,mylc')
def myRound1(x, d=1):
    p = Decimal(str(x)).quantize(Decimal(str(1/10**d)), rounding=ROUND_HALF_UP)
    p = float(p)
    return p
def myBeam_Tanjun_P1P2_reaction_loads(l,E,I,P1,P2,la,lb):
    b=Beam(l,E,I)
    b.apply_load(R1,0    ,-1)
    b.apply_load(R2,l    ,-1)
    b.apply_load(P1,la   ,-1) 
    b.apply_load(P2,la+lb,-1) 
    b.solve_for_reaction_loads(R1,R2)
    R1R2=b.reaction_loads
    return R1R2[R1],R1R2[R2]
def myBeam_Tanjun_P1P2_Sakuzu        (l,E,I,P1,P2,la,lb):
    b2=Beam(l,E,I)
    b2.apply_load(R1,0    ,-1)
    b2.apply_load(R2,l    ,-1)
    b2.apply_load(P1,la   ,-1) 
    b2.apply_load(P2,la+lb,-1) 
    b2.solve_for_reaction_loads(R1,R2)
    b2.bc_deflection = [(0, 0), (l, 0)]
    b2.plot_slope()
    b2.plot_bending_moment()
    b2.plot_shear_stress()
    return 0
# --------------------------------------------------------------------------------------------------------------------
# R1,R2=myBeam_Tanjun_P1P2_reaction_loads(myla+mylb+mylc,E,I,myP1,myP2,myla,mylb)
# myla,mylb,mylc=0.2,0.5,0.3
# R1,R2=myBeam_Tanjun_P1P2_reaction_loads(myla+mylb+mylc,E,I,myP1,myP2,myla,mylb)
# myP1,myP2,myla,mylb,mylc=200,400,0.2,0.5,0.3
# R1,R2=myBeam_Tanjun_P1P2_reaction_loads(myla+mylb+mylc,E,I,myP1,myP2,myla,mylb);print  ("#",myRound1(R1),myRound1(R2))
# --------------------------------------------------------------------------------------------------------------------
# myBeam_Tanjun_P1P2_Sakuzu              (myla+mylb+mylc,E,I,myP1,myP2,myla,mylb)
E,I,myP1,myP2,myla,mylb,mylc=200*(10**9),400*(10**6),200,400,0.2,0.5,0.3
myBeam_Tanjun_P1P2_Sakuzu              (myla+mylb+mylc,E,I,myP1,myP2,myla,mylb)
```
![111.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109698/ee0d664f-1156-debc-537a-f494881c3f7e.png)
![222.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109698/73235774-6aa9-3ed7-9731-16435f946679.png)

???　SFD

# (勉強中) Mathematicaで

# (勉強中) MATLAB 追加のオプションSymbolic Math Toolbox で

# いつもの? sympyの実行環境と 参考のおすすめです。
[(テンプレート)](https://qiita.com/mrrclb48z/items/00dd08b0317069be9342)

# いつもと違うおすすめです。

https://docs.sympy.org/latest/modules/physics/continuum_mechanics/beam.html

https://docs.sympy.org/latest/modules/physics/continuum_mechanics/beam_problems.html

#### 参考文献

~~＞一部に等分布荷重を受ける単純支持はり~~
~~＞JSME p89~~
　
~~＞片持ちばり 1)~~
~~＞構造力学公式集 表5.1 片持ちばりの公式　p128~~

- 村上敬宜. (2023). *材料力学* (新装版). 森北出版.　
例題5.2 p79