152VYG1 Vyšší geodézie 1 - úloha 4

Z GeoWikiCZ

NOVÉ - nefungující sp3crs.exe pro mladší ročníky: Omlouváme se všem mladším ročníkům. Program sp3crs.exe byl vytvořen pro starší formát sp3 a pro novější nefunguje. Máte 2 možnosti:

  • stáhnout si o 5 let mladší sp3 soubor
  • upravit nefungující soubor s daty podle návodu níže na této stránce

Termín odevzdání

pondělní kroužek: 7.12.2009

úterní kroužky: 8.12.2009

středeční kroužek: 9.12.2009

Název úlohy

GPS - oskulační elementy dráhy družice

Zadání úlohy

Na základě skutečných drah družic daných svými přesnými efemeridami v souborech formátu SP3, poskytovaných na serveru služby IGS, sledujte časový průběh oskulačních elementů. Použijte k tomu data pro den = den Vašeho narození + 20 let (resp. totožné datum, pouze rok se zvýsí o 20, je-li tímto dnem neexistující 29.únor, použijte data z 1.dubna). Výpočty provádějte pro družici PRN = 1. Pokud v daném souboru formátu SP3 není družice PRN = 1, použijte nejbližší vyšší PRN (2, 3, ... ).

Stručný postup
  1. Souřadnice dané družice převeďte ze systému ITRF do nebeského rámce ICRF pomocí programu sp3crs.exe. Vstupem kromě souboru ve formátu SP3 jsou také souřadnice pólu a hodnoty UT1 - UTC, GPS - UTC (v souboru ERP). Pozor na typ souboru SP3 - viz poznámky k výpočtu.
  2. Postupně pro každé dvě následující polohy družice vypočtěte keplerovy parametry (oskulační) dráhy definované těmito dvěma body.
  3. Vypočtené časové řady parametrů vyneste vhodně do grafu, samostatně pro každý parametr.


Poznámky k výpočtu
  • Nejprve převeďte datum (datum Vašeho narození + 20 let) na číslo GPS týdne (GPSW - GPS week) a číslo dne v týdnu (DOW - day of week). Číslování dnů v týdnu je následující: 0. den je neděle, 6. den je sobota. K převodu časů můžete použít jednoduché funkce pro Matlab, ve kterých jsou vyřešeny převody mezi různými časovými škálami. Funkce jsou vytvořeny pro Octave, ale měly by fungovat i pod MatLabem.
  • Pro dané datum vyhledejte na serveru IGS soubory s přesnými drahami družic (nápověda: dráhy nejdete někde pod odkazem DATA & PRODUCTS). Soubor, který hledáte, musí mít následující název:
  • IGS{GPSW}{DOW}.SP3.*
tz. jméno je tvořeno zkratkou IGS, číslem GPS týdne, číslem dne, příponou SP3 a případně další příponou označující typ komprese. Kromě tohoto souboru budete potřebovat i soubor s parametry rotace Země, který má podobný název IGS{GPSW}7.ERP.* a vyskytuje se ve stejném adresáři. V něm najdete rozdíl časů UT1-UTC a polohu pólu. Je-li přípona souboru .Z jde o kompresi pomoci přikazu compress. WinZip tento formát rozbalit neumí, ve Windows použijte program compress.exe (návod, decompr.bat), nebo gzip.exe.
  • Nyní budete potřebovat najít rozdíl mezi časem TAI a UTC, tzv. number of leap seconds. Tento údaj je k dispozici na serveru služby IERS. Vztahy pro převod časů jsou následující:
  • TAI = GPS + 19 sec (konstantní rozdíl)
  • TAI = UTC + leap_sec (variabilní rozdíl)
Obsah toho serveru je stejně jako IGS velmi poučný a doporučuji jej ke čtení.
  • Máte-li tyto informace, můžete souřadnice družice v souborech SP3 v systému ITRF transformovat do systému ICRF. Použijte k tomu prográmek sp3crs.exe. Použití prográmku je velmi jednoduché, stačí na příkazovou řádku napsat:
  • sp3crs -xp 80630 -yp 175490 -ut 741016 -gp 13 1 IGS07600.SP3 > vystup.txt
Tz. musíte zadat polohu pólu (xp, yp), rozdíl časů UT1-UTC a rozdíl GPS-UTC, číslo družice (to je ta jednička v příkladu) a název souboru s přesnými efemeridami. Výstup potom přesměrovat do souboru. Výstup je tvořen řádky pro každou polohu družice, na řádku je postupně MJD, sekunda dne a souřadnice X, Y, Z v systému ICRF. Návod k použití se vypíše na obrazovku po spuštění prográmku bez parametrů.
  • Prográmek sp3crs byl vytvořen pro starší typ SP3 souboru, ve kterém nebyly střední chyby souřadnic a byly jinak číslované družice. U novějšího typu souboru (družice jsou číslované PG01-PG##, ne P 1 - P ## ; po zpracování tohoto novějšího typu souboru je výstupní soubor prázdný) musíte před jeho zpracováním všechny znaky "G0" nahradit dvěmi mezerami (" "), znaky "G" následně nahradit jednou mezerou (" "), a umazat střední chyby (původně sloupce 6-9, po případném nahrazení znaků sloupce 7-10) - pro vysvětlení: v souboru se nacházejí sloupce PG#, x, y, z, oprava hodin, střed.ch.x, střed.ch.y, stř.ch.z, stř.ch.opravy.
Pro vymazání sloupců doporučuji načtení do wordu, a označení sloupců se stisknutou klávesou ALT, ale určitě jsou i jiné způsoby (nebo si nástroj můžete naprogramovat sami). Za sloupcem s opravami hodin již nesmí být žádné další znaky (mezery) - při použití wordu možná budete muset sloupce vpravo od opravy hodin mazat nadvakrát.
Pro odmítače MS Office doporučuji např. editor Emacs s možnosti výběru sloupce pomocí (C-x rt).


Výpočet oskulačních elementů, derivace vektoru družice podle jednotlivých Keplerovských elementů: