2.5.A
Gegeben
Symbole:
Torsionsträgheitsmoment für Stab mit kreisförmigem Vollquerschnitt:
Größen:
Werte für Antriebswelle eines BMW 5er Touring
Annahme: Gesamtes Motor-Moment wird auf einem Rad auf den Boden übertragen
a) Verdrehwinkel am rechten Rand
Für die gegebenen Größen: Berechnen Sie den Verdrehwinkel am rechten Rand. Zeigen Sie, dass:
Durch Integration der Differentialgleichung folgt die allgemeine Lösung: Wegen der Randbedingung \(\varphi (0)=0\) ist \(C=0\). Und damit ist die spezielle Lösung: Einsetzen von \(I_T=\tfrac \pi 2 r^4\) liefert die Behauptung.Lösung
b) Verdrehwinkel in der Mitte
Für die gegebenen Größen: Berechnen Sie den Verdrehwinkel in der Mitte. Zeigen Sie, dass:
In der Mitte ist: Dies liefert die Behauptung.Lösung
c) Maximale Schubspannung
Für die gegebenen Größen: Berechnen Sie die maximale Schubspannung \(\tau_{\mathsf{max}}\). Zeigen Sie, dass:
Maximale Spannung am Rand des Querschnitts: Einsetzen der Größen liefert die Behauptung.Lösung
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, Eq, solve, sqrt, exp, simplify
# 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
cm = m/100
mm = m/1000
Nm = N*m
# 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
# ---
MT, G, l, r = symbols("MT, G, l, r")
sub_list = [
( MT, 400 *Nm ),
( G, 80 *GPa ),
( l, 350 *mm ),
( r, 15 *mm ),
]
r3 = r*r*r
r4 = r3*r
I = pi/2*r4
pprint("\nφ(l) / deg:")
p = MT / (G*I) *l
printout(p, unit=deg, prec=1, sub_list=sub_list)
pprint("\nφ(½l) / deg:")
printout(p/2, unit=deg, prec=1, sub_list=sub_list)
pprint("\nτ max / MPa:")
printout(MT / I *r, unit=MPa, prec=1, sub_list=sub_list)
[ ]: einfügen.▶ drücken.