Uživatelský manuál
1 Instalace
Jádro modelu BILAN je napsáno v programovacím jazyku C++. K tomuto jádru jsou k dispozici dvě rozhraní: grafické uživatelské rozhraní (GUI) založené na knihovnách Qt4 a balík pro statistické a programovací prostředí R.
V této příručce jsou vlastnosti a funkce jádra popsány v částech, které nejsou zvýrazněny.
1.1 Grafické uživatelské rozhraní
Pro systém Windows je dostupný soubor bilan_VERZE.exe, přičemž číslo verze odpovídá datu vydání. Pro spuštění tohoto souboru musí být v témže adresáři umístěny následující knihovny: libgcc_s_dw2-1.dll, mingwm10.dll, soubor QtCore4.dll and QtGui4.dll.
Spustitelný binární soubor je k dispozici také pro systém Linux.
Části specifické pro GUI jsou v této příručce zvýrazněny šedou barvou.
1.2 Balík pro R
Balík Bilan vyžaduje prostředí R 2.12 nebo novější (doporučena je verze 2.15 nebo novější) s nainstalovaným balíkem Rcpp (verze 0.9.10 nebo novější).
Balík bilan_VERZE.tar.gz (pro Linux) nebo bilan_VERZE.zip (pro Windows lze nainstalovat do prostředí R tak, jak se standardně instalují stažené balíky (např. příkazem install.packages). Tato příručka v modře zvýrazněných částech pouze odkazuje na názvy funkcí, Podrobný popis jednotlivých funkcí obsahuje vestavěná nápověda tohoto balíku.
2 Uživatelské rozhraní
Uživatelské rozhraní aplikace sestává ze tří hlavních částí:
- seznamu vstupních souborů s daty pro povodí a nástroji na jejich správu,
- vlastností povodí a nastavení modelu pro aktuálně vybrané povodí nebo pro soustavu povodí, představovaných kartami Povodí a Soustava,
- výsledků výpočtu podle nastavení modelu, představovaných kartami Výsledky a Grafy.
Velikost těchto částí uživatelského rozhraní je možné měnit, případně je lze úplně skrýt, a to tažením za svislé čáry, které je oddělují.
Aplikaci lze ukončit volbou Bilan → Ukončit hlavní nabídce nebo pomocí klávesové zkratky Ctrl+Q.
2.1 Nastavení uživatelského rozhraní
Obecné hodnoty a možnosti nastavené v uživatelském rozhraní se automaticky ukládají a obnovují, jak je v softwarových aplikacích obvyklé. Platí to pro možnosti na kartách Výsledky a Grafy a v obecných dialogových oknech (Předvolby, Načíst vstupní soubor a Nastavit veličiny). Umístění uložené konfigurace závisí na operačním systému: ve Windows je uložena v registrech, v Linuxu v souboru $HOME/.config/wri/bilan.conf.
Nastavení vztahující se k určitému povodí vybranému v seznamu (tedy především nastavení optimalizace) je možné uložit a znovu použít pomocí položek nabídky Nástroje → Uložit nastavení povodí a Nástroje → Načíst nastavení povodí nebo klávesovými zkratkami Ctrl+S a Ctrl+L. Nastavení se uloží do souboru INI na uživatelem zvolené umístění.
2.2 Předvolby aplikace
Předvolby používané pro celou aplikaci se nastavují v dialogovém okně vyvolaném položkou nabídky Nástroje → Předvolby nebo klávesovou zkratkou Ctrl+P.
Změna jazyka se projeví okamžitě po potvrzení dialogového okna. V současnosti je dostupná anglická a česká lokalizace.
Jako měrné jednotky lze nastavit hodnoty Výška (výška vodního sloupce v milimetrech, výchozí nastavení) nebo Objem (tok v m3 .s-1 nebo celkový objem za časový krok v m3). Tato možnost ovlivňuje všechny hodnoty příslušních veličin včetně jejich výstupu do souborů a zobrazení v grafech. Je-li zvolen Objem, není možné do seznamu přidat povodí, jež nemá nastavenou plochu.
Použít systémové souborové dialogy zajišťuje, že se místo souborových dialogových oken knihovny Qt budou používat dialogová okna nativní pro dané desktopové prostředí. I když jsou nativní dialogová okna díky své integraci se systémem zpravidla vhodnější, mohou být v jiném jazyce než aplikace (pokud se liší lokalizace systému) a v prostředí KDE mohou způsobovat problémy při přepínání jazyků.
3 Seznam vstupních souborů
Seznam vstupních souborů s daty pro povodí se nachází v levé části uživatelského rozhraní. Pod seznamem jsou nástroje umožňující se soubory provádět určité operace.
Jeden ze souborů může být vybraný. Pro toto vybrané povodí se na dalších kartách zobrazují data a grafy. První povodí v seznamu je automaticky přidáno do soustavy povodí. Aby se nějaké povodí trvale zobrazovalo v grafech, je třeba zaškrtnout pole Zobrazit vždy v grafech.
Tlačítka pod seznamem slouží k manipulacím se soubory povodí.
Nové povodí se do seznamu přidá tlačítkem Přidat ze vstupního souboru. Po následném výběru jednoho či více souborů se pro každý soubor, který se má přidat, zobrazí dialogové okno Načíst vstupní soubor.
Uložit lze vstupní soubor povodí ze seznamu stisknutím tlačítka Uložit vstupní soubor jako. Nezadá-li uživatel v souborovém dialogovém okně příponu, automaticky se použije přípona .dat.
Povodí se ze seznamu odstraní stisknutím tlačítka Odstranit ze seznamu. Odstranění ze seznamu nemá vliv na původní soubor se vstupními daty.
Po stisknutí tlačítka Naklonovat se do seznamu přidá nové povodí. To je totožné s povodím, které bylo během klonování vybráno, pouze se změní jeho název na neulozeny_klon. Při klonování se pro povodí nevytváří nový soubor. Pokud takové povodí není před ukončením aplikace uložena, jeho data budou ztracena.
V R přostředí použijem funkce: bil.clone
Tlačítko Naklonovat a transformovat vyvolá dialogové okno Transformovat vstupní data, v němž lze pro každou vstupní veličinu určit koeficienty transformace. Po potvrzení tohoto okna se do seznamu přidá nové povodí s transformovanými vstupními časovými řadami a s názvem změněným na neulozeny_transformovany_klon. Pro ukládání tohoto nového povodí platí totéž jako při použití klonování.
3.1 Načítání vstupních dat
Po stisknutí tlačítka Přidat ze vstupního souboru se zobrazí dialogové okno pro výběr jednoho či více souborů. Následně se pro každý vybraný soubor zobrazí dialogové okno Vstupní data, v němž je možné dále upřesnit a popsat data pro povodí z tohoto souboru.
Typ modelu – denní nebo měsíční – se volí v části Typ. Výchozí hodnota je automaticky odhadnuta podle dat.
V R přostředí použijem funkce: bil.new, bil.read.file
Metadata povodí
Vstupní data jsou načtena z prostého textového souboru. Název souboru (včetně cesty) nesmí obsahovat speciální znaky či znaky s diakritikou, jinak soubor nebude možné načíst.
Na prvním řádku vstupního souboru je zadáno počáteční datum časových řad ve formátu RRRR MM DD (odděleno prázdnými znaky). Není-li zadán den, předpokládá se, že se jedná o první den v měsíci. Není-li zadán měsíc, předpokládá se, že rok označuje hydrologický rok začínající 1. listopadu a že počáteční časový krok je první den či měsíc tohoto roku. První časový krok tedy odpovídá kalendářnímu roku, jehož letopočet je o jedna nižší než zadaný hydrologický rok.
Počáteční datum může na prvním řádku volitelně následovat plocha povodí v km2, oddělená prázdným znakem. Hodnota na prvním řádku je považována za plochu povodí v případě, že se jedná o čtvrtou hodnotu, nebo je-li hodnota desetinným číslem s tečkou jako oddělovačem.
Počáteční datum, plochu povodí a také prahovou hodnotu lze zadat i v odpovídajících polích dialogového okna Načíst vstupní data. Takto zadanými hodnotami budou data načtená ze souboru nahrazena. Pokročilejší nastavení prahové hodnoty je k dispozici na kartě Povodí
V R přostředí použijem funkce: bil.set.values, bil.set.area
Časové řady veličin
Od druhého řádku následují řady denních či měsíčních vstupních řad. Řádky odpovídají jednotlivým časovým krokům řad, zatímco sloupce představují jednotlivé veličiny. Výchozí vstupní veličiny jsou nastaveny takto:
- srážky P [mm],
- odtok (pozorovaný) R [mm],
- teplota vzduchu T [ºC],
- relativní vlhkost vzduchu H [%] (volitelná pro Oudinovu metodu stanovení PET nebo pro PET ze vstupních dat),
- volitelná řada B – tento sloupec může obsahovat jakoukoliv časovou řadu. Tato řada bude vypsána ve výstupních souborech a lze ji použít ve vizualizacích výstupů modelu. Pokud je nastavena nenulová váha pro kalibraci základního odtoku, předpokládá se, že tento sloupec obsahuje řadu základního odtoku (odhadnutého na základě pozorování podzemní vody), která se použije pro srovnání se základním odtokem vypočteným modelem.
- potenciální evapotranspirace PET [mm] (volitelná),
- pro simulace zahrnující užívání vod řady odběrů z podzemních vod POD [mm],
- neevidovaných odběrů z povrchových vod PVN [mm] a vypouštění VYP [mm].
Veličiny vstupního souboru jsou zobrazeny v tabulce v dolní části dialogového okna Načíst vstupní data. Počet veličin je stejný jako počet sloupců souboru, ale lze jej zmenšit v poli Sloupce vstupního souboru. V tabulce jsou zobrazeny tři řádky: rozbalovací seznamy pro výběr veličiny, rozbalovací seznamy pro výběr měrné jednotky pro veličinu a hodnoty z prvního řádku dat.
Veličiny se vybírají ze seznamu dostupných vstupních veličin. Pokud se má uvažovat užívání vod, je potřeba zaškrtnout pole Zahrnout užívání vod a tím seznam rozšířit.
Měrné jednotky se vztahují k hodnotám ve vstupním souboru. Jsou-li jednotky v rozbalovacím seznamu nebo v předvolbách aplikace nastaveny na objem, ale není uvedena plocha povodí, data pro povodí nebude možné načíst.
Po potvrzení dialogového okna se vstupní soubor načte a přidá do seznamu vstupních souborů.
V R prostředí použijeme funkce: bil.read.file, bil.set.values
Možnými chybovými zprávami souvisejícími s otevíráním a načítáním vstupního souboru jsou:
- Soubor neexistuje: The input file ‚FILE NAME‘ does not exist. Tato zpráva se zobrazí také tehdy, pokud název souboru obsahuje nedovolené znaky.
- Některý řádek neobsahuje všechny vstupní veličiny (určené počtem vstupních veličin): Incomplete line ‚LINE CONTENT‘ found.
- Není správně zadáno počáteční datum: Invalid date format.
- V souboru je méně sloupců se vstupními veličinami, než je zadáno: Number of columns in file ‚FILE NAME‘ is less than number of input variables.
Pokud je počet sloupců v souboru větší než počet vstupních veličin, přebývající sloupce jsou ignorovány a zobrazí se upozornění: The input file ‚FILE NAME‘ contains more columns than input variables, some columns will be omitted.
Pokud je nějaká veličina zvolena pro více než jeden sloupec, použije se pouze poslední z nich a zobrazí se upozornění: File ‚FILE NAME‘: Variable VARIABLE is set for more columns, only the last one will be used.
Pokud se zdá, že se načetla denní data pro měsíční typ (nebo obráceně), zobrazí se upozornění Pro měsíční typ se zřejmě načítají denní data. (nebo Pro denní typ se zřejmě načítají měsíční data.). Pokud není zadána plocha povodí, ale je nutné převádět jednotky, zobrazí se chybová zpráva a data pro povodí se nenačtou.
Příklady vstupních dat
Denní časové řady začínající 1.listopadu 1961:
1961 11 1 131.88
0.08 0.7833 5.6 85
0 0.7833 6.9 91
0.2 0.7833 6.1 78
… … … …
Měsíční časové řady začínající 1.listopadu 1931 (počátek hydrologického roku 1932):
1932 247.75
5.957 17.658 1.454 84
63.117 20.115 -3.574 87
60.227 54.579 -2.355 88
… … … ….
Poznámka: Kvůli zpětné kompatibilitě je možné použít také starý formát vstupních souborů, pro běžné použití ale není doporučen. Záhlaví těchto souborů sestává z celkového počtu časových kroků (první řádek), počtu sloupů (druhý řádek) a počátečního hydrologického roku (třetí řádek). Při načítání dat ze souboru starého formátu se zobrazí upozornění.
Kontrola vstupních dat
Poté co se vstupní data načtou, vypočítají se průměrné roční hodnoty všech vstupních řad (pouze z dat pro úplné hydrologické roky) a ty se spolu s názvem vstupního souboru, počtem časových kroků a počátečním i koncovým datem zobrazí na kartě Výsledky. To umožňuje zkontrolovat, zda se data načetla správně.
3.2 Transformace vstupních dat
Po stisknutí tlačítka Naklonovat a transformovat se zobrazí dialogové okno Transformace vstupních dat. V tomto okně je možné nastavit hodnoty pro lineární transformaci vstupních dat, tj. konstantu, která má být přičtena ke všem hodnotám vybrané řady (sčítanec), a konstantu, kterou mají být všechny hodnoty řady vynásobeny (koeficient).
Koeficienty a sčítance mohou navíc být v průběhu roku různé. Tlačítko Nastavit měsíční pro aktuální položku vyvolá dialogové okno Nastavit měsíční hodnoty, které se vztahuje k aktuálně vybrané buňce tabulky. V tomto okně lze stanovit koeficient nebo sčítanec pro každý kalendářní měsíc. Jsou-li takové hodnoty nastaveny, v buňce tabulky se místo hodnoty zobrazí text měsíční; měsíční konstanty lze dále upravovat (po opětovném otevření dialogového okna) nebo měnit na hodnoty, jež jsou během roku konstantní.
Je-li zapnut interaktivní režim (povolovaný zaškrtávacím polem Interaktivně na kartě Povodí), při otevření dialogového okna pro transformaci vstupních dat se do seznamu přidá nové povodí. Jakákoliv změna hodnot pro transformaci (kromě změn v okně měsíčních hodnot) spustí pro toto nové povodí výpočet s transformovanými vstupními daty. Pokud je dialogové okno s transformací potvrzeno, nové povodí v seznamu zůstane, v opačném případě je smazáno.
Jiné možnosti jak transformovat nebo vytvořit vstupní data nabízí dialogové okno Nastavit veličiny.
4 Vlastnosti povodí
Karta Povodí nabízí přístup k vlastnostem povodí a nastavením potřebným ke spuštění modelu. Zobrazené vlastnosti a nastavení (např. typ optimalizace, meze parametrů) se vztahují k povodí, které je aktuálně vybráno v seznamu vstupních souborů, a mohou se pro různá povodí lišit. Tato část popisuje vlastností povodí.
Prahová hodnota (představující např. minimální zůstatkový průtok) může být zobrazena v grafech, a pokud jsou načteny veličiny užívání vod, používá se pro výpočet nedostatkových objemů. K dispozici jsou tři možnosti, jak ji nastavit:
- Nenastavena,
- Konstantní, která je také nastavena, pokud je prahová hodnota obsažena ve vstupním souboru pro povodí nebo pokud byla zadána v dialogovém okně Načíst vstupní soubor,
- Měsíční, která umožňuje vyvolat tlačítkem Nastavit měsíční dialogové okno pro zadání měsíčních hodnot.
Rozbalovací seznam Větší povodí umožňuje zvolit povodí, jehož součástí aktuální povodí je. Tento seznam obsahuje názvy vstupních souborů ze seznamu na levé straně. Tato vlastnost se uplatňuje při výpočtu pro soustavu povodí.
4.1 Nastavení veličin
Hodnoty několika veličin modelu (v současnosti pozorovaného základního odtoku a vah pro optimalizaci) lze nastavit pomocí dialogového okna Nastavit veličiny vyvolaného tlačítkem Nastavit veličiny.
Pro optimalizační váhy jsou k dispozici následující možnosti:
- konstantní váha o hodnotě 1 pro období dat stanovené v polích okna a nulová hodnota pro zbylá období (lze nastavit také v grafu časových řad,
- nulová hodnota vah v časových krocích se záporným pozorovaným odtokem, sloužící k omezení vlivu nespolehlivých dat.
Obě možnosti lze kombinovat.
U denního modelu je možné odhadnout základní odtok: jeho hodnota je vypočtena jako minimum pozorovaného odtoku za časový interval 30 dní, přičemž den odhadované hodnoty se nachází na konci intervalu; pro dny na začátku časové řady se použije zkrácený interval.
Všechny vstupní veličiny mohou být transformovány pomocí dialogového okna Transformovat vstupní data.
5 Nastavení modelu
Kromě vlastností povodí obsahuje karta Povodí také nastavení potřebná ke spuštění modelu. Stejně jako je tomu u vlastností, zobrazené nastavení modelu se vztahuje k povodí aktuálně vybranému v seznamu vstupních souborů a může se u jednotlivých povodí lišit.
Aktuální nastavení modelu pro vybrané povodí lze uložit do souboru INI a použít ho později pomocí položek nabídky Nástroje → Uložit nastavení povodí a Nástroje → Načíst nastavení povodí nebo pomocí klávesových zkratek Ctrl+S a soubor Ctrl+L.
5.1 Výpočet potenciální evapotranspirace
Způsob se vybírá v části Potenciální evapotranspirace. Je-li zvolena položka Použít vstupní data, použijí se data PET načtená přímo ze vstupního souboru.
V R prostředí použijeme funkce: bil.pet
Způsob založený na vegetačních zónách
Potenciální evapotranspirace je odhadnuta na základě sytostního doplňku pomocí funkcí (ve formě tabulek), které byly odvozeny pro jednotlivé měsíce a pro různé bioklimatické zóny z empirických grafů uvedených v Gidrometeoizdat (1976). Sytostní doplněk (v mb) je vypočten z dat teploty a relativní vlhkosti vzduchu. V případě extrémních, nepravděpodobných nebo chybných kombinací těchto veličin může být výsledný sytostní doplněk záporný nebo může překročit horní mez, která je v při tomto způsobu pro výpočet potenciální evapotranspirace používána.
Denní hodnoty PET jsou vypočteny jako měsíční hodnoty dělené 30.
Je-li sytostní doplněk záporný, výpočet se zastaví a je nutné data opravit. Zobrazí se při tom chybové hlášení: Physically impossible: negative value of saturation deficit.
Překročí-li sytostní doplněk horní mez, je při výpočtu nahrazen maximální možnou hodnotou.
Bioklimatické zóny jsou následující: tundra, jehličnatý les, smíšený les, listnatý les a step. Každou bioklimatickou zónu charakterizuje průměrná teplota vzduchu. Model využívá interpolační algoritmus, který kvůli interpolaci mezi zónami, tj. mezi jednotlivými tabulkami, počítá dlouhodobou průměrnou teplotu vzduchu pro povodí.
Způsob založený na slunečním záření pro určitou zeměpisnou šířku a teplotě
Potenciální evapotranspirace je odhadnuta pomocí vztahu odvozeného Oudinem et al. (2010), v němž se uvažuje sluneční záření a teplota vzduchu, která je jediným požadovaným vstupem. Pro každý časový krok je počítána hodnota extraterestriálního slunečního záření, kvůli tomu musí být uvedena zeměpisná šířka povodí (ve stupních). Použitý algoritmus počítá s hodinovým úhlem západu Slunce, který není definován pro podmínky polárního dne, a proto musí zadaná zeměpisná šířka spadat mezi severní a jižní polární kruh (tj. mezi -66,5 a 66,5 stupně).
5.2 Počáteční zásoba podzemní vody
Výsledky simulace hydrologické bilance mohou být ovlivněny počátečními podmínkami na povodí, především na počátku časových řad. Tyto podmínky lze nastavit pomocí počáteční zásoby podzemní vody. Její výchozí hodnota je 50 mm. Lze ji změnit na základě znalosti skutečného stavu povodí v počátečním časovém kroku nebo podle zkušeností z předběžných simulací.
Počáteční zásoba podzemní vody se v mm nastavuje v příslušném poli v části Parametry.
V R prostředí použijeme funkci: bil.set.optim
5.3 Parametry modelu
Volné parametry modelu, které je potřeba určit, aby mohl být modelem simulován odtok, jsou pro denní i měsíční typ modelu uvedeny v tabulce 1.
Optimalizační algoritmus vyžaduje, aby uživatel nastavil počáteční hodnoty parametrů a jejich dolní a horní meze. Výchozí hodnoty není nutné běžně měnit, nicméně změnou hodnot v tabulce parametrů lze dosáhnout alternativních výsledků.
Aby mohl být úspěšně spuštěn gradientní typ optimalizace, počáteční hodnoty parametrů nastavené uživatelem by se neměly blížit dolním či horním mezím. Pokud k tomu dojde, zobrazí se chybová zpráva: Initial value of parameter ‚PARAMETER NAME‘ is too close to its lower/upper limit.
Hodnoty parametrů lze nastavit v tabulce, v níž jsou zobrazeny počáteční hodnoty a meze. Čtvrtý sloupec tabulky je jen pro čtení a obsahuje aktuální optimalizované hodnoty (případně počáteční hodnoty, pokud optimalizace ještě nebyla provedena). V záhlaví řádků se při přejetí zkratky parametru myší zobrazí tip s popisem.
Počáteční hodnoty parametrů mohou být nastaveny také volbou z rozbalovacího seznamu Získat z a stisknutím tlačítka Získat:
- Možnost Výstupní soubor načte počáteční hodnoty ze souboru s uloženými výsledky (podporovány jsou rovněž soubory starého formátu). Tato volba také nastaví počet iterací gradientní optimalizace na nulu.
- Možnost Výchozí nastavení obnoví počáteční hodnoty a meze parametrů.
- Možnost Aktuální hodnoty nahradí počáteční hodnoty parametrů aktuálními hodnotami (čtvrtý sloupec).
V R prostředí použijeme funkce: bil.set.params, bil.set.params.init/lower/upper}, bil.read.params.file
5.4 Kalibrace parametrů
Parametry modelu jsou stanoveny (kalibrovány) pomocí optimalizačního algoritmu. Cílem optimalizace je dosáhnout co nejlepší shody mezi pozorovanou a simulovanou řadou odtoku. K dispozici jsou dva optimalizační algoritmy (lokální a globální).
Nastavení optimalizace jsou umístěna na kartě Povodí. Tlačítkem Nastavení se zobrazí dialogové okno s nastaveními specifickými pro daný algoritmus. Změna způsobu optimalizace (pomocí rozbalovacího seznamu Způsob) vede k novému nastavení optimalizace s výchozími specifickými hodnotami, přizpůsobené hodnoty předchozího způsobu jsou při tom ztraceny. Optimalizace se spustí tlačítkem Spustit.
V R prostředí použijeme funkce: bil.set.optim, bil.optimize, bil.run
Lokální gradientní algoritmus (binární vyhledávání)
Kalibrace parametrů pomocí gradientního způsobu probíhá ve dvou krocích. Následuje popis pro výchozí nastavení, optimalizační kritérium je však možné nastavit, a to nezávisle pro každý krok. Kromě dále zmíněných kritérií lze použít také Nashův-Sutcliffův koeficient nebo jeho logaritmickou verzi.
Při „klasické“ optimalizaci by jako optimalizační kritérium byla běžně použita střední kvadratická chyba (MSE). Nevýhodou tohoto kritéria je to, že nezaručuje dobrou shodu mezi pozorovanou a simulovanou řadou odtoku v oblasti malých průtoků. Shodu lze významně vylepšit, pokud se místo MSE použije součet relativních odchylek pozorované a simulované řady odtoku (reprezentovaný střední absolutní procentuální chybou, MAPE) . Toto kritérium však zhoršuje shodu z hlediska průměrného odtoku, a proto byl vytvořen optimalizační algoritmus, jenž obě kritéria kombinuje.
V prvním kroku je jako optimalizační kritérium použita MSE nebo střední absolutní chyba (MAE), a to ke kalibraci parametrů Dgw (pouze měsíční typ), Dgm, Spa a Alf, které výrazně ovlivňují průměrný odtok.
Parametry kalibrované v prvním kroku jsou vyznačeny ve vstupní tabulce parametrů modrou barvou.
Zbývající parametry Wic (pouze měsíční typ), Mec, Soc a Grd, ovlivňující rozdělení odtoku na složky, jsou poté kalibrovány s využitím MAPE. Tím kalibrační algoritmus zajišťuje zpravidla přijatelnou shodu jak z hlediska průměrného odtoku, tak z hlediska malých odtoků, které jsou tvořeny převážně základním odtokem. Ve výstupech modelu se zobrazí výsledná hodnota optimalizačního kritéria pro druhou část.
Počet iterací Hodnoty parametrů modelu odvozené optimalizačním algoritmem mohou být ovlivněny také nastavením počtu iterací, který má tento algoritmus provést. Výchozí hodnota, odvozená z praktické zkušenosti, činí 500. Běžně tuto hodnotu není nutné měnit.
Výpočet lze spustit také bez optimalizace parametrů, v tom případě se použijí jejich počáteční hodnoty. Lze toho dosáhnout tím, že se počet iterací optimalizace nastaví na nulu.
Globální algoritmus shuffled complex evolution/differential evolution
Globální algoritmus využívá techniku shuffled complex evolution (SCE-UA) kombinovanou s diferenciální evolucí pro evoluci komplexu. Algoritmus zahrnuje následující uživatelská nastavení:
- typ diferenciální evoluce (best/1/bin, best/2/bin nebo rand/2/bin),
- počet komplexů NC,
- velikost komplexu M,
- počet promíchání,
- počet generací,
- parametr křížení CR,
- parametr mutace F,
- parametr mutace K,
- velikost ensemblu − vypočítán bude ensemble běhů optimalizace.
Váha pro základní odtok
Ve výchozím nastavení se optimalizační kritérium počítá z řad pozorovaného a simulovaného odtoku. Hodnota váhy pro základní odtok wBF (mezi 0 a 1) nastaví, aby se při optimalizaci uvažoval rozdíl mezi řadami pozorovaného a simulovaného základního odtoku.
Váhy pro kalibraci odtoku
Volitelně lze hodnotám odtoku přiřadit váhy pro kalibraci, což umožňuje určité úseky časové řady zdůraznit nebo zmenšit význam nevěrohodných dat. Váhy se načítají jako jedna ze vstupních veličin. Jsou považovány za relativní, proto jejich součet nemusí být jedna. Části časových řad mohou být z optimalizace vynechány tím, že se jim váhy nastaví na nulu.
Váhy pro kalibraci se zapnou zaškrtnutím pole Použít řadu vah. Hodnoty vah lze nastavit také v dialogovém okně Nastavit veličiny nebo v grafech.
V R prostředí použijeme funkci: bil.set.optim
5.5 Interaktivní spouštění
Optimalizace modelu může být spouštěna automaticky poté, co se změní jakýkoliv parametr či nastavení výpočtu. Díky tomu je možné sledovat, jak se mění výsledky a grafy jako interaktivní odezva na vstup uživatele. Tento režim se povoluje zaškrtnutím pole Interaktivně nacházejícího se vedle tlačítka Spustit na kartě Povodí. Interaktivní výpočty se týkají prahové hodnoty (jež ovlivňuje nedostatkové objemy) a veškerého nastavení na kartě Povodí včetně počátečních hodnot a mezí parametrů. Interaktivní spouštění není k dispozici pro nastavení zadávané do speciálních dialogových oken (například do oken vyvolaných tlačítkem Nastavení; výsledky jsou ovšem aktualizovány při potvrzení dialogového okna). Výjimkou je dialogové okno pro transformaci vstupních dat vyvolané tlačítkem Naklonovat a transformovat.
6 Inicializace stavu modelu
Stavové veličiny modelu (zásoby v nádržích a režim podle ročního období) je možné získat pro stanovený časový krok a následně je lze (případně upravené) použít k inicializaci modelu v libovolném časovém kroku.
Tato možnost není v GUI k dispozici.
V R prostředí použijeme funkci: bil.run
7 Nastavení a výsledky pro soustavu
Povodí je možné uspořádat do soustavy. Následně lze provést optimalizaci, která bere vztahy mezi povodími v úvahu.
Je nutné, aby povodí v soustavě měla shodný typ modelu a aby se přesně shodovala jejich období s dostupnými daty. Kromě toho pro ně musí být nastaveny plochy, aby mohly být vypočteny absolutní hodnoty průtoku.
Na začátku jsou všechna povodí považována za součást soustavy, posléze jsou z ní však odstraněna ta povodí, která nesplňují požadované podmínky. Povodí se připojí k jinému povodí soustavu nastavením vlastnosti Větší povodí na kartě Povodí.
Struktura soustavy je ve stromové podobě zobrazena v části Struktura soustavy na kartě Soustava. Pokud je zvolena neplatná cyklická struktura nebo se neshoduje typ modelu či období dat, místo názvu souboru povodí se zobrazí upozornění.
V R prostředí použijeme funkce: sbil.new, sbil.add.catchs, sbil.remove.catchs
Povodí, u nichž se typ a rozsah dat neshoduje s prvním povodím soustavy, povodí, která s ním nemají spojení a povodí bez zadané plochy jsou ze soustavy před optimalizací odstraněna. Soustavu není možné vypočítat, má-li cyklickou strukturu nebo neobsahuje-li žádné povodí.
Pro optimalizaci soustavy se použije typ a nastavení optimalizace zadané pro první povodí v seznamu. To je naznačeno popiskem Také pro soustavu, který se zobrazuje nad nastavením optimalizace, když je první povodí v seznamu vybráno.
Optimalizace se spustí tlačítkem Spustit optimalizaci soustavy. Před začátkem optimalizace se odstraní povodí nesplňující výše popsané podmínky; při jejich uplatňování se předpokládá, že prvním povodím soustavy je první povodí v seznamu.
V R prostředí použijeme funkce: sbil.set.optim, sbil.optimize
Kritérium použité při optimalizaci parametrů soustavy povodí je vypočteno jako průměr kritérií ze všech povodí. Při výpočtu průměru se součet kritérií z jednotlivých povodí zvětší o penalizaci, což je funkce rozdílů mezi modelovanými odtoky povodí a příslušného většího povodí. V současnosti se používá naivní experimentální penalizační funkce: pro každý časový krok, v němž se vyskytne záporný rozdíl mezi odtoky vyjádřenými jako absolutní hodnoty průtoku, se přičte hodnota 0,1.
Výsledky optimalizace soustavy se zobrazí v dolní části karty Soustava. Nejprve jsou uvedeny hodnoty kritéria a penalizace, následuje tabulka kritérií a penalizací pro každé povodí. Penalizační hodnoty se vztahují k rozdílu mezi povodím uvedeným na témže řádku a příslušným větším povodím.
Výsledky se pro jednotlivá povodí zobrazí na kartách Výsledky a Grafy, pokud je dané povodí vybráno v hlavním seznamu na levé straně.
V R prostředí použijeme funkce: sbil.get.optim, sbil.get.catch
8 Výsledky a výstup
Jakmile je optimalizace dokončena, na kartě Výsledky se zobrazí výsledné optimalizované parametry a průměrné roční hodnoty všech veličin (vypočtené z řad pro úplné hydrologické roky). Zobrazí se také výsledná hodnota optimalizačního kritéria spolu se zkratkou typu kritéria (MSE pro střední kvadratickou chybu, MAE pro střední absolutní chybu, MAPE pro relativní odchylky, NS a ln NS pro kritéria založená na Nashově-Sutcliffově koeficientu).
V R prostředí použijeme funkce: bil.get.values, bil.get.data, bil.get.param
Je-li použit způsob SCE-UA a přitom je velikost ensemblu větší než 1, aktuální soubor v seznamu nalevo bude představovat první člen ensemblu, výsledky pro další členu budou uloženy v povodích označených jako NAZEV SOUBORU_ensembleCISLO, které se do seznamu nově přidají.
V R prostředí použijeme funkce: bil.get.ens.resul
Výsledky se zapíší do souboru volbou typu výstupu v části Typ výstupních řad a stisknutím tlačítka Uložit do souboru. Nezadá-li uživatel v souborovém dialogovém okně příponu, automaticky se použije přípona .txt.
V R prostředí použijeme funkce: bil.write.file
Výstup modelu do souboru je možný jako tři typy řad: denní řady (pouze denní typ), měsíční řady a měsíční charakteristiky. Denní nebo měsíční řady jsou časové řady veličin (vstupních i výstupních), které byly modelem zpracovány či simulovány. V případě měsíčních řad pro denní typ modelu se jedná o měsíční řady agregované pro úplné měsíce. Měsíční charakteristiky jsou představovány průměrnými hodnotami, minimy a maximy, které byly odvozeny z měsíčních řad pro všechny měsíce roku a pro každou veličinu. Vypočteny byly z řad pro úplné hydrologické roky.
Pokud nejsou data k dispozici nebo nejsou pro danou veličinu relevantní, ve výstupu časových řad i charakteristik se objeví hodnota NA.
Kromě vybraného typu řady bude soubor obsahovat informaci o počátečním datu, optimalizačním kritériu a optimalizovaných parametrech. Příklad je uveden dále. Zkratky veličin jsou uvedeny v tabulce 2.
Nedostatkové objemy se počítají pouze v GUI a pouze pokud jsou nastaveny veličiny užívání vod, plocha povodí a prahová hodnota.
Prvky hydrologické bilance (P, R, RM, BF, B, I, DR, PET, ET, INF, PERC, RC, POD, POV, PVN, VYP) jsou vyjádřeny jako denní či měsíční úhrny v mm [mm.den-1, mm.měsíc-1]. Prvky zásoby vody (SW, SS, GS, DS, DEFV) jsou vyjádřeny jako výšky vodního sloupce [mm].
Je-li v předvolbách aplikace nastavena možnost Objem, prvky hydrologické bilance budou vyjádřeny jako toky [m3.s-1] (kromě hodnot srážek a evapotranspirace, které zůstanou v mm) a prvky zásoby vody budou vyjádřeny jako objem [m3]. Týká se to také průměrných ročních hodnot zobrazených v tabulce výsledků nebo v legendě grafu.
Časové řady tvoří matici. Každý řádek matice obsahuje data pro určitý den nebo měsíc (např. 1.listopad 1977 či listopad 1971), zatímco sloupce představují jednotlivé veličiny.
Ve výstupu měsíčních charakteristik tvoří matici každá veličina. Řádky matice obsahují data pro jednotlivé měsíce roku (např. listopad), zatímco sloupce představují označení měsíce, minimální hodnoty, průměrné hodnoty a maximální hodnoty.
Příklad výstupních měsíčních časových řad:
Initial
1931-11-1
Spa 56.332
Dgw 10.2274
Alf 0.00100975
Dgm 25.8721
Soc 0.214994
Wic 0.218584
Mec 0.691611
Grd 0.156746
OK 0.343649
P R RM BF B I DR PET ET SW SS GS INF PERC RC T H WEI
5.957 17.658 7 87312 7.83729 NA 0 0.0358 9.19836 9.10486 53.1483 0 42.1627 5.92117 0 0 1.454 84 1
63.117 20.115 15.8074 6.60883 NA 9.1986 0 4.57095 4.57095 56.332 13.2797 68.438 45.2664 42.0827 32.8841 -3.574 87 1
… … … …
Příklad výstupních měsíčních charakteristik:
Initial
1931-11-1
Spa 56.332
Dgw 10.2274
Alf 0.00100975
Dgm 25.8721
Soc 0.214994
Wic 0.218584
Mec 0.691611
Grd 0.156746
OK 0.343649
month min mean max
P
11 5.957 58.8554 136.212
12 2.098 59.9924 151.283
1 16.76 54.5892 191.02
2 6.177 48.9115 148.65
3 4.053 45.6621 97.628
4 12.035 49.7532 106.812
5 14.209 77.7308 156.832
6 38.282 92.3674 234.564
7 13.201 101.426 254.736
8 24.409 90.5929 213.021
9 3.723 62.7433 194.695
10 0.663 56.198 180.72
R
11 8.129 22.6984 60.226
… … … …
9 Grafy výsledků
Výsledky mohou být zobrazeny v několika typech grafů, jenž zobrazují časové řady zvolených veličin nebo jejich statistické charakteristiky. Všechny možnosti se pro grafy nastavují na kartě Grafy.
V grafu se zobrazují hodnoty pro aktuálně vybrané povodí. Aby se pro některé povodí zobrazily hodnoty trvale, je potřeba pod seznamem povodí zaškrtnout pole Zobrazit vždy v grafech, a to tehdy, když je požadované povodí vybráno. Tato vlastnost se uplatňuje ve všech typech grafů.
Veličiny, které se mají vykreslit, jsou zaškrtnuty v seznamu Veličiny v grafu. Při přejetí zkratky veličiny myší se zobrazí tip s názvem veličiny.
Časové řady se zobrazí při možnosti Denní řady nebo Měsíční řady. V případě měsíčních řad pro denní data se použijí agregované měsíční hodnoty. K dispozici jsou čtyři základní typy měsíčních charakteristik: průměry, minima, maxima a krabicové grafy, v nichž je krabice tvořena prvním a třetím kvartilem a mediánem a úsečky sahají od minima do maxima řady.
U grafů časových řad je možné měnit měřítko osy X pomocí ikon Přiblížit a Oddálit. Stisknutím některé z těchto ikon se zapne interaktivní režim přibližování, ve kterém lze měnit měřítko také posouváním kolečkem myši. Stisknutím ikony Zobrazit vše se zobrazí úplná časová řada a interaktivní režim se vypne.
V grafech časových řad jsou se šedým pozadím vyznačena období, pro která jsou nastaveny nulové váhy pro optimalizaci. Období s konstantní nenulovou váhou lze interaktivně změnit stisknutím ikony Nastavit období s konstantními vahami (což zapne režim výběru období pro váhy) a kliknutím do grafu. Váhy se nastaví pro období mezi dvěma časovými kroky označenými kliknutím, a to stejným způsobem jako možnost v dialogovém okně Nastavit veličiny.
Pro specifičtější analýzy mohou být zobrazeny kvantilové grafy měsíčních dat, Gumbelovy grafy, zaměřující se na extrémní hodnoty měsíčních řad (minima nebo maxima) a Q-Q graf je bodový graf odpovídajících si kvantilů pozorovaného odtoku R a simulovaného odtoku RM.
Interval měsíců, které se mají uvažovat, je možné pro všechny typy kvantilových grafů zadat pomocí rozbalovacích seznamů Od…do. Díky tomu lze analyzovat charakteristiky časových řad pro jednotlivá roční období.
Legenda grafu se zobrazí po zaškrtnutí pole Zobrazit legendu. Položky legendy sestávají ze zkratky veličiny, názvu vstupního souboru povodí a průměrné roční hodnotě veličiny. U Q-Q grafů se legenda nezobrazuje.
Je-li pro povodí stanovena prahová hodnota, zaškrtnutím pole Zobrazit prahovou hodnotu se zobrazí konstantní prahová hodnota (ve všech typech grafů) nebo měsíční hodnoty (v grafech měsíčních časových řad a charakteristik).
Všechny grafy mohou být pomocí tlačítka Exportovat do souboru uloženy jako obrázek PNG nebo dokument PDF. Nezadá-li uživatel v souborovém dialogovém okně příponu, automaticky se použije přípona .png či .pdf.
10 Modifikace modelu
Kromě výchozího denního a měsíčního typu modelu existují v současnosti dva modely s upravenou strukturou nebo funkcemi. Tyto modifikované verze jsou považovány za experimentální a nejsou vhodné pro běžné nasazení.
Modifikace nejsou v GUI k dispozici.
V R prostředí použijeme funkce: bil.new
10.1 Pouze jediný parametr rozdělující perkolaci
V této modifikaci je pro rozdělení perkolace použit pouze jediný parametr, označený jako Soc, místo tří (měsíční) nebo dvou (denní verze) parametrů Soc, Mec, Wic. Nahrazené parametry se stále objevují ve výstupech modelu, ačkoliv nemají na výsledky žádný vliv.
10.2 Libovolný časový krok
Tato modifikace umožňuje použít libovolný časový krok zadaný jako počet dní. Upravená verze se liší pouze ve výpočtu PET, jinak se používají algoritmy původního denního nebo měsíčního modelu. Například tak může být použita struktura denní verze pro týdenní, nebo dokonce měsíční data. Hodnoty parametrů pro upravený časový krok mají jiné měřítko než parametry původního modelu, a nelze je tudíž srovnávat.