library(Rsagacmd)
library(raster)
library(rgdal)
library(sf)
library(tidyverse)

Prenons un MNT (1m de résolution si possible) ----

DTM <- 

Création de réseau Hydro ----

lien R - Saga-gis (saga-gis doit être installé sur la machine) ----

Saga <- Rsagacmd::saga_gis(verbose=TRUE)

1 - Fill sinks xxl (Wang & Liu) (on comble les trous) ----

FilledSinks <- Saga$ta_preprocessor$fill_sinks_xxl_wang_liu(elev = DTM, 
                                                            minslope = .01)

2 - Flow accumulation (top-down) (la composante flow de TotalCatchmentArea nous servira de grille d'initiation pour le réseau Hydro) ----

TotalCatchmentArea <- Saga$ta_hydrology$flow_accumulation_top_down(elevation = FilledSinks, 
                                                                   method = 'Multiple Flow Direction')

3 - Channel Network ----

ChannelNetwork <- Saga$ta_channels$channel_network(elevation = FilledSinks,
                                                   init_grid = TotalCatchmentArea$flow,
                                                   init_method = "Greater than",
                                                   init_value = 2250) # on colle à ce que fait l'ONF sauf qu'ici notre DEM a une résolution de 1m

On a maintenant un réseau hydro à partir du DEM de Paracou, je fabrique mon raster de distance verticale à la crique (indispensable pour le modèle HAND dans la fonction de definition d'UP) à la suite, je pense qu'il est preferable que l'utilisateur rentre un DTM + un raster de distance verticale à la crique qui sera impérativement réalisé à partir de ce même DEM, sinon les x et y pourraient ne pas correspondre plus tard

Distance Verticale à la crique ----

DistancesCrique <- Saga$ta_channels$overland_flow_distance_to_channel_network(elevation = FilledSinks,
                                                                     channels = ChannelNetwork$chnlntwrk)

Cet outil nous sort les distances verticale et horizontale à la crique de chacune des cellules de notre dtm

Selection de la distance verticale à la crique ----

CreekVerticalHeight <- DistancesCrique$distvert
plot(CreekVerticalHeight,  breaks=c(0,2), col='red') # les jolis bas-fonds !


thomasgaquiere/Maria documentation built on Dec. 24, 2021, 1:20 a.m.