Metoda SCS CN¶
Teoretický popis metody, základní symboly použité v dalším textu, popis vstupních dat a navrhovaný postup je součástí školení GRASS GIS pro pokročilé.
Postup zpracovaní v QGIS¶
Krok 1¶
Sjednocení hlavních půdních jednotek a komplexního průzkumu půd
V prvním kroku založíme projekt a pomocí
Přidaní vektorové vrstvy a
Přidat vrstvu s odděleným textem vložíme do panelu vrstev
vstupní data - vektorová data ve formátu Esri Shapefile
hpj.shp
, kpp.shp
, landuse.shp
,
povodi.shp
a soubory s odděleným textem
hpj_hydrsk.csv
, kpp_hydrsk.csv
,
lu_hydrsk_cn.csv
, viz školení QGIS pro začátečníky.
Následně sjednotíme vrstvu hlavních půdních jednotek (hpj) a komplexního průzkumu půd (kpp). Využijeme nástroj geoprocessingu Sjednotit, který najdeme v záložce anebo v Nástroje zpracování. Vznikne nová vektorová vrstva hpj_kpp.
Krok 2¶
Připojení informací o hydrologické skupině
Tabulku hpj_hydrsk můžeme připojit k atributům nové vektorové vrstvy hpj_kpp pomocí společného sloupce HPJ (Obr. 102). Pravým tlačítkem myši v panelu vrstev u hpj_kpp zvolíme Vlastnosti a v dialogovém okně přejdeme do záložky Připojení. Kliknutím na ikonku spustíme dialogové okno s nastavením pro připojení (Obr. 103), viz kapitola Připojení tabulkových dat ve školení QGIS pro začátečníky.
Tímto způsobem připojíme tabulky s informacemi o hydrologických skupinách (Obr. 104).
Poznámka
V některých případech nemusí připojení tabulek proběhnout korektně, např. pokud se liší datový typ sloupečků použitých pro připojení. Typicky textové vs. číselné pole, např. ‚09‘ vs. ‚9‘. V tomto případě je nutné data před přípojením sjednotit.
Poté otevřeme atributovou tabulku hpj_kpp, zapneme editační mód
ikonkou Přepnout editaci a pomocí kalkulátoru
polí Otevřít kalkulátoru polí vytvoříme
nový atribut. Použijeme připojené atributy o hydrologické skupině
(hpj_HydrSk z hlavních půdních jednotek a
kpp_HydrSk z komplexního průzkumu půd). Primárně použijeme
hydrologickou skupinu pro hlavní půdní jednotky. Kde informace není
dosupná - hodnota NULL, tam použijeme
kpp_HydrSk (Obr. 105) a výsledek zobrazíme
(hydrsk-map
).
CASE WHEN "hpj_HydrSk" IS NULL THEN "kpp_HydrSk" ELSE "hpj_HydrSk" END
Krok 3¶
Průnik vrstvy hydrologických skupin s vrstvou využití území
Využijeme nástroj geoprocessingu Protnutí. Výslednou vrstvu průniku nazveme hpj_kpp_landuse.
Poznámka
V tomto případě má bohužel QGIS problém uložit výsledné prvky do výchozího formátu OGC Geopackage. Funkční náhradou je např. ESRI Shapefile. Uložení výsledku do formátu ESRI Shapefile je navíc často i rychlejší v porovnání s výchozím formátem OGC Geopackage.
Krok 4¶
Připojení hodnot odtokové křivky \(CN\)
V dalším kroku je potřeba vytvořit atribut, který bude obsahovat údaje o využití území a o hydrologické skupině půdy dané elementární plochy ve tvaru VyužitíÚzemí_HydrologickáSkupina.
Pomocí kalkulátoru polí Otevřít
kalkulátor polí vytvoříme nový atribut a nazveme jej
lu_hydrsk (datový typ nastavíme na řetězec). Hodnota
atributu bude ve tvaru LandUse||'_'||hydrsk
.
Ve vlastnostech vrstvy Připojení připojíme tabulku
lu_hydrsk_cn.csv
. Tímto krokem získáme pro každou elementární
plochu odpovídající hodnotu CN.
Krok 5¶
Sjednocení průniku vrstvy hydrologických skupin a využití území s vrstvou povodí
Do této fáze je možné používat QGIS relativně bez problémů. Při větších objemech dat mohou být ale nativní nástroje QGISu časově náročné a nestabilní.
Hodnoty návrhových srážek s různou dobou opakovaní do vrstvy přidáme pomocí operace Sjednotit.
Tato operace bohužel končí topologickou chybou
TopologyException: Input geom 0 is invalid: Hole lies outside shell at or near point ...
V nastavení
nastavíme Ignorovat prvky s neplatnými geometriemi a výpočet spustíme znovu. Nové nastavení výrazně výpočet zpomalí, nicméně ani to nepomůže. Výpočet končí chybou.TopologyException: found non-noded intersection between LINESTRING (...) and LINESTRING (...) at ...
Pro další řešení tedy použijeme výpočetně stabilnější nástroje systému GRASS GIS. Více o systému GRASS v rámci školení GRASS GIS pro začátečníky. Překryvné operace jako protnutí či spojení má v systému GRASS na starost nástroj v.overlay.
Výpočetní nástroje systému GRASS lze spouštět buď přímo z Nástroje zpracování anebo pomocí zásuvného modulu GRASS. Druhý způsob by vyžadoval vytvořit GRASS lokaci, naimportovat do ní vstupní data. Tento postup byl výhodný především, pokud bychom chtěli zbytek výpočtu již provést v systému GRASS celý. Jelikož chceme provést mimo nativní nástroje QGIS pouze jeden výpočet, tak zvolíme možnost spuštění nástroje GRASS přímo z nástroje zpracovaní.
Tip
Postup postavený na zásuvnému modulu GRASS je k dohledání ve starších materiálech školení pro verzi QGIS 2.18.
Bohužel externí nástroje spuštěné z nástrojů zpracování ignorují připojené tabulky ke vstupní vrstvě. Abychom tedy nepřišli o připojené hodnoty CN, musíme nejprve vstupní vrstvu zapsat do nového souboru.
Je důležité si uvědomit, že nástroj v.overlay přidává k
názvům atributu prefix a_
a b_
. To podle toho z jakého vstupní
vrstvy atributy pocházejí.
Poznámka
V případě, že jste soubor lu_hydrsk_cn.csv
vložili
do projektu přímo z panelu prohlížeče, tak nebyly koretně nastaveny
datové typy sloupečků. Všechny atributy jsou uloženy jako řetězce.
Vzhledem k tomu, že budeme dále pracovat především s hodnotami
CN, je třeba pro další operace, aby typ tohoto atributu byl
číselný, na což použijeme funkci to_int()
. Vytvoříme tedy nový
atribut CN s datovým typem integer.
Krok 6¶
Výpočet výměry elementárních ploch, parametru \(A\) a parametru \(I_a\)
Pro každou elementární plochu vypočítame její výměru, parametr \(A\) a \(I_a\).
Do atributové tabulky hpj_kpp_lu_pov přidáme nové atributy
vymera, A, I_a, a to s datovým
typem desetinné číslo. Jejich příslušné hodnoty vypočítáme obdobně
jako při tvorbě atributu s hodnotami o využití
území a hydrologické skupině. Pro určení výměry každé elementární
plochy využijeme proměnnou $area
.
vymera = $area
A = 24.5 * (1000 / CN - 10)
I_a = 0.2 * A
Krok 7¶
Výpočet parametru \(H_o\) a parametru \(O_p\) pro každou elementární plochu
Znázornění vektorové vrstvy povodí s návrhovými srážkami v prostředí QGIS je uvedeno na Obr. 113 (maximální hodnota atributů H_002_120 představuje 23 mm). Histogramy je možné vykreslit v záložce Diagramy ve vlastnostech konkrétní vrstvy.
Vypočítáme výšku přímého odtoku v mm jako parametr \(H_o\) a objem jako parametr \(O_{p}\).
V dalších krocích budeme uvažovat průměrný úhrn návrhové srážky \(H_{s}\) = 32 mm. Při úhrnu s dobou opakovaní 2 roky (atribut H_002_120) či dobou 5, 10, 20, 50 anebo 100 roků by byl postup obdobný.
Důležité
Hodnota v čitateli vztahu pro \(H_o\) musí být kladná, resp. nelze umocňovat záporné číslo. V případě, že čitatel je záporný, výška přímého odtoku je rovná nule. Pomůžeme si novým atributem v atributové tabulce, který nazveme HOklad.
HOklad = 32 - (0.2 * A)
HO = (HOklad * HOklad) / (32 + (0.8 * A))
OP = vymera * (HO / 1000)
Krok 8¶
Vytvoření rastrových vrstev výšky a objemu přímého odtoku
QGIS nabízí dva externí nástroje umožňující převést vektorovou vrstvu na rastr. První pochází z knihovny GDAL, druhý ze systému GRASS GIS, a to v.to.rast.
Výsledky vizualizované v prostředí QGIS jsou uvedeny na Obr. 117.
Krok 9¶
Výpočet průměrných hodnot výšky a objemu přímého odtoku pro povodí
V dalším kroku vypočítáme průměrné hodnoty přímého odtoku pro každé povodí v řešeném území. Použijeme GRASS nástroj v.rast.stats, který počítá základní statistické informace rastrové vrstvy na základě vektorové vrstvy a ty ukladá do nových atributů v atributové tabulce. Dialogové okno je uvedeno na Obr. 118.
Vektorovou vrstvu povodí potom můžeme převést do podoby rastrové vrstvy, přičem jako klíčový atribut použijeme ho_average, resp. op_average. Výstup zobrazený v prostředí QGIS je na Obr. 119.