středa 6. listopadu 2013

Operace s vektory

Nedílnou součástí matematických znalostí pro práci s počítačovou grafikou tvoří operace s vektory. V článku si některé ukážeme spolu s jejich geometrickou reprezentací. Budeme pracovat se dvěma vektory ve 2D $u=(u_1,u_2)$ a $v=(v_1,v_2)$.

Součet vektorů

Součet $u$ a $v$ dostaneme následovně \[ u+v=(u_1+v_1,u_2+v_2) \] Jak vidíme, výsledkem je vektor.

Příklad
Nechť jsou vektory \begin{align*} u&=(2,1)\\ v&=(3,3) \end{align*} Pak jejich součet bude \[ {\color{OliveGreen}u+v}=(2+3,1+3)=(5,4) \] Při geometrickém vyjádření vyneseme kopii vektorů vždy do vrcholu vektoru druhého. Výsledný součet je pak úhlopříčkou vzniklého čtyřúhelníku.


Rozdíl vektorů

Rozdíl $u$ a $v$ lze zapsat jako \[ u-v=u+(-v) \] kde $-v$ nazýváme opačným vektorem k vektoru $v$.

Příklad
Nechť jsou vektory \begin{align*} u&=(5,4)\\ v&=(3,2) \end{align*} Pak jejich rozdíl bude \[ u-v=(5-3,4-2)=(2,2) \] Při geometrickém znázornění otočíme směr vektoru $v$ (světle modrý) a přesuneme jej do vrcholu vektoru $u$.


Násobení vektoru číslem

Vynásobení vektoru číslem $k$ probíhá násobením všech jeho složek \[ u\cdot k = (u_1k,u_2k) \]
Příklad
Nechť je na vstupu \begin{align*} u&=(2,1) \\ k&=2 \\ \end{align*} Výsledkem pak bude \[ u\cdot k = (2\cdot 2,1\cdot 2)=(4,2) \]

Skalární součin

Skalární součin značíme klasicky $\cdot$ a počítáme jako \[ u\cdot v=u_1 v_1 + u_2 v_2 \] Jeho míra odráží úhel mezi vektory a jejich velikost.

Úhel mezi vektory

Pro výpočet použijeme skalární součin. \[ cos\alpha=\frac{u\cdot v}{|u||v|} \] Velikost vektorů $u$ a $v$ vypočítáme jednoduše z Pythagorovy věty.

Příklad
Nechť jsou zadány vektory \begin{align*} u&=(1,0)\\ v&=(2,2) \end{align*} Jejich skalární součin bude \[ u\cdot v=1\cdot 2 + 0\cdot 2=2 \] a délky vektorů \begin{align*} |u|&=\sqrt[]{1^2+0^2}=1 \\ |v|&=\sqrt[]{2^2+2^2}=\sqrt{8}\doteq 2,83 \end{align*}

Výsledkem je tedy \begin{align*} cos\alpha&=\frac{2}{\sqrt{8}}\doteq 0,354 \\ \alpha&=arccos(\frac{2}{\sqrt{8}})=45^{\circ} \end{align*}

Vektorový součin

Pro vektorový součin používáme znamenénko $\times$. Operace se používá ve 3D, takže rozšíříme vektory o jednu složku $u=(u_1,u_2,u_3)$ a $v=(v_1,v_2,v_3)$. \[ u\times v=(u_2 v_3 - v_2 u_3, u_3 v_1 - v_3 u_1, u_1 v_2 - v_1 u_2) \] Výsledkem nechť je vektor $w$, který se bude rovnat \[ |w|=|u||v|sin\alpha \] a který bude kolmý k oběma vektorům.

Příklad Nechť jsou vektory \begin{align*} u&=(4,0,0)\\ v&=(0,0,-1) \end{align*} Pak se vektorový součin rovná \[ u\times v=(0 - 0, 0 - (-4), 0 - 0)=(0,4,0) \]

Můžeme ještě ověřit, zda sedí vztah výše. \[ |w|=\sqrt{0^2+4^2+0^2}=\sqrt{16}=4 \] Vektory $u$ a $v$ svírají úhel $90^{\circ}$. Pravá strana bude tedy vypadat \[ |u||v|sin\alpha=\sqrt{4^2+0^2+0^2}\cdot \sqrt{0^2+0^2+(-1)^2}\cdot sin(90)=\sqrt{16}\cdot \sqrt{1}\cdot 1=4 \]

Literatura a odkazy

http://www.matweb.cz/vektory-operace#gsc.tab=0

Žádné komentáře:

Okomentovat