Zpracování dat pomocí IDL

František Němec, 3. ročník, KEVF


Gaussovské fity

(fituj.pro)

Intenzita "rovníkového šumu" (elektromagnetických vln v magnetosféře Země, které se vyskytují v blízkosti geomagnetického rovníku) se výrazně mění s geomagnetickou šířkou (má maximum na nebo velice blízko rovníku a velice rychle klesá směrem k větším šířkám). Naším cílem bylo pokusit se tuto intenzitu aproximovat Gaussovou funkcí. Používáme data z družic Cluster (4 družice pohybující se velice blízko sebe, vypuštěné Evropskou kosmickou agenturou - ESA). Máme tedy - pro každý jednotlivý případ výskytu rovníkového šumu - několik známých (naměřených) diskrétních hodnot intenzity v závislosti na geomagnetické šířce a naším cílem je nafitovat na tyto body Gaussovu funkci. Takovýto fit pak provádíme pro všechna dostupná pozorování rovníkového šumu a zajímáme se o geomagnetické šířky jejich "centrálních píků" a jejich pološířky, čímž získáváme poměrně dobrou představu o místech jeho výskytu.

Příklady takovýchto fitů (zvlášt pro intenzitu elektrického a magnetického pole) jsou na obrázku vpravo, zdrojový kód programu v IDL je připojen (odkaz pod nadpisem). Využíváme přitom možnosti IDL a jeho funkcí umožňující provádět takovéto fity velice snadno. Stačí pouze nadefinovat tvar funkce, kterou chceme danými (experimentálními) body proložit (v našem ukázkovém programu je tato funkce pojmenována gaussmod) a zavolat příslušnou rutinu (curvefit). Pro úspěšné zavolání této rutiny je přitom třeba znát ještě derivaci funkce, kterou body prokládáme (je rovněž definována ve funkci gaussmod).



Výpočet mediánu a kvantilů

(mediany.pro)

Pokud se zajímáme o rovníkový šum dále a zkoumáme například závislost jeho intenzity na hodnotě Kp-indexu, je výhodné (stejně jako v mnoha jiných vědních oblastech) do experimentálně získaných dat (bodů v 2D-grafu) vyznačit hodnotu mediánu a případně ještě určitých dalších kvantilů, například kvantilů odpovídajících hodnotám směrodatných odchylek. Provedení takovéto operace v IDL je demonstrováno právě tímto programem (příklad výsledku pak na obrázku vlevo).

Program funguje tak, že x-ovou osu neprve rozdělí na několik intervalů (jejichž velikost, resp. počet závisí na volbě uživatele a na výsledku, kterého chce dosáhnout) a pro každý tento interval zvlášť se pak počítá hodnota mediánu (případně ješte příslušných kvantilů), která je následně vykreslena do grafu jako konstantní funkce o dané hodnotě na příslušném intervalu. Při implementaci v IDL přitom s výhodou užijeme snadnou práci s poli a velice jednoduchou možnost setřídění jejich prvků podle velikosti.



Poslední úpravy 18.2.2004