Tags: Video

M.2.A

Video

Gegeben

../../../_images/M.2.A.png

\((x,y)\)-Bezugssystem und zwei Zahlen (entweder \(v_x\) und \(v_y\) oder \(v\) und \(\varphi\)) zur Beschreibung eines Vektors.

Gegeben:

\[\begin{split}\begin{bmatrix} v_x \\ v_y \end{bmatrix} &= \begin{bmatrix} 3 \\ 4 \end{bmatrix}\end{split}\]

a) Betrag

Berechnen Sie die den Betrag \(v\) des Vektors.

Lösung

\[\begin{split}v &= \lVert \boldsymbol v \rVert \\ &= \sqrt{3^2 + 4^2} \\ &= 5\end{split}\]

b) Winkelposition

Berechnen Sie den Winkel \(-180^\circ < \varphi \le 180^\circ,\) der die Winkelposition des Vektors beschreibt , und zwar gerundet auf Rundestellenwert \(0{,}1\).

Lösung

Es gilt:

\[\begin{split}\varphi &= 2\arctan{}\tfrac{v_y}{v + v_x} \\ &= 2\arctan{}\tfrac{4}{5+3} \\ &= 2\arctan{}\tfrac{1}{2} \\ &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} 53{,}1 ^\circ\end{split}\]

c) Plausibilitätskontrolle

Zeigen Sie, dass Ihr Ergebnis plausibel ist.

Lösung

Um das zu zeigen, zeichnet man den Vektor maßstabsgerecht mit den Komponenten \(v_x\) und \(v_y\). Dann misst man den Betrag \(v\) und den Winkel \(\varphi\). Dann vergleicht man die berechneten Größen mit den gemessenen Größen.

Alternative: Aus dem berechneten \(v\) und \(\varphi\) lassen sich rückwärts auch die gegebenen Größen \(v_x\) und \(v_y\) berechnen:

\begin{align*} \begin{bmatrix} v_x \\ v_y \end{bmatrix} &= v \begin{bmatrix} c_\varphi \\ s_\varphi \end{bmatrix} \\ &= v \begin{bmatrix} c_{2\arctan\tfrac{v_y}{v + v_x}} \\ s_{2\arctan\tfrac{v_y}{v + v_x}} \end{bmatrix} \end{align*}

Jetzt lässt sich folgende Formel verwenden:

\[\begin{split}\begin{bmatrix} c_{2\arctan x} \\ s_{2\arctan x} \end{bmatrix} &= \begin{bmatrix} \tfrac{1-x^2}{1+x^2} \\ \tfrac{2x}{1+x^2} \end{bmatrix}\end{split}\]

Mit dieser Formel und mit \(x = \tfrac{v_y}{v + v_x}=\tfrac 1 2\) ergibt sich weiter:

\[\begin{split}\begin{bmatrix} v_x \\ v_y \end{bmatrix} &= v \begin{bmatrix} c_{2\arctan\tfrac{v_y}{v + v_x}} \\ s_{2\arctan\tfrac{v_y}{v + v_x}} \end{bmatrix} \\ &= 5 \begin{bmatrix} \tfrac{1-\tfrac 1 4}{1+\tfrac 1 4} \\ \tfrac{2\tfrac 1 2}{1+\tfrac 1 4} \end{bmatrix} \\ &= 5 \begin{bmatrix} \tfrac{\tfrac 3 4}{\tfrac 5 4} \\ \tfrac{1}{\tfrac 5 4} \end{bmatrix} \\ &= 5 \begin{bmatrix} \tfrac 3 5 \\ \tfrac 4 5 \end{bmatrix} \\ &= \begin{bmatrix} 3 \\ 4 \end{bmatrix}\end{split}\]

Details zur verwendeten Formel

../../../_images/M.2.A_3.png

Für beliebiges gegebenes \(x\in\mathbb{R}\) lässt sich mit der horizontalen Länge \(1\) das graue Dreieck und der Kreis konstruieren. Danach sieht man, dass \(\varphi = 2\arctan{x}\). Und es ergeben sich „einfache“ Ausdrücke für den Kosinus und den Sinus von \(\varphi\) siehe Kasten.

SymPy

Source Code eines Programms dazu:

from sympy import var, Matrix, Eq, solve, pprint

x, a, h = var("x, a, h")

eq1 = Eq(h + a, 1)
eq2 = Eq(a**2 + x**2, h**2)

sol = solve([eq1, eq2],[a, h], dict=True)
sol = sol[0]
a, h = sol[a], sol[h]

c, s = a/h, x/h

tmp = Matrix([c, s])
pprint(tmp)

Programm ausführen? Dazu:

  1. Copy: Source Code in die Zwischenablage kopieren.

  2. Paste: Source Code ins Eingabefeld hinter [ ]: einfügen.

  3. Play: Knopf ▶ drücken.

d) Weitere Beispiele

Berechnen Sie für drei weitere Vektoren den Betrag \(v\) und die Winkelposition \(-180^\circ < \varphi \le 180^\circ\) - und zwar wieder gerundet auf Rundestellenwert \(0{,}1\).

