1.4.2.A
Gegeben
Symbole:
Größen:
a) Resultierende
Berechnen Sie die Resultierenden \(R_1, R_2, R_3\) der verteilten Kräfte \(q_1, q_2, q_3\). Und zwar zuerst für die gegebenen Symbole und dann für die gegebenen Größen.
Zeigen Sie, dass:
Lösung
b) Wirkungslinien der verteilten Kräfte
Zeigen Sie, dass die Wirkungslinien sind bei:
Lösung
c) Wirkungslinie der Resultierenden
Berechnen Sie die Position \(h\) der Wirkungslinie von:
Zeigen Sie, dass:
Source Code eines Programms dazu: Programm ausführen? Dazu: Copy: Source Code in die Zwischenablage kopieren. Paste: Source Code ins Eingabefeld hinter Play: Knopf SymPy
from sympy.physics.units import kg, m, s
from sympy import pi, S, pprint, symbols, cos, sin, Matrix, integrate
# Units:
N = kg*m/s**2
k, M, G = 10**3, 10**6, 10**9
kN = k*N
Pa = N/m**2
MPa, GPa = M*Pa, G*Pa
deg = pi/180
half = S(1)/2
# Rounding:
def iso_round(x, pv):
try:
x = float(x)
tmp = round(x, pv)
except TypeError:
x = x.evalf()
from functools import partial
func = partial(round, ndigits = pv)
tmp = x.applyfunc(func)
return tmp
# Printing:
def printout(x, unit=1, prec="nil", sub_list=[]):
x = x.subs(sub_list)
x /= unit
try:
x = x.applyfunc(simplify)
except:
tmp = x.simplify()
if tmp != None:
x = tmp
if prec != "nil":
x = iso_round(x, prec)
pprint(x)
return
# ---
a, q1, q2, q3 = symbols("a, q1, q2, q3")
sub_list=[
(a, 6*m),
(q1, 6 *N/m),
(q2, 9 *N/m),
(q3, 3 *N/m),
]
x = symbols("x")
R1 = integrate(q1, (x, 0, a/4))
R2 = integrate(q2, (x, a/4, 3*a/4))
R3 = integrate(q3, (x, 3*a/4, a))
pprint("\nR1, R2, R3:")
for R in [R1, R2, R3]:
pprint(R)
pprint("\nR1, R2, R3 / N:")
for R in [R1, R2, R3]:
printout(R, unit=N, prec="nil", sub_list=sub_list)
pprint("\nh1, h2, h3:")
h1 = integrate(q1*x, (x, 0, a/4))/R1
h2 = integrate(q2*x, (x, a/4, 3*a/4))/R2
h3 = integrate(q3*x, (x, 3*a/4, a))/R3
for h in [h1, h2, h3]:
pprint(h)
pprint("\nh1, h2, h3 / m:")
for h in [h1, h2, h3]:
printout(h, unit=m, prec="nil", sub_list=sub_list)
pprint("\nR:")
R = R1 + R2 + R3
pprint(R)
pprint("\nR / N:")
printout(R, unit=N, prec="nil", sub_list=sub_list)
pprint("\nh:")
h = (h1*R1 + h2*R2 + h3*R3) / R
printout(h, unit=1, prec="nil", sub_list=[])
pprint("\nh / m:")
printout(h, unit=m, prec="nil", sub_list=sub_list)
[ ]: einfügen.▶ drücken.