SlideShare ist ein Scribd-Unternehmen logo
1 von 121
Downloaden Sie, um offline zu lesen
Analisi Idro-Geomorfologica con i
JGrasstools e le Horton Machine
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
“Free Software . . . you should
think of ‘free’ as in ‘free speech’,
not as in ‘free beer’. ”
Richard Stallman
1
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Le Horton Machine
Le Horton Machine sono un pacchetto sviluppato con l’obbiettivo di
fornire degli strumenti quantitativi e qualitativi per indagare la
morfologia di un bacino idrografico.
¯ Analisi Geomorfologica
L’obbiettivo è analizzare i processi di erosione dei canali fluviali e la
possibilità di innesco di frane superficiali.
Questo viene fatto considerando che i processi geomorfologici principali
in un bacino siano:
Erosione diffusiva dei pendii
Processi di incisione da parte dei canali
Trasporto dei sedimenti nei canali
Frane
2
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Le Horton Machine
Le Horton Machine sono un pacchetto sviluppato con l’obbiettivo di
fornire degli strumenti quantitativi e qualitativi per indagare la
morfologia di un bacino idrografico.
¯ Analisi Geomorfologica
L’obbiettivo è analizzare i processi di erosione dei canali fluviali e la
possibilità di innesco di frane superficiali.
Questo viene fatto considerando che i processi geomorfologici principali
in un bacino siano:
Erosione diffusiva dei pendii
Processi di incisione da parte dei canali
Trasporto dei sedimenti nei canali
Frane
2
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Le Horton Machine
I comandi delle Horton
Machine sono stati
suddisi 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
30 marzo 2015
Le Horton Machine
Analisi del reticolo
idrografico
¯ Network
Comandi che permettono di
determinare alcune
proprietà del reticolo
idrografico.
4
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Le Horton Machine
Analisi relative al bacino
¯ Hydro-Geomorphology
Comandi che permettono di svolgere
analisi di un bacino idrografico.
Indici idro-geomorfologici
¯ Basin
Comandi che permettono di determinare
alcuni indici relativi al bacino idrografico.
5
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Le Horton Machine
Attributi del bacino
¯ Geomorphology
Comandi che permettono di calcolare
alcuni attributi del bacino quali pendenza,
direzioni di drenaggio, aree contribuenti.
Analisi dei versanti
¯ Hillslope
Comandi che permettono di calcolare
alcune caratteristiche dei versanti del
bacino e di determinare una classificazione
in base alle loro proprietà morfologiche.
6
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Le Horton Machine
Manipolazione dei DEM
¯ DEM Manipulation
Comandi che permettono di svolgere
analisi preliminari sui modelli digitali del
terreno.
Statistiche
¯ Statistics
Comandi che permettono di condurre
alcune analisi statistiche sui bacini.
7
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
La morfologia
La topografia è rappresentata mediante una funzione continua
bivariata z = f (x, y) e con le sue derivate fino al secondo ordine.
8
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Modelli Digitali del Terreno
La forma più comune ed efficiente di
rappresentare un Modello Digitale del
Terreno (D.T.M.) è mediante una griglia
quadrata di dati.
Ipotesi:
valori significativi
griglia quadrata regolare
topografia ad 8 direzioni
I dati in questa forma,
chiamata raster,
rappresentano la coordinata
verticale z per una serie di
punti successivi lungo un
determinato profilo spaziale.
9
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Operazioni preliminari
Prima di poter operare sul DTM con i comandi delle Horton Machine
è necessario:
1 creare l’ambiente di lavoro location
2 assicurarsi di lavorare di lavorare all’interno della location in
formato GRASS,
¯ generalmente il DTM è in formato raster ascii, come un .asc
¯ assicurarsi di trattarlo in modo da prendere in input il file
.asc (con associato .prj) e settare l’output
all’interno della location (cartella cell)
Dopodichè l’obbiettivo principale è quello di estrarre il bacino
d’interesse, sono necessarie alcune elaborazioni del dtm di partenza:
5 Riempimento delle depressioni Pitfiller
6 Calcolo delle direzioni di drenaggio Flowdirection/Draindir
7 Estrazione del reticolo idrografico ExtractNetwork
8 Estrazione del bacino idrografico Wateroutlet
10
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Operazioni preliminari
Prima di poter operare sul DTM con i comandi delle Horton Machine
è necessario:
1 creare l’ambiente di lavoro location
2 assicurarsi di lavorare di lavorare all’interno della location in
formato GRASS,
¯ generalmente il DTM è in formato raster ascii, come un .asc
¯ assicurarsi di trattarlo in modo da prendere in input il file
.asc (con associato .prj) e settare l’output
all’interno della location (cartella cell)
Dopodichè l’obbiettivo principale è quello di estrarre il bacino
d’interesse, sono necessarie alcune elaborazioni del dtm di partenza:
5 Riempimento delle depressioni Pitfiller
6 Calcolo delle direzioni di drenaggio Flowdirection/Draindir
7 Estrazione del reticolo idrografico ExtractNetwork
8 Estrazione del bacino idrografico Wateroutlet
10
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Operazioni preliminari: Pitfiller
La prima operazione da fare è riempire i punti di depressione presenti
nel dtm in modo da poter poi definire univocamente le direzioni di
drenaggio 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 questa
elaborazione riguarda meno dell’1% dei punti e
generalmente questi punti di depressione
provengono 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
30 marzo 2015
Operazioni preliminari: Pitfiller
La prima operazione da fare è riempire i punti di depressione presenti
nel dtm in modo da poter poi definire univocamente le direzioni di
drenaggio 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 questa
elaborazione riguarda meno dell’1% dei punti e
generalmente questi punti di depressione
provengono 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
30 marzo 2015
Operazioni preliminari: Pitfiller
La prima operazione da fare è riempire i punti di depressione presenti
nel dtm in modo da poter poi definire univocamente le direzioni di
drenaggio 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 questa
elaborazione riguarda meno dell’1% dei punti e
generalmente questi punti di depressione
provengono 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
30 marzo 2015
Pitfiller: utilizzo del comando
Per far girare questo comando,
come tutti gli altri comandi, è
necessario definire gli inputs e gli
outputs negli appositi tab posti in
fondo alla finestra degli Spatial
Toolbox.
Si può vedere che è inoltre presente
un terzo tab contenente una rapida
descrizione del comando, degli
inputs necessari, degli outputs
forniti e delle sintassi per utilizzare
il comando in uno script.
12
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: utilizzo del comando
Per far girare questo comando,
come tutti gli altri comandi, è
necessario definire gli inputs e gli
outputs negli appositi tab posti in
fondo alla finestra degli Spatial
Toolbox.
Si può vedere che è inoltre presente
un terzo tab contenente una rapida
descrizione del comando, degli
inputs necessari, degli outputs
forniti e delle sintassi per utilizzare
il comando in uno script.
12
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: inputs
L’input necessario per questo
comando è il dtm stesso.
Per fornire una mappa bisogna
cliccare sull’apposito bottone ...
accanto al nome della mappa
richiesta nel tab inputs.
Si aprirà così una finestra di input
per indicare dove è collocata la
mappa, quindi il suo path.
13
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: inputs
L’input necessario per questo
comando è il dtm stesso.
Per fornire una mappa bisogna
cliccare sull’apposito bottone ...
accanto al nome della mappa
richiesta nel tab inputs.
Si aprirà così una finestra di input
per indicare dove è collocata la
mappa, quindi il suo path.
13
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: inputs
L’input necessario per questo
comando è il dtm stesso.
Per fornire una mappa bisogna
cliccare sull’apposito bottone ...
accanto al nome della mappa
richiesta nel tab inputs.
Si aprirà così una finestra di input
per indicare dove è collocata la
mappa, quindi il suo path.
13
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: inputs
Lavorando all’interno di una
location GRASS/JGrass per fornire
in input una mappa è necessario
indicare il percorso del file
corrispondente alla mappa nella
cartella cell contenuta nella
location.
Questo si può agevolmente
identificare mediante la finestra di
navigazione dei files che compare
cliccando sul pulsante ... accanto
al campo dedicato al path.
14
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: output
Successivamente è necessario
indicare le opzioni di output da
inserire nel tab output.
L’output di questo comando, co-
me di molti comandi dei JGras-
stools, è la mappa
elaborata dal comando stesso.
‘E quindi necessario indicare nella
finestra di output che si apre
cliccando sul bottone ... il nome
della mappa di output ed il
percorso dove salvarla.
15
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: output
Inoltre lavorando all’interno di una
location il percorso di salvataggio
da indicare dovrà essere sempre la
cartella cell all’interno della
location stessa.
Questo percorso può essere sempre
agevolmente identificato mediante
la finestra di navigazione dei files
che compare cliccando sul pulsante
... accanto al campo dedicato al
path.
Il nome con cui salvare la mappa di
output del comando può invece
essere inserito nell’apposito campo
senza scrivere nessuna estensione.
16
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: ASCII input & output
Se invece che lavorare in una location GRASS/JGrass si vuole lavorare
in formato ESRI ASCII le mappe sono dei semplici file .asc.
Nella selezione dell’input è
sufficiente selezionare il file .asc
corrispondente alla mappa, mentre
nell’indicare l’output si può indicare
un percorso di salvataggio a
piacere: è però necessario indicare
l’estensione .asc nel nome del file.
Questo formato raster ha però alcuni svantaggi nella gestione della
“cartella di lavoro”, dei Sistemi di Riferimento delle mappe e nel
“trasferire l’intero lavoro” tra diversi programmi GIS
17
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: proiezione (.prj file) & ASCII format
Un file raster in formato ascii non può
contenere nessuna informazione relativa al
Sistema di Riferimento della mappa.
Ogni mappa in formato .asc deve essere
accompagnato dal file .prj contenete le
infiormazioni del SdR.
Il file .prj deve avere lo stesso nome
del file .asc (ovviamente ad eccezione
dell’estensione)
Se non si dispone di tale file lo si può
scaricare da http://spatialreference.org
(ricercando l’opportuno SdR) e rinominare
N.B. anche quando si lavora in una lo-
cation gli eventuali imput .asc devono
essere accompagnati dal corretto file .prj
18
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: esecuzione del comando
Inserite tutte le opzioni necessarie è
possibile eseguire il comando
cliccando sul bottone Run the
selected module in alto a destra
nella finestra degli Spatial Toolbox.
Il comando viene quindi eseguito
mostrando in Console la
progressione; terminata
l’esecuzione, la nuova mappa viene
salvata nella location (oppure i file
.asc e .prj).
T.W.: il salvataggio della prima
mappa nella location (specificando
la creazione della cartella cell)
creerà nella location un serie di altre
cartelle accessorie necessarie.
19
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pitfiller: esecuzione del comando
¯ poi imortarla e visualizzarla in un GIS spetterà a noi!
Visualizzazione della mappa output di Pitfiller in QGIS
20
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Analisi dei valori di una mappa: RasterSummary
Ora che abbiamo visto come si utilizza un comando attraverso gli
Spatial Toolbox e creata la nostra prima mappa vediamo un utile
comando che fornisce le statistiche riassuntive relative ad una mappa.
Questo comando non appartiene alle Horton Mchine ma
semplicemente ai moduli generici di Raster Processing
il comando RasterSummary calcola le statistiche dei valori di una
mappa raster
Nello specifico il comado calcola
alcune grandezze riassuntive dell’intera mappa: valore minimo,
valore massimo, valore media, deviazione standard, somma di tutti
i valori, la quantità di no data
oltre a fornire tutti i dati per costruire l’istogramma della
distribuzione dei valori contenuti nella mappa
21
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Analisi dei valori di una mappa: RasterSummary
Ora che abbiamo visto come si utilizza un comando attraverso gli
Spatial Toolbox e creata la nostra prima mappa vediamo un utile
comando che fornisce le statistiche riassuntive relative ad una mappa.
Questo comando non appartiene alle Horton Mchine ma
semplicemente ai moduli generici di Raster Processing
il comando RasterSummary calcola le statistiche dei valori di una
mappa raster
Nello specifico il comado calcola
alcune grandezze riassuntive dell’intera mappa: valore minimo,
valore massimo, valore media, deviazione standard, somma di tutti
i valori, la quantità di no data
oltre a fornire tutti i dati per costruire l’istogramma della
distribuzione dei valori contenuti nella mappa
21
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
RasterSummary: input
Questo particolare comando
richiede in input:
la mappa su cui calcolare le
statistiche
numero di intervalli in cui
dividere il range di valori
della mappa per calcolare
l’istogramma
il check per indicare di
calcolare tutti i dati
dell’istogramma
22
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
RasterSummary: output
I valori in output vengono stampati
nella vista Console, possono quindi
essere facilmente salvati in un file
di testo puro (mediante un copia &
incolla) in formato ASCII (ad
esempio: disth.txt), che un
qualsiasi foglio elettronico, o R (!),
può leggere facilmente.
Stampa, in ordine da sx a dx:
la media nell’intervallo dei
valori della mappa mappa
il numero di pixel della mappa
nell’intervallo
la percentuale di pixel della
mappa nell’intervallo
23
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Esempio di plot dei risultati
Questo è un esempio di plot con R della distribuzione delle quote dei
punti del dtm in esame, prima con ordinata i pixel, poi la percentuale.
read.table(“disth.txt”)->dh
plot(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
30 marzo 2015
Le direzioni di drenaggio
Le direzioni di drenaggio definiscono come l’acqua si muove sulla
superficie del terreno in relazione alla topografia della regione in analisi.
Ipotesi
Ogni cella del dtm può drenare
solo in una delle sue 8 celle
adiacenti, quelle adiacenti,
soprastanti, sottostanti o diagonali,
nella direzione di massima pendenza
discendente.
Solo 8 possibili direzioni per il flusso
¯ Questo è un limite nella
modellazione del flusso naturale
25
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
FlowDirection
Questo comando calcola le direzioni
di drenaggio nella direzione della
massima pendenza discendente
identificando per ogni cella del dtm
una delle 8 vicine.
L’input necessario è la mappa
del dtm depittato.
I numeri convenzionali che
rappresentano le direzioni di
drenaggio nella mappa di output
sono dall’1 all’8, dove 1 corrisponde
alla direzione est.
26
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
FlowDirection
Mappa di output dove ogni colore rappresenta una delle 8 direzioni.
27
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
FlowDirection
Corrispondenza tra colori della mappa, numeri convenzionali e direzioni
1//
2??
3OO
4 __
5 oo
6

7
 8

28
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Correzione alle direzioni di drenaggio
Il metodo finora descritto e utilizzato prende il nome D8. L’utilizzo di
questo metodo per la determinazione delle direzioni di drenaggio genera
un effetto di deviazione dalla reale direzione identificata dal gradiente
Questo metodo può essere corretto con un algoritmo che calcola le
direzioni di drenaggio minimizzando la deviazione della direzione del
flusso determinato da quella del flusso reale. Questa deviazione viene
calcolata partendo dal punto a quote maggiori, procedendo verso quote
minori.
La deviazione è calcolata mediante una costruzione triangolare e può
quindi essere espressa come:
Deviazione Angolare metodo D8-LAD
Distanza Trasversale metodo D8-LTD
Questo metodo utilizza un parametro λ per pesare la correzione.
Metodo sviluppato da S. Orlandi
29
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Correzione alle direzioni di drenaggio
Metodo D8-LAD Deviazione Angolare valutata con α
Metodo D8-LTD Distanza Trasversale valutata con δ
La deviazione è calcolata
cumulandola dal punto a quota
maggiore, discendendo; la direzione
D8 viene corretta indirizzandola
verso la direzione reale quando il
valore supera una certa soglia.
Questa soglia viene assegnata
mediante il parametro λ; se λ = 0 il
contatore non ha memoria e quindi
i punti precedenti non influenzano
la correzione.
30
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
DrainDir: input
I minimi input necessari sono:
la mappa del dtm depittato
la mappa delle direzioni di
drenaggio precedentemente
creata con FlowDirection
È inoltre possibile modificare il
parametro λ e la modalità LAD
o LTD.
Lavorando in modalità standard,
quindi senza fissare la rete
idrografica, non è necessario fornire
la mappa delle direzioni di
drenaggio lungo la rete.
31
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
DrainDir: output
Questo comando restituisce in
output la mappa delle aree
contribuenti, oltre alla mappa
rappresentante le direzioni di
drenaggio corrette.
La mappa che rappresenta le aree
contribuenti può essere
alternativamente ottenuta con il
comando Geomorphology - Tca
Nella prossima slide si illustrerà
cosa rappresentano le aree
contribuenti e la loro utilità.
32
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Aree contribuenti
L’ Area Contribuente Totale -tca- rappresenta l’area che contribuisce
all’afflusso in un punto del bacino.
È una quantità molto importante nell’analisi geomorfologica ed
idrologica di un bacino idrografico: è strettamente collegata al flusso in
uscita attraverso i differenti punti del bacino in condizioni di
precipitazione uniforme.
La maggior parte di metodi diffusivi utilizzati per estrarre la rete
idrografica a partire dal dtm sono basati su questa quantità.
Ai = Aj × Wj ; dove Wj =
1 se il j-esimo pixel drena nell’i-esimo
0 negli altri casi
33
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Aree contribuenti
Zoom della mappa delle tca, visualizzata dopo un opporuna
trasformazione in scala di colori logaritmica. Visto l’ordine di
grandezza dei valori si consiglia di visualizzare le tca in scala
logaritmica; invece per visualizzare la sola asta principale dalla mappa
non logaritmica accertarsi che i limiti della scala colori siano impostati
ai valori estermi min/max.
34
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: un’applicazione alle direzioni di drenaggio
Per trasformare i valori della mappa tca in scala logaritmica
utilizziamol o strumento:
Raster Processing - MapCalc,
utile per eseguire operazioni logico-aritmetiche su mappe raster
per applicare il logaritmo (base 10) al valore di ciascun pixel
useremo (come mostrato nel box di destra) la funzione:
log(mapname,base)
images {
map_tca = read;
result = write;
}
result =log(map_tca,10); }
35
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: un’applicazione alle direzioni di drenaggio
Per trasformare i valori della mappa tca in scala logaritmica
utilizziamol o strumento:
Raster Processing - MapCalc,
utile per eseguire operazioni logico-aritmetiche su mappe raster
per applicare il logaritmo (base 10) al valore di ciascun pixel
useremo (come mostrato nel box di destra) la funzione:
log(mapname,base)
images {
map_tca = read;
result = write;
}
result =log(map_tca,10); }
35
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: un’applicazione alle direzioni di drenaggio
Attualmente il Map Calculator, strumento che permette di eseguire
operazioni aritmetiche e logiche sulle mappe, utilizza il linguaggio Jiffle.
1 per prima cosa bisogna selezionare come sempre le mappe di input
e la mappa di output), cioè tutte le mappe coinvolte nei calcoli
2 successivamente bisogna anche scrivere il codice per definire queste
mappe come variabili
3 quindi va scritta la sintassi per eseguire le operazioni desiderate su
queste mappe, ad es. alcune comuni sono:
assegnazioni
operazioni aritmetiche
controllo di flusso if
gestione dei punti senza valori: NaN/null
4 in Jiffle sono presenti molte funzioni e sintassi non visibili
dall’interfaccia di STAGE, si veda questa guida introduttiva:
http://jaitools.org/docs/jiffle/latest/userguide/html/
36
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: definizione delle variabili
Gli input (i.e. ciascuna mappa coinvolta nei calcoli) devono essere
prima inserite come in qualunque altro comando (e anche l’output),
ma devono essere poi dichiarati anche nella sintassi del MapCalc
images {
foce_drain = read;
result = write;
}
Sintassi per definire le mappe di input
come variabili.
Per gli input, cioè le mappe da leggere, il
nome della variabile deve essere uguale a
quello della mappa.
È inoltre necessario definire la variabile di
output, cioè la mappa da scrivere. Questo
nome non deve necessariamente essere
uguale a quello della mappa di output;
quest’ultimo va come al solito, inserito
nell’apposito tab outputs insieme al path.
37
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: assegnazione  operazioni aritmetiche
Questi sono tre
esempi di
assegnazione della
variabile di output,
chiamata out:
result = null;
result = 91;
result=foce_drain;
Un’assegnazione si esegue sempre con una
sintassi composta, in ordine:
1 dal nome della variabile in cui
assegnare
2 dall’operatore di assegnazione =
3 dalla quantità da assegnare alla
variabile.
Negli esempi si vedono tre diversi tipi di
quantità da assegnare alla variabile out:
1 nessun valore null
2 un valore costante
3 i valori presenti in un’altra mappa
¯ questi tipi di quantità si possono
combinare con gli operatori + - * /
38
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: controllo di flusso if
if (test) {
operazioni da
eseguire se il
test è vero;
} else {
operazioni da
eseguire se il
test è falso;
};
Il test deve essere un’equazione logica che
restituisca Vero o Falso.
Può quindi essere imposto come
uguaglianza (Attenzione: ==),
disuguaglianza o con appositi comandi che
restituiscano Vero o Falso che vedremo
dopo.
Le operazioni da eseguire possono essere
una o più istruzioni, analoghe a quelle che
si scriverebbero al di fuori dell’ambiente
if.
¯ come operazioni da eseguire possono
anche essere annidati altri controlli if
39
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: gestione dei punti senza valori: NaN/null
Questi sono degli
esempi di utilizzo di
specifici comandi per
gestire i punti a cui
non è assegnato alcun
valore.
isnan(foce_drain)
out = null
Nei primi si vede l’uso del comando
isnan{}, che restituisce Vero quando il
suo argomento non contiene valori.
Più precisamente quando ha valore
Not A Number, valore assegnato di default
dai JGrasstools nei punti in cui non è
presente alcun dato.
Restituendo un valore booleano risulta
particolarmente comodo da usare come
test in un controllo if.
Nel secondo si vede invece l’assegnazione
ad una variabile (quindi ad una mappa) di
”nessun valore” grazie all’apposito
comando null che assegna valore null.
40
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: un’applicazione alle direzioni di drenaggio
Ritorniamo a trasformare mappa tca in scala logaritmica
utilizziamol o strumento:
Raster Processing - MapCalc,
utile per eseguire operazioni logico-aritmetiche su mappe raster
per applicare il logaritmo (base 10) al valore di ciascun pixel
useremo (come mostrato nel box di destra) la funzione:
log(mapname,base)
images {
map_tca = read;
result = write;
}
result =log(map_tca,10); }
41
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: un’applicazione alle direzioni di drenaggio
Ritorniamo a trasformare mappa tca in scala logaritmica
utilizziamol o strumento:
Raster Processing - MapCalc,
utile per eseguire operazioni logico-aritmetiche su mappe raster
per applicare il logaritmo (base 10) al valore di ciascun pixel
useremo (come mostrato nel box di destra) la funzione:
log(mapname,base)
images {
map_tca = read;
result = write;
}
result =log(map_tca,10); }
41
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
MapCalc: un’applicazione alle direzioni di drenaggio
Zoom della mappa delle tca, visualizzata opportunamente dopo la
trasformazione logarirtmica dei valori.
42
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Markoutlets
L’applicazione di molti comandi
per essere eseguita correttamente
richiede che la mappa delle
direzioni di drenaggio abbia un
ulteriore valore.
Questo nuovo valore rappresenta la
classe dei punti che rappresentano
gli outlets del bacino: questi sono i
punti che drenano all’esterno del
bacino in analisi.
Il comando Dem Manipulation
- Markoutlets marca gli
outlets con un valore
convenzionale 10, e richiede in
input le direzioni di drenaggio,
meglio se calcolate con DrainDir
43
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Estrazione della rete idrografica
Nel comando Network - ExtractNetwork sono implementati 3
metodi per estrarre i canali che compongono la rete idrografica:
0 mediante una soglia sulle aree contribuenti (solo i punti con area
contribuente maggiore della soglia danno luogo alla formazione di
canali)
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 punti
convergenti
Dopo aver individuato i punti di formazione dei canali, con una di
queste tre soglie, la rete viene costruita considerando tutti gli altri
punti posti a quote minori.
44
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
ExtractNetwork: modo 1
Si potrebbe ora procedere con
l’estrazione utilizzando il primo
metodo: soglia sulle sole aree
contribuenti, preferiamo però
andare oltre nell’analisi al fine di
ottenere una rete più accurata.
Sarebbero necessari in input la
mappa delle direzioni di dre-
naggio, meglio se calcolate con
DrainDir, e delle TCA.
È inoltre necessario impostare il
valore di soglia e specificare il
metodo da utilizzare: tca.
45
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Pendenze: Slope
Il comando Geomorphology - Slope calcola la pendenza della
superficie topografica in ogni punto lungo le direzioni di drenaggio.
Questo comando calcola la differenza di quota tra ogni pixel e quello
adiacente immediatamente a valle. Successivamente divide questa
grandezza per la dimensione del pixel, oppure della sua diagonale, a
seconda della posizione reciproca dei due pixel considerati.
Il valore restituito rappresenta quindi la tangente dell’angolo
rappresentante la pendenza. Si può ottenere il valore dell’angolo
operando con MapCalc, il cui funzionamento verrà illustrato più avanti.
46
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Slope
Richiede in input le mappe:
del dtm depittato
delle direzioni di drenaggio,
meglio se calcolate con
DrainDir
47
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
ExtractNetwork: modo 2
Avremmo già ora le mappe
necessarie ad estrarre le rete
idrografica con il secondo tipo di
soglia, basata su tca e pendenze;
proseguiamo invece nell’analisi al
fine di estarre la rete con l’ultimo, e
più raffinato, metodo.
Sarebbe quindi necessario fornire
un ulteriore input oltre a quelli
già visti, ovvero la mappa delle
pendenze appena calcolata.
Bisogna specificare il metodo
corretto: tca and slope.
48
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Curvature
Le curvature rappresentano la deviazione del vettore gradiente per
unità di lunghezza lungo particolari curve tracciate sulla superficie in
esame f(x,y).
La Curvatura Longitudinale rappresenta la deviazione del
gradiente andando da valle verso monte seguendo l’inviluppo dei
gradienti. È negativa se il gradiente aumenta.
La Curvatura Piana si ottiene sezionando la superficie con un piano
parallelo al piano (x,y) ed è la variazione dei vettori tangenti alle linee
di 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 di
intersezione tra un piano perpendicolare alla direzione del gradiente e
tangente alle linee di livello nel punto considerato.
Curvatura tangente e piana sono tra loro proporzionali e la loro
distribuzione spaziale è la stessa.
49
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Curvatura tangenziale (o normale)
Curvatura negativa - convessa:
questo caso è tipico di zone di
versante dove il flusso viene
suddiviso sui pixel vicini di quota
inferiore secondo il metodo della
massima pendenza.
Topografia localmente divergente
50
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Curvature
Il comando Geomorfology -
Curvatures permette di calcolare
questi 3 tipi di curvature come 3
diverse mappe di output.
Longitudinale
¯ Profile o Longitudinal
Piana
¯ Planar
Tangenziale
¯ Tangential o Normal
Questo comando richiede in input
la sola mappa del dtm depittato
51
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Curvature
Curvatura Longitudinale e suo zoom Curvatura Tangenziale e suo zoom
52
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Classi Topografiche
Permettono di attribuire ad ogni
pixel una delle 9 classi topografiche,
ottenute con l’intersezione dei tre
tipi di curvature longitudinali e dei
tre di curvature planari.
È anche possibile aggregare queste
classi in tre categorie fondamentali:
siti concavi
siti convessi
siti piani
53
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Classi Topografiche
Nomi identificativi e
corrispondenti valori per le
9 classi (a lato) e per le 3
classi aggregate (sotto) con
specificate le riclassificazioni.
10 planare parallelo
20 convesso parallelo
30 concavo parallelo
40 planare divergente
50 convesso divergente
60 concavo divergente
70 planare convergente
80 convesso convergente
90 concavo convergente
15 concavo, unione delle classi 30, 70 e 90
25 planare, corrispondente alla classe 10
35 convesso, unione delle restanti classi
54
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Tc
Il comando che permette di creare
le due mappe contenenti queste
classificazioni è Hillslope - Tc.
Richiede in input le due mappe
delle:
curvature longitudinali
curvature normali
È inoltre necessario definire due
soglie che definiscono la condizio-
ne di planarità.
Restituisce in output le due mappe
con 9 e 3 classi.
55
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Tc
Mappa 9 classi morfologiche Mappa 3 classi fondamentali
56
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
ExtractNetwork: modo 3
Abbiamo ora tutte le mappe
necessarie ad estrarre le rete
idrografica con il terzo tipo di
soglia, cioè sullo sforzo tangenziale
solo sui siti convergenti.
È quindi necessaria in input una
ulteriore mappa, oltre alle pri-
me due, delle classi topografiche
aggregate (con sole 3 classi).
È inoltre necessario indicare il
metodo corretto, l’ultimo.
La soglia dipende sempre, come per
gli altri metodi, dalla dimensione
dei pixel e dagli attributi
topografici del bacino.
57
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
ExtractNetwork: output
Mappa di output rappresentante i canali della rete idrografica
Ai punti
appartenenti
ai canali è
assegnato
valore 2,
mentre a tutti
gli altri punti
è assegnato
no value, cioè
nessun valore.
58
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Estrazione del bacino di interesse: chiusura
A questo punto abbiamo tutto quello che ci occorre per estrarre il
bacino 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à che
sulla mappa restituita da ExtractNetwork abbia valore 2.
1 Individuare il punto sulla mappa, se si dispone di uno shapefile
contenente tale punto è comodo importarlo per individuarlo con
facilità.
2 Interrogare il valore della mappa utilizzando lo strumento info di
QGIS, cliccando sul punto in esame (strumento info
contrassegnato dall’icona i nella barra degli strumenti)
3 Nella finestra info verifcare che il valore (Band 1) sia 2 e copiare le
coordinate del punto:
click dx su (clicked coordinates) - Copy attribute value
59
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Estrazione del bacino di interesse: chiusura
Zoom della rete dei canali e vista informazioni per individuare l’outlet
60
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Estrazione del bacino di interesse: Wateroutlet
Ora possiamo estrarre il bacino di
interesse con il comando Dem
Manipulation - Wateroutlet.
In input sono necessari:
le coordinate del punto di
chiusura appena individuate
la mappa delle direzioni di
drenaggio, meglio se
calcolata con DrainDir
Copiate le coordinate nei due
rispettivi campi
NB: la prima cooridnata in QGIS
è la coordinate est (x)
61
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Estrazione del bacino di interesse: Wateroutlet
Restituisce in output una maschera
del bacino estratto con valore 1
all’interno e no value all’esterno.
Si può verificare come il confine del
bacino estratto passi effettivamente
per il punto di chiusura.
62
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Ritaglio delle mappe sul bacino di interesse
Ora dobbiamo ritagliare sul bacino estratto anche tutte le altre mappe
fino ad ora elaborate.
Le opzioni di lavoro sarebbero due:
calcolare di nuovo le grandezze sul DTM del bacino estratto
ritagliare le mappe sulla maschera del bacino estratto
La prima opzione prevede di ricalcolare la mappa delle
elevazioni depittata e le direzioni di drenaggio. Questo può
comportare incompatibilità con il dato di partenza.
Per ottenere correttamente tutte le mappe relative al bacino ritagliato
sarà necessaria anche un’ulteriore operazione successiva: rilanciare il
comando Dem Manipulation - Markoutlets
sulla mappa delle direzioni di drenaggio ritagliata, in quanto gli outlets
del bacino ritagliato saranno differenti.
63
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Ritaglio delle mappe sul bacino di interesse
Ora dobbiamo ritagliare sul bacino estratto anche tutte le altre mappe
fino ad ora elaborate.
Le opzioni di lavoro sarebbero due:
calcolare di nuovo le grandezze sul DTM del bacino estratto
ritagliare le mappe sulla maschera del bacino estratto
La prima opzione prevede di ricalcolare la mappa delle
elevazioni depittata e le direzioni di drenaggio. Questo può
comportare incompatibilità con il dato di partenza.
Per ottenere correttamente tutte le mappe relative al bacino ritagliato
sarà necessaria anche un’ulteriore operazione successiva: rilanciare il
comando Dem Manipulation - Markoutlets
sulla mappa delle direzioni di drenaggio ritagliata, in quanto gli outlets
del bacino ritagliato saranno differenti.
63
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Ritaglio delle mappe sul bacino di interesse
Ora dobbiamo ritagliare sul bacino estratto anche tutte le altre mappe
fino ad ora elaborate.
Le opzioni di lavoro sarebbero due:
calcolare di nuovo le grandezze sul DTM del bacino estratto
ritagliare le mappe sulla maschera del bacino estratto
La prima opzione prevede di ricalcolare la mappa delle
elevazioni depittata e le direzioni di drenaggio. Questo può
comportare incompatibilità con il dato di partenza.
Per ottenere correttamente tutte le mappe relative al bacino ritagliato
sarà necessaria anche un’ulteriore operazione successiva: rilanciare il
comando Dem Manipulation - Markoutlets
sulla mappa delle direzioni di drenaggio ritagliata, in quanto gli outlets
del bacino ritagliato saranno differenti.
63
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
CutOut
Utilizzando il comando CutOut
scegliamo quindi di ritagliare le
mappe già create:
dtm depittato
direzioni di drenaggio
tca
reticolo idrografico
(pendenze)
(curvature)
(classi topografiche)
Gli input necessari sono la mappa
da usare come maschera e quella da
ritagliare, senza soglie.
64
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Struttura di drenaggio e sottobacini
Ora che abbiamo estratto il bacino d’interesse e ritagliato le mappe di
base su questo, possiamo eseguire alcuni altri comandi al fine di
ottenere la struttura della rete di drenaggio e dei sottobacini relativi al
bacino di interesse.
In particolare si vogliono ottenere le mappe dei sottobacini e della rete di
drenaggio, quest’ultima anche in formato vettoriali in quanto da questa è
possibile estrarre (e poi interrogare) informazioni geometriche utili.
Lo strumento fondamentale sarà il comando che permette di numerare
la rete di drenaggio ed estrarre i corrispondenti sottobacini
¯ Network - NetNumbering
Utilizzeremo inoltre alcuni altri utili strumenti per le mappe vettoriali:
Network - NetworkAttributesBuilder vettorializzazione
della rete
Vector Processing - VectorReshaper manipolazione di
mappe vettoriali
65
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Struttura di drenaggio e sottobacini
Ora che abbiamo estratto il bacino d’interesse e ritagliato le mappe di
base su questo, possiamo eseguire alcuni altri comandi al fine di
ottenere la struttura della rete di drenaggio e dei sottobacini relativi al
bacino di interesse.
In particolare si vogliono ottenere le mappe dei sottobacini e della rete di
drenaggio, quest’ultima anche in formato vettoriali in quanto da questa è
possibile estrarre (e poi interrogare) informazioni geometriche utili.
Lo strumento fondamentale sarà il comando che permette di numerare
la rete di drenaggio ed estrarre i corrispondenti sottobacini
¯ Network - NetNumbering
Utilizzeremo inoltre alcuni altri utili strumenti per le mappe vettoriali:
Network - NetworkAttributesBuilder vettorializzazione
della rete
Vector Processing - VectorReshaper manipolazione di
mappe vettoriali
65
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Struttura di drenaggio e sottobacini
Ora che abbiamo estratto il bacino d’interesse e ritagliato le mappe di
base su questo, possiamo eseguire alcuni altri comandi al fine di
ottenere la struttura della rete di drenaggio e dei sottobacini relativi al
bacino di interesse.
In particolare si vogliono ottenere le mappe dei sottobacini e della rete di
drenaggio, quest’ultima anche in formato vettoriali in quanto da questa è
possibile estrarre (e poi interrogare) informazioni geometriche utili.
Lo strumento fondamentale sarà il comando che permette di numerare
la rete di drenaggio ed estrarre i corrispondenti sottobacini
¯ Network - NetNumbering
Utilizzeremo inoltre alcuni altri utili strumenti per le mappe vettoriali:
Network - NetworkAttributesBuilder vettorializzazione
della rete
Vector Processing - VectorReshaper manipolazione di
mappe vettoriali
65
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Rete di drenaggio del bacino di interesse
Per prima cosa estraiamo la rete di
drenaggio relativa al solo bacino di
interesse, analogamente a come già
fatto per l’intero dtm.
Questo in modo da utilizzare
sempre il metodo più raffinato e
settare accuratamente la soglia.
Gli input sono quelli già visti,
ovviamente utilizzando tutte le
mappe ritagliate.
È ora molto importante scegliere
accuratamente il valore della soglia,
da questo dipende quanto sarà fitta
e quindi quanti rami e conseguenti
sottobacini si otterranno.
66
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
NetworkAttributesBuilder: mappa vettoriale .shp della rete
Se desideriamo ora possiamo
ottenere la mappa vettoriale della
rete nel nostro bacino di interersse.
Per questo usiamo il comando
NetworkAttributesBuilder, che
ne estrae anche una serie di utili
attributi.
Gli input si indicano come di
consueto.
Invece l’output vettoriale .shp va
indicato diversamente. Si de-
ve indicare il nome della map-
pa, l’estensione -che deve essere
shp- e un percorso a piacere do-
ve salvarlo (non all’interno della
location). 67
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Mappa vettoriale .shp della rete idrografica
Mappa vettoriale
della rete, e attributi
di ogni feature
contenuti nella
tabella attributi
(visualizzabile in
QGIS).
Come si vede è molto
utile per distinguere i
singoli rami e capire
quanti sono
esattamente, perchè
coincideranno con i
sottobacini che
estrarremo.
68
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
VectorReshaper: estrazione delle lunghezze dei rami
Sfruttiamo ora le potenzialità della mappa vettoriale della rete per
estarrre le lunghezze di ogni singolo ramo.
Per fare questo useremo il comando generico per analisi vettoriali
VectorReshaper, non appartenente quindi alla categoria delle
Horton Machine ma ai Vector Processing.
Questo comando vuole in input una mappa vettoriale e restituisce
un’altra mappa vettoriale derivata grazie a funzioni ecql (una
sintassi ampliata del cql, semplificazione del linquaggio sql) con:
1 nuovi campi di attributi
2 attributi derivati dalle caratteristiche geometriche delle feature
3 nuove feature geometriche derivate da quelle originali
Si inserisce il vettoriale in input intuitivamente andando a selezionare il
file con estensione .shp su cui si desidera lavorare.
La sintassi per estrarre le lunghezze è: len=geomLength(the_geom)
Documentazione sull’ecql [1] e una buona lista di funzioni cql [2]:
[1] http://docs.geotools.org/latest/userguide/library/cql/ecql.html
[2] http://udig.github.io/docs/user/concepts/Constraint%20Query%20Language.html
69
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
VectorReshaper: estrazione delle lunghezze dei rami
Sfruttiamo ora le potenzialità della mappa vettoriale della rete per
estarrre le lunghezze di ogni singolo ramo.
Per fare questo useremo il comando generico per analisi vettoriali
VectorReshaper, non appartenente quindi alla categoria delle
Horton Machine ma ai Vector Processing.
Questo comando vuole in input una mappa vettoriale e restituisce
un’altra mappa vettoriale derivata grazie a funzioni ecql (una
sintassi ampliata del cql, semplificazione del linquaggio sql) con:
1 nuovi campi di attributi
2 attributi derivati dalle caratteristiche geometriche delle feature
3 nuove feature geometriche derivate da quelle originali
Si inserisce il vettoriale in input intuitivamente andando a selezionare il
file con estensione .shp su cui si desidera lavorare.
La sintassi per estrarre le lunghezze è: len=geomLength(the_geom)
Documentazione sull’ecql [1] e una buona lista di funzioni cql [2]:
[1] http://docs.geotools.org/latest/userguide/library/cql/ecql.html
[2] http://udig.github.io/docs/user/concepts/Constraint%20Query%20Language.html
69
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
VectorReshaper: estrazione delle lunghezze dei rami
Sfruttiamo ora le potenzialità della mappa vettoriale della rete per
estarrre le lunghezze di ogni singolo ramo.
Per fare questo useremo il comando generico per analisi vettoriali
VectorReshaper, non appartenente quindi alla categoria delle
Horton Machine ma ai Vector Processing.
Questo comando vuole in input una mappa vettoriale e restituisce
un’altra mappa vettoriale derivata grazie a funzioni ecql (una
sintassi ampliata del cql, semplificazione del linquaggio sql) con:
1 nuovi campi di attributi
2 attributi derivati dalle caratteristiche geometriche delle feature
3 nuove feature geometriche derivate da quelle originali
Si inserisce il vettoriale in input intuitivamente andando a selezionare il
file con estensione .shp su cui si desidera lavorare.
La sintassi per estrarre le lunghezze è: len=geomLength(the_geom)
Documentazione sull’ecql [1] e una buona lista di funzioni cql [2]:
[1] http://docs.geotools.org/latest/userguide/library/cql/ecql.html
[2] http://udig.github.io/docs/user/concepts/Constraint%20Query%20Language.html
69
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
VectorReshaper: estrazione delle lunghezze dei rami
Interfaccia del comando (stage) settato per caloclare le lunghezze
(sinistra) e il nuovo vettoriale della rete con il nuovo campo delle
lunghezze: len
70
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
NetNumbering: numerazione della rete ed estazione sottobacini
Utilizziamo ora il comando
Network - NetNumbering al fine
di estrarre i sottobacini, oltre alla
mappa della rete numerata.
I primi 3 inputs sono quelli
necessari, a questo punto
dovrebbero essere tutti di
immediata comprensione.
Nella modalità in cui utilizzere-
mo il comando non è necessario
inserire la quarta mappa in
input.
Gli outputs sono tutti mappe ra-
ster, dovremo inserirli entrambi.
71
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
NetNumbering: settaggio della soglia
(Se) Il comando lavora in modalità
soglia sulle TCA (threshold on
TCA), bisonerà quindi inserire un
opportuno valore nel campo soglia
È sempre e comunque necessa-
rio utilizzare in input una mappa
della rete con un adeguato livello
di ramificazioni, quindi preceden-
temente estratta con una soglia
adeguata (ad es: TCA=1000)
Inoltre è necessario settare anche
qua la soglia sulle TCA, per
coerenza alemno uguale o maggiore
a quella con cui era stata estratta
la rete (ad es: TCA=10000)
72
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
NetNumberin: output del comando
Le due mappe output di NetNumbering: rete numerata e sottobacini
73
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Mappa vettoriale dei sottobacini
analogamente a quanto detto per la rete idrografica è altrettanto
comoda una mappa vettoriale dei contorni dei sottobacini
questa operazione è fatta egregiamente dal comando BasinShape,
purtroppo questo non è presente nell’attuale versione di STAGE
un operazione simile può essere fatta con il classico modulo di
conversione da raster a vettoriale che è presente in
Vector Processing - Vectorizer
questo comando ha però alcuni problemi (come in GRASS) alle
congiunzioni tra due sottobacini, dove vengono erroneamente
creati sottobacini (feature) di pochi pixel non presenti
il comando ha però un utile opzione di soglia sulla dimensione
minima (in pixel) che devono avere le feature per essere create
¯ si può quindi giocare con il valore di questa soglia per cercare
di ottenere una mappa vettoriale dei sottobacini corretta
Le 4 slide seguenti sono comunque riportate per completezza o per centroidi da Vectorizer
74
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
BasinShape: vettorializzazione dei contorni dei sottobacini
Vogliamo ora ottenere la mappa
vettoriale .shp dei contorni dei
sottobacini, che sarà comoda per
estrarre varie informazioni, come
già visto per la mappa della rete.
Questo comando vuole in input
due mappe raster:
la mappa del dtm depittato
e quella dei sottobacini
ottenuta con NetNumbering
. . . e restituisce in output la
mappa vettoriale dei sottobacini.
Gli input raster si inseriscono come
già visto in precedenza e l’output
vettoriale come visto per la rete.
75
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Mappa vettoriale .shp dei sottobacini
Mappa vettoriale dei
sottobacini, si può
vedere che il
comando ha gia
calcolato molti
attributi utili per
ogni sottobacino:
area
perimetro
numerazione
quota massima
quota minima
quota media
quota dell’uscita
76
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
VectorReshaper: centroidi dei sottobacini
Sfruttiamo ancora il comando
VectorReshaper per ottenere una
nuova mappa contenente i centroidi
di ogni singolo bacino.
Le mappe vettoriali in input e
output si inseriscono come visto
prima per lo stesso comando.
La nuova mappa deve contenere
delle nuove features geometriche
derivate, i centroidi.
La sintassi ecql dovrà riscrivere
il campo the_geom, sarà quindi:
the_geom=centroid(the_geom)
77
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
VectorReshaper: Mappa vettoriale .shp dei centroidi
Mappa vettoriale dei
centroidi di ogni
sottobacino.
È ben evidente come
questo comando
abbia creato una
nuova mappa con
feature geometriche
di tipo differente,
ovvero i punti
rappresentanti i
centroidi, derivati
dalle feature originali
(aree dei
sottobacini).
78
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Attributi derivati
Ora che abbiamo concluso l’analisi idrologica di base, estraendo il
bacino d’interesse, la rete di drenaggio ed i sottobacini, possiamo
eseguire una serie di altri comandi delle Horton Machine al fine di
ottenere 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
79
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Attributi derivati
Ora che abbiamo concluso l’analisi idrologica di base, estraendo il
bacino d’interesse, la rete di drenaggio ed i sottobacini, possiamo
eseguire una serie di altri comandi delle Horton Machine al fine di
ottenere 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
79
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Indice topografico
TI = log
A
b | z|
esprime la tendenza di un pixel a saturarsi
¯ aree con valori elevati di indice topografico si saturano
prima di aree a basso indice topografico
dipende 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 tca
la mappa delle pendenze calcolata con Slope
80
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Indice topografico
TI = log
A
b | z|
esprime la tendenza di un pixel a saturarsi
¯ aree con valori elevati di indice topografico si saturano
prima di aree a basso indice topografico
dipende 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 tca
la mappa delle pendenze calcolata con Slope
80
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Calcolo dell’indice topografico: TopIndex input
81
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Calcolo dell’indice topografico: TopIndex output
82
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Calcolo dell’indice topografico: MapCalc
Pixel con pendenza bassa hanno elevata propensione alla
saturazione a parità di area cumulata
ci sono zone all’interno del bacino
dove 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 con
valore nullo di indice
topografico il valore
massimo caratteristico
della mappa utilizzando
Raster Processing -
MapCalc, sfruttando,
con le modalità già viste,
la seguente 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; } ; };
83
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Calcolo dell’indice topografico: MapCalc
84
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Distanze riscalate: RescaledDistance
Il comando RescaledDistance permette di calcolare le distanze
dall’uscita del bacino (outlet), calcolate lungo le direzioni di drenaggio.
Queste distanze possono essere riscalate, cioè calcolate considerando
velocità diverse nei versanti e nella rete idrografica.
Per calcolare queste distanze viene quindi introdotto il parametro r,
definito come il rapporto tra la velocità nei canali e nei versanti:
r =
uc
uh
con uc : velocità nei canali e uh : velocità nei versanti
Questo comando richiede in input le mappe:
delle direzioni di drenaggio, calcolate con DrainDir e con gli
outlets marcati con MarkOutlets
della rete idrografica, calcolata con ExtractNetwork scegliendo
uno dei tre tipi di soglie (sempre meglio se il tipo 2)
Richiede inoltre il parametro r (se r = 1 le distanze saranno semplici)
85
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Distanze riscalate: RescaledDistance
Il comando RescaledDistance permette di calcolare le distanze
dall’uscita del bacino (outlet), calcolate lungo le direzioni di drenaggio.
Queste distanze possono essere riscalate, cioè calcolate considerando
velocità diverse nei versanti e nella rete idrografica.
Per calcolare queste distanze viene quindi introdotto il parametro r,
definito come il rapporto tra la velocità nei canali e nei versanti:
r =
uc
uh
con uc : velocità nei canali e uh : velocità nei versanti
Questo comando richiede in input le mappe:
delle direzioni di drenaggio, calcolate con DrainDir e con gli
outlets marcati con MarkOutlets
della rete idrografica, calcolata con ExtractNetwork scegliendo
uno dei tre tipi di soglie (sempre meglio se il tipo 2)
Richiede inoltre il parametro r (se r = 1 le distanze saranno semplici)
85
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Distanze riscalate: RescaledDistance
Il comando RescaledDistance permette di calcolare le distanze
dall’uscita del bacino (outlet), calcolate lungo le direzioni di drenaggio.
Queste distanze possono essere riscalate, cioè calcolate considerando
velocità diverse nei versanti e nella rete idrografica.
Per calcolare queste distanze viene quindi introdotto il parametro r,
definito come il rapporto tra la velocità nei canali e nei versanti:
r =
uc
uh
con uc : velocità nei canali e uh : velocità nei versanti
Questo comando richiede in input le mappe:
delle direzioni di drenaggio, calcolate con DrainDir e con gli
outlets marcati con MarkOutlets
della rete idrografica, calcolata con ExtractNetwork scegliendo
uno dei tre tipi di soglie (sempre meglio se il tipo 2)
Richiede inoltre il parametro r (se r = 1 le distanze saranno semplici)
85
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Distanze riscalate: RescaledDistance
Calcolo delle mappa delle distanze semplici con r = 1
86
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
RescaledDistance
Calcolo delle mappa delle distanze riscalate con r = 10
87
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Funzione di ampiezza del bacino idrografico
Ora che abbiamo calcolato le mappe delle distanze e distanze riscalate
vogliamo ottenere la distribuzione di questi valori sulle mappe, il grafico
di queste rappresenterà la funzione d’ampiezza semplice e riscalata.
La distribuzione dei valori su una mappa potrebbe essere
ugualmente 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 statistiche
incrociate tra due mappe.
Per ottenere comunque la semplice distribuzione dei valori di una
mappa è sufficiente utilizzarlo fornendo la stessa mappa in input per
entrambe le mappe.
88
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Funzione di ampiezza del bacino idrografico
Ora che abbiamo calcolato le mappe delle distanze e distanze riscalate
vogliamo ottenere la distribuzione di questi valori sulle mappe, il grafico
di queste rappresenterà la funzione d’ampiezza semplice e riscalata.
La distribuzione dei valori su una mappa potrebbe essere
ugualmente 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 statistiche
incrociate tra due mappe.
Per ottenere comunque la semplice distribuzione dei valori di una
mappa è sufficiente utilizzarlo fornendo la stessa mappa in input per
entrambe le mappe.
88
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Funzione di ampiezza del bacino idrografico
Ora che abbiamo calcolato le mappe delle distanze e distanze riscalate
vogliamo ottenere la distribuzione di questi valori sulle mappe, il grafico
di queste rappresenterà la funzione d’ampiezza semplice e riscalata.
La distribuzione dei valori su una mappa potrebbe essere
ugualmente 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 statistiche
incrociate tra due mappe.
Per ottenere comunque la semplice distribuzione dei valori di una
mappa è sufficiente utilizzarlo fornendo la stessa mappa in input per
entrambe le mappe.
88
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Analisi dei valori di una mappa: Cb
Il comando Statistics - Cb calcola le statistiche dei valori di
una mappa rispetto a quelli contenuti in un’altra mappa
i dati della prima mappa vengono raggruppati in un numero
prefissato di intervalli e viene calcolato il valore medio della
variabile indipendente in ciascun intervallo
ad ogni intervallo corrisponde un set di valori nella seconda
mappa, dei quali viene calcolata la media e gli altri momenti
richiesti dall’utente
il comando restituisce nella vista Console tutti questi valori per
ogni intervallo, associati al numero di pixel contenuti nell’intervallo
I valori stampati in output possono essere facilmente salvati in un file di
testo puro (mediante un copia  incolla) in formato ASCII che un
qualsiasi foglio elettronico o R può leggere facilmente.
89
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Cb: input
Questo particolare comando
richiede in input:
le due mappe su cui
calcolare le statistiche
numero di intervalli in cui
dividere il range di valori
della prima mappa
il primo e l’ultimo ordine dei
momenti da calcolare
Le due mappe possono anche essere
la stessa mappa se si vuole ottenere
la distribuzione dei valori contenuti
nella mappa sul bacino (va sempre
inserita in entrambe i campi).
90
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Cb: output
Questo particolare comando
stampa, in ordine da sx a dx:
la media nell’intervallo dei
valori della prima mappa
il numero di pixel della prima
mappa nell’intervallo
il momento di primo ordine
(media) dei valori della
seconda mappa
il momento di secondo ordine
(varianza) dei valori della
seconda mappa
se richiesti, i momenti di
ordine superiore dei valori
della seconda mappa
91
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Esempio di plot dei risultati
Questo è un esempio di plot con R della distribuzione delle distanze dei
punti del bacino: rappresenta la funzione d’ampiezza del bacino.
read.table(“filename.txt”)-rd1
plot(rd1[,1],rd1[,2],type=“l”,ylab=“Area [pixel]”,
xlab=“Distanza [m]”,main=“Distanze Riscalate”)
92
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Scriptare i JGrasstools
Se lanciare tutti questi comandi in successione e dover inserire ogni
volta tutti gli input e gli output vi è sembrato molto noioso, vi
suggerisco di provare a scriptare!
Tutte le operazioni che abbiamo fatto da interfaccia grafica si
possono completamente implementare in semplici codici che
eseguono in successione una serie di comandi.
I JGrasstools si possono scriptare con linguaggio Geoscript,
pensato per scrivere codici con sintassi groovy su moduli Java
Uno script può essere scritto e lanciato in vari modi,
agevolmente all’interno di STAGE, ma anche attraverso shell
script completamente da riga di comando (termianle)!
Un pò di documentazione (spesso riferita al vecchio uDig, ma non cambia):
jgrasstechtips.blogspot.it/2013/01/proposal-geoscript-console-in-udig.html
jgrasstechtips.blogspot.it/2013/01/course-java-open-source-gis-development.html
jgrasstechtips.blogspot.it/2013/03/course-geographic-scripting-in-udig.html
93
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Indice dei simboli
Simbolo Nome udm
TI Indice topografico -
A Area totale al di sopra di ogni punto L2
b Lunghezza della parte di pixel
interessata dal drenaggio L
z Pendenza -
x Distanza di un punto del bacino dall’uscita
misurata lungo le direzioni di drenaggio L
x Distanza dall’uscita riscalata L
xc Distanza di un punto del canale dall’uscita L
xh Distanza di un punto dal canale
a cui afferisce (lungo le linee di drenaggio) L
r 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
94
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Indice dei comandi
Comando Breve Descrizione
Cb Calcola le le statistiche delle mappe
Curvature Calcola le curvature longitudinali e trasversali
CutOut Ritaglia una mappa raster
DrainDir Stima le direzioni di drenaggio corrette
ExtractNetwork Estrae il reticolo idrografico
FlowDirection Stima le direzioni di drenaggio con D8 puro
MapCalc Esegue calcoli sui raster
MarkOutlet Marca l’uscita del bacino in esame
Pitfiller Riempie le depressioni di un DEM
RescaledDistance Calcola la funzione di ampiezza riscalata
Slope Calcola il modulo della pendenza
Tc Calcola le classi topografiche
Tca Calcola le aree contribuenti
TopIndex Calcola l’indice topografico
WaterOutlet Estrae il bacino idrografico
95
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Credits
La Horton Machine è il frutto del lavoro di ricerca
congiunto di cudam ed Hydrologis s.r.l.
96
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
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 Ispra
nell’ambito del progetto Danube Flood Risk e dalla Provincia
Autonoma di Bolzano, nell’ambito del progetto HydroAlp.
Per quanto possibile, questa presentazione è stata redatta con l’uso di
software libero. LATEX per a scrittura, per il quale Leonardo Perathoner
ha approntato un apposito stile. Il programma statistico R
(http://cran.r-project.org/) per l’elaborazione delle figure non
prodotte da STAGE e QGIS.
97
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015
Grazie dell’attenzione
JGrassTools Mailinglist:
https://groups.google.com/forum/?fromgroups#!forum/jgrasstools
E-mail esercitazioni:
esercitazioni.idrologia2013@gmail.com
98
S. Franceschi, L. Perathoner, M. Toro, G. Formetta
30 marzo 2015

Weitere ähnliche Inhalte

Andere mochten auch

2 idro-geomorfologia, Analisi dei dati digitale del terreno
2  idro-geomorfologia, Analisi dei dati digitale del terreno2  idro-geomorfologia, Analisi dei dati digitale del terreno
2 idro-geomorfologia, Analisi dei dati digitale del terrenoRiccardo Rigon
 
2 b-grandezze derivate&bacini
2 b-grandezze derivate&bacini2 b-grandezze derivate&bacini
2 b-grandezze derivate&baciniRiccardo Rigon
 
2 e-idro-geomorfologia-geomorhpic laws
2 e-idro-geomorfologia-geomorhpic laws2 e-idro-geomorfologia-geomorhpic laws
2 e-idro-geomorfologia-geomorhpic lawsRiccardo Rigon
 
2 introduzione gis - La nuova versione
2   introduzione gis - La nuova versione2   introduzione gis - La nuova versione
2 introduzione gis - La nuova versioneRiccardo Rigon
 
1 introduzione all'idrologia - Parte prima
1   introduzione all'idrologia - Parte prima1   introduzione all'idrologia - Parte prima
1 introduzione all'idrologia - Parte primaRiccardo Rigon
 
12 acqua nei suoli - Suoli
12   acqua nei suoli  - Suoli12   acqua nei suoli  - Suoli
12 acqua nei suoli - SuoliRiccardo Rigon
 
1d legge deilavoripubblici
1d legge deilavoripubblici1d legge deilavoripubblici
1d legge deilavoripubbliciRiccardo Rigon
 
1b le partidellaretefognaria
1b le partidellaretefognaria1b le partidellaretefognaria
1b le partidellaretefognariaRiccardo Rigon
 
Introduzione al Corso di Idrologia
Introduzione al Corso di IdrologiaIntroduzione al Corso di Idrologia
Introduzione al Corso di IdrologiaRiccardo Rigon
 
1a modern urbanhydrology-an overview
1a modern urbanhydrology-an overview1a modern urbanhydrology-an overview
1a modern urbanhydrology-an overviewRiccardo Rigon
 
Measuring Precipitation
Measuring PrecipitationMeasuring Precipitation
Measuring PrecipitationRiccardo Rigon
 
10.1 precipitazioni; circolazione generale e gradienti barici
10.1   precipitazioni; circolazione generale e gradienti barici10.1   precipitazioni; circolazione generale e gradienti barici
10.1 precipitazioni; circolazione generale e gradienti bariciRiccardo Rigon
 
6 l-radiation-table ofsymbols
6 l-radiation-table ofsymbols6 l-radiation-table ofsymbols
6 l-radiation-table ofsymbolsRiccardo Rigon
 
1e il passatoeilfuturo
1e il passatoeilfuturo1e il passatoeilfuturo
1e il passatoeilfuturoRiccardo Rigon
 
Introduzione alle Lezioni 2017
Introduzione alle Lezioni 2017Introduzione alle Lezioni 2017
Introduzione alle Lezioni 2017Riccardo Rigon
 
Introduzione alle Lezioni 2017
Introduzione alle Lezioni 2017Introduzione alle Lezioni 2017
Introduzione alle Lezioni 2017Riccardo Rigon
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShareSlideShare
 

Andere mochten auch (20)

2 idro-geomorfologia, Analisi dei dati digitale del terreno
2  idro-geomorfologia, Analisi dei dati digitale del terreno2  idro-geomorfologia, Analisi dei dati digitale del terreno
2 idro-geomorfologia, Analisi dei dati digitale del terreno
 
2 b-grandezze derivate&bacini
2 b-grandezze derivate&bacini2 b-grandezze derivate&bacini
2 b-grandezze derivate&bacini
 
2 e-idro-geomorfologia-geomorhpic laws
2 e-idro-geomorfologia-geomorhpic laws2 e-idro-geomorfologia-geomorhpic laws
2 e-idro-geomorfologia-geomorhpic laws
 
P jgrass-jgrastools
P jgrass-jgrastoolsP jgrass-jgrastools
P jgrass-jgrastools
 
P udig
P udigP udig
P udig
 
2 introduzione gis - La nuova versione
2   introduzione gis - La nuova versione2   introduzione gis - La nuova versione
2 introduzione gis - La nuova versione
 
1 introduzione all'idrologia - Parte prima
1   introduzione all'idrologia - Parte prima1   introduzione all'idrologia - Parte prima
1 introduzione all'idrologia - Parte prima
 
12 acqua nei suoli - Suoli
12   acqua nei suoli  - Suoli12   acqua nei suoli  - Suoli
12 acqua nei suoli - Suoli
 
1c il controllolocale
1c il controllolocale1c il controllolocale
1c il controllolocale
 
1d legge deilavoripubblici
1d legge deilavoripubblici1d legge deilavoripubblici
1d legge deilavoripubblici
 
1b le partidellaretefognaria
1b le partidellaretefognaria1b le partidellaretefognaria
1b le partidellaretefognaria
 
Introduzione al Corso di Idrologia
Introduzione al Corso di IdrologiaIntroduzione al Corso di Idrologia
Introduzione al Corso di Idrologia
 
1a modern urbanhydrology-an overview
1a modern urbanhydrology-an overview1a modern urbanhydrology-an overview
1a modern urbanhydrology-an overview
 
Measuring Precipitation
Measuring PrecipitationMeasuring Precipitation
Measuring Precipitation
 
10.1 precipitazioni; circolazione generale e gradienti barici
10.1   precipitazioni; circolazione generale e gradienti barici10.1   precipitazioni; circolazione generale e gradienti barici
10.1 precipitazioni; circolazione generale e gradienti barici
 
6 l-radiation-table ofsymbols
6 l-radiation-table ofsymbols6 l-radiation-table ofsymbols
6 l-radiation-table ofsymbols
 
1e il passatoeilfuturo
1e il passatoeilfuturo1e il passatoeilfuturo
1e il passatoeilfuturo
 
Introduzione alle Lezioni 2017
Introduzione alle Lezioni 2017Introduzione alle Lezioni 2017
Introduzione alle Lezioni 2017
 
Introduzione alle Lezioni 2017
Introduzione alle Lezioni 2017Introduzione alle Lezioni 2017
Introduzione alle Lezioni 2017
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare
 

Mehr von Riccardo Rigon

12.13 acqua neisuoli-watertableequations
12.13 acqua neisuoli-watertableequations12.13 acqua neisuoli-watertableequations
12.13 acqua neisuoli-watertableequationsRiccardo Rigon
 
12.1b tessitura e struttura
12.1b   tessitura e struttura12.1b   tessitura e struttura
12.1b tessitura e strutturaRiccardo Rigon
 
12.1a acqua neisuoli-suoli
12.1a acqua neisuoli-suoli12.1a acqua neisuoli-suoli
12.1a acqua neisuoli-suoliRiccardo Rigon
 
4 hydrology geostatistics-part_2
4 hydrology geostatistics-part_2 4 hydrology geostatistics-part_2
4 hydrology geostatistics-part_2 Riccardo Rigon
 
3 alberti-seconda parte - About Spatial Correlation
3 alberti-seconda parte - About Spatial Correlation3 alberti-seconda parte - About Spatial Correlation
3 alberti-seconda parte - About Spatial CorrelationRiccardo Rigon
 
1 alberti-prima parte - Metodi di Interpolazione
1 alberti-prima parte - Metodi di Interpolazione1 alberti-prima parte - Metodi di Interpolazione
1 alberti-prima parte - Metodi di InterpolazioneRiccardo Rigon
 
Introduzione all'uso della Console di OMS e di QGIS (per le analisi del corso...
Introduzione all'uso della Console di OMS e di QGIS (per le analisi del corso...Introduzione all'uso della Console di OMS e di QGIS (per le analisi del corso...
Introduzione all'uso della Console di OMS e di QGIS (per le analisi del corso...Riccardo Rigon
 
6 i-longwave radiation
6 i-longwave radiation6 i-longwave radiation
6 i-longwave radiationRiccardo Rigon
 
6 h-coping withterrain
6 h-coping withterrain6 h-coping withterrain
6 h-coping withterrainRiccardo Rigon
 
6 g-considering clouds
6 g-considering clouds6 g-considering clouds
6 g-considering cloudsRiccardo Rigon
 
6 f-radiation-absorptions
6 f-radiation-absorptions6 f-radiation-absorptions
6 f-radiation-absorptionsRiccardo Rigon
 
6 e-coping withearthsurface
6 e-coping withearthsurface6 e-coping withearthsurface
6 e-coping withearthsurfaceRiccardo Rigon
 
6 d-radiation-from sun2earth
6 d-radiation-from sun2earth6 d-radiation-from sun2earth
6 d-radiation-from sun2earthRiccardo Rigon
 
6 c-radiation-stefan boltzman
6 c-radiation-stefan boltzman6 c-radiation-stefan boltzman
6 c-radiation-stefan boltzmanRiccardo Rigon
 

Mehr von Riccardo Rigon (20)

10 Idrologia & Clima
10 Idrologia & Clima10 Idrologia & Clima
10 Idrologia & Clima
 
12.13 acqua neisuoli-watertableequations
12.13 acqua neisuoli-watertableequations12.13 acqua neisuoli-watertableequations
12.13 acqua neisuoli-watertableequations
 
12.6b just ks
12.6b just ks12.6b just ks
12.6b just ks
 
12.6 acquanei suoli-k
12.6 acquanei suoli-k12.6 acquanei suoli-k
12.6 acquanei suoli-k
 
12.1b tessitura e struttura
12.1b   tessitura e struttura12.1b   tessitura e struttura
12.1b tessitura e struttura
 
12.1a acqua neisuoli-suoli
12.1a acqua neisuoli-suoli12.1a acqua neisuoli-suoli
12.1a acqua neisuoli-suoli
 
4 hydrology geostatistics-part_2
4 hydrology geostatistics-part_2 4 hydrology geostatistics-part_2
4 hydrology geostatistics-part_2
 
3 alberti-seconda parte - About Spatial Correlation
3 alberti-seconda parte - About Spatial Correlation3 alberti-seconda parte - About Spatial Correlation
3 alberti-seconda parte - About Spatial Correlation
 
2 - Simple Kriging
2 - Simple Kriging2 - Simple Kriging
2 - Simple Kriging
 
1 alberti-prima parte - Metodi di Interpolazione
1 alberti-prima parte - Metodi di Interpolazione1 alberti-prima parte - Metodi di Interpolazione
1 alberti-prima parte - Metodi di Interpolazione
 
Introduzione all'uso della Console di OMS e di QGIS (per le analisi del corso...
Introduzione all'uso della Console di OMS e di QGIS (per le analisi del corso...Introduzione all'uso della Console di OMS e di QGIS (per le analisi del corso...
Introduzione all'uso della Console di OMS e di QGIS (per le analisi del corso...
 
6 i-longwave radiation
6 i-longwave radiation6 i-longwave radiation
6 i-longwave radiation
 
6 h-coping withterrain
6 h-coping withterrain6 h-coping withterrain
6 h-coping withterrain
 
6 g-considering clouds
6 g-considering clouds6 g-considering clouds
6 g-considering clouds
 
6 f-radiation-absorptions
6 f-radiation-absorptions6 f-radiation-absorptions
6 f-radiation-absorptions
 
6 e-coping withearthsurface
6 e-coping withearthsurface6 e-coping withearthsurface
6 e-coping withearthsurface
 
6 d-radiation-from sun2earth
6 d-radiation-from sun2earth6 d-radiation-from sun2earth
6 d-radiation-from sun2earth
 
6 c-radiation-stefan boltzman
6 c-radiation-stefan boltzman6 c-radiation-stefan boltzman
6 c-radiation-stefan boltzman
 
6 b-radiation-the sun
6 b-radiation-the sun6 b-radiation-the sun
6 b-radiation-the sun
 
6 a-radiation-goals
6 a-radiation-goals6 a-radiation-goals
6 a-radiation-goals
 

Kürzlich hochgeladen

Esperimenti_laboratorio di fisica per la scuola superiore
Esperimenti_laboratorio di fisica per la scuola superioreEsperimenti_laboratorio di fisica per la scuola superiore
Esperimenti_laboratorio di fisica per la scuola superiorevaleriodinoia35
 
Ticonzero news 148.pdf aprile 2024 Terza cultura
Ticonzero news 148.pdf aprile 2024 Terza culturaTiconzero news 148.pdf aprile 2024 Terza cultura
Ticonzero news 148.pdf aprile 2024 Terza culturaPierLuigi Albini
 
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla CresimaIL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla CresimaRafael Figueredo
 
lezione di fisica_I moti nel piano_Amaldi
lezione di fisica_I moti nel piano_Amaldilezione di fisica_I moti nel piano_Amaldi
lezione di fisica_I moti nel piano_Amaldivaleriodinoia35
 
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaXIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaStefano Lariccia
 
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaXI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaStefano Lariccia
 
Corso di digitalizzazione e reti per segretario amministrativo
Corso di digitalizzazione e reti per segretario amministrativoCorso di digitalizzazione e reti per segretario amministrativo
Corso di digitalizzazione e reti per segretario amministrativovaleriodinoia35
 
La seconda guerra mondiale per licei e scuole medie
La seconda guerra mondiale per licei e scuole medieLa seconda guerra mondiale per licei e scuole medie
La seconda guerra mondiale per licei e scuole medieVincenzoPantalena1
 

Kürzlich hochgeladen (8)

Esperimenti_laboratorio di fisica per la scuola superiore
Esperimenti_laboratorio di fisica per la scuola superioreEsperimenti_laboratorio di fisica per la scuola superiore
Esperimenti_laboratorio di fisica per la scuola superiore
 
Ticonzero news 148.pdf aprile 2024 Terza cultura
Ticonzero news 148.pdf aprile 2024 Terza culturaTiconzero news 148.pdf aprile 2024 Terza cultura
Ticonzero news 148.pdf aprile 2024 Terza cultura
 
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla CresimaIL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
 
lezione di fisica_I moti nel piano_Amaldi
lezione di fisica_I moti nel piano_Amaldilezione di fisica_I moti nel piano_Amaldi
lezione di fisica_I moti nel piano_Amaldi
 
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaXIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
 
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaXI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
 
Corso di digitalizzazione e reti per segretario amministrativo
Corso di digitalizzazione e reti per segretario amministrativoCorso di digitalizzazione e reti per segretario amministrativo
Corso di digitalizzazione e reti per segretario amministrativo
 
La seconda guerra mondiale per licei e scuole medie
La seconda guerra mondiale per licei e scuole medieLa seconda guerra mondiale per licei e scuole medie
La seconda guerra mondiale per licei e scuole medie
 

P horton machine - Slides usate a lezione

  • 1. Analisi Idro-Geomorfologica con i JGrasstools e le Horton Machine S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 2. “Free Software . . . you should think of ‘free’ as in ‘free speech’, not as in ‘free beer’. ” Richard Stallman 1 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 3. Le Horton Machine Le Horton Machine sono un pacchetto sviluppato con l’obbiettivo di fornire degli strumenti quantitativi e qualitativi per indagare la morfologia di un bacino idrografico. ¯ Analisi Geomorfologica L’obbiettivo è analizzare i processi di erosione dei canali fluviali e la possibilità di innesco di frane superficiali. Questo viene fatto considerando che i processi geomorfologici principali in un bacino siano: Erosione diffusiva dei pendii Processi di incisione da parte dei canali Trasporto dei sedimenti nei canali Frane 2 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 4. Le Horton Machine Le Horton Machine sono un pacchetto sviluppato con l’obbiettivo di fornire degli strumenti quantitativi e qualitativi per indagare la morfologia di un bacino idrografico. ¯ Analisi Geomorfologica L’obbiettivo è analizzare i processi di erosione dei canali fluviali e la possibilità di innesco di frane superficiali. Questo viene fatto considerando che i processi geomorfologici principali in un bacino siano: Erosione diffusiva dei pendii Processi di incisione da parte dei canali Trasporto dei sedimenti nei canali Frane 2 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 5. Le Horton Machine I comandi delle Horton Machine sono stati suddisi 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 30 marzo 2015
  • 6. Le Horton Machine Analisi del reticolo idrografico ¯ Network Comandi che permettono di determinare alcune proprietà del reticolo idrografico. 4 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 7. Le Horton Machine Analisi relative al bacino ¯ Hydro-Geomorphology Comandi che permettono di svolgere analisi di un bacino idrografico. Indici idro-geomorfologici ¯ Basin Comandi che permettono di determinare alcuni indici relativi al bacino idrografico. 5 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 8. Le Horton Machine Attributi del bacino ¯ Geomorphology Comandi che permettono di calcolare alcuni attributi del bacino quali pendenza, direzioni di drenaggio, aree contribuenti. Analisi dei versanti ¯ Hillslope Comandi che permettono di calcolare alcune caratteristiche dei versanti del bacino e di determinare una classificazione in base alle loro proprietà morfologiche. 6 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 9. Le Horton Machine Manipolazione dei DEM ¯ DEM Manipulation Comandi che permettono di svolgere analisi preliminari sui modelli digitali del terreno. Statistiche ¯ Statistics Comandi che permettono di condurre alcune analisi statistiche sui bacini. 7 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 10. La morfologia La topografia è rappresentata mediante una funzione continua bivariata z = f (x, y) e con le sue derivate fino al secondo ordine. 8 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 11. Modelli Digitali del Terreno La forma più comune ed efficiente di rappresentare un Modello Digitale del Terreno (D.T.M.) è mediante una griglia quadrata di dati. Ipotesi: valori significativi griglia quadrata regolare topografia ad 8 direzioni I dati in questa forma, chiamata raster, rappresentano la coordinata verticale z per una serie di punti successivi lungo un determinato profilo spaziale. 9 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 12. Operazioni preliminari Prima di poter operare sul DTM con i comandi delle Horton Machine è necessario: 1 creare l’ambiente di lavoro location 2 assicurarsi di lavorare di lavorare all’interno della location in formato GRASS, ¯ generalmente il DTM è in formato raster ascii, come un .asc ¯ assicurarsi di trattarlo in modo da prendere in input il file .asc (con associato .prj) e settare l’output all’interno della location (cartella cell) Dopodichè l’obbiettivo principale è quello di estrarre il bacino d’interesse, sono necessarie alcune elaborazioni del dtm di partenza: 5 Riempimento delle depressioni Pitfiller 6 Calcolo delle direzioni di drenaggio Flowdirection/Draindir 7 Estrazione del reticolo idrografico ExtractNetwork 8 Estrazione del bacino idrografico Wateroutlet 10 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 13. Operazioni preliminari Prima di poter operare sul DTM con i comandi delle Horton Machine è necessario: 1 creare l’ambiente di lavoro location 2 assicurarsi di lavorare di lavorare all’interno della location in formato GRASS, ¯ generalmente il DTM è in formato raster ascii, come un .asc ¯ assicurarsi di trattarlo in modo da prendere in input il file .asc (con associato .prj) e settare l’output all’interno della location (cartella cell) Dopodichè l’obbiettivo principale è quello di estrarre il bacino d’interesse, sono necessarie alcune elaborazioni del dtm di partenza: 5 Riempimento delle depressioni Pitfiller 6 Calcolo delle direzioni di drenaggio Flowdirection/Draindir 7 Estrazione del reticolo idrografico ExtractNetwork 8 Estrazione del bacino idrografico Wateroutlet 10 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 14. Operazioni preliminari: Pitfiller La prima operazione da fare è riempire i punti di depressione presenti nel dtm in modo da poter poi definire univocamente le direzioni di drenaggio 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 questa elaborazione riguarda meno dell’1% dei punti e generalmente questi punti di depressione provengono 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 30 marzo 2015
  • 15. Operazioni preliminari: Pitfiller La prima operazione da fare è riempire i punti di depressione presenti nel dtm in modo da poter poi definire univocamente le direzioni di drenaggio 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 questa elaborazione riguarda meno dell’1% dei punti e generalmente questi punti di depressione provengono 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 30 marzo 2015
  • 16. Operazioni preliminari: Pitfiller La prima operazione da fare è riempire i punti di depressione presenti nel dtm in modo da poter poi definire univocamente le direzioni di drenaggio 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 questa elaborazione riguarda meno dell’1% dei punti e generalmente questi punti di depressione provengono 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 30 marzo 2015
  • 17. Pitfiller: utilizzo del comando Per far girare questo comando, come tutti gli altri comandi, è necessario definire gli inputs e gli outputs negli appositi tab posti in fondo alla finestra degli Spatial Toolbox. Si può vedere che è inoltre presente un terzo tab contenente una rapida descrizione del comando, degli inputs necessari, degli outputs forniti e delle sintassi per utilizzare il comando in uno script. 12 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 18. Pitfiller: utilizzo del comando Per far girare questo comando, come tutti gli altri comandi, è necessario definire gli inputs e gli outputs negli appositi tab posti in fondo alla finestra degli Spatial Toolbox. Si può vedere che è inoltre presente un terzo tab contenente una rapida descrizione del comando, degli inputs necessari, degli outputs forniti e delle sintassi per utilizzare il comando in uno script. 12 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 19. Pitfiller: inputs L’input necessario per questo comando è il dtm stesso. Per fornire una mappa bisogna cliccare sull’apposito bottone ... accanto al nome della mappa richiesta nel tab inputs. Si aprirà così una finestra di input per indicare dove è collocata la mappa, quindi il suo path. 13 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 20. Pitfiller: inputs L’input necessario per questo comando è il dtm stesso. Per fornire una mappa bisogna cliccare sull’apposito bottone ... accanto al nome della mappa richiesta nel tab inputs. Si aprirà così una finestra di input per indicare dove è collocata la mappa, quindi il suo path. 13 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 21. Pitfiller: inputs L’input necessario per questo comando è il dtm stesso. Per fornire una mappa bisogna cliccare sull’apposito bottone ... accanto al nome della mappa richiesta nel tab inputs. Si aprirà così una finestra di input per indicare dove è collocata la mappa, quindi il suo path. 13 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 22. Pitfiller: inputs Lavorando all’interno di una location GRASS/JGrass per fornire in input una mappa è necessario indicare il percorso del file corrispondente alla mappa nella cartella cell contenuta nella location. Questo si può agevolmente identificare mediante la finestra di navigazione dei files che compare cliccando sul pulsante ... accanto al campo dedicato al path. 14 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 23. Pitfiller: output Successivamente è necessario indicare le opzioni di output da inserire nel tab output. L’output di questo comando, co- me di molti comandi dei JGras- stools, è la mappa elaborata dal comando stesso. ‘E quindi necessario indicare nella finestra di output che si apre cliccando sul bottone ... il nome della mappa di output ed il percorso dove salvarla. 15 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 24. Pitfiller: output Inoltre lavorando all’interno di una location il percorso di salvataggio da indicare dovrà essere sempre la cartella cell all’interno della location stessa. Questo percorso può essere sempre agevolmente identificato mediante la finestra di navigazione dei files che compare cliccando sul pulsante ... accanto al campo dedicato al path. Il nome con cui salvare la mappa di output del comando può invece essere inserito nell’apposito campo senza scrivere nessuna estensione. 16 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 25. Pitfiller: ASCII input & output Se invece che lavorare in una location GRASS/JGrass si vuole lavorare in formato ESRI ASCII le mappe sono dei semplici file .asc. Nella selezione dell’input è sufficiente selezionare il file .asc corrispondente alla mappa, mentre nell’indicare l’output si può indicare un percorso di salvataggio a piacere: è però necessario indicare l’estensione .asc nel nome del file. Questo formato raster ha però alcuni svantaggi nella gestione della “cartella di lavoro”, dei Sistemi di Riferimento delle mappe e nel “trasferire l’intero lavoro” tra diversi programmi GIS 17 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 26. Pitfiller: proiezione (.prj file) & ASCII format Un file raster in formato ascii non può contenere nessuna informazione relativa al Sistema di Riferimento della mappa. Ogni mappa in formato .asc deve essere accompagnato dal file .prj contenete le infiormazioni del SdR. Il file .prj deve avere lo stesso nome del file .asc (ovviamente ad eccezione dell’estensione) Se non si dispone di tale file lo si può scaricare da http://spatialreference.org (ricercando l’opportuno SdR) e rinominare N.B. anche quando si lavora in una lo- cation gli eventuali imput .asc devono essere accompagnati dal corretto file .prj 18 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 27. Pitfiller: esecuzione del comando Inserite tutte le opzioni necessarie è possibile eseguire il comando cliccando sul bottone Run the selected module in alto a destra nella finestra degli Spatial Toolbox. Il comando viene quindi eseguito mostrando in Console la progressione; terminata l’esecuzione, la nuova mappa viene salvata nella location (oppure i file .asc e .prj). T.W.: il salvataggio della prima mappa nella location (specificando la creazione della cartella cell) creerà nella location un serie di altre cartelle accessorie necessarie. 19 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 28. Pitfiller: esecuzione del comando ¯ poi imortarla e visualizzarla in un GIS spetterà a noi! Visualizzazione della mappa output di Pitfiller in QGIS 20 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 29. Analisi dei valori di una mappa: RasterSummary Ora che abbiamo visto come si utilizza un comando attraverso gli Spatial Toolbox e creata la nostra prima mappa vediamo un utile comando che fornisce le statistiche riassuntive relative ad una mappa. Questo comando non appartiene alle Horton Mchine ma semplicemente ai moduli generici di Raster Processing il comando RasterSummary calcola le statistiche dei valori di una mappa raster Nello specifico il comado calcola alcune grandezze riassuntive dell’intera mappa: valore minimo, valore massimo, valore media, deviazione standard, somma di tutti i valori, la quantità di no data oltre a fornire tutti i dati per costruire l’istogramma della distribuzione dei valori contenuti nella mappa 21 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 30. Analisi dei valori di una mappa: RasterSummary Ora che abbiamo visto come si utilizza un comando attraverso gli Spatial Toolbox e creata la nostra prima mappa vediamo un utile comando che fornisce le statistiche riassuntive relative ad una mappa. Questo comando non appartiene alle Horton Mchine ma semplicemente ai moduli generici di Raster Processing il comando RasterSummary calcola le statistiche dei valori di una mappa raster Nello specifico il comado calcola alcune grandezze riassuntive dell’intera mappa: valore minimo, valore massimo, valore media, deviazione standard, somma di tutti i valori, la quantità di no data oltre a fornire tutti i dati per costruire l’istogramma della distribuzione dei valori contenuti nella mappa 21 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 31. RasterSummary: input Questo particolare comando richiede in input: la mappa su cui calcolare le statistiche numero di intervalli in cui dividere il range di valori della mappa per calcolare l’istogramma il check per indicare di calcolare tutti i dati dell’istogramma 22 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 32. RasterSummary: output I valori in output vengono stampati nella vista Console, possono quindi essere facilmente salvati in un file di testo puro (mediante un copia & incolla) in formato ASCII (ad esempio: disth.txt), che un qualsiasi foglio elettronico, o R (!), può leggere facilmente. Stampa, in ordine da sx a dx: la media nell’intervallo dei valori della mappa mappa il numero di pixel della mappa nell’intervallo la percentuale di pixel della mappa nell’intervallo 23 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 33. Esempio di plot dei risultati Questo è un esempio di plot con R della distribuzione delle quote dei punti del dtm in esame, prima con ordinata i pixel, poi la percentuale. read.table(“disth.txt”)->dh plot(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 30 marzo 2015
  • 34. Le direzioni di drenaggio Le direzioni di drenaggio definiscono come l’acqua si muove sulla superficie del terreno in relazione alla topografia della regione in analisi. Ipotesi Ogni cella del dtm può drenare solo in una delle sue 8 celle adiacenti, quelle adiacenti, soprastanti, sottostanti o diagonali, nella direzione di massima pendenza discendente. Solo 8 possibili direzioni per il flusso ¯ Questo è un limite nella modellazione del flusso naturale 25 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 35. FlowDirection Questo comando calcola le direzioni di drenaggio nella direzione della massima pendenza discendente identificando per ogni cella del dtm una delle 8 vicine. L’input necessario è la mappa del dtm depittato. I numeri convenzionali che rappresentano le direzioni di drenaggio nella mappa di output sono dall’1 all’8, dove 1 corrisponde alla direzione est. 26 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 36. FlowDirection Mappa di output dove ogni colore rappresenta una delle 8 direzioni. 27 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 37. FlowDirection Corrispondenza tra colori della mappa, numeri convenzionali e direzioni 1// 2?? 3OO 4 __ 5 oo 6  7 8 28 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 38. Correzione alle direzioni di drenaggio Il metodo finora descritto e utilizzato prende il nome D8. L’utilizzo di questo metodo per la determinazione delle direzioni di drenaggio genera un effetto di deviazione dalla reale direzione identificata dal gradiente Questo metodo può essere corretto con un algoritmo che calcola le direzioni di drenaggio minimizzando la deviazione della direzione del flusso determinato da quella del flusso reale. Questa deviazione viene calcolata partendo dal punto a quote maggiori, procedendo verso quote minori. La deviazione è calcolata mediante una costruzione triangolare e può quindi essere espressa come: Deviazione Angolare metodo D8-LAD Distanza Trasversale metodo D8-LTD Questo metodo utilizza un parametro λ per pesare la correzione. Metodo sviluppato da S. Orlandi 29 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 39. Correzione alle direzioni di drenaggio Metodo D8-LAD Deviazione Angolare valutata con α Metodo D8-LTD Distanza Trasversale valutata con δ La deviazione è calcolata cumulandola dal punto a quota maggiore, discendendo; la direzione D8 viene corretta indirizzandola verso la direzione reale quando il valore supera una certa soglia. Questa soglia viene assegnata mediante il parametro λ; se λ = 0 il contatore non ha memoria e quindi i punti precedenti non influenzano la correzione. 30 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 40. DrainDir: input I minimi input necessari sono: la mappa del dtm depittato la mappa delle direzioni di drenaggio precedentemente creata con FlowDirection È inoltre possibile modificare il parametro λ e la modalità LAD o LTD. Lavorando in modalità standard, quindi senza fissare la rete idrografica, non è necessario fornire la mappa delle direzioni di drenaggio lungo la rete. 31 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 41. DrainDir: output Questo comando restituisce in output la mappa delle aree contribuenti, oltre alla mappa rappresentante le direzioni di drenaggio corrette. La mappa che rappresenta le aree contribuenti può essere alternativamente ottenuta con il comando Geomorphology - Tca Nella prossima slide si illustrerà cosa rappresentano le aree contribuenti e la loro utilità. 32 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 42. Aree contribuenti L’ Area Contribuente Totale -tca- rappresenta l’area che contribuisce all’afflusso in un punto del bacino. È una quantità molto importante nell’analisi geomorfologica ed idrologica di un bacino idrografico: è strettamente collegata al flusso in uscita attraverso i differenti punti del bacino in condizioni di precipitazione uniforme. La maggior parte di metodi diffusivi utilizzati per estrarre la rete idrografica a partire dal dtm sono basati su questa quantità. Ai = Aj × Wj ; dove Wj = 1 se il j-esimo pixel drena nell’i-esimo 0 negli altri casi 33 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 43. Aree contribuenti Zoom della mappa delle tca, visualizzata dopo un opporuna trasformazione in scala di colori logaritmica. Visto l’ordine di grandezza dei valori si consiglia di visualizzare le tca in scala logaritmica; invece per visualizzare la sola asta principale dalla mappa non logaritmica accertarsi che i limiti della scala colori siano impostati ai valori estermi min/max. 34 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 44. MapCalc: un’applicazione alle direzioni di drenaggio Per trasformare i valori della mappa tca in scala logaritmica utilizziamol o strumento: Raster Processing - MapCalc, utile per eseguire operazioni logico-aritmetiche su mappe raster per applicare il logaritmo (base 10) al valore di ciascun pixel useremo (come mostrato nel box di destra) la funzione: log(mapname,base) images { map_tca = read; result = write; } result =log(map_tca,10); } 35 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 45. MapCalc: un’applicazione alle direzioni di drenaggio Per trasformare i valori della mappa tca in scala logaritmica utilizziamol o strumento: Raster Processing - MapCalc, utile per eseguire operazioni logico-aritmetiche su mappe raster per applicare il logaritmo (base 10) al valore di ciascun pixel useremo (come mostrato nel box di destra) la funzione: log(mapname,base) images { map_tca = read; result = write; } result =log(map_tca,10); } 35 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 46. MapCalc: un’applicazione alle direzioni di drenaggio Attualmente il Map Calculator, strumento che permette di eseguire operazioni aritmetiche e logiche sulle mappe, utilizza il linguaggio Jiffle. 1 per prima cosa bisogna selezionare come sempre le mappe di input e la mappa di output), cioè tutte le mappe coinvolte nei calcoli 2 successivamente bisogna anche scrivere il codice per definire queste mappe come variabili 3 quindi va scritta la sintassi per eseguire le operazioni desiderate su queste mappe, ad es. alcune comuni sono: assegnazioni operazioni aritmetiche controllo di flusso if gestione dei punti senza valori: NaN/null 4 in Jiffle sono presenti molte funzioni e sintassi non visibili dall’interfaccia di STAGE, si veda questa guida introduttiva: http://jaitools.org/docs/jiffle/latest/userguide/html/ 36 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 47. MapCalc: definizione delle variabili Gli input (i.e. ciascuna mappa coinvolta nei calcoli) devono essere prima inserite come in qualunque altro comando (e anche l’output), ma devono essere poi dichiarati anche nella sintassi del MapCalc images { foce_drain = read; result = write; } Sintassi per definire le mappe di input come variabili. Per gli input, cioè le mappe da leggere, il nome della variabile deve essere uguale a quello della mappa. È inoltre necessario definire la variabile di output, cioè la mappa da scrivere. Questo nome non deve necessariamente essere uguale a quello della mappa di output; quest’ultimo va come al solito, inserito nell’apposito tab outputs insieme al path. 37 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 48. MapCalc: assegnazione operazioni aritmetiche Questi sono tre esempi di assegnazione della variabile di output, chiamata out: result = null; result = 91; result=foce_drain; Un’assegnazione si esegue sempre con una sintassi composta, in ordine: 1 dal nome della variabile in cui assegnare 2 dall’operatore di assegnazione = 3 dalla quantità da assegnare alla variabile. Negli esempi si vedono tre diversi tipi di quantità da assegnare alla variabile out: 1 nessun valore null 2 un valore costante 3 i valori presenti in un’altra mappa ¯ questi tipi di quantità si possono combinare con gli operatori + - * / 38 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 49. MapCalc: controllo di flusso if if (test) { operazioni da eseguire se il test è vero; } else { operazioni da eseguire se il test è falso; }; Il test deve essere un’equazione logica che restituisca Vero o Falso. Può quindi essere imposto come uguaglianza (Attenzione: ==), disuguaglianza o con appositi comandi che restituiscano Vero o Falso che vedremo dopo. Le operazioni da eseguire possono essere una o più istruzioni, analoghe a quelle che si scriverebbero al di fuori dell’ambiente if. ¯ come operazioni da eseguire possono anche essere annidati altri controlli if 39 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 50. MapCalc: gestione dei punti senza valori: NaN/null Questi sono degli esempi di utilizzo di specifici comandi per gestire i punti a cui non è assegnato alcun valore. isnan(foce_drain) out = null Nei primi si vede l’uso del comando isnan{}, che restituisce Vero quando il suo argomento non contiene valori. Più precisamente quando ha valore Not A Number, valore assegnato di default dai JGrasstools nei punti in cui non è presente alcun dato. Restituendo un valore booleano risulta particolarmente comodo da usare come test in un controllo if. Nel secondo si vede invece l’assegnazione ad una variabile (quindi ad una mappa) di ”nessun valore” grazie all’apposito comando null che assegna valore null. 40 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 51. MapCalc: un’applicazione alle direzioni di drenaggio Ritorniamo a trasformare mappa tca in scala logaritmica utilizziamol o strumento: Raster Processing - MapCalc, utile per eseguire operazioni logico-aritmetiche su mappe raster per applicare il logaritmo (base 10) al valore di ciascun pixel useremo (come mostrato nel box di destra) la funzione: log(mapname,base) images { map_tca = read; result = write; } result =log(map_tca,10); } 41 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 52. MapCalc: un’applicazione alle direzioni di drenaggio Ritorniamo a trasformare mappa tca in scala logaritmica utilizziamol o strumento: Raster Processing - MapCalc, utile per eseguire operazioni logico-aritmetiche su mappe raster per applicare il logaritmo (base 10) al valore di ciascun pixel useremo (come mostrato nel box di destra) la funzione: log(mapname,base) images { map_tca = read; result = write; } result =log(map_tca,10); } 41 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 53. MapCalc: un’applicazione alle direzioni di drenaggio Zoom della mappa delle tca, visualizzata opportunamente dopo la trasformazione logarirtmica dei valori. 42 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 54. Markoutlets L’applicazione di molti comandi per essere eseguita correttamente richiede che la mappa delle direzioni di drenaggio abbia un ulteriore valore. Questo nuovo valore rappresenta la classe dei punti che rappresentano gli outlets del bacino: questi sono i punti che drenano all’esterno del bacino in analisi. Il comando Dem Manipulation - Markoutlets marca gli outlets con un valore convenzionale 10, e richiede in input le direzioni di drenaggio, meglio se calcolate con DrainDir 43 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 55. Estrazione della rete idrografica Nel comando Network - ExtractNetwork sono implementati 3 metodi per estrarre i canali che compongono la rete idrografica: 0 mediante una soglia sulle aree contribuenti (solo i punti con area contribuente maggiore della soglia danno luogo alla formazione di canali) 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 punti convergenti Dopo aver individuato i punti di formazione dei canali, con una di queste tre soglie, la rete viene costruita considerando tutti gli altri punti posti a quote minori. 44 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 56. ExtractNetwork: modo 1 Si potrebbe ora procedere con l’estrazione utilizzando il primo metodo: soglia sulle sole aree contribuenti, preferiamo però andare oltre nell’analisi al fine di ottenere una rete più accurata. Sarebbero necessari in input la mappa delle direzioni di dre- naggio, meglio se calcolate con DrainDir, e delle TCA. È inoltre necessario impostare il valore di soglia e specificare il metodo da utilizzare: tca. 45 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 57. Pendenze: Slope Il comando Geomorphology - Slope calcola la pendenza della superficie topografica in ogni punto lungo le direzioni di drenaggio. Questo comando calcola la differenza di quota tra ogni pixel e quello adiacente immediatamente a valle. Successivamente divide questa grandezza per la dimensione del pixel, oppure della sua diagonale, a seconda della posizione reciproca dei due pixel considerati. Il valore restituito rappresenta quindi la tangente dell’angolo rappresentante la pendenza. Si può ottenere il valore dell’angolo operando con MapCalc, il cui funzionamento verrà illustrato più avanti. 46 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 58. Slope Richiede in input le mappe: del dtm depittato delle direzioni di drenaggio, meglio se calcolate con DrainDir 47 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 59. ExtractNetwork: modo 2 Avremmo già ora le mappe necessarie ad estrarre le rete idrografica con il secondo tipo di soglia, basata su tca e pendenze; proseguiamo invece nell’analisi al fine di estarre la rete con l’ultimo, e più raffinato, metodo. Sarebbe quindi necessario fornire un ulteriore input oltre a quelli già visti, ovvero la mappa delle pendenze appena calcolata. Bisogna specificare il metodo corretto: tca and slope. 48 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 60. Curvature Le curvature rappresentano la deviazione del vettore gradiente per unità di lunghezza lungo particolari curve tracciate sulla superficie in esame f(x,y). La Curvatura Longitudinale rappresenta la deviazione del gradiente andando da valle verso monte seguendo l’inviluppo dei gradienti. È negativa se il gradiente aumenta. La Curvatura Piana si ottiene sezionando la superficie con un piano parallelo al piano (x,y) ed è la variazione dei vettori tangenti alle linee di 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 di intersezione tra un piano perpendicolare alla direzione del gradiente e tangente alle linee di livello nel punto considerato. Curvatura tangente e piana sono tra loro proporzionali e la loro distribuzione spaziale è la stessa. 49 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 61. Curvatura tangenziale (o normale) Curvatura negativa - convessa: questo caso è tipico di zone di versante dove il flusso viene suddiviso sui pixel vicini di quota inferiore secondo il metodo della massima pendenza. Topografia localmente divergente 50 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 62. Curvature Il comando Geomorfology - Curvatures permette di calcolare questi 3 tipi di curvature come 3 diverse mappe di output. Longitudinale ¯ Profile o Longitudinal Piana ¯ Planar Tangenziale ¯ Tangential o Normal Questo comando richiede in input la sola mappa del dtm depittato 51 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 63. Curvature Curvatura Longitudinale e suo zoom Curvatura Tangenziale e suo zoom 52 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 64. Classi Topografiche Permettono di attribuire ad ogni pixel una delle 9 classi topografiche, ottenute con l’intersezione dei tre tipi di curvature longitudinali e dei tre di curvature planari. È anche possibile aggregare queste classi in tre categorie fondamentali: siti concavi siti convessi siti piani 53 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 65. Classi Topografiche Nomi identificativi e corrispondenti valori per le 9 classi (a lato) e per le 3 classi aggregate (sotto) con specificate le riclassificazioni. 10 planare parallelo 20 convesso parallelo 30 concavo parallelo 40 planare divergente 50 convesso divergente 60 concavo divergente 70 planare convergente 80 convesso convergente 90 concavo convergente 15 concavo, unione delle classi 30, 70 e 90 25 planare, corrispondente alla classe 10 35 convesso, unione delle restanti classi 54 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 66. Tc Il comando che permette di creare le due mappe contenenti queste classificazioni è Hillslope - Tc. Richiede in input le due mappe delle: curvature longitudinali curvature normali È inoltre necessario definire due soglie che definiscono la condizio- ne di planarità. Restituisce in output le due mappe con 9 e 3 classi. 55 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 67. Tc Mappa 9 classi morfologiche Mappa 3 classi fondamentali 56 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 68. ExtractNetwork: modo 3 Abbiamo ora tutte le mappe necessarie ad estrarre le rete idrografica con il terzo tipo di soglia, cioè sullo sforzo tangenziale solo sui siti convergenti. È quindi necessaria in input una ulteriore mappa, oltre alle pri- me due, delle classi topografiche aggregate (con sole 3 classi). È inoltre necessario indicare il metodo corretto, l’ultimo. La soglia dipende sempre, come per gli altri metodi, dalla dimensione dei pixel e dagli attributi topografici del bacino. 57 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 69. ExtractNetwork: output Mappa di output rappresentante i canali della rete idrografica Ai punti appartenenti ai canali è assegnato valore 2, mentre a tutti gli altri punti è assegnato no value, cioè nessun valore. 58 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 70. Estrazione del bacino di interesse: chiusura A questo punto abbiamo tutto quello che ci occorre per estrarre il bacino 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à che sulla mappa restituita da ExtractNetwork abbia valore 2. 1 Individuare il punto sulla mappa, se si dispone di uno shapefile contenente tale punto è comodo importarlo per individuarlo con facilità. 2 Interrogare il valore della mappa utilizzando lo strumento info di QGIS, cliccando sul punto in esame (strumento info contrassegnato dall’icona i nella barra degli strumenti) 3 Nella finestra info verifcare che il valore (Band 1) sia 2 e copiare le coordinate del punto: click dx su (clicked coordinates) - Copy attribute value 59 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 71. Estrazione del bacino di interesse: chiusura Zoom della rete dei canali e vista informazioni per individuare l’outlet 60 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 72. Estrazione del bacino di interesse: Wateroutlet Ora possiamo estrarre il bacino di interesse con il comando Dem Manipulation - Wateroutlet. In input sono necessari: le coordinate del punto di chiusura appena individuate la mappa delle direzioni di drenaggio, meglio se calcolata con DrainDir Copiate le coordinate nei due rispettivi campi NB: la prima cooridnata in QGIS è la coordinate est (x) 61 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 73. Estrazione del bacino di interesse: Wateroutlet Restituisce in output una maschera del bacino estratto con valore 1 all’interno e no value all’esterno. Si può verificare come il confine del bacino estratto passi effettivamente per il punto di chiusura. 62 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 74. Ritaglio delle mappe sul bacino di interesse Ora dobbiamo ritagliare sul bacino estratto anche tutte le altre mappe fino ad ora elaborate. Le opzioni di lavoro sarebbero due: calcolare di nuovo le grandezze sul DTM del bacino estratto ritagliare le mappe sulla maschera del bacino estratto La prima opzione prevede di ricalcolare la mappa delle elevazioni depittata e le direzioni di drenaggio. Questo può comportare incompatibilità con il dato di partenza. Per ottenere correttamente tutte le mappe relative al bacino ritagliato sarà necessaria anche un’ulteriore operazione successiva: rilanciare il comando Dem Manipulation - Markoutlets sulla mappa delle direzioni di drenaggio ritagliata, in quanto gli outlets del bacino ritagliato saranno differenti. 63 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 75. Ritaglio delle mappe sul bacino di interesse Ora dobbiamo ritagliare sul bacino estratto anche tutte le altre mappe fino ad ora elaborate. Le opzioni di lavoro sarebbero due: calcolare di nuovo le grandezze sul DTM del bacino estratto ritagliare le mappe sulla maschera del bacino estratto La prima opzione prevede di ricalcolare la mappa delle elevazioni depittata e le direzioni di drenaggio. Questo può comportare incompatibilità con il dato di partenza. Per ottenere correttamente tutte le mappe relative al bacino ritagliato sarà necessaria anche un’ulteriore operazione successiva: rilanciare il comando Dem Manipulation - Markoutlets sulla mappa delle direzioni di drenaggio ritagliata, in quanto gli outlets del bacino ritagliato saranno differenti. 63 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 76. Ritaglio delle mappe sul bacino di interesse Ora dobbiamo ritagliare sul bacino estratto anche tutte le altre mappe fino ad ora elaborate. Le opzioni di lavoro sarebbero due: calcolare di nuovo le grandezze sul DTM del bacino estratto ritagliare le mappe sulla maschera del bacino estratto La prima opzione prevede di ricalcolare la mappa delle elevazioni depittata e le direzioni di drenaggio. Questo può comportare incompatibilità con il dato di partenza. Per ottenere correttamente tutte le mappe relative al bacino ritagliato sarà necessaria anche un’ulteriore operazione successiva: rilanciare il comando Dem Manipulation - Markoutlets sulla mappa delle direzioni di drenaggio ritagliata, in quanto gli outlets del bacino ritagliato saranno differenti. 63 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 77. CutOut Utilizzando il comando CutOut scegliamo quindi di ritagliare le mappe già create: dtm depittato direzioni di drenaggio tca reticolo idrografico (pendenze) (curvature) (classi topografiche) Gli input necessari sono la mappa da usare come maschera e quella da ritagliare, senza soglie. 64 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 78. Struttura di drenaggio e sottobacini Ora che abbiamo estratto il bacino d’interesse e ritagliato le mappe di base su questo, possiamo eseguire alcuni altri comandi al fine di ottenere la struttura della rete di drenaggio e dei sottobacini relativi al bacino di interesse. In particolare si vogliono ottenere le mappe dei sottobacini e della rete di drenaggio, quest’ultima anche in formato vettoriali in quanto da questa è possibile estrarre (e poi interrogare) informazioni geometriche utili. Lo strumento fondamentale sarà il comando che permette di numerare la rete di drenaggio ed estrarre i corrispondenti sottobacini ¯ Network - NetNumbering Utilizzeremo inoltre alcuni altri utili strumenti per le mappe vettoriali: Network - NetworkAttributesBuilder vettorializzazione della rete Vector Processing - VectorReshaper manipolazione di mappe vettoriali 65 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 79. Struttura di drenaggio e sottobacini Ora che abbiamo estratto il bacino d’interesse e ritagliato le mappe di base su questo, possiamo eseguire alcuni altri comandi al fine di ottenere la struttura della rete di drenaggio e dei sottobacini relativi al bacino di interesse. In particolare si vogliono ottenere le mappe dei sottobacini e della rete di drenaggio, quest’ultima anche in formato vettoriali in quanto da questa è possibile estrarre (e poi interrogare) informazioni geometriche utili. Lo strumento fondamentale sarà il comando che permette di numerare la rete di drenaggio ed estrarre i corrispondenti sottobacini ¯ Network - NetNumbering Utilizzeremo inoltre alcuni altri utili strumenti per le mappe vettoriali: Network - NetworkAttributesBuilder vettorializzazione della rete Vector Processing - VectorReshaper manipolazione di mappe vettoriali 65 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 80. Struttura di drenaggio e sottobacini Ora che abbiamo estratto il bacino d’interesse e ritagliato le mappe di base su questo, possiamo eseguire alcuni altri comandi al fine di ottenere la struttura della rete di drenaggio e dei sottobacini relativi al bacino di interesse. In particolare si vogliono ottenere le mappe dei sottobacini e della rete di drenaggio, quest’ultima anche in formato vettoriali in quanto da questa è possibile estrarre (e poi interrogare) informazioni geometriche utili. Lo strumento fondamentale sarà il comando che permette di numerare la rete di drenaggio ed estrarre i corrispondenti sottobacini ¯ Network - NetNumbering Utilizzeremo inoltre alcuni altri utili strumenti per le mappe vettoriali: Network - NetworkAttributesBuilder vettorializzazione della rete Vector Processing - VectorReshaper manipolazione di mappe vettoriali 65 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 81. Rete di drenaggio del bacino di interesse Per prima cosa estraiamo la rete di drenaggio relativa al solo bacino di interesse, analogamente a come già fatto per l’intero dtm. Questo in modo da utilizzare sempre il metodo più raffinato e settare accuratamente la soglia. Gli input sono quelli già visti, ovviamente utilizzando tutte le mappe ritagliate. È ora molto importante scegliere accuratamente il valore della soglia, da questo dipende quanto sarà fitta e quindi quanti rami e conseguenti sottobacini si otterranno. 66 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 82. NetworkAttributesBuilder: mappa vettoriale .shp della rete Se desideriamo ora possiamo ottenere la mappa vettoriale della rete nel nostro bacino di interersse. Per questo usiamo il comando NetworkAttributesBuilder, che ne estrae anche una serie di utili attributi. Gli input si indicano come di consueto. Invece l’output vettoriale .shp va indicato diversamente. Si de- ve indicare il nome della map- pa, l’estensione -che deve essere shp- e un percorso a piacere do- ve salvarlo (non all’interno della location). 67 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 83. Mappa vettoriale .shp della rete idrografica Mappa vettoriale della rete, e attributi di ogni feature contenuti nella tabella attributi (visualizzabile in QGIS). Come si vede è molto utile per distinguere i singoli rami e capire quanti sono esattamente, perchè coincideranno con i sottobacini che estrarremo. 68 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 84. VectorReshaper: estrazione delle lunghezze dei rami Sfruttiamo ora le potenzialità della mappa vettoriale della rete per estarrre le lunghezze di ogni singolo ramo. Per fare questo useremo il comando generico per analisi vettoriali VectorReshaper, non appartenente quindi alla categoria delle Horton Machine ma ai Vector Processing. Questo comando vuole in input una mappa vettoriale e restituisce un’altra mappa vettoriale derivata grazie a funzioni ecql (una sintassi ampliata del cql, semplificazione del linquaggio sql) con: 1 nuovi campi di attributi 2 attributi derivati dalle caratteristiche geometriche delle feature 3 nuove feature geometriche derivate da quelle originali Si inserisce il vettoriale in input intuitivamente andando a selezionare il file con estensione .shp su cui si desidera lavorare. La sintassi per estrarre le lunghezze è: len=geomLength(the_geom) Documentazione sull’ecql [1] e una buona lista di funzioni cql [2]: [1] http://docs.geotools.org/latest/userguide/library/cql/ecql.html [2] http://udig.github.io/docs/user/concepts/Constraint%20Query%20Language.html 69 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 85. VectorReshaper: estrazione delle lunghezze dei rami Sfruttiamo ora le potenzialità della mappa vettoriale della rete per estarrre le lunghezze di ogni singolo ramo. Per fare questo useremo il comando generico per analisi vettoriali VectorReshaper, non appartenente quindi alla categoria delle Horton Machine ma ai Vector Processing. Questo comando vuole in input una mappa vettoriale e restituisce un’altra mappa vettoriale derivata grazie a funzioni ecql (una sintassi ampliata del cql, semplificazione del linquaggio sql) con: 1 nuovi campi di attributi 2 attributi derivati dalle caratteristiche geometriche delle feature 3 nuove feature geometriche derivate da quelle originali Si inserisce il vettoriale in input intuitivamente andando a selezionare il file con estensione .shp su cui si desidera lavorare. La sintassi per estrarre le lunghezze è: len=geomLength(the_geom) Documentazione sull’ecql [1] e una buona lista di funzioni cql [2]: [1] http://docs.geotools.org/latest/userguide/library/cql/ecql.html [2] http://udig.github.io/docs/user/concepts/Constraint%20Query%20Language.html 69 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 86. VectorReshaper: estrazione delle lunghezze dei rami Sfruttiamo ora le potenzialità della mappa vettoriale della rete per estarrre le lunghezze di ogni singolo ramo. Per fare questo useremo il comando generico per analisi vettoriali VectorReshaper, non appartenente quindi alla categoria delle Horton Machine ma ai Vector Processing. Questo comando vuole in input una mappa vettoriale e restituisce un’altra mappa vettoriale derivata grazie a funzioni ecql (una sintassi ampliata del cql, semplificazione del linquaggio sql) con: 1 nuovi campi di attributi 2 attributi derivati dalle caratteristiche geometriche delle feature 3 nuove feature geometriche derivate da quelle originali Si inserisce il vettoriale in input intuitivamente andando a selezionare il file con estensione .shp su cui si desidera lavorare. La sintassi per estrarre le lunghezze è: len=geomLength(the_geom) Documentazione sull’ecql [1] e una buona lista di funzioni cql [2]: [1] http://docs.geotools.org/latest/userguide/library/cql/ecql.html [2] http://udig.github.io/docs/user/concepts/Constraint%20Query%20Language.html 69 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 87. VectorReshaper: estrazione delle lunghezze dei rami Interfaccia del comando (stage) settato per caloclare le lunghezze (sinistra) e il nuovo vettoriale della rete con il nuovo campo delle lunghezze: len 70 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 88. NetNumbering: numerazione della rete ed estazione sottobacini Utilizziamo ora il comando Network - NetNumbering al fine di estrarre i sottobacini, oltre alla mappa della rete numerata. I primi 3 inputs sono quelli necessari, a questo punto dovrebbero essere tutti di immediata comprensione. Nella modalità in cui utilizzere- mo il comando non è necessario inserire la quarta mappa in input. Gli outputs sono tutti mappe ra- ster, dovremo inserirli entrambi. 71 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 89. NetNumbering: settaggio della soglia (Se) Il comando lavora in modalità soglia sulle TCA (threshold on TCA), bisonerà quindi inserire un opportuno valore nel campo soglia È sempre e comunque necessa- rio utilizzare in input una mappa della rete con un adeguato livello di ramificazioni, quindi preceden- temente estratta con una soglia adeguata (ad es: TCA=1000) Inoltre è necessario settare anche qua la soglia sulle TCA, per coerenza alemno uguale o maggiore a quella con cui era stata estratta la rete (ad es: TCA=10000) 72 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 90. NetNumberin: output del comando Le due mappe output di NetNumbering: rete numerata e sottobacini 73 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 91. Mappa vettoriale dei sottobacini analogamente a quanto detto per la rete idrografica è altrettanto comoda una mappa vettoriale dei contorni dei sottobacini questa operazione è fatta egregiamente dal comando BasinShape, purtroppo questo non è presente nell’attuale versione di STAGE un operazione simile può essere fatta con il classico modulo di conversione da raster a vettoriale che è presente in Vector Processing - Vectorizer questo comando ha però alcuni problemi (come in GRASS) alle congiunzioni tra due sottobacini, dove vengono erroneamente creati sottobacini (feature) di pochi pixel non presenti il comando ha però un utile opzione di soglia sulla dimensione minima (in pixel) che devono avere le feature per essere create ¯ si può quindi giocare con il valore di questa soglia per cercare di ottenere una mappa vettoriale dei sottobacini corretta Le 4 slide seguenti sono comunque riportate per completezza o per centroidi da Vectorizer 74 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 92. BasinShape: vettorializzazione dei contorni dei sottobacini Vogliamo ora ottenere la mappa vettoriale .shp dei contorni dei sottobacini, che sarà comoda per estrarre varie informazioni, come già visto per la mappa della rete. Questo comando vuole in input due mappe raster: la mappa del dtm depittato e quella dei sottobacini ottenuta con NetNumbering . . . e restituisce in output la mappa vettoriale dei sottobacini. Gli input raster si inseriscono come già visto in precedenza e l’output vettoriale come visto per la rete. 75 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 93. Mappa vettoriale .shp dei sottobacini Mappa vettoriale dei sottobacini, si può vedere che il comando ha gia calcolato molti attributi utili per ogni sottobacino: area perimetro numerazione quota massima quota minima quota media quota dell’uscita 76 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 94. VectorReshaper: centroidi dei sottobacini Sfruttiamo ancora il comando VectorReshaper per ottenere una nuova mappa contenente i centroidi di ogni singolo bacino. Le mappe vettoriali in input e output si inseriscono come visto prima per lo stesso comando. La nuova mappa deve contenere delle nuove features geometriche derivate, i centroidi. La sintassi ecql dovrà riscrivere il campo the_geom, sarà quindi: the_geom=centroid(the_geom) 77 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 95. VectorReshaper: Mappa vettoriale .shp dei centroidi Mappa vettoriale dei centroidi di ogni sottobacino. È ben evidente come questo comando abbia creato una nuova mappa con feature geometriche di tipo differente, ovvero i punti rappresentanti i centroidi, derivati dalle feature originali (aree dei sottobacini). 78 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 96. Attributi derivati Ora che abbiamo concluso l’analisi idrologica di base, estraendo il bacino d’interesse, la rete di drenaggio ed i sottobacini, possiamo eseguire una serie di altri comandi delle Horton Machine al fine di ottenere 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 79 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 97. Attributi derivati Ora che abbiamo concluso l’analisi idrologica di base, estraendo il bacino d’interesse, la rete di drenaggio ed i sottobacini, possiamo eseguire una serie di altri comandi delle Horton Machine al fine di ottenere 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 79 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 98. Indice topografico TI = log A b | z| esprime la tendenza di un pixel a saturarsi ¯ aree con valori elevati di indice topografico si saturano prima di aree a basso indice topografico dipende 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 tca la mappa delle pendenze calcolata con Slope 80 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 99. Indice topografico TI = log A b | z| esprime la tendenza di un pixel a saturarsi ¯ aree con valori elevati di indice topografico si saturano prima di aree a basso indice topografico dipende 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 tca la mappa delle pendenze calcolata con Slope 80 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 100. Calcolo dell’indice topografico: TopIndex input 81 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 101. Calcolo dell’indice topografico: TopIndex output 82 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 102. Calcolo dell’indice topografico: MapCalc Pixel con pendenza bassa hanno elevata propensione alla saturazione a parità di area cumulata ci sono zone all’interno del bacino dove 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 con valore nullo di indice topografico il valore massimo caratteristico della mappa utilizzando Raster Processing - MapCalc, sfruttando, con le modalità già viste, la seguente 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; } ; }; 83 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 103. Calcolo dell’indice topografico: MapCalc 84 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 104. Distanze riscalate: RescaledDistance Il comando RescaledDistance permette di calcolare le distanze dall’uscita del bacino (outlet), calcolate lungo le direzioni di drenaggio. Queste distanze possono essere riscalate, cioè calcolate considerando velocità diverse nei versanti e nella rete idrografica. Per calcolare queste distanze viene quindi introdotto il parametro r, definito come il rapporto tra la velocità nei canali e nei versanti: r = uc uh con uc : velocità nei canali e uh : velocità nei versanti Questo comando richiede in input le mappe: delle direzioni di drenaggio, calcolate con DrainDir e con gli outlets marcati con MarkOutlets della rete idrografica, calcolata con ExtractNetwork scegliendo uno dei tre tipi di soglie (sempre meglio se il tipo 2) Richiede inoltre il parametro r (se r = 1 le distanze saranno semplici) 85 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 105. Distanze riscalate: RescaledDistance Il comando RescaledDistance permette di calcolare le distanze dall’uscita del bacino (outlet), calcolate lungo le direzioni di drenaggio. Queste distanze possono essere riscalate, cioè calcolate considerando velocità diverse nei versanti e nella rete idrografica. Per calcolare queste distanze viene quindi introdotto il parametro r, definito come il rapporto tra la velocità nei canali e nei versanti: r = uc uh con uc : velocità nei canali e uh : velocità nei versanti Questo comando richiede in input le mappe: delle direzioni di drenaggio, calcolate con DrainDir e con gli outlets marcati con MarkOutlets della rete idrografica, calcolata con ExtractNetwork scegliendo uno dei tre tipi di soglie (sempre meglio se il tipo 2) Richiede inoltre il parametro r (se r = 1 le distanze saranno semplici) 85 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 106. Distanze riscalate: RescaledDistance Il comando RescaledDistance permette di calcolare le distanze dall’uscita del bacino (outlet), calcolate lungo le direzioni di drenaggio. Queste distanze possono essere riscalate, cioè calcolate considerando velocità diverse nei versanti e nella rete idrografica. Per calcolare queste distanze viene quindi introdotto il parametro r, definito come il rapporto tra la velocità nei canali e nei versanti: r = uc uh con uc : velocità nei canali e uh : velocità nei versanti Questo comando richiede in input le mappe: delle direzioni di drenaggio, calcolate con DrainDir e con gli outlets marcati con MarkOutlets della rete idrografica, calcolata con ExtractNetwork scegliendo uno dei tre tipi di soglie (sempre meglio se il tipo 2) Richiede inoltre il parametro r (se r = 1 le distanze saranno semplici) 85 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 107. Distanze riscalate: RescaledDistance Calcolo delle mappa delle distanze semplici con r = 1 86 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 108. RescaledDistance Calcolo delle mappa delle distanze riscalate con r = 10 87 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 109. Funzione di ampiezza del bacino idrografico Ora che abbiamo calcolato le mappe delle distanze e distanze riscalate vogliamo ottenere la distribuzione di questi valori sulle mappe, il grafico di queste rappresenterà la funzione d’ampiezza semplice e riscalata. La distribuzione dei valori su una mappa potrebbe essere ugualmente 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 statistiche incrociate tra due mappe. Per ottenere comunque la semplice distribuzione dei valori di una mappa è sufficiente utilizzarlo fornendo la stessa mappa in input per entrambe le mappe. 88 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 110. Funzione di ampiezza del bacino idrografico Ora che abbiamo calcolato le mappe delle distanze e distanze riscalate vogliamo ottenere la distribuzione di questi valori sulle mappe, il grafico di queste rappresenterà la funzione d’ampiezza semplice e riscalata. La distribuzione dei valori su una mappa potrebbe essere ugualmente 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 statistiche incrociate tra due mappe. Per ottenere comunque la semplice distribuzione dei valori di una mappa è sufficiente utilizzarlo fornendo la stessa mappa in input per entrambe le mappe. 88 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 111. Funzione di ampiezza del bacino idrografico Ora che abbiamo calcolato le mappe delle distanze e distanze riscalate vogliamo ottenere la distribuzione di questi valori sulle mappe, il grafico di queste rappresenterà la funzione d’ampiezza semplice e riscalata. La distribuzione dei valori su una mappa potrebbe essere ugualmente 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 statistiche incrociate tra due mappe. Per ottenere comunque la semplice distribuzione dei valori di una mappa è sufficiente utilizzarlo fornendo la stessa mappa in input per entrambe le mappe. 88 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 112. Analisi dei valori di una mappa: Cb Il comando Statistics - Cb calcola le statistiche dei valori di una mappa rispetto a quelli contenuti in un’altra mappa i dati della prima mappa vengono raggruppati in un numero prefissato di intervalli e viene calcolato il valore medio della variabile indipendente in ciascun intervallo ad ogni intervallo corrisponde un set di valori nella seconda mappa, dei quali viene calcolata la media e gli altri momenti richiesti dall’utente il comando restituisce nella vista Console tutti questi valori per ogni intervallo, associati al numero di pixel contenuti nell’intervallo I valori stampati in output possono essere facilmente salvati in un file di testo puro (mediante un copia incolla) in formato ASCII che un qualsiasi foglio elettronico o R può leggere facilmente. 89 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 113. Cb: input Questo particolare comando richiede in input: le due mappe su cui calcolare le statistiche numero di intervalli in cui dividere il range di valori della prima mappa il primo e l’ultimo ordine dei momenti da calcolare Le due mappe possono anche essere la stessa mappa se si vuole ottenere la distribuzione dei valori contenuti nella mappa sul bacino (va sempre inserita in entrambe i campi). 90 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 114. Cb: output Questo particolare comando stampa, in ordine da sx a dx: la media nell’intervallo dei valori della prima mappa il numero di pixel della prima mappa nell’intervallo il momento di primo ordine (media) dei valori della seconda mappa il momento di secondo ordine (varianza) dei valori della seconda mappa se richiesti, i momenti di ordine superiore dei valori della seconda mappa 91 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 115. Esempio di plot dei risultati Questo è un esempio di plot con R della distribuzione delle distanze dei punti del bacino: rappresenta la funzione d’ampiezza del bacino. read.table(“filename.txt”)-rd1 plot(rd1[,1],rd1[,2],type=“l”,ylab=“Area [pixel]”, xlab=“Distanza [m]”,main=“Distanze Riscalate”) 92 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 116. Scriptare i JGrasstools Se lanciare tutti questi comandi in successione e dover inserire ogni volta tutti gli input e gli output vi è sembrato molto noioso, vi suggerisco di provare a scriptare! Tutte le operazioni che abbiamo fatto da interfaccia grafica si possono completamente implementare in semplici codici che eseguono in successione una serie di comandi. I JGrasstools si possono scriptare con linguaggio Geoscript, pensato per scrivere codici con sintassi groovy su moduli Java Uno script può essere scritto e lanciato in vari modi, agevolmente all’interno di STAGE, ma anche attraverso shell script completamente da riga di comando (termianle)! Un pò di documentazione (spesso riferita al vecchio uDig, ma non cambia): jgrasstechtips.blogspot.it/2013/01/proposal-geoscript-console-in-udig.html jgrasstechtips.blogspot.it/2013/01/course-java-open-source-gis-development.html jgrasstechtips.blogspot.it/2013/03/course-geographic-scripting-in-udig.html 93 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 117. Indice dei simboli Simbolo Nome udm TI Indice topografico - A Area totale al di sopra di ogni punto L2 b Lunghezza della parte di pixel interessata dal drenaggio L z Pendenza - x Distanza di un punto del bacino dall’uscita misurata lungo le direzioni di drenaggio L x Distanza dall’uscita riscalata L xc Distanza di un punto del canale dall’uscita L xh Distanza di un punto dal canale a cui afferisce (lungo le linee di drenaggio) L r 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 94 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 118. Indice dei comandi Comando Breve Descrizione Cb Calcola le le statistiche delle mappe Curvature Calcola le curvature longitudinali e trasversali CutOut Ritaglia una mappa raster DrainDir Stima le direzioni di drenaggio corrette ExtractNetwork Estrae il reticolo idrografico FlowDirection Stima le direzioni di drenaggio con D8 puro MapCalc Esegue calcoli sui raster MarkOutlet Marca l’uscita del bacino in esame Pitfiller Riempie le depressioni di un DEM RescaledDistance Calcola la funzione di ampiezza riscalata Slope Calcola il modulo della pendenza Tc Calcola le classi topografiche Tca Calcola le aree contribuenti TopIndex Calcola l’indice topografico WaterOutlet Estrae il bacino idrografico 95 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 119. Credits La Horton Machine è il frutto del lavoro di ricerca congiunto di cudam ed Hydrologis s.r.l. 96 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 120. 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 Ispra nell’ambito del progetto Danube Flood Risk e dalla Provincia Autonoma di Bolzano, nell’ambito del progetto HydroAlp. Per quanto possibile, questa presentazione è stata redatta con l’uso di software libero. LATEX per a scrittura, per il quale Leonardo Perathoner ha approntato un apposito stile. Il programma statistico R (http://cran.r-project.org/) per l’elaborazione delle figure non prodotte da STAGE e QGIS. 97 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015
  • 121. Grazie dell’attenzione JGrassTools Mailinglist: https://groups.google.com/forum/?fromgroups#!forum/jgrasstools E-mail esercitazioni: esercitazioni.idrologia2013@gmail.com 98 S. Franceschi, L. Perathoner, M. Toro, G. Formetta 30 marzo 2015