In [1]:
import pint
from math import pi
In [2]:
u = pint.UnitRegistry()
In [3]:
P = 13*u.kN
In [4]:
Fy = (-300/325)*P
Fz = (-125/325)*P
In [5]:
Fy
Out[5]:
In [6]:
Fz
Out[6]:
In [7]:
Mx = 0.2*u.m*Fz
My = 0.15*u.m*Fz
Mz = 0.15*u.m*Fy
In [8]:
Mx
Out[8]:
In [9]:
My
Out[9]:
In [10]:
Mz
Out[10]:
In [11]:
d = 50*u.mm
c = 0.5*d
A = pi*c**2
In [12]:
c
Out[12]:
In [13]:
A
Out[13]:
In [14]:
I = (pi/4)*c**4
In [15]:
I
Out[15]:
In [16]:
I.to(u.m**4)
Out[16]:
In [17]:
I
Out[17]:
In [18]:
J = 2*I
In [19]:
J
Out[19]:
In [20]:
J.to(u.m**4)
Out[20]:
In [21]:
A
Out[21]:
In [22]:
A.to(u.m**2)
Out[22]:
In [23]:
Q = (2/3)*c**3
In [24]:
Q
Out[24]:
In [25]:
Q.to(u.m**3)
Out[25]:
In [26]:
s_n = Fy/A
s_n
Out[26]:
In [27]:
s_b = Mz*c/I
s_b
Out[27]:
In [28]:
s_h = s_n + s_b
In [29]:
s_h
Out[29]:
In [30]:
s_h.ito(u.N/u.mm**2)
s_h
Out[30]:
In [31]:
t = 50*u.mm
t_h = ((My*c)/J) + (Fz*Q)/(I*t)
In [32]:
t_h
Out[32]:
In [33]:
t_h.ito(u.N/u.mm**2)
t_h
Out[33]:
In [34]:
s_ave = s_h/2
In [35]:
s_ave
Out[35]:
In [36]:
from math import sqrt
In [37]:
R = sqrt( (s_h.m/2 )**2 + (t_h.m )**2 )*(u.N/u.mm**2)
R
Out[37]:
In [38]:
s_max = s_ave + R
s_min = s_ave - R
t_max = R
In [39]:
s_max
Out[39]:
In [40]:
s_min
Out[40]:
In [41]:
print('s_m = {:P}'.format(s_h))
print('t_m = {:P}'.format(t_h))
print('s_max = {:P}'.format(s_max))
print('s_mim = {:P}'.format(s_min))
print('t_max = {:P}'.format(t_max))
In [ ]: