1.3.F
Gegeben
Symbole:
Größen:
Berechnen Sie das Moment um A - erzeugt von der Kraft \(\boldsymbol F\) bei P. Gehen Sie wie folgt vor:
a) Vektor von A nach P
Sei \(\boldsymbol r\) der Vektor von Bezugspunkt A nach P. Berechnen Sie die \((x,y,z)\)-Komponenten von \(\boldsymbol r\) für die gegebenen Größen:
Lösung
b) Momentvektor
Berechnen Sie die \((x,y,z)\)-Komponenten des Momentvektors \(\boldsymbol M_A\) bezüglich A - erzeugt durch die Kraft \(\boldsymbol F\) für die gegebenen Größen. Zeigen Sie, dass:
Lösung
c) Einheitsvektor
Berechnen Sie die \((x,y,z)\)-Komponenten des Einheitsvektors \(\boldsymbol d\) für die gegebenen Größen.
Vektor von A nach Q: Einheitsvektor in dieser Richtung: Für die gegebenen Größen:Lösung
d) Moment um eine Achse
Jede Komponente des Momentvektors \(\boldsymbol M_A\) beschreibt den Anteil des Vektors in eine bestimmte Richtung bzw. um eine bestimmte Achse:
\(M_{Ax}\) ist der Anteil in \(x\)-Richtung - also das Moment um eine Parallele zur \(x\)-Achse durch A.
\(M_{Ay}\) ist der Anteil in \(y\)-Richtung - also das Moment um eine Parallele zur \(y\)-Achse durch A.
\(M_{Az}\) ist der Anteil in \(z\)-Richtung - also das Moment um eine Parallele zur \(z\)-Achse durch A.
Berechnen Sie \(M_{Ad}\), den Anteil von \(\boldsymbol M_A\) in \(d\)-Richtung - also das Moment um eine Parallele zur \(d\)-Achse in A. Zeigen Sie, dass:
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
# 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, b, c = symbols("a, b, c", positive=True)
Fx, Fy, Fz = symbols("Fx, Fy, Fz")
prec = 2
sub_list=[
(a, 3*m/10),
(b, 4*m/10),
(c, 2*m/10),
(Fx,3*N),
(Fy,-2*N),
(Fz, 3*N/2),
]
pprint("\n(rx, ry, rz):")
r = Matrix([a,b,-c])
printout(r, unit=1, prec="nil", sub_list=[])
pprint("\n(rx, ry, rz) / m:")
printout(r, unit=m, prec="nil", sub_list=sub_list)
pprint("\n(MAx, MAy, MAz):")
F = Matrix([Fx,Fy,Fz])
MA = r.cross(F)
printout(MA, unit=1, prec="nil", sub_list=[])
pprint("\n(MAx, MAy, MAz) / (Nm):")
printout(MA, unit=N*m, prec="nil", sub_list=sub_list)
pprint("\nUnit vector d:")
dAQ = Matrix([a,b,0])
d = dAQ/dAQ.norm()
printout(d, unit=1, prec="nil", sub_list=[])
pprint("\nd:")
printout(d, unit=1, prec="nil", sub_list=sub_list)
pprint("\nMAd:")
MAd = MA.dot(d)
printout(MAd, unit=1, prec="nil", sub_list=[])
pprint("\nMAd / (Nm):")
printout(MAd, unit=N*m, prec=prec, sub_list=sub_list)
[ ]: einfügen.▶ drücken.