LoginSignup
0
0

Mohr's stress circle 組み合わせ応力 発展例題5.06 P133「材料力学演習(20221021)」をsympyでやってみたい。

Last updated at Posted at 2023-05-10

申し訳ありません。意味がわかっていません。勉強中。
短くなる方法を教えて下さい。

オリジナル

発展例題5.06 P133
http://zairikiweb.starfree.jp/zai_enshuh/zai_enshuh_ver.3.3.pdf#page=138

「材料力学演習(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

sympyで

TR5,TR7,cos(2t)→cos2t→cos(2t)の置き換えをやっています。(参照より)

from sympy import *
from sympy.simplify.fu import TR5
from sympy.simplify.fu import TR7
sg     =symbols('sg'     ,real=True)
sgx,sgy=symbols('sgx,sgy',real=True)
t      =symbols('t'      ,real=True)
tau    =symbols('tau'    ,real=True)
tauxy  =symbols('tauxy'  ,real=True)
ds     =symbols('ds'     ,real=True)
dx,dy  =symbols('dx,dy'  ,real=True)
cos2t  =symbols('cos2t'  ,real=True)
myXhoko=Eq(sg*ds*cos(t)-tau*ds*sin(t),sgx*dy+tauxy*dx)
myYhoko=Eq(sg*ds*sin(t)+tau*ds*cos(t),sgy*dx+tauxy*dy)
mySubs1={ds*sin(t):dx,ds*cos(t):dy}
mySubs2={dx:ds*sin(t),dy:ds*cos(t)}
myXhoko=myXhoko.subs(mySubs1).subs(mySubs2)
myYhoko=myYhoko.subs(mySubs1).subs(mySubs2)
ans=solve([myXhoko,myYhoko],[sg,tau])
print("#sg =",Poly(TR7(TR5(ans[sg])).subs({cos(2*t):cos2t}),cos2t).args[0] .subs({cos2t:cos(2*t)}))
print("#tau=",ans[tau].simplify())
#sg = sgx/2 + sgy/2 + 2*tauxy*sin(t)*cos(t) + (sgx/2 - sgy/2)*cos(2*t)
#tau= -sgx*sin(2*t)/2 + sgy*sin(2*t)/2 + tauxy*cos(2*t)

Mathematicaで

勉強中

作図

勉強中

いつもの? sympyの実行環境と 参考のおすすめです。

(テンプレート)

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

TR5() - powers of sin to powers of cos

TR7() - reduce cos power (increase angle)

参考文献

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

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0