Vektor-Komponenten
Einleitung: Über Vektoren… und Bezugssysteme
Um die Temperatur eines Teilchens auf einer Linealkante zu beschreiben, braucht man nur eine Zahl mit Einheit \(\mathrm{K}\) (Kelvin).
Um die Geschwindigkeit eines Teilchens auf einer Linealkante zu beschreiben, braucht man nicht nur eine Zahl mit Einheit \(\tfrac{\mathrm{m}}{\mathrm{s}}\) (Meter pro Sekunde). Sondern man muss auch festlegen, in welcher Richtung man die Geschwindigkeit positiv zählt!
Man definiert dazu eine Bezugsrichtung (z.B. die Richtung nach rechts auf der Linealkante). Und dann sagt man z.B.: Die Geschwindigkeit des Teilchens nach rechts ist gleich 2 Meter pro Sekunde..
Jemand, der für sich die Bezugsrichtung nach links festgelegt hat, sagt für dasselbe Teilchen: Die Geschwindigkeit des Teilchens nach links ist gleich minus 2 Meter pro Sekunde..
Dasselbe jetzt in 2D: Um die Geschwindigkeit eines Teilchens auf einem Tisch zu beschreiben, muss man zwei Richtungen festlegen, in man die Geschwindigkeitskomponenten positiv zählt.
Als erste Bezugsrichtung kann man z.B. nach rechts festlegen. Und als zweite Bezugsrichtung nach oben.
Wenn sich ein Teilchen dann von links unten nach rechts oben bewegt, dann gilt für die Komponenten der Teilchen-Geschwindigkeit: Die Komponente nach rechts ist positiv. Und die Komponente nach oben ist auch positiv. Dies gilt aber nur für diese Bezugsrichtungen.
Jemand, der für sich andere Bezugsrichtungen festgelegt hat, würde andere Komponenten messen für dieselbe Teilchen-Geschwindigkeit.
Die Komponenten eines Vektors sind also abhängig vom Bezugssystem. Und wenn man die Komponenten in einem Bezugssystem kennt, kann man daraus die Komponenten desselben Vektors in irgendeinem anderen Bezugssystem ausrechnen.
Man nennt das Passive Transformation von Vektor-Komponenten. Und es ist doch interessant, dass es in der Natur Temperaturen gibt und Geschwindigkeiten… und dass das offenbar ganz unterschiedliche Dinge sind…
Videos
![../../../_images/M.2.F_all.png](../../../_images/M.2.F_all.png)
Passive Transformation (links) und Aktive Transformation (rechts).
Symbole
Winkel |
zählt pos. um |
zeigt Wink.-pos. v. |
relativ zu |
\(\varphi\) |
\(z=\bar z\) |
\((\bar x, \bar y)\) |
\((x, y)\) |
\(\alpha\) |
\(z=\bar z\) |
\(\boldsymbol v'\) |
\(\boldsymbol v\) |
Vektor |
\((x,y)\)-Komp. |
\((\bar x, \bar y)\)-Komp. |
\(\boldsymbol v\) |
\(\left(v_{x}, v_{y} \right)\) |
\(\left( v_{\bar x}, v_{\bar y} \right)\) |
\(\boldsymbol v'\) |
\(\left(v'_{x}, v'_{y} \right)\) |
nicht definiert |
Passive Transformation
Passive Transformation = 2 Bezugssysteme & 1 Vektor
2 Bezugssysteme:
\(\left(x, y\right)\)-System.
\(\left(\bar x, \bar y\right)\)-System ist gedreht relativ zum \((x, y)\)-System um den Winkel \(\varphi.\)
1 Vektor:
Vektor \(\boldsymbol v.\)
Vektor-Komponenten und Transformation:
\(\left(v_{x}, v_{y} \right)\): \(\left(x, y\right)\)-Komponenten des Vektors.
\(\left( v_{\bar x}, v_{\bar y} \right)\): \((\bar x, \bar y)\)-Komponenten des Vektors.
Transformation = Umrechnungs-Formel:
\[\begin{split}\begin{bmatrix} v_{\bar x} \\ v_{\bar y} \end{bmatrix}= \underbrace{ \begin{bmatrix} c_\varphi & s_\varphi \\ -s_\varphi & c_\varphi \end{bmatrix} }_{R_\varphi} \begin{bmatrix} v_x \\ v_y \end{bmatrix}\end{split}\]
Sei wie üblich \(x\) nach rechts und \(y\) nach oben, so dass die pos. Zählrichtung für \(\varphi\) entgegen dem Uhrzeigersinn ist. \((v_x, v_y)=(3, 0)\): Der rote Vektor zeigt nach rechts und hat Länge 3. \(\varphi=90^\circ\): Das blaue System ist relativ zum grünen um \(90^\circ\) entgegen dem Uhrzeigersinn gedreht. Die blaue \(\bar x\)-Achse liegt auf der grünen \(y\)-Achse und zeigt nach oben. Die blaue \(\bar y\)-Achse zeigt nach links.Beispiel 1
Sei wie üblich \(x\) nach rechts und \(y\) nach oben. \((v_x, v_y)=(0, 4)\) \(\varphi=180^\circ\) Die blaue \(\bar x\)-Achse zeigt nach links. Die blaue \(\bar y\)-Achse zeigt nach unten.Beispiel 2
\((v_x, v_y)=(3, 4)\) \(\varphi=10^\circ\)Beispiel 3
Aktive Transformation
Aktive Transformation = 1 Bezugssystem & 2 Vektoren
1 Bezugssystem:
\(\left(x, y\right)\)-System.
2 Vektoren:
Vektor \(\boldsymbol v\).
Vektor \(\boldsymbol v'\) ist gedreht relativ zum Vektor \(\boldsymbol v\) um den Winkel \(\alpha.\)
Vektor-Komponenten und Transformation:
\(\left(v_{x}, v_{y} \right)\): \(\left(x, y\right)\)-Komponenten des Vektors \(\boldsymbol v.\)
\(\left(v'_{x}, v'_{y} \right)\): \((x, y)\)-Komponenten des gedrehten Vektors \(\boldsymbol v'.\)
Transformation = Umrechnungs-Formel:
\[\begin{split}\begin{bmatrix} v'_{x} \\ v'_{y} \end{bmatrix} = \begin{bmatrix} c_\alpha & -s_\alpha \\ s_\alpha & c_\alpha \end{bmatrix} \begin{bmatrix} v_x \\ v_y \end{bmatrix}\end{split}\]
Sei wie üblich \(x\) nach rechts und \(y\) nach oben, so dass die pos. Zählrichtung für \(\alpha\) entgegen dem Uhrzeigersinn ist. \((v_x, v_y)=(0, 4)\) \(\alpha=90^\circ\) Der rote Vektor \(\boldsymbol v\) zeigt nach oben. Der blaue Vektor \(\boldsymbol v'\) ist um \(90^\circ\) entgegen dem Uhrzeigersinn relativ zum roten Vektor gedreht und zeigt darum nach links.Beispiel 1
Sei \(x\) und \(y\) wie üblich. \((v_x, v_y)=(0, 4)\) \(\alpha=-90^\circ\) Der rote Vektor \(\boldsymbol v\) zeigt nach oben. Der blaue Vektor ist um \(\alpha=-90^\circ\) entgegen dem Uhrzeigersinn relativ zum roten Vektor gedreht - also um \(90^\circ\) im Uhrzeigersinn. Er zeigt darum nach rechts.Beispiel 2
Sei \(x\) und \(y\) wie üblich. \((v_x, v_y)=(3, 4)\) \(-\alpha=10^\circ\) bzw. gleichbedeutend \(\alpha=-10^\circ\) Der blaue Vektor ist um \(10^\circ\) im Uhrzeigersinn relativ zum roten Vektor gedreht.Beispiel 3
Passive vs. Aktive Transformation
Gleiche Komponenten, aber andere Bedeutung
Für \(\alpha=-\varphi\) bzw. gleichbedeutend \(\varphi = - \alpha\) gilt:
Eine passive Transformation mit \(\varphi=30^\circ\) führt auf dieselben transformierten Komponenten wie eine aktive Transformation (desselben Vektors) mit \(\alpha = -30^\circ\).
Das Bezugssystem um 30 Grad entgegen dem Uhrzeigersinn zu drehen führt auf dieselben transformierten Komponenten wie den Vektor um 30 Grad im Uhrzeigersinn zu drehen.
Die transformierten Komponenten sind hierbei zahlenmäßig gleich - haben aber verschiedene Bedeutungen.
Web-App
Oben die Komponenten \((v_x, v_y)\) eintragen als einheitenlose Größen. Falls z.B. ein Vektor untersucht werden soll mit den Komponenten \(\left(3\,\tfrac{\mathrm{m}}{\mathrm{s}}, 4 \,\tfrac{\mathrm{m}}{\mathrm{s}}\right)\): Dann würde man oben eintragen: \((v_x, v_y) = (3, 4).\) Unten am Schieberegler den Winkel \(\varphi\) oder \(-\alpha\) (jeweils in Grad) einstellen. Im Diagramm die transformierten Komponenten \((v_{\bar x}, v_{\bar y})\) oder \((v'_x, v'_y)\) ablesen. 360-Grad-Periodizität: Passive und Aktive Transformation sind definiert für jeden beliebigen Winkel \(\varphi\) bzw. \(\alpha\). Es gilt für jedes beliebige \(n\in\mathbb{N}:\) Beispiele:Anleitung
Nachfolgend ein Programm, dass Sie ausführen können: Auf dem PC z.B. mit Anaconda. Im Browser (online) in drei Schritten: Copy: Source Code in die Zwischenablage kopieren. Paste: Source Code als Python-Notebook einfügen z.B. auf: JupyterLite oder JupyterLab oder Play: Ausführen. Statt SymPy lieber anderes CAS (Computeralgebrasystem) verwenden? Eine Auswahl verschiedener CAS gibt es hier.SymPy
from sympy.physics.units import *
from sympy import *
deg = pi/180
# Rounding:
import decimal
from decimal import Decimal as DX
from copy import deepcopy
def iso_round(obj, pv,
rounding=decimal.ROUND_HALF_EVEN):
import sympy
"""
Rounding acc. to DIN EN ISO 80000-1:2013-08
place value = Rundestellenwert
"""
assert pv in set([
# place value # round to:
"1", # round to integer
"0.1", # 1st digit after decimal
"0.01", # 2nd
"0.001", # 3rd
"0.0001", # 4th
"0.00001", # 5th
"0.000001", # 6th
"0.0000001", # 7th
"0.00000001", # 8th
"0.000000001", # 9th
"0.0000000001", # 10th
])
objc = deepcopy(obj)
try:
tmp = DX(str(float(objc)))
objc = tmp.quantize(DX(pv), rounding=rounding)
except:
for i in range(len(objc)):
tmp = DX(str(float(objc[i])))
objc[i] = tmp.quantize(DX(pv), rounding=rounding)
return objc
# ---
# For output only:
vbx, vby = var("vx\u0304, vy\u0304")
vpx, vpy = var("v'x, v'y")
vb = Matrix([vbx, vby])
vp = Matrix([vpx, vpy])
# Output precision:
prec = "0.01"
def print_angle(angle):
pprint("Angle / deg:")
tmp = angle
tmp /= deg
tmp = iso_round(tmp,prec)
pprint(tmp)
def get_R(angle, passive=True):
c, s = cos(angle), sin(angle)
R = Matrix([[c, s],[-s, c]])
if passive == True:
pprint("\nPassive Transformation")
print_angle(angle)
return R
else:
pprint("\nActive Transformation")
print_angle(angle)
return R.transpose()
pprint("\nv:")
v = Matrix([3 ,4])
pprint(v)
phi = 10 * deg
R = get_R(phi, passive=True)
pprint(vb)
tmp = R*v
tmp = iso_round(tmp,prec)
pprint(tmp)
alpha = 20 * deg
R = get_R(alpha, passive=False)
pprint(vp)
tmp = R*v
tmp = iso_round(tmp,prec)
pprint(tmp)
v:
⎡3⎤
⎢ ⎥
⎣4⎦
Passive Transformation
Angle / deg:
10.00
⎡vx̄⎤
⎢ ⎥
⎣vȳ⎦
⎡3.65⎤
⎢ ⎥
⎣3.42⎦
Active Transformation
Angle / deg:
20.00
⎡v'x⎤
⎢ ⎥
⎣v'y⎦
⎡1.45⎤
⎢ ⎥
⎣4.78⎦
3D Elementar-Drehungen
Es geht um Drehungen in 3D für den Spezialfall, dass um eine der 3 Achsen des Bezugssystems gedreht wird.
Viele Drehungen in der Technik lassen sich durch solche Drehungen oder die Hintereinanderschaltung solcher Drehungen beschreiben.
Weitere Infos zur Beschreibung von Drehungen siehe hier.
Weitere Infos zu Drehmatrizen siehe Wikipedia.
Drehachse \(z = \bar z\)
![../../../_images/trafo_vector_3D_z.png](../../../_images/trafo_vector_3D_z.png)
Drehachse \(x = \bar x\)
![../../../_images/trafo_vector_3D_x.png](../../../_images/trafo_vector_3D_x.png)
Zyklisches Vertauschen \((x,y,z)\mapsto(y, z, x)\) in (z) liefert:Details
Drehachse \(y = \bar y\)
![../../../_images/trafo_vector_3D_y.png](../../../_images/trafo_vector_3D_y.png)
Zyklisches Vertauschen \((x,y,z)\mapsto(z, x, y)\) in (z) liefert:Details
Inverse Matrix
In den o.g. Beispielen sind die grünen Komponenten gegeben. Und die blauen Komponenten werden berechnet. Beispiel:
Wenn die blauen Komponenten gegeben sind und die grünen daraus berechnet werden, muss diese Gleichung von links mit \(R_\varphi^{-1}\) (nämlich mit der Inversen von \(R_\varphi\)) multipliziert werden:
Bei Drehmatrizen ist die Inverse gleich der Transponierten, so dass:
Vertauschen der Seiten und Einsetzen der Transponierten liefert:
Vektor-Komponente
Eine Vektor-Komponente ist der Anteil eines Vektors in einer bestimmten Richtung.
Diese Richtung wird definiert mit einem Einheitsvektor (entlang dieser Richtung).
Um eine Vektor-Komponenten zu berechnen, braucht man:
ein Bezugssystem, z.B. das \((x,y,z)\)-System.
die Komponenten des Vektors (bezüglich Bezugssytem): \(v_x, v_y, v_z\).
die Komponenten des Einheitsvektors (bezüglich Bezugssystem).
\(x\)-Komponente
Sei die Richtung die \(x\)-Achse des Bezugssystems mit den \((x,y,z)\)-Komponenten \((1, 0, 0)\). Dann gilt für die Vektor-Komponente \(v_x\) in dieser Richtung:
\[\begin{split}v_x &= \begin{bmatrix}1 & 0 & 0 \end{bmatrix} \begin{bmatrix} v_x \\ v_y \\ v_z \end{bmatrix} \\ &= 1 v_x + 0 v_y + 0 v_z\end{split}\]
\(y\)-Komponente
Sei die Richtung die \(y\)-Achse des Bezugssystems mit den \((x,y,z)\)-Komponenten \((0, 1, 0)\). Dann gilt für die Vektor-Komponente \(v_y\) in dieser Richtung:
\(\bar x\)-Komponente
Sei die Richtung die \(\bar x\)-Richtung. Weil \(\bar x\) um den Winkel \(\varphi\) relativ zu \(x\) gedreht ist, hat ein Einheitsvektor in \(\bar x\)-Richtung die \((x,y,z)\)-Komponenten \((c_\varphi, s_\varphi, 0)\). Und für die Vektor-Komponente \(v_{\bar x}\) in dieser Richtung gilt:
\(\bar y\)-Komponente
Sei die Richtung die \(\bar y\)-Richtung. Weil \(\bar y\) um den Winkel \(\varphi\) relativ zu \(y\) gedreht ist, hat ein Einheitsvektor in \(\bar y\)-Richtung die \((x,y,z)\)-Komponenten \((-s_\varphi, c_\varphi, 0)\). Und für die Vektor-Komponente \(v_{\bar y}\) in dieser Richtung gilt:
Die zuletzt gezeigten Beispiele zur Berechnung der Komponenten in \(\bar x\)-Richtung und in \(\bar y\)-Richtung werden auch in der Passiven Transformation verwendet. Die Berechnung der Komponente wird hier mit dem Produkt aus zwei Matrizen dargestellt. Alternativ dazu könnte man das Skalarprodukt verwenden. Anschaulich ist die Komponente der Anteil in dieser Richtung - bzw. die Projektion des Vektors auf die Richtung. In welchem Bezugssystem die Komponente berechnet wird, beeinflusst das Ergebnis nicht.Details