Upload
riccardo-rigon
View
2.945
Download
1
Embed Size (px)
Citation preview
Analisi Idro-Geomorfologica con iJGrasstools e le Horton Machine
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
“Free Software . . . you shouldthink of ‘free’ as in ‘free speech’,not as in ‘free beer’. ”
Richard Stallman
1
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Le Horton Machine
Le Horton Machine sono un pacchetto sviluppato con l’obbiettivo difornire degli strumenti quantitativi e qualitativi per indagare lamorfologia di un bacino idrografico.å Analisi Geomorfologica
L’obbiettivo è analizzare i processi di erosione dei canali fluviali e lapossibilità di innesco di frane superficiali.
Questo viene fatto considerando che i processi geomorfologici principaliin un bacino siano:
Erosione diffusiva dei pendiiProcessi di incisione da parte dei canaliTrasporto dei sedimenti nei canaliFrane
2
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Le Horton Machine
Le Horton Machine sono un pacchetto sviluppato con l’obbiettivo difornire degli strumenti quantitativi e qualitativi per indagare lamorfologia di un bacino idrografico.å Analisi Geomorfologica
L’obbiettivo è analizzare i processi di erosione dei canali fluviali e lapossibilità di innesco di frane superficiali.
Questo viene fatto considerando che i processi geomorfologici principaliin un bacino siano:
Erosione diffusiva dei pendiiProcessi di incisione da parte dei canaliTrasporto dei sedimenti nei canaliFrane
2
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Le Horton Machine
I comandi delle HortonMachine sono statisuddisi in 7 categorie:
Analisi del reticolo idrograficoå Network
Analisi relative al bacinoå Hydro-Geomorphology
Indici idro-geomorfologiciå Basin
Attributi del bacinoå Geomorphology
Analisi dei versantiå Hillslope
Manipolazione dei DEMå DEM Manipulation
Statisticheå Statistics 3
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Le Horton Machine
Analisi del reticoloidrograficoå Network
Comandi che permettono dideterminare alcuneproprietà del reticoloidrografico.
4
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Le Horton Machine
Analisi relative al bacinoå Hydro-Geomorphology
Comandi che permettono di svolgereanalisi di un bacino idrografico.
Indici idro-geomorfologiciå Basin
Comandi che permettono di determinarealcuni indici relativi al bacino idrografico.
5
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Le Horton Machine
Attributi del bacinoå Geomorphology
Comandi che permettono di calcolarealcuni attributi del bacino quali pendenza,direzioni di drenaggio, aree contribuenti.
Analisi dei versantiå Hillslope
Comandi che permettono di calcolarealcune caratteristiche dei versanti delbacino e di determinare una classificazionein base alle loro proprietà morfologiche.
6
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Le Horton Machine
Manipolazione dei DEMå DEM Manipulation
Comandi che permettono di svolgereanalisi preliminari sui modelli digitali delterreno.
Statisticheå Statistics
Comandi che permettono di condurrealcune analisi statistiche sui bacini.
7
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
La morfologia
La topografia è rappresentata mediante una funzione continuabivariata z = f (x, y) e con le sue derivate fino al secondo ordine.
8
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Modelli Digitali del Terreno
La forma più comune ed efficiente dirappresentare un Modello Digitale delTerreno (D.T.M.) è mediante una grigliaquadrata di dati.
Ipotesi:valori significativigriglia quadrata regolaretopografia ad 8 direzioni
I dati in questa forma,chiamata raster,rappresentano la coordinataverticale z per una serie dipunti successivi lungo undeterminato profilo spaziale.
9
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Operazioni preliminari
Prima di poter operare sul DTM con i comandi delle Horton Machineè necessario:
1 creare l’ambiente di lavoro location2 importarvi all’interno la mappa
contenente il modello digitale del terreno (DTM)å generalmente è in formato raster ascii, come un .asc
3 settare la regione di lavoro Processing Region
Dopodichè l’obbiettivo principale è quello di estrarre il bacinod’interesse, sono necessarie alcune elaborazioni del dtm di partenza:
5 Riempimento delle depressioni Pitfiller6 Calcolo delle direzioni di drenaggio Flowdirection/Draindir7 Estrazione del reticolo idrografico ExtractNetwork8 Estrazione del bacino idrografico Wateroutlet
10
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Operazioni preliminari
Prima di poter operare sul DTM con i comandi delle Horton Machineè necessario:
1 creare l’ambiente di lavoro location2 importarvi all’interno la mappa
contenente il modello digitale del terreno (DTM)å generalmente è in formato raster ascii, come un .asc
3 settare la regione di lavoro Processing Region
Dopodichè l’obbiettivo principale è quello di estrarre il bacinod’interesse, sono necessarie alcune elaborazioni del dtm di partenza:
5 Riempimento delle depressioni Pitfiller6 Calcolo delle direzioni di drenaggio Flowdirection/Draindir7 Estrazione del reticolo idrografico ExtractNetwork8 Estrazione del bacino idrografico Wateroutlet
10
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Operazioni preliminari: Pitfiller
La prima operazione da fare è riempire i punti di depressione presentinel dtm in modo da poter poi definire univocamente le direzioni didrenaggio in ogni punto.
Il comando che si utilizza per questo sfrutta l’algoritmo di Tarboton.å Dem Manipulation -> Pitfiller
Analisi a riguardo di questo argomento hanno dimostrato che questaelaborazione riguarda meno dell’1% dei punti egeneralmente questi punti di depressioneprovengono da errori di calcolo nella fase di creazione del dtm.å Generalmente non si tratta di reali depressioni
11
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Operazioni preliminari: Pitfiller
La prima operazione da fare è riempire i punti di depressione presentinel dtm in modo da poter poi definire univocamente le direzioni didrenaggio in ogni punto.
Il comando che si utilizza per questo sfrutta l’algoritmo di Tarboton.å Dem Manipulation -> Pitfiller
Analisi a riguardo di questo argomento hanno dimostrato che questaelaborazione riguarda meno dell’1% dei punti egeneralmente questi punti di depressioneprovengono da errori di calcolo nella fase di creazione del dtm.å Generalmente non si tratta di reali depressioni
11
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Operazioni preliminari: Pitfiller
La prima operazione da fare è riempire i punti di depressione presentinel dtm in modo da poter poi definire univocamente le direzioni didrenaggio in ogni punto.
Il comando che si utilizza per questo sfrutta l’algoritmo di Tarboton.å Dem Manipulation -> Pitfiller
Analisi a riguardo di questo argomento hanno dimostrato che questaelaborazione riguarda meno dell’1% dei punti egeneralmente questi punti di depressioneprovengono da errori di calcolo nella fase di creazione del dtm.å Generalmente non si tratta di reali depressioni
11
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: utilizzo del comando
Per far girare questo comando,come tutti gli altri comandi, ènecessario definire gli inputs e glioutputs negli appositi tab posti infondo alla finestra degli SpatialToolbox.
Si può vedere che è inoltre presenteun terzo tab contenente una rapidadescrizione del comando, degliinputs necessari, degli outputsforniti e delle sintassi per utilizzareil comando in uno script.
12
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: utilizzo del comando
Per far girare questo comando,come tutti gli altri comandi, ènecessario definire gli inputs e glioutputs negli appositi tab posti infondo alla finestra degli SpatialToolbox.
Si può vedere che è inoltre presenteun terzo tab contenente una rapidadescrizione del comando, degliinputs necessari, degli outputsforniti e delle sintassi per utilizzareil comando in uno script.
12
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: inputs
L’input necessario per questocomando è il dtm stesso.
Per fornire una mappa bisognacliccare sull’apposito bottone ...accanto al nome della mapparichiesta nel tab inputs.
Si aprirà così una finestra di inputdove inserire tutte le informazioninecessarie.
13
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: inputs
L’input necessario per questocomando è il dtm stesso.
Per fornire una mappa bisognacliccare sull’apposito bottone ...accanto al nome della mapparichiesta nel tab inputs.
Si aprirà così una finestra di inputdove inserire tutte le informazioninecessarie.
13
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: inputs
L’input necessario per questocomando è il dtm stesso.
Per fornire una mappa bisognacliccare sull’apposito bottone ...accanto al nome della mapparichiesta nel tab inputs.
Si aprirà così una finestra di inputdove inserire tutte le informazioninecessarie.
13
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: inputs
Alla prima voce bisogna indicaredove è collocata la mappa, quindi ilsuo path.Oltre al path sono presenti duecampi con i valori da leggere e dascrivere come novalue, qualora nonfossero presenti dati.Infine, se si è scelto di lavorareutilizzando la Processing Region,sono presenti una serie di vociriguardanti le impostazioni diquesta: confini, risoluzione, numerodi righe e colonne; se la si è giàimpostata correttamente non ènecessario modificarle.
14
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: inputs
Lavorando all’interno di unalocation GRASS/JGrass per fornirein input una mappa è necessarioindicare il percorso del filecorrispondente alla mappa nellacartella cell contenuta nellalocation.
Questo si può agevolmenteidentificare mediante la finestra dinavigazione dei files che comparecliccando sul pulsante ... accantoal campo dedicato al path.
15
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: output
Successivamente è necessarioindicare le opzioni di output dainserire nel tab output.
L’output di questo comando, co-me di molti comandi dei JGras-stools, è la mappaelaborata dal comando stesso.
‘E quindi necessario indicare nellafinestra di output che si aprecliccando sul bottone ... il nomedella mappa di output ed ilpercorso dove salvarla.
16
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: output
Inoltre lavorando all’interno di unalocation il percorso di salvataggioda indicare dovrà essere sempre lacartella cell all’interno dellalocation stessa.
Questo percorso può essere sempreagevolmente identificato mediantela finestra di navigazione dei filesche compare cliccando sul pulsante... accanto al campo dedicato alpath.
Il nome con cui salvare la mappa dioutput del comando può inveceessere inserito nell’apposito camposenza scrivere nessuna estensione.
17
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: ASCII input & output
Se invece che lavorare in una location GRASS/JGrass si vuole lavorarein formato ESRI ASCII le mappe sono dei semplici file .asc.
Nella selezione dell’input èsufficiente selezionare il file .asccorrispondente alla mappa, mentrenell’indicare l’output si può indicareun percorso di salvataggio apiacere: è però necessario indicarel’estensione .asc nel nome del file.
Questo formato raster ha però alcuni svantaggi nell’utilizzo in quantonon mantiene le categorie e le scale dei colori delle mappe, che è quindinecessario reimpostare in uDig a ogni utilizzo.
18
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: esecuzione del comando
Inserite tutte le opzioni necessarie èpossibile eseguire il comandocliccando sul bottone I Run theselected module in alto a destranella finestra degli Spatial Toolbox.
Il comando viene quindi eseguitomostrando in Console laprogressione; terminatal’esecuzione, la nuova mappa vieneautomaticamente caricata nellalocation e aggiornato il Catalogo diuDig.
19
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pitfiller: esecuzione del comando
Visualizzazione della mappa output di Pitfiller in una nuova Mappa
20
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Analisi dei valori di una mappa: RasterSummary
Ora che abbiamo visto come si utilizza un comando attraverso gliSpatial Toolbox e creata la nostra prima mappa vediamo un utilecomando che fornisce le statistiche riassuntive relative ad una mappa.
Questo comando non appartiene alle Horton Mchine masemplicemente ai moduli generici di Raster Processingil comando RasterSummary calcola le statistiche dei valori di unamappa raster
Nello specifico il comado calcolaalcune grandezze riassuntive dell’intera mappa: valore minimo,valore massimo, valore media, deviazione standard, somma di tuttii valori, la quantità di no dataoltre a fornire tutti i dati per costruire l’istogramma delladistribuzione dei valori contenuti nella mappa
21
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Analisi dei valori di una mappa: RasterSummary
Ora che abbiamo visto come si utilizza un comando attraverso gliSpatial Toolbox e creata la nostra prima mappa vediamo un utilecomando che fornisce le statistiche riassuntive relative ad una mappa.
Questo comando non appartiene alle Horton Mchine masemplicemente ai moduli generici di Raster Processingil comando RasterSummary calcola le statistiche dei valori di unamappa raster
Nello specifico il comado calcolaalcune grandezze riassuntive dell’intera mappa: valore minimo,valore massimo, valore media, deviazione standard, somma di tuttii valori, la quantità di no dataoltre a fornire tutti i dati per costruire l’istogramma delladistribuzione dei valori contenuti nella mappa
21
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
RasterSummary: input
Questo particolare comandorichiede in input:
la mappa su cui calcolare lestatistichenumero di intervalli in cuidividere il range di valoridella mappa per calcolarel’istogrammail check per indicare dicalcolare tutti i datidell’istogramma
22
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
RasterSummary: output
I valori in output vengono stampatinella vista Console di uDig, possonoquindi essere facilmente salvati inun file di testo puro (mediante uncopia & incolla) in formato ASCII(ad esempio: disth.txt), che unqualsiasi foglio elettronico, o R (!),può leggere facilmente.Stampa, in ordine da sx a dx:
la media nell’intervallo deivalori della mappa mappail numero di pixel della mappanell’intervallola percentuale di pixel dellamappa nell’intervallo
23
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Esempio di plot dei risultati
Questo è un esempio di plot con R della distribuzione delle quote deipunti del dtm in esame, prima con ordinata i pixel, poi la percentuale.
read.table(disth.txt)->dhplot(dh[,1],dh[,2],type=“l”,ylab=“Area [pixel]”,xlab=“Quote [m]”,main=“Distribuzione delle quote”)
24
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Le direzioni di drenaggio
Le direzioni di drenaggio definiscono come l’acqua si muove sullasuperficie del terreno in relazione alla topografia della regione in analisi.
IpotesiOgni cella del dtm può drenaresolo in una delle sue 8 celleadiacenti, quelle adiacenti,soprastanti, sottostanti o diagonali,nella direzione di massima pendenzadiscendente.
Solo 8 possibili direzioni per il flussoå Questo è un limite nella
modellazione del flusso naturale
25
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
FlowDirection
Questo comando calcola le direzionidi drenaggio nella direzione dellamassima pendenza discendenteidentificando per ogni cella del dtmuna delle 8 vicine.
L’input necessario è la mappadel dtm depittato.
I numeri convenzionali cherappresentano le direzioni didrenaggio nella mappa di outputsono dall’1 all’8, dove 1 corrispondealla direzione est.
26
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
FlowDirection
Mappa di output dove ogni colore rappresenta una delle 8 direzioni.
27
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
FlowDirection
Corrispondenza tra colori della mappa, numeri convenzionali e direzioni
1//
2??������
3OO4 __??????5 oo
6����
����
7�� 8
��???
???
28
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Correzione alle direzioni di drenaggio
Il metodo finora descritto e utilizzato prende il nome D8. L’utilizzo diquesto metodo per la determinazione delle direzioni di drenaggio generaun effetto di deviazione dalla reale direzione identificata dal gradiente
Questo metodo può essere corretto con un algoritmo che calcola ledirezioni di drenaggio minimizzando la deviazione della direzione delflusso determinato da quella del flusso reale. Questa deviazione vienecalcolata partendo dal punto a quote maggiori, procedendo verso quoteminori.
La deviazione è calcolata mediante una costruzione triangolare e puòquindi essere espressa come:
Deviazione Angolare metodo D8-LADDistanza Trasversale metodo D8-LTD
Questo metodo utilizza un parametro λ per pesare la correzione.
Metodo sviluppato da S. Orlandi29
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Correzione alle direzioni di drenaggio
Metodo D8-LAD Deviazione Angolare valutata con αMetodo D8-LTD Distanza Trasversale valutata con δ
La deviazione è calcolatacumulandola dal punto a quotamaggiore, discendendo; la direzioneD8 viene corretta indirizzandolaverso la direzione reale quando ilvalore supera una certa soglia.Questa soglia viene assegnatamediante il parametro λ; se λ = 0 ilcontatore non ha memoria e quindii punti precedenti non influenzanola correzione.
30
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
DrainDir: input
I minimi input necessari sono:la mappa del dtm depittatola mappa delle direzioni didrenaggio precedentementecreata con FlowDirection
È inoltre possibile modificare ilparametro λ e la modalità LADo LTD.
Lavorando in modalità standard,quindi senza fissare la reteidrografica, non è necessario fornirela mappa delle direzioni didrenaggio lungo la rete.
31
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
DrainDir: output
Questo comando restituisce inoutput la mappa delle areecontribuenti, oltre alla mapparappresentante le direzioni didrenaggio corrette.
La mappa che rappresenta le areecontribuenti può esserealternativamente ottenuta con ilcomando Geomorphology -> Tca
Nella prossima slide si illustreràcosa rappresentano le areecontribuenti e la loro utilità.
32
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Aree contribuenti
L’ Area Contribuente Totale -tca- rappresenta l’area che contribuisceall’afflusso in un punto del bacino.
È una quantità molto importante nell’analisi geomorfologica edidrologica di un bacino idrografico: è strettamente collegata al flusso inuscita attraverso i differenti punti del bacino in condizioni diprecipitazione uniforme.
La maggior parte di metodi diffusivi utilizzati per estrarre la reteidrografica a partire dal dtm sono basati su questa quantità.
Ai =∑
Aj ×Wj ; dove Wj ={1 se il j-esimo pixel drena nell’i-esimo0 negli altri casi
33
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Aree contribuenti
Zoom della mappa delle tca, visualizzata in scala di colori logaritmica.Visto l’ordine di grandezza dei valori si consiglia di visualizzarla
impostandola tabella dei colori nello Style Editor su logarithmic.
34
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Markoutlets
L’applicazione di molti comandiper essere eseguita correttamenterichiede che la mappa delledirezioni di drenaggio abbia unulteriore valore.Questo nuovo valore rappresenta laclasse dei punti che rappresentanogli outlets del bacino: questi sono ipunti che drenano all’esterno delbacino in analisi.Il comando Dem Manipulation-> Markoutlets marca glioutlets con un valoreconvenzionale 10, e richiede ininput le direzioni di drenaggio,meglio se calcolate con DrainDir
35
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Estrazione della rete idrografica
Nel comando Network -> ExtractNetwork sono implementati 3metodi per estrarre i canali che compongono la rete idrografica:
0 mediante una soglia sulle aree contribuenti (solo i punti con areacontribuente maggiore della soglia danno luogo alla formazione dicanali)
1 mediante soglia sul prodotto tra aree contribuenti e pendenza(questa quantità stima lo sforzo tangenziale)
2 mediante soglia analoga alla precedente considerando solo i punticonvergenti
Dopo aver individuato i punti di formazione dei canali, con una diqueste tre soglie, la rete viene costruita considerando tutti gli altripunti posti a quote minori.
36
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
ExtractNetwork: modo 0
Si potrebbe ora procedere conl’estrazione utilizzando il primometodo: soglia sulle sole areecontribuenti, preferiamo peròandare oltre nell’analisi al fine diottenere una rete più accurata.
Sarebbero necessari in input lamappa delle direzioni di dre-naggio, meglio se calcolate conDrainDir, e delle TCA.È inoltre necessario impostare ilvalore di soglia e specificare ilmetodo da utilizzare.
37
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Pendenze: Slope
Il comando Geomorphology -> Slope calcola la pendenza dellasuperficie topografica in ogni punto lungo le direzioni di drenaggio.
Questo comando calcola la differenza di quota tra ogni pixel e quelloadiacente immediatamente a valle. Successivamente divide questagrandezza per la dimensione del pixel, oppure della sua diagonale, aseconda della posizione reciproca dei due pixel considerati.
Il valore restituito rappresenta quindi la tangente dell’angolorappresentante la pendenza. Si può ottenere il valore dell’angolooperando con MapCalc, il cui funzionamento verrà illustrato più avanti.
38
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Slope
Richiede in input le mappe:del dtm depittatodelle direzioni di drenaggio,meglio se calcolate conDrainDir
39
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Slope: errore pixel con valore 10
Evidentemente il comando Slope non supporta la mappa ottenuta conMarkoutlets, come input per le direzioni di drenaggio.Richiede in input le mappa delle direzioni di drenaggio senzapixel con valore 10, che generalmente rappresentano gli outlets marcati
å deve contenere solo valori da 1 a 8,che rappresentano le sole direzioni di drenaggio
40
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
ExtractNetwork: modo 1
Avremmo già ora le mappenecessarie ad estrarre le reteidrografica con il secondo tipo disoglia, basata su tca e pendenze;proseguiamo invece nell’analisi alfine di estarre la rete con l’ultimo, epiù raffinato, metodo.
Sarebbe quindi necessario fornireun ulteriore input oltre a quelligià visti, ovvero la mappa dellependenze appena calcolata.Bisogna specificare il metodo
corretto, contrassegnato con 1.
41
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Curvature
Le curvature rappresentano la deviazione del vettore gradiente perunità di lunghezza lungo particolari curve tracciate sulla superficie inesame f(x,y).La Curvatura Longitudinale rappresenta la deviazione delgradiente andando da valle verso monte seguendo l’inviluppo deigradienti. È negativa se il gradiente aumenta.La Curvatura Piana si ottiene sezionando la superficie con un pianoparallelo al piano (x,y) ed è la variazione dei vettori tangenti alle lineedi livello passanti per il punto in esame. Misura la convergenza (se> 0) o la divergenza (se < 0) del flusso.La Curvatura Tangenziale è determinata sulla curva diintersezione tra un piano perpendicolare alla direzione del gradiente etangente alle linee di livello nel punto considerato.Curvatura tangente e piana sono tra loro proporzionali e la lorodistribuzione spaziale è la stessa.
42
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Curvatura tangenziale (o normale)
Curvatura negativa - convessa:questo caso è tipico di zone diversante dove il flusso vienesuddiviso sui pixel vicini di quotainferiore secondo il metodo dellamassima pendenza.
Topografia localmente divergente
43
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Curvature
Il comando Geomorfology ->Curvatures permette di calcolarequesti 3 tipi di curvature come 3diverse mappe di output.
Longitudinaleå Profile o Longitudinal
Pianaå Planar
Tangenzialeå Tangential o Normal
Questo comando richiede in inputla sola mappa del dtm depittato
44
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Curvature
Curvatura Longitudinale e suo zoom Curvatura Tangenziale e suo zoom
45
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Classi Topografiche
Permettono di attribuire ad ognipixel una delle 9 classi topografiche,ottenute con l’intersezione dei tretipi di curvature longitudinali e deitre di curvature planari.
È anche possibile aggregare questeclassi in tre categorie fondamentali:
siti concavisiti convessisiti piani
46
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Classi Topografiche
Nomi identificativi ecorrispondenti valori per le9 classi (a lato) e per le 3classi aggregate (sotto) conspecificate le riclassificazioni.
10 planare parallelo20 convesso parallelo30 concavo parallelo40 planare divergente50 convesso divergente60 concavo divergente70 planare convergente80 convesso convergente90 concavo convergente
15 concavo, unione delle classi 30, 70 e 9025 planare, corrispondente alla classe 1035 convesso, unione delle restanti classi
47
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Tc
Il comando che permette di crearele due mappe contenenti questeclassificazioni è Hillslope -> Tc.
Richiede in input le due mappedelle:
curvature longitudinalicurvature normali
È inoltre necessario definire duesoglie che definiscono la condizio-ne di planarità.
Restituisce in output le due mappecon 9 e 3 classi.
48
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Tc
Mappa 9 classi morfologiche Mappa 3 classi fondamentali
49
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
ExtractNetwork: modo 2
Abbiamo ora tutte le mappenecessarie ad estrarre le reteidrografica con il terzo tipo disoglia, cioè sullo sforzo tangenzialesolo sui siti convergenti.
È quindi necessaria in input unaulteriore mappa, oltre alle pri-me due, delle classi topograficheaggregate (con sole 3 classi).È inoltre necessario indicare ilmetodo corretto, indicato con 2.La soglia dipende sempre, come pergli altri metodi, dalla dimensionedei pixel e dagli attributitopografici del bacino.
50
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
ExtractNetwork: modo 2
Mappa di output rappresentante i canali della rete idrografica
Ai puntiappartenentiai canali èassegnatovalore 2,mentre a tuttigli altri puntiè assegnatono value, cioènessun valore.
51
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Estrazione del bacino di interesse: chiusura
A questo punto abbiamo tutto quello che ci occorre per estrarre ilbacino idrografico d’interesse. Manca solo un’informazione: l’outlet,cioè il punto di chiusura di questo bacino.Tale punto deve appartenere alla rete idrografica, quindi bisognerà chesulla mappa restituita da ExtractNetwork abbia valore 2.
1 Individuare il punto sulla mappa, se si dispone di uno shapefilecontenente tale punto è comodo importarlo per individuarlo confacilità.
2 Interrogare il valore già assegnato sulla mappa utilizzando lostrumento info di uDig, cliccando sul punto in esame dopo averattivato tale strumento. L’info tool si trova sotto la voce Infonella barra degli strumenti della vista mappa.
3 Verificare tale valore che verrà visualizzato, insieme alle coordinatedel punto, in una nuova vista informazioni che si apreautomaticamente
52
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Estrazione del bacino di interesse: chiusura
Zoom della rete dei canali e vista informazioni per individuare l’outlet
53
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Estrazione del bacino di interesse: Wateroutlet
Ora possiamo estrarre il bacino diinteresse con il comando DemManipulation -> Wateroutlet.
In input sono necessari:le coordinate del punto dichiusura appena individuatela mappa delle direzioni didrenaggio, meglio secalcolata con DrainDir
Le coordinate vengonoautomaticamente inserite neirispettivi campi se si seleziona ilcomando subito dopo averinterrogato il punto.
54
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Estrazione del bacino di interesse: Wateroutlet
Restituisce in output una mascheradel bacino estratto con valore 1all’interno e no value all’esterno.Si può verificare come il confine delbacino estratto passi effettivamenteper il punto di chiusura.
55
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Ritaglio delle mappe sul bacino di interesse
Ora dobbiamo ritagliare sul bacino estratto anche tutte le altre mappefino ad ora elaborate.Le opzioni di lavoro sarebbero due:
calcolare di nuovo le grandezze sul DTM del bacino estrattoritagliare le mappe sulla maschera del bacino estratto
La prima opzione prevede di ricalcolare la mappa delleelevazioni depittata e le direzioni di drenaggio. Questo può
comportare incompatibilità con il dato di partenza.
Per ottenere correttamente tutte le mappe relative al bacino ritagliatosarà necessaria anche un’ulteriore operazione successiva: rilanciare ilcomando Dem Manipulation -> Markoutletssulla mappa delle direzioni di drenaggio ritagliata, in quanto gli outletsdel bacino ritagliato saranno differenti.
56
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Ritaglio delle mappe sul bacino di interesse
Ora dobbiamo ritagliare sul bacino estratto anche tutte le altre mappefino ad ora elaborate.Le opzioni di lavoro sarebbero due:
calcolare di nuovo le grandezze sul DTM del bacino estrattoritagliare le mappe sulla maschera del bacino estratto
La prima opzione prevede di ricalcolare la mappa delleelevazioni depittata e le direzioni di drenaggio. Questo può
comportare incompatibilità con il dato di partenza.
Per ottenere correttamente tutte le mappe relative al bacino ritagliatosarà necessaria anche un’ulteriore operazione successiva: rilanciare ilcomando Dem Manipulation -> Markoutletssulla mappa delle direzioni di drenaggio ritagliata, in quanto gli outletsdel bacino ritagliato saranno differenti.
56
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Ritaglio delle mappe sul bacino di interesse
Ora dobbiamo ritagliare sul bacino estratto anche tutte le altre mappefino ad ora elaborate.Le opzioni di lavoro sarebbero due:
calcolare di nuovo le grandezze sul DTM del bacino estrattoritagliare le mappe sulla maschera del bacino estratto
La prima opzione prevede di ricalcolare la mappa delleelevazioni depittata e le direzioni di drenaggio. Questo può
comportare incompatibilità con il dato di partenza.
Per ottenere correttamente tutte le mappe relative al bacino ritagliatosarà necessaria anche un’ulteriore operazione successiva: rilanciare ilcomando Dem Manipulation -> Markoutletssulla mappa delle direzioni di drenaggio ritagliata, in quanto gli outletsdel bacino ritagliato saranno differenti.
56
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
CutOut
Utilizzando il comando CutOutscegliamo quindi di ritagliare lemappe già create:
dtm depittatodirezioni di drenaggiotcareticolo idrografico(pendenze)(curvature)(classi topografiche)
Gli input necessari sono la mappada usare come maschera e quella daritagliare, senza soglie.
57
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Struttura di drenaggio e sottobacini
Ora che abbiamo estratto il bacino d’interesse e ritagliato le mappe dibase su questo, possiamo eseguire alcuni altri comandi al fine diottenere la struttura della rete di drenaggio e dei sottobacini relativi albacino di interesse.In particolare si vogliono ottenere le mappe vettoriali rappresentantiquesti elementi, in quanto da queste ultime è possibile interrogare edestrarre molte informazioni geometriche utili per analisi successive erelazioni descrittive.Lo strumento fondamentale sarà il comando che permette di numerarela rete di drenaggio ed estrarre i corrispondenti sottobaciniå Network -> NetNumbering
Utilizzeremo inoltre alcuni altri utili strumenti per le mappe vettoriali:Basin -> BasinShape estrazione dei contorni dei sottobaciniVector Processing -> VectorReshaper manipolazione dimappe vettoriali
58
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Struttura di drenaggio e sottobacini
Ora che abbiamo estratto il bacino d’interesse e ritagliato le mappe dibase su questo, possiamo eseguire alcuni altri comandi al fine diottenere la struttura della rete di drenaggio e dei sottobacini relativi albacino di interesse.In particolare si vogliono ottenere le mappe vettoriali rappresentantiquesti elementi, in quanto da queste ultime è possibile interrogare edestrarre molte informazioni geometriche utili per analisi successive erelazioni descrittive.Lo strumento fondamentale sarà il comando che permette di numerarela rete di drenaggio ed estrarre i corrispondenti sottobaciniå Network -> NetNumbering
Utilizzeremo inoltre alcuni altri utili strumenti per le mappe vettoriali:Basin -> BasinShape estrazione dei contorni dei sottobaciniVector Processing -> VectorReshaper manipolazione dimappe vettoriali
58
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Struttura di drenaggio e sottobacini
Ora che abbiamo estratto il bacino d’interesse e ritagliato le mappe dibase su questo, possiamo eseguire alcuni altri comandi al fine diottenere la struttura della rete di drenaggio e dei sottobacini relativi albacino di interesse.In particolare si vogliono ottenere le mappe vettoriali rappresentantiquesti elementi, in quanto da queste ultime è possibile interrogare edestrarre molte informazioni geometriche utili per analisi successive erelazioni descrittive.Lo strumento fondamentale sarà il comando che permette di numerarela rete di drenaggio ed estrarre i corrispondenti sottobaciniå Network -> NetNumbering
Utilizzeremo inoltre alcuni altri utili strumenti per le mappe vettoriali:Basin -> BasinShape estrazione dei contorni dei sottobaciniVector Processing -> VectorReshaper manipolazione dimappe vettoriali
58
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Rete di drenaggio del bacino di interesse
Per prima cosa estraiamo la rete didrenaggio relativa al solo bacino diinteresse, analogamente a comefatto in precedenza per l’interodtm, sempre in modalità 2.Gli input sono quelli già visti.È inoltre necessario indicare cheora desideriamo ottenere anche lamappa vettoriale .shp della rete,checkando il relativo box.È ora molto importante scegliereaccuratamente il valore della soglia,da questo dipende quanto sarà fittae quindi quanti rami e conseguentisottobacini si otterranno.
59
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
ExtractNetwork: output vettoriale .shp
Come indicato negli input abbiamoora come ulteriore output unamappa vettoriale .shpQuesto output va indicatodiversamente da come sempre fatto.
Si deve indicare l’estensione, chedeve essere shp e un percorso apiacere dove salvarlo.Per un’imprecisione nel modulodi output questo non è molto age-vole, bisogna selezionare un qua-lunque file già esistente in questopercorso e, dopo aver confermatola selezione, modificarne il nomenella relativa casella (con .shp).
60
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Mappa vettoriale .shp della rete idrografica
Mappa vettorialedella rete, nella vistaTable di uDig sipossono vedere gliattributi di ognifeature contenutonella mappa.Come si vede è moltoutile per distinguere isingoli rami e capirequanti sonoesattamente, perchècoincideranno con isottobacini cheestrarremo.
61
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
VectorReshaper: estrazione delle lunghezze dei rami
Sfruttiamo ora le potenzialità della mappa vettoriale della rete perestarrre le lunghezze di ogni singolo ramo.Per fare questo sfrutteremo il comando generico per analisivettoriali VectorReshaper, non appartenente quindi alla categoriadelle Horton Machine ma ai Vector Processing.Questo comando vuole in input una mappa vettoriale e restituisceun’altra mappa vettoriale derivata grazie a funzioni ecql (unasintassi ampliata del cql, semplificazione del linquaggio sql):
1 nuovi campi di attributi2 attributi derivati dalle caratteristiche geometriche delle feature3 nuove feature geometriche derivate da quelle originali
Si inserisce il vettoriale in input in maniera simile a quello in output,indicando l’estensione shp ed andando a selezionare il file .shp su cui sidesidera lavorare, dove è stato salvato.La specifica sintassi ecql che useremo per estrarre le lunghezze è
len=geomLength(the_geom)62
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
VectorReshaper: estrazione delle lunghezze dei rami
Sfruttiamo ora le potenzialità della mappa vettoriale della rete perestarrre le lunghezze di ogni singolo ramo.Per fare questo sfrutteremo il comando generico per analisivettoriali VectorReshaper, non appartenente quindi alla categoriadelle Horton Machine ma ai Vector Processing.Questo comando vuole in input una mappa vettoriale e restituisceun’altra mappa vettoriale derivata grazie a funzioni ecql (unasintassi ampliata del cql, semplificazione del linquaggio sql):
1 nuovi campi di attributi2 attributi derivati dalle caratteristiche geometriche delle feature3 nuove feature geometriche derivate da quelle originali
Si inserisce il vettoriale in input in maniera simile a quello in output,indicando l’estensione shp ed andando a selezionare il file .shp su cui sidesidera lavorare, dove è stato salvato.La specifica sintassi ecql che useremo per estrarre le lunghezze è
len=geomLength(the_geom)62
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
VectorReshaper: estrazione delle lunghezze dei rami
Sfruttiamo ora le potenzialità della mappa vettoriale della rete perestarrre le lunghezze di ogni singolo ramo.Per fare questo sfrutteremo il comando generico per analisivettoriali VectorReshaper, non appartenente quindi alla categoriadelle Horton Machine ma ai Vector Processing.Questo comando vuole in input una mappa vettoriale e restituisceun’altra mappa vettoriale derivata grazie a funzioni ecql (unasintassi ampliata del cql, semplificazione del linquaggio sql):
1 nuovi campi di attributi2 attributi derivati dalle caratteristiche geometriche delle feature3 nuove feature geometriche derivate da quelle originali
Si inserisce il vettoriale in input in maniera simile a quello in output,indicando l’estensione shp ed andando a selezionare il file .shp su cui sidesidera lavorare, dove è stato salvato.La specifica sintassi ecql che useremo per estrarre le lunghezze è
len=geomLength(the_geom)62
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
VectorReshaper: estrazione delle lunghezze dei rami
Il nuovo vettoriale della rete con il nuovo campo delle lunghezze: len
63
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
NetNumbering: numerazione della rete ed estazione sottobacini
Utilizziamo ora il comandoNetwork -> NetNumbering al finedi estrarre i sottobacini, oltre allamappa della rete numerata.
I primi 3 inputs sono quelli ne-cessari, a questo punto dovrebbe-ro essere tutti di immediata com-prensione.Utilizzando il comando in moda-lità standard è sufficiente lascia-re tutti gli altri campi presenti didefault, in particolare non inseri-remo la quarta mappa in input.Gli outputs sono tutti mappe ra-ster, dovremo inserirli entrambi.
64
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
NetNumberin: output del comando
Le due mappe output di NetNumbering: rete numerata e sottobacini
65
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
BasinShape: vettorializzazione dei contorni dei sottobacini
Vogliamo ora ottenere la mappavettoriale .shp dei contorni deisottobacini, che sarà comoda perestrarre varie informazioni, comegià visto per la mappa della rete.Questo comando vuole in inputdue mappe raster:
la mappa del dtm depittatoe quella dei sottobaciniottenuta con NetNumbering
. . . e restituisce in output lamappa vettoriale dei sottobacini.Gli input raster si inseriscono comegià visto in precedenza e l’outputvettoriale come visto per la rete.
66
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Mappa vettoriale .shp dei sottobacini
Mappa vettoriale deisottobacini, si puòvedere che ilcomando ha giacalcolato moltiattributi utili perogni sottobacino:
areaperimetronumerazionequota massimaquota minimaquota mediaquota dell’uscita
67
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
VectorReshaper: centroidi dei sottobacini
Sfruttiamo ancora il comandoVectorReshaper per uttenere unanuova mappa contenente i centroididi ogni singolo bacino.
Le mappe vettoriali in input eoutput si inseriscono come vistoprima per lo stesso comando.
La nuova mappa deve conteneredelle nuove features geometrichederivate, i centroidi.
La sintassi ecql dovrà riscrivereil campo the_geom, sarà quindi:the_geom=centroid(the_geom)
68
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
VectorReshaper: Mappa vettoriale .shp dei centroidi
Mappa vettoriale deicentroidi di ognisottobacino.
È ben evidente comequesto comandoabbia creato unanuova mappa confeature geometrichedi tipo differente,ovvero i puntirappresentanti icentroidi, derivatidalle feature originali(aree deisottobacini).
69
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Attributi derivati
Ora che abbiamo concluso l’analisi idrologica di base, estraendo ilbacino d’interesse, la rete di drenaggio ed i sottobacini, possiamoeseguire una serie di altri comandi delle Horton Machine al fine diottenere alcune mappe utili per una analisi idro-geomorfologica piùcompleta del bacino. Ne vedremo ora un paio a titolo di esempio.
Esposizione Geomorphology -> Aspect
Modulo del vettore gradiente Geomorphology -> Gradient
(Pendenza lungo la rete Geomorphology ->Slope)(Curvature Geomorphology -> Curvatures)Area di drenaggio Geomorphology -> Ab
(Classi topografiche Hillslope -> Tc)Distanza dalla chiusura Basin -> RescaledDistance
Indice topografico Basin -> TopIndex
70
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Attributi derivati
Ora che abbiamo concluso l’analisi idrologica di base, estraendo ilbacino d’interesse, la rete di drenaggio ed i sottobacini, possiamoeseguire una serie di altri comandi delle Horton Machine al fine diottenere alcune mappe utili per una analisi idro-geomorfologica piùcompleta del bacino. Ne vedremo ora un paio a titolo di esempio.
Esposizione Geomorphology -> Aspect
Modulo del vettore gradiente Geomorphology -> Gradient
(Pendenza lungo la rete Geomorphology ->Slope)(Curvature Geomorphology -> Curvatures)Area di drenaggio Geomorphology -> Ab
(Classi topografiche Hillslope -> Tc)Distanza dalla chiusura Basin -> RescaledDistance
Indice topografico Basin -> TopIndex
70
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Indice topografico
TI = log Ab |∇z|
esprime la tendenza di un pixel a saturarsiå aree con valori elevati di indice topografico si saturano
prima di aree a basso indice topograficodipende solo dalla morfologia
è proporzionale al rapporto tra area cumulata nel pixel e pendenza
Si calcola con il comando Basin -> TopIndex che richiede in input:la mappa delle tcala mappa delle pendenze calcolata con Slope
71
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Indice topografico
TI = log Ab |∇z|
esprime la tendenza di un pixel a saturarsiå aree con valori elevati di indice topografico si saturano
prima di aree a basso indice topograficodipende solo dalla morfologia
è proporzionale al rapporto tra area cumulata nel pixel e pendenza
Si calcola con il comando Basin -> TopIndex che richiede in input:la mappa delle tcala mappa delle pendenze calcolata con Slope
71
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Calcolo dell’indice topografico: TopIndex input
72
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Calcolo dell’indice topografico: TopIndex output
73
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Calcolo dell’indice topografico: TopIndex
Pixel con pendenza bassa hanno elevata propensione allasaturazione a parità di area cumulataci sono zone all’interno del bacinodove non è definito l’indice topograficoå sono quelle con pendenza pari a zero per cui il rapporto
area cumulata su pendenza tende ad infinito
Si assegna ai pixel convalore nullo di indicetopografico il valoremassimo caratteristicodella mappa utilizzandoRaster Processing ->MapCalc, utilizzando laseguente sintassi:
images{ pass_mytop=read;pass_mybas=read; out=write;}if (isnan( pass_mybas )) {out = null;} else { if (isnan( pass_mytop )) {out = 25;} else {out = pass_mytop; } ; };
74
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
MapCalc
Attualmente il Map Calculator, strumento che permette di eseguireoperazioni aritmetiche e logiche sulle mappe, utilizza il linguaggio Jiffle.
1 per prima cosa bisogna selezionare le mappe di input, per questocomando è però differente dal solito, bisona trascinarle dalla vistapiani nella lista delle mappe su cui si lavorerà
2 successivamente bisogna anche scrivere il codice per definire questemappe come variabili
3 quindi vediamo alcune comuni sintassi per eseguire operazioni suqueste mappe:
assegnazionioperazioni aritmetichecontrollo di flusso ifgestione dei punti senza valori: NaN/null
75
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
MapCalc: definizione delle variabili
Si ricorda che per l’utilizzo di questo comando risulta necessario at-tivare la Processing Region; in caso contrario potrebbero verificarsierrori come mappe di output contenenti il solo valore NaN
images{pass_mytop=read;pass_mybas=read;out=write;
}
Sintassi per definire le mappe di inputcome variabili.Per gli input, cioè le mappe da leggere, ilnome della variabile deve essere uguale aquello della mappa.È inoltre necessario definire la variabile dioutput, cioè la mappa da scrivere. Questonome non deve necessariamente essereuguale a quello della mappa di output;quest’ultimo va come al solito, inseritonell’apposito tab outputs insieme al path.
76
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
MapCalc: assegnazione & operazioni aritmetiche
Questi sono treesempi diassegnazione dellavariabile di output,chiamata out:
out = null;
out = 25;
out = pass_mytop;
Un’assegnazione si esegue sempre con unasintassi composta, in ordine:
1 dal nome della variabile in cuiassegnare
2 dall’operatore di assegnazione =3 dalla quantità da assegnare alla
variabile.Negli esempi si vedono tre diversi tipi diquantità da assegnare alla variabile out:
1 nessun valore null2 un valore costante3 i valori presenti in un’altra mappa
å questi tipi di quantità si possonocombinare con gli operatori + - * /
77
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
MapCalc: controllo di flusso if
if (test) {operazioni daeseguire se iltest è vero;
} else {operazioni daeseguire se iltest è falso;
};
Il test deve essere un’equazione logica cherestituisca Vero o Falso.
Può quindi essere imposto comeuguaglianza (Attenzione: ==),disuguaglianza o con appositi comandi cherestituiscano Vero o Falso che vedremodopo.
Le operazioni da eseguire possono essereuna o più istruzioni, analoghe a quelle chesi scriverebbero al di fuori dell’ambienteif.å come operazioni da eseguire possono
anche essere annidati altri controlli if
78
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
MapCalc: gestione dei punti senza valori: NaN/null
Questi sono degliesempi di utilizzo dispecifici comandi pergestire i punti a cuinon è assegnato alcunvalore.
isnan(pass_mybas)
isnan(pass_mytop)
out = null
Nei primi si vede l’uso del comandoisnan{}, che restituisce Vero quando ilsuo argomento non contiene valori.Più precisamente quando ha valoreNot A Number, valore assegnato di defaultdai JGrasstools nei punti in cui non èpresente alcun dato.Restituendo un valore booleano risultaparticolarmente comodo da usare cometest in un controllo if.
Nel secondo si vede invece l’assegnazionead una variabile (quindi ad una mappa) di”nessun valore” grazie all’appositocomando null che assegna valore null.
79
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
MapCalc: inputs
Per inserire gli input, mappe raster,in MapCalc è necessario tracinarlidalla vista layer di uDig.
Per poterli trascinare è perònecessario selezionare “la funzio-ne” adeguata nella finestra degliinput.È necessario selezionare ilCoverageLister aprendo ilmenù a tendina.
Dopodichè è sufficiente trascinarlinel riquadro che compare nellafinestra.
80
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Calcolo dell’indice topografico: MapCalc
81
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Calcolo dell’indice topografico: MapCalc
82
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Distanze riscalate: RescaledDistance
Il comando RescaledDistance permette di calcolare le distanzedall’uscita del bacino (outlet), calcolate lungo le direzioni di drenaggio.Queste distanze possono essere riscalate, cioè calcolate considerandovelocità diverse nei versanti e nella rete idrografica.Viene quindi introdotto il parametro r definito come il rapporto tra lavelocità nei canali e nei versanti, per definire le distanze riscalate x ′ :
x ′ = xc + r · xh con r = ucuh
e xc + xh = x
Questo comando richiede in input le mappe:delle direzioni di drenaggio, calcolate con DrainDir e con glioutlets marcati con MarkOutlets
della rete idrografica, calcolata con ExtractNetwork scegliendouno dei tre tipi di soglie
Richiede inoltre il parametro r (se r = 1 le distanze saranno semplici)83
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Distanze riscalate: RescaledDistance
Il comando RescaledDistance permette di calcolare le distanzedall’uscita del bacino (outlet), calcolate lungo le direzioni di drenaggio.Queste distanze possono essere riscalate, cioè calcolate considerandovelocità diverse nei versanti e nella rete idrografica.Viene quindi introdotto il parametro r definito come il rapporto tra lavelocità nei canali e nei versanti, per definire le distanze riscalate x ′ :
x ′ = xc + r · xh con r = ucuh
e xc + xh = x
Questo comando richiede in input le mappe:delle direzioni di drenaggio, calcolate con DrainDir e con glioutlets marcati con MarkOutlets
della rete idrografica, calcolata con ExtractNetwork scegliendouno dei tre tipi di soglie
Richiede inoltre il parametro r (se r = 1 le distanze saranno semplici)83
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Distanze riscalate: RescaledDistance
Il comando RescaledDistance permette di calcolare le distanzedall’uscita del bacino (outlet), calcolate lungo le direzioni di drenaggio.Queste distanze possono essere riscalate, cioè calcolate considerandovelocità diverse nei versanti e nella rete idrografica.Viene quindi introdotto il parametro r definito come il rapporto tra lavelocità nei canali e nei versanti, per definire le distanze riscalate x ′ :
x ′ = xc + r · xh con r = ucuh
e xc + xh = x
Questo comando richiede in input le mappe:delle direzioni di drenaggio, calcolate con DrainDir e con glioutlets marcati con MarkOutlets
della rete idrografica, calcolata con ExtractNetwork scegliendouno dei tre tipi di soglie
Richiede inoltre il parametro r (se r = 1 le distanze saranno semplici)83
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
RescaledDistance
Calcolo delle mappa delle distanze semplici con r = 1
84
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
RescaledDistance
Calcolo delle mappa delle distanze riscalate con r = 10
85
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Funzione di ampiezza del bacino idrografico
Ora che abbiamo calcolato le mappe delle distanze e distanze riscalatevogliamo ottenere la distribuzione di questi valori sulle mappe, il graficodi queste rappresenterà la funzione d’ampiezza semplice e riscalata.
La distribuzione dei valori su una mappa potrebbe essereugualmente ottenuta con il comando RasterSummary, che
abbiamo già visto all’inizio di questa trattazione.Preferiamo invece ora utilizzare il più evoluto comando
Statistics -> Cb (delle Horton Machine).In questa applicazione fornisce un analogo risultato, però può
essere sfruttato per ottenere più complesse statisticheincrociate tra due mappe.
Per ottenere comunque la semplice distribuzione dei valori di unamappa è sufficiente utilizzarlo fornendo la stessa mappa in input perentrambe le mappe.
86
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Funzione di ampiezza del bacino idrografico
Ora che abbiamo calcolato le mappe delle distanze e distanze riscalatevogliamo ottenere la distribuzione di questi valori sulle mappe, il graficodi queste rappresenterà la funzione d’ampiezza semplice e riscalata.
La distribuzione dei valori su una mappa potrebbe essereugualmente ottenuta con il comando RasterSummary, che
abbiamo già visto all’inizio di questa trattazione.Preferiamo invece ora utilizzare il più evoluto comando
Statistics -> Cb (delle Horton Machine).In questa applicazione fornisce un analogo risultato, però può
essere sfruttato per ottenere più complesse statisticheincrociate tra due mappe.
Per ottenere comunque la semplice distribuzione dei valori di unamappa è sufficiente utilizzarlo fornendo la stessa mappa in input perentrambe le mappe.
86
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Funzione di ampiezza del bacino idrografico
Ora che abbiamo calcolato le mappe delle distanze e distanze riscalatevogliamo ottenere la distribuzione di questi valori sulle mappe, il graficodi queste rappresenterà la funzione d’ampiezza semplice e riscalata.
La distribuzione dei valori su una mappa potrebbe essereugualmente ottenuta con il comando RasterSummary, che
abbiamo già visto all’inizio di questa trattazione.Preferiamo invece ora utilizzare il più evoluto comando
Statistics -> Cb (delle Horton Machine).In questa applicazione fornisce un analogo risultato, però può
essere sfruttato per ottenere più complesse statisticheincrociate tra due mappe.
Per ottenere comunque la semplice distribuzione dei valori di unamappa è sufficiente utilizzarlo fornendo la stessa mappa in input perentrambe le mappe.
86
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Analisi dei valori di una mappa: Cb
Il comando Statistics -> Cb calcola le statistiche dei valori diuna mappa rispetto a quelli contenuti in un’altra mappa
i dati della prima mappa vengono raggruppati in un numeroprefissato di intervalli e viene calcolato il valore medio dellavariabile indipendente in ciascun intervalload ogni intervallo corrisponde un set di valori nella secondamappa, dei quali viene calcolata la media e gli altri momentirichiesti dall’utente
il comando restituisce nella vista Console tutti questi valori perogni intervallo, associati al numero di pixel contenuti nell’intervallo
I valori stampati in output possono essere facilmente salvati in un file ditesto puro (mediante un copia & incolla) in formato ASCII che unqualsiasi foglio elettronico o R può leggere facilmente.
87
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Cb: input
Questo particolare comandorichiede in input:
le due mappe su cuicalcolare le statistichenumero di intervalli in cuidividere il range di valoridella prima mappail primo e l’ultimo ordine deimomenti da calcolare
Le due mappe possono anche esserela stessa mappa se si vuole ottenerela distribuzione dei valori contenutinella mappa sul bacino (va sempreinserita in entrambe i campi).
88
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Cb: output
Questo particolare comandostampa, in ordine da sx a dx:
la media nell’intervallo deivalori della prima mappail numero di pixel della primamappa nell’intervalloil momento di primo ordine(media) dei valori dellaseconda mappail momento di secondo ordine(varianza) dei valori dellaseconda mappase richiesti, i momenti diordine superiore dei valoridella seconda mappa
89
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Esempio di plot dei risultati
Questo è un esempio di plot con R della distribuzione delle distanze deipunti del bacino: rappresenta la funzione d’ampiezza del bacino.
read.table(rd1)->rd1plot(rd1[,1],rd1[,2],type=“l”,ylab=“Area [pixel]”,xlab=“Distanza [m]”,main=“Distanze Riscalate”)
90
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Indice dei simboli
Simbolo Nome udmTI Indice topografico -A Area totale al di sopra di ogni punto L2
b Lunghezza della parte di pixelinteressata dal drenaggio L
∇z Pendenza -x Distanza di un punto del bacino dall’uscita
misurata lungo le direzioni di drenaggio Lx ′ Distanza dall’uscita riscalata Lxc Distanza di un punto del canale dall’uscita Lxh Distanza di un punto dal canale
a cui afferisce (lungo le linee di drenaggio) Lr Rapporto tra celerità dell’onda di piena
nei canali e nei versanti -uc Celerità del deflusso nei canali L T−1
uh Celerità del deflusso superficiale L T−1
91
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Indice dei comandi
Comando Breve DescrizioneCb Calcola le le statistiche delle mappeCurvature Calcola le curvature longitudinali e trasversaliCutOut Ritaglia una mappa rasterDrainDir Stima le direzioni di drenaggio corretteExtractNetwork Estrae il reticolo idrograficoFlowDirection Stima le direzioni di drenaggio con D8 puroMapCalc Esegue calcoli sui rasterMarkOutlet Marca l’uscita del bacino in esamePitfiller Riempie le depressioni di un DEMRescaledDistance Calcola la funzione di ampiezza riscalataSlope Calcola il modulo della pendenzaTc Calcola le classi topograficheTca Calcola le aree contribuentiTopIndex Calcola l’indice topograficoWaterOutlet Estrae il bacino idrografico
92
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Credits
La Horton Machine è il frutto del lavoro di ricercacongiunto di cudam ed Hydrologis s.r.l.
93
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Credits
Questa presentazione è stata scritta da:Silvia Franceschi (Hydrologis and Ispra)Leonardo Perathoner (Università di Trento)Matteo Toro (Università di Trento)Giuseppe Formetta (Università di Trento)
La redazione di questa presentazione è stata supportata da Ispranell’ambito del progetto Danube Flood Risk e dalla ProvinciaAutonoma di Bolzano, nell’ambito del progetto HydroAlp.
Per quanto possibile, questa presentazione è stata redatta con l’uso disoftware libero. LATEX per a scrittura, per il quale Leonardo Perathonerha approntato un apposito stile. Il programma statistico R(http://cran.r-project.org/) per l’elaborazione delle figure nonprodotte da uDig.
94
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013
Grazie dell’attenzione
JGrassTools Mailinglist:https://groups.google.com/forum/?fromgroups#!forum/jgrasstools
95
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
17 marzo 2013