pondělí 11. listopadu 2013

Výpočty v Excelu

Ukážeme si jak pracovat se vzorci, počítat soustavy rovnic a kreslit křivky. V článku je použita verze 2007 s českou lokalizací.

Jednodušší vzorce

Řekněme, že chceme vypočítat euklidovskou vzdálenost dvou bodů. Aplikujeme Pythagorovu větu \[ c=\sqrt{a^2+b^2} \] V Excelu může zápis vypadat třeba takto


Vidíme, že je použit vzorec

=ODMOCNINA((C2-B2)*(C2-B2)+(C3-B3)*(C3-B3))

Bereme tedy vzdálenost souřadnic $x$ obou bodů spolu se vzdáleností souřadnic $y$. Jejich součet umocníme a výsledek zobrazíme v buňce $E2$. Vpravo jsou pak pro názornost oba body vyneseny do grafu.

Práce s maticemi

Matice můžeme využít k výpočtu soustavy rovnic, což se nám hodí při transformacích, generování křivek, rekonstrukci obrazu, a dalších. Ukažme si výpočet bodů na křivce vygenerované pomocí interpolačního polynomu. Mějme čtyři body \begin{align*} A=[3,2] \\ B=[5,4] \\ C=[6,3] \\ D=[9,8] \end{align*} ze kterých dostaneme soustavu rovnic \begin{align*} 1a_0+3a_1+3^2a_2+3^3a_3=2 \\ 1a_0+5a_1+5^2a_2+5^3a_3=4 \\ 1a_0+6a_1+6^2a_2+6^3a_3=3 \\ 1a_0+9a_1+9^2a_2+9^3a_3=8 \end{align*} kterou můžeme jednoduše vypočítat použitím inverzní matice. Napíšeme koeficienty rovnice do buněk $A5:D8$. Poté je třeba vybrat oblast $A10:D13$ pro výslednou inverzní matici a do první buňky vepsat vzorec

=INVERZE(A5:D8)

List by měl u vás vypadat podobně jako na obrázku.


Po stisku Ctrl + Shift + Enter dostaneme v označené oblasti výsledek. Pro další krok výpočtu potřebujeme vynásobit inverzní matici s vektorem pravých stran soustavy. Vybereme tedy oblast $B15:B18$ a do první buňky vložíme vzorec

=SOUČIN.MATIC(A10:D13;F5:F8)

Váš list by měl v této chvíli vypadat nějak takto


Opět stiskneme Ctrl + Shift + Enter pro potvrzení maticové operace. Teď už nám jen chybí dopočítat ostatní body, takže si do buněk $H2:H11$ vložíme hodnoty $x$ v intervalu $<1,10>$. Do sloupce vedle pak vypočítáme $y$.


Grafy

Chcete vidět, jak vypadá geometrická reprezentace vašich dat? Ukažme výpočet Bézierova splajnu složeného ze dvou kubik $P$ a $Q$. Do buněk $A2:A12$ zadáme hodnoty parametru $t$, ze kterých vypočítáme hodnoty váhových funkcí $w_0, w_1, w_2, w_3$. V oblasti $F2:I3$ jsou vstupní body pro křivku $P$ a v oblasti $F6:I7$ pro křivku $Q$. Buňky $J2:K22$ budou obsahovat vypočítané hodnoty $x$ a $y$. Pro vynesení do grafu vybereme oblast $J2:K12$ a z karty Vložení volbu Bodový -> Bodový pouze se značkami.


Chceme přidat i body druhé křivky a to v jiné barvě. Klikneme pravým tlačítkem do zobrazované oblasti a zvolíme Vybrat data... -> Přidat. Do tabulky zadáme správné oblasti tak jako na obrázku


Potvrdíme OK -> OK a máme hotovo.

Upozornění

Na začátku článku zmiňuji, že používáme Excel s českou lokalizací. Toto je velmi důležité dodržet, protože pro jinou jazykovou verzi vám uvedené vzorce nebudou fungovat! Názvy funkcí v ní budou přeloženy, což znamená, že v anglické musíme například místo SOUČIN.MATIC psát MMULT.

2 komentáře:

  1. Z tohoto Zadaní a výpočtu jsem nepochopil vůbec nic!!!!!

    OdpovědětSmazat