Pavel Masopust / Počítačová podpora vyučování fyziky – využití tabulkových kalkulátorů (Excel) Školská fyzika 2014/1  Na pomoc školské praxi 35 Počítačová podpora vyučování fyziky – využití tabulkových kalkulátorů (Excel) Pavel Masopust1 , Fakulta pedagogická Západočeské univerzity v Plzni Druhá část seriálu Počítačová podpora vyučování fyziky je věnována využití tabulkových kalkulátorů (MS Excel, OpenOffice.org Calc, Quattro Pro, Lotus, …). Použití tabulkových kalkulátorů se ve fyzice přímo nabízí. Často již také v mnoha oblastech fyziky a vyučování fyzice užívány jsou. Tabulkové procesory, někdy je používán pojem tabulkové kalkulátory nebo tabulkové editory (dále TP), jsou používány při zpracování dat z různých měření. Neslouží pouze jako místo, kde udržíme data „pohromadě“, ale nabízejí též širokou paletu funkcí, jež ve zpracování dat využijeme. Nejde již jen o pouhé kreslení grafů a práci s nimi, TP nabízejí mnoho funkcí pro statistické vyhodnocování dat, umožňují aproximaci a interpolaci získaných hodnot a mnoho dalšího. Výhoda použití TP ve výuce fyziky (obecně v jakékoli didaktické činnosti) tkví v obrovské rozšířenosti těchto programů. Je jen málo počítačů, na kterých není instalován nějaký kancelářský balík, ať je to již zmíněný MS Office a jeho MS Excel či Open Office a jeho OpenOffice.org Calc, … Uživatelé (žáci i učitelé) většinou umí tento typ programů obsluhovat a osvojení několika nových, zde popsaných poznatků je jistě mnohem snazší, než zvládnutí komplexnějších matematických programů. Dovednosti získané prací v TP mohou být následně užity i mimo školu. Počítačovým animacím z oblasti fyziky je často vytýkáno, že fyzikální problematika je skryta kdesi v pozadí a studenti nevidí samotnou fyziku, jež se za animovaným pohybem skrývá. Pokud je TP soubor připraven správně, může mít student se vzorci bezprostřední kontakt, se souborem si „pohrát“, zkusit změnit vzorce, počáteční podmínky i hodnoty, které jsou obvykle konstantami (tíhové zrychlení, rychlost světla, …). To vše je samozřejmě didakticky velmi přínosné. Zaměřím se zde spíše na to, jak využít TP specifickým, nikoli obecně známým způsobem. Konkrétně v této a další části také věnované TP popíši, jak je využít pro: • numerické řešení fyzikálních úloh, • vizualizaci nalezeného řešení, • použití ovládacích prvků k ovlivnění parametrů úlohy, • tvorbu jednoduchých animací, opět s ovlivnitelnými parametry. Patrně nejrozšířenějším TP je MS Excel. Úlohy v této kapitole jsou proto řešeny právě za pomoci ­Excelu. Ostatní TP mají velmi podobné ovládání, výběr MS Excelu tak příliš neubere na obecnosti předkládaných řešení. Navíc lze přímo v Excelu ukládat soubory ve formátech, jimž budou ostatní TP „rozumět“ (např. ODF – Open Document Format). Použití TP k výpočtům a zobrazování grafů Základní úlohou, kterou TP často řeší, je počítání výsledků různých vzorců a zobrazování grafů. Podrobnosti k ovládání TP viz literatura na konci článku. Zde jen stručně uvedu, jak používat TP k výpočtu hodnoty zadané funkce a k zobrazení grafu. To, že po TP chceme výpočet vzorce a ne jen zobrazení textu vzorce, vyjádříme znaménkem = před zadaným vzorcem (u některých TP se místo = používá @). Ten pak může vypadat např. jako = 2 + 2. Odkaz na buňku třeba se zadanou konstantou je možný tak, že do buňky vložíme znaménko = a klikneme na buňku, na kterou chceme odkazovat. Do buňky se pak vloží např. = D11. Tak například k zobrazení grafu sin(x) budeme potřebovat vložit do jednoho sloupce měnící se hodnoty, které poslouží jako data pro osu x. Tuto posloupnost nemusíme vypisovat ručně jednu po druhé. Stačí napsat první dvě hodnoty, které se liší o požadovaný krok (změnu), pak je myší je označit a „natáhnout“ dolů k dosažení potřebného 1 pmasop@kmt.zcu.cz Pavel Masopust / Počítačová podpora vyučování fyziky – využití tabulkových kalkulátorů (Excel) Na pomoc školské praxi Školská fyzika 2014/1 36 počtu řádek. Na dalším obrázku je místo k uchopení buňky pro doplnění hodnot označeno červeným kroužkem. Do  dalšího sloupce pak zapíšeme funkci, jejíž graf chceme vykreslit. Do buňky E3 bychom vložili například =SIN(D3). Poznámka k funkci sin: TP očekávají zadání v obloukové míře. Vzorec =SIN(90) tak nespočítá očekávaný výsledek 1, ale 0,893 997. Vzorec je tak potřeba zapsat jako =SIN(RADIANS(90)), nebo převést ručně =SIN(90*PI()/180), kde funkce PI() vrací hodnotu π a není třeba ručně vkládat 3,14… Vzorec je pak možné již popsaným způsobem roztáhnout směrem dolů a nechat TP dopočítat hodnoty, viz vpravo. Postup pro vložení grafu se může pro různé TP lišit, obecně lze říci, že stačí vybrat myší požadované hodnoty (u nás oblast D3 až E39) a z menu programu použít vložit graf, průvodce grafem apod. Funkce v podobě bodového grafu pak v MS Excel vypadá tak, jak je ukázáno na následující straně. S již vykresleným grafem je možné „experimentovat“. Například při výkladu fázového posunutí u vlnění je snadné upravit funkci na =SIN((D3+25)*PI()/180) s výsledkem, který je vidět v druhém grafu. Přímo tak lze ukázat, že fázové posunutí nemění „podobu“ grafu funkce (frekvenci, amplitudu), ale jen graf horizontálně posouvá. TP je tak ideálním nástrojem pro „studium“ průběhu funkcí. Během okamžiku je možné ukázat, jak ovlivňuje podobu grafu změna jednotlivých parametrů (pro nás amplitudy, frekvence, fáze, …). Pokud chceme ve vzorci použít hodnotu z buňky, která se nebude na jednotlivých řádcích výpočtu měnit (odkaz na konstantu apod.), nelze použít jednoduchý odkaz, jak byl popsán výše. Kdybychom použili např. =A1*SIN(D3) a natáhli vzorec dolů, dostali bychom na  dalším řádku vzorec =A2*SIN(D4). Aby vzorec odkazoval na všech řádcích na buňku A1, je nutné použít absolutní odkaz ve tvaru $A$1. Tímto zaručíme, že ani A, ani 1 se v průběhu „natahování“ vzorce, nebo kopírování nebude posouvat. Další možností může být použití pojmenovaných buněk, viz níže. Pavel Masopust / Počítačová podpora vyučování fyziky – využití tabulkových kalkulátorů (Excel) Školská fyzika 2014/1  Na pomoc školské praxi 37 Pavel Masopust / Počítačová podpora vyučování fyziky – využití tabulkových kalkulátorů (Excel) Na pomoc školské praxi Školská fyzika 2014/1 38 Obecné zásady práce s tabulkovými procesory V tomto odstavci zmíním obecné zásady, které jsou pro práci s TP ve výuce fyziky již osvědčené. Zásady pocházejí z mé několikaleté zkušenosti z výuky předmětu Využití počítačů ve fyzice. Studenti zde samostatně zpracovávají podle zadaných podmínek zvolenou úlohu. Postupy, které se ukázaly jako nejvhodnější, zde budou prezentovány. Rozdělení logických částí úlohy do jednotlivých listů. Listy používají TP k oddělení logických částí celého souboru (obvykle nazývaného jako sešit). Úlohu je vhodné rozdělit kvůli přehlednosti. Osvědčilo se používat tyto základní listy: • parametry úlohy, • pomocné výpočty, • výsledky. Do prvního listu TP umisťujeme obvykle zadání úlohy. TP sešit je pak „soběstačný“ – obsahuje informaci o tom, jakou úlohu řeší, a nepotřebuje další doprovodnou textovou informaci v separátním souboru. Můžeme sem umístit i detaily řešení, popis všech nastavitelných parametrů úlohy a kompletní popis řešení. Druhý list slouží k umístění parametrů úlohy. Pokud není první list příliš zaplněn a nebude-li to na úkor přehlednosti, mohou být parametry umístěny hned na prvním listu. Měnitelné parametry je vhodné označit podbarvením. Pokud si uživatelé (studenti, žáci) zvyknou na naše barevné označení, zrychlí to orientaci ve vytvořených souborech. Různými barvami tak můžeme označit buňky s: • počátečními parametry, • měnitelnými hodnotami, • automaticky počítanými hodnotami, • výsledky. Název parametru (např. počáteční hodnoty) je nutné uvést včetně jednotky a zvýraznit např. tučně. Ukázku titulního listu a počátečních hodnot ukazuje obrázek (zde obojí na jednom listě): Pojmenovávání buněk je jednou z ne úplně známých možností, které TP obvykle nabízí. Opět se jedná o „trik“, který zpřehledňuje práci tím, že v buňkách, ve kterých je hodnota počítána vzorcem, neodkazujeme na „anonymní“ buňky odkazem (List2!G11), ale přímo jménem (hmotnost). Pavel Masopust / Počítačová podpora vyučování fyziky – využití tabulkových kalkulátorů (Excel) Školská fyzika 2014/1  Na pomoc školské praxi 39 Pojmenování buňky lze provést např. v MS Excel v levém horním rohu obrazovky, hned nad sloupcem s čísly řádků, viz obrázek Ukotvení příček umožňuje určit oblast, která bude zachována na svém místě i při posunu obrazovky. Pokud pracujeme s velkým počtem řádků, můžeme uzamknout list tak, aby i při posunu bylo vidět záhlaví tabulky nebo část listu s důležitými údaji. Funkce je v MS Excel dostupná z menu Okno Ukotvit příčky. Řešení diferenciálních rovnic v tabulkovém procesoru Řešení fyzikálních úloh s sebou nese nutnost použití rozličných matematických metod. Matematické znalosti studentů středních škol jsou limitované, a tím je omezen i výběr úloh, jež lze při výuce použít. Jsme často svědky toho (ačkoli to se týká spíše až vysokoškolského kurzu fyziky), že úlohy nejsou „dotaženy do konce“. Vyučující konstatuje, že jsme nalezli řešení úlohy (např. v podobě nějaké matematické funkce) a že tedy můžeme postoupit k dalšímu příkladu. Velká většina studentů si však řešení není schopna představit a neví tak, co vlastně spočítali, a z pouhého pohledu na matematický zápis funkce nedokáží odhadnout reálné fyzikální důsledky řešení. To je jistě chyba. Diskuze získaného řešení je stejně důležitá jako postup vedoucí k jeho získání. Nakreslení průběhu na tabuli a do sešitu je sice jistou možností, avšak z didaktického hlediska stále není ideální. K diskuzi výsledku patří i možnost „pohrát“ si s parametry úlohy. Tím je myšleno mít vizualizované řešení a mít možnost řešení ovlivňovat, například změnou vstupních parametrů. Takovýto „komfort“ nám může poskytnou vizualizace řešení na osobním počítači. Ačkoli lze použít celou škálu specializovaných programů, jako např. MATLAB, je to nákladné jak na čas potřebný k ovládnutí programu, tak na finance k pořízení licence programu. Cílem tedy bude použít standardní počítačový program, s jehož ovládáním jsme obeznámeni a který již, velmi pravděpodobně, máme v počítači nainstalován. Výhodou je i to, že naši práci můžeme snadno nahrát studentům a ti již budou vědět „co s tím“. Nabízí se tedy k vizualizaci výsledků fyzikální úlohy opět použít TP, např. Microsoft Excel. Fyzikální situace jsou často popsány diferenciálními rovnicemi. Ačkoli je možné na střední škole alespoň formálně diferenciální rovnice studentům představit, nelze předpokládat hlubší pochopení vzájemných souvislostí. Studenti mohou intuitivně pochopit, co znamenají diferenciální přírůstky proměnných atd., ale o úplném proniknutí do problematiky hovořit nelze. Pavel Masopust / Počítačová podpora vyučování fyziky – využití tabulkových kalkulátorů (Excel) Na pomoc školské praxi Školská fyzika 2014/1 40 Pomocí numerického výpočtu však lze provést řešení takovýchto úloh bez nutnosti zavádět aparát vyšší matematiky. Postup budeme demonstrovat na řešení základní úlohy z mechaniky – na svislém vrhu dolů. Na středoškolské úrovni se úloha obvykle nekomplikuje zaváděním odporu prostředí a úloha může být ­zadána takto: Úloha: Těleso je vrženo svisle dolů s počáteční rychlostí v0 v tíhovém poli s tíhovým zrychlením g. Určete průběhy rychlosti a polohy vrženého tělesa jako funkce času. Řešení: Jedná se o rovnoměrně zrychlený pohyb počáteční rychlostí v0, okamžitá rychlost tedy bude popsána studentům známým vzorcem (orientujeme osu ve směru vrhu, rychlost tedy bude kladná a bude se zvětšovat, souřadnice y rovněž) v v g t= + ⋅0 a poloha y v t g t= + ⋅ ⋅⋅0 1 2 2 . V úvodu do mechaniky jsou studenti seznámeni s Newtonovým zákonem síly F m a= ⋅ . Příčinou změny rychlosti tělesa (zrychlení) je tedy síla. Lze si tedy představit takovouto posloupnost: F => a => v => x Síla je příčinou zrychlení, zrychlení je příčinou změny rychlosti a poloha se mění v závislosti na rychlosti. Poznámka – nad druhou a třetí trojtečku by bylo možné napsat znak integrace, ale jelikož se tomuto pojmu v našem postupu vyhýbáme, nepíšeme ho. Na začátku je síla (a zrychlení). Klasickým analytickým postupem vyjdeme z daného tvaru zrychlení a řešením obyčejných diferenciálních rovnic určujeme rychlost a polohu jako funkci času. Pokud je již zrychlení závislé např. na rychlosti nebo poloze, je takové řešení matematicky náročné, někdy i analyticky neřešitelné. To je třeba případ řešení větších rozkmitů matematického kyvadla, kde není možné použít zjednodušení sin( )x x≈ a řešení pak vede na eliptické integrály. V  našem jednoduchém případě je řešení snadné a  bylo již uvedeno. Numerické řešení budeme demonstrovat opět na  příkladu vrhu svislého dolů, nyní ovšem se započítáním odporu prostředí. Celková síla, která na  padající těleso působí, pak je F m g k v= ⋅ − ⋅ . Pro analytické řešení je potřeba řešit obyčejnou diferenciální rovnici m v t m g k v⋅ = ⋅ − ⋅ d d , kde k · v popisuje vliv odporu prostředí. Řešením této rovnice je funkce v m k g g m k v e k m t = ⋅ − − ⋅      ⋅         − ⋅ 0 , v0 je počáteční rychlost. Ačkoli řešení této diferenciální rovnice není složité, studentům středních škol není dostupné. Řešme nyní problém numericky. Řešení je možné rozdělit na  krátké časové okamžiky ∆t t( )d . Označení dt používáme pro nekonečně krátké časové okamžiky, pro diferenciál. V Excelu je pro přehlednost výhodné neoznačovat časový okamžik jako delta t, ale použít dt. Stále však musíme vést v patrnosti, že se o diferenciál z matematického pohledu nejedná. Jednotlivé okamžiky označíme indexem i. Rychlost v čase ti+1 je ovlivněna zrychlením a rychlostí v čase ti, tedy v v a ti i i+ = + ⋅1 ∆ . Toto je již zápis vhodný pro Excel. Schematicky v tabulce vpravo. Tvoříme takovouto tabulku –  v prvním sloupci přibývá čas od nuly po kroku Δt, v druhém sloupci je velikost zrychlení (v případě pohybu bez odporu prostředí by zde bylo pouze tíhové zrychlení g) a v třetím sloupci je rychlost, která je v každém kroku rovna předchozí rychlosti plus přírůstku, jímž je zrychlení v předchozím kroku krát Δt. Tabulka pro řešení našeho příkladu (svislý vrh v prostředí s odporem k·v) by vypadala následovně. t [s] a [m·s–2 ] v [m·s–1 ] 0 a0 v0 0 + Δt a1 v1 = v0 + a0· Δt 0 + Δt + Δt a2 v2 = v1 + a1· Δt … … … Pavel Masopust / Počítačová podpora vyučování fyziky – využití tabulkových kalkulátorů (Excel) Školská fyzika 2014/1  Na pomoc školské praxi 41 Pro dostatečnou přesnost výpočtu musíme použít dostatečně malý časový krok. Tabulka pak bude mít velký počet řádek. Pokud např. Δt = 0,1 s a potřebujeme 20 sekund řešení, musí mít tabulka 200 řádek. Graf rychlosti v Excelu pak vypadá takto: Ve shodě s analytickým řešením se funkce asymptoticky blíží k jisté mezní rychlosti. Tuto rychlost snadno nalezneme, uvědomíme-li si, že po dostatečně dlouhé době se odporová síla k · v vyrovná s tíhovou silou m · g. Tedy: m · g = k · vmax a  v m g k max = ⋅ . Pro graf na obrázku byly použity hodnoty k = ⋅0 1N s m , m =1kg, g= ⋅ − 9 81 2 m s , tedy mezní rychlost vmax m s m s= ⋅= ⋅− −9 81 0 1 98 11 1, , , což je ve shodě s grafem. Pokud nakreslíme stejný graf s počáteční rychlostí překračující mezní rychlost, vypadá graf následovně: t [s] a [m·s–2 ] v [m·s–1 ] 0 a0 = g v0 0 + Δt a1 = g – k/m·v0 v1 = v0 + a0· Δt 0 + Δt + Δt a2 = g – k/m·v1 v2 = v1 + a1· Δt … … … Pavel Masopust / Počítačová podpora vyučování fyziky – využití tabulkových kalkulátorů (Excel) Na pomoc školské praxi Školská fyzika 2014/1 42 Rychlost tělesa se tak blíží k mezní rychlosti „shora“. Popsaná metoda numerického řešení se nazývá Eulerova. Je metodou patrně nejjednodušší a současně i „nejprimitivnější“. Pro přesnější nebo rychlejší řešení bychom museli použít pokročilejší metody, např. metody Rungeovy-Kuttovy. Hotový sešit s provedeným výpočtem a ukázkou popsaných technik lze nalézt na adrese http://home.zcu.cz/ ~pmasop/sf1.xls. Na adrese http://home.zcu.cz/~pmasop/sf2.xls je ukázka řešení příkladu v případě, že je odpor prostředí vyjádřen Newtonovým vzorcem (kvadratickou závislostí odporové síly na rychlosti). Další díl seriálu Počítačová podpora vyučování fyziky popíše, jak využít TP k tvorbě jednoduchých fyzikálních animací. Literatura [1] LASÁK, Pavel. Základy Microsoft Excelu, 2014, [Online], [cit. 2. 4. 2014]. Dostupné na World Wide Web: http://office.lasakovi.com/excel/zaklady/