\begin{align*} \begin{bmatrix} v_x \\ v_y \end{bmatrix} &= \begin{bmatrix} 3 \\ 4 \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v \\ \varphi \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} 5 \\ 53{,}1^\circ \end{bmatrix} \\ \begin{bmatrix} v_x \\ v_y \end{bmatrix} &= \begin{bmatrix} -6 \\ 8 \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v \\ \varphi \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} \ldots \\ \ldots \end{bmatrix} \\ \begin{bmatrix} v_x \\ v_y \end{bmatrix} &= \begin{bmatrix} -5 \\ -12 \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v \\ \varphi \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} \ldots \\ \ldots \end{bmatrix} \\ \begin{bmatrix} v_x \\ v_y \end{bmatrix} &= \begin{bmatrix} 7 \\ -24 \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v \\ \varphi \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} \ldots \\ \ldots \end{bmatrix} \end{align*}

Lösung

../../../_images/M.2.A_1.png
\begin{align*} \begin{bmatrix} v_x \\ v_y \end{bmatrix} &= \begin{bmatrix} 3 \\ 4 \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v \\ \varphi \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} 5 \\ 53{,}1^\circ \end{bmatrix} \\ \begin{bmatrix} v_x \\ v_y \end{bmatrix} &= \begin{bmatrix} -6 \\ 8 \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v \\ \varphi \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} 10 \\ 126{,}9^\circ \end{bmatrix} \\ \begin{bmatrix} v_x \\ v_y \end{bmatrix} &= \begin{bmatrix} -5 \\ -12 \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v \\ \varphi \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} 13 \\ -112{,}6^\circ \end{bmatrix} \\ \begin{bmatrix} v_x \\ v_y \end{bmatrix} &= \begin{bmatrix} 7 \\ -24 \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v \\ \varphi \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} 25 \\ -73{,}7^\circ \end{bmatrix} \end{align*}

e) Umkehrung

Berechnen Sie die Komponenten \(v_x\) und \(v_y\) aus dem Betrag \(v\) und dem Winkel \(-180^\circ < \varphi \le 180^\circ\) , und zwar wieder gerundet auf Rundestellenwert \(0{,}1\).

\begin{align*} \begin{bmatrix} v \\ \varphi \end{bmatrix} &= \begin{bmatrix} 5 \\ 45^\circ \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v_x \\ v_y \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} \ldots \\ \ldots \end{bmatrix} \\ \begin{bmatrix} v \\ \varphi \end{bmatrix} &= \begin{bmatrix} 10 \\ 130^\circ \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v_x \\ v_y \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} \ldots \\ \ldots \end{bmatrix} \\ \begin{bmatrix} v \\ \varphi \end{bmatrix} &= \begin{bmatrix} 13 \\ -110^\circ \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v_x \\ v_y \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} \ldots \\ \ldots \end{bmatrix} \\ \begin{bmatrix} v \\ \varphi \end{bmatrix} &= \begin{bmatrix} 25 \\ -70^\circ \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v_x \\ v_y \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix} \ldots \\ \ldots \end{bmatrix} \end{align*}

Lösung

../../../_images/M.2.A_2.png
\begin{align*} \begin{bmatrix} v \\ \varphi \end{bmatrix} &= \begin{bmatrix} 5 \\ 45^\circ \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v_x \\ v_y \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix}3{,}5\\3{,}5\end{bmatrix} \\ \begin{bmatrix} v \\ \varphi \end{bmatrix} &= \begin{bmatrix} 5 \\ 45^\circ \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v_x \\ v_y \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix}-6{,}4\\7{,}7\end{bmatrix} \\ \begin{bmatrix} v \\ \varphi \end{bmatrix} &= \begin{bmatrix} 5 \\ 45^\circ \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v_x \\ v_y \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix}-4{,}4\\-12{,}2\end{bmatrix} \\ \begin{bmatrix} v \\ \varphi \end{bmatrix} &= \begin{bmatrix} 5 \\ 45^\circ \end{bmatrix} & &\Leftrightarrow & \begin{bmatrix} v_x \\ v_y \end{bmatrix} &\stackrel{\scriptscriptstyle{0{,}1}}{\approx} \begin{bmatrix}8{,}6\\-23{,}5\end{bmatrix} \end{align*}

SymPy

Source Code eines Programms dazu:

from sympy.physics.units import kg, m, s
from sympy import pi, S, pprint, Matrix, atan

# 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:
        from functools import partial
        func = partial(round, ndigits = pv)
        tmp = x.applyfunc(func)
    return tmp

# ---

prec = 2
vx, vy = 3, -4
vx, vy = -1, 3

pprint("\n(vx, vy):")
v = Matrix([vx, vy])
pprint(v)

pprint("\n(v, φ / °):")
v = v.norm()
p = 2*atan( vy / (v + vx) )
tmp = Matrix([v, p / deg])
tmp = iso_round(tmp,prec)
pprint(tmp)

# pprint("\nφ / ° using atan2:")
# p = atan2(vy, vx)
# tmp = p / deg
# tmp = iso_round(tmp,prec)
# pprint(tmp)

Programm ausführen? Dazu:

  1. Copy: Source Code in die Zwischenablage kopieren.

  2. Paste: Source Code ins Eingabefeld hinter [ ]: einfügen.

  3. Play: Knopf ▶ drücken.