from sympy import *
from sympy.physics.units import *
from sympy import N as Num
symbolic = True
if symbolic:
F = var("F")
a, b = var("a, b")
t = var("t")
else:
F = 1000 * newton
a, b = 3*m, 2*m
t = 1*cm
print("\n--- zS: -------------------------------")
(A1, A2, A3) = (2*t*t, 2*t*t, 4*t*t)
(z1, z2, z3) = (2*t, 2*t, t/2)
zS = z1*A1 + z2*A2 + z3*A3
A = A1 + A2 + A3
zS /= A
print("\n--- Iy: -------------------------------")
Iy1 = t * (2*t)**3 / 12
Iy2 = Iy1
Iy3 = 4*t * t**3 / 12
Iy = Iy1 + (z1-zS)**2*A1
Iy += Iy2 + (z2-zS)**2*A2
Iy += Iy3 + (z3-zS)**2*A3
pprint("\nIy:")
pprint(Iy)
print("\n--- Q,M,N: ---------------------------")
M = b*F
Nx = -F
sig_N = Nx / A
pprint("\nsig_N:")
pprint(sig_N)
z = 7*t/4
sig_M = M/Iy * z
pprint("\nsig_M:")
pprint(sig_M)
sig = sig_N + sig_M
pprint("\nsig:")
pprint(sig)
print("\n---- sig and tau: --------------------")
Q = - b/a * F
zR = 7*t/8
AR = 7*t/4 * t
SyR = zR*AR
s = var("s")
f = (7*t/4 - s)*t
SyR_f = integrate(f, (s, 0, 7*t/4))
SyR_f = integrate(f, s)
tau = - Q*SyR/Iy/t
tau = tau.simplify()
pprint("\ntau:")
pprint(tau)
if not (symbolic):
pprint("\nsig / MPa:")
sigMPa = sig/mega/pascal
pprint(Num(sigMPa,3))
pprint("\ntau / MPa:")
tauMPa = tau/mega/pascal
pprint(Num(tauMPa,3))
--- zS: -------------------------------
--- Iy: -------------------------------
Iy:
4
37*t
-----
6
--- Q,M,N: ---------------------------
sig_N:
-F
----
2
8*t
sig_M:
21*F*b
------
3
74*t
sig:
21*F*b F
------ - ----
3 2
74*t 8*t
---- sig and tau: --------------------
tau:
147*F*b
--------
2
592*a*t