1 Contexte

La directive européenne inondation de 2007 impose au maître d’ouvrage, pour chaque projet de réduction du risque inondation (digues de protection, développement de zones d’expansion en amont sur des terres agricoles, etc), une analyse préalable dite ‘coûts-bénéfices’ qui vise à démontrer l’efficacité économique du projet, i.e. que les dommages évités par le projet compensent au moins son coût.

Pour ce faire, les maîtres d’ouvrages commandent aux bureaux d’études des analyses coûts-bénéfices qui sont basées sur l’estimation de dommages de crues sur le territoire concerné, avec et sans projet et pour une collection de ‘crues’ suivant une gamme de fréquences de retour. Pour chaque scenario de crue (1 scénario = 1 crue de la collection de fréquence de retour donnée, avec ou sans mise en place du projet), on estime donc les dommages (en €) sur le territoire. Ces dommages résultent du simple croisement entre l’aléa (la carte des hauteurs d’inondation1 sur tout le territoire obtenue par modélisation hydraulique) et les enjeux (les habitations, les entreprises, les surfaces cultivées) pour lesquels on dispose de courbes d’endommagement (la vulnérabilité). Ces courbes, normalement différentes par type d’enjeu, mettent en relation l’intensité de l’inondation (la hauteur d’eau) et les dommages par unité de surface. Cette estimation est par nature spatialisée et passe par des SIG (Erdlenbruch et al. 2008). Figure 1 : Calcul des dommages par croisement aléa-vulnérabilité

Dans ces estimations et lorsque l’on compare les dommages moyens espérés (au sens mathématique) sur un horizon de 50 à 100 ans, on fait toujours une hypothèse conservatrice forte : que l’occupation du sol (les enjeux) ne change pas sur cet horizon temporel. En effet, comme d’autre sources d’incertitudes (stationnarité des régimes de crues, etc), l’évolution de l’occupation du sol est toujours négligée dans ces analyses. Mais est-ce vraiment pénalisant ?

2 Objectifs

L’objectif général de cette séquence de TP encadré puis de TD libre est d’estimer l’impact d’un changement d’occupation du sol plausible sur l’estimation des dommages d’une crue, moyennant quelques hypothèses simplificatrices.

L’objectif du TP est, sur un terrain d’étude mixte urbain et agricole, le delta de l’Orb en aval de Béziers, de recaler des courbes de dommages initialement appliquées à des enjeux détaillés suivant 4 types (habitations, entreprises, etc) afin de retrouver le total des dommages produits par la crue centennale \(Q_{100}\) (fréquence de retour centennale) à partir d’une carte d’occupation du sol simplifiée raster (suivant une maille raster de 100 ou 250 m). Pour recaler ces courbes (suivant un coefficient multiplicateur à ajuster), on utilise de simples opérations SIG (QGIS) et tableurs (Excel ou R), en partant des cartes d’occupation du sol simplifiées, des cartes d’enjeux détaillés et de la carte d’aléa (maille de 10 m). Figure 2 : Le delta de l’Orb en aval de Béziers

Les deux grandes étapes du TP cherchent à :

  1. Estimer, sur la base des données actuelles, la répartition (en surface) de chaque type d’enjeux (habitations, entreprises, campings et cultures) par classe d’occupation du sol simplifiée (3 classes: urbain, agricole et autre). On fera l’hypothèse que cette répartition est homogène sur tout le territoire inondable (par exemple, que la part de surface de campings par maille à 250 d’occupation du sol ‘urbain’ est la même pour toutes les mailles; que la part de surface de campings par maille à 250 d’occupation du sol ‘agricole’ est la même pour toutes les mailles; que la part de surface de campings par maille à 250 d’occupation du sol ‘autre’ est la même pour toutes les mailles).

  2. Connaissant les totaux des dommages par type d’enjeux, la part de surface des enjeux par classe d’occupation du sol simplifiée, suite au croisement entre aléa et occupation du sol simplifiée, recaler les courbes de dommages initiales afin de retrouver ces totaux de dommages par type d’enjeux.

Avec ces nouvelles courbes et connaissant la répartition des types d’enjeux par classe d’occupation du sol simplifiée, on peut recalculer les dommages issu du croisement entre aléa et une occupation du sol simplifiée.

L’objectif du TD libre est ensuite d’appliquer un modèle de simulation de l’évolution du territoire ‘delta de l’Orb’ (sur SpaCELLE) tel que vu dans les séquences de cours-TP précédentes de l’UE, puis suivant différents horizons temporels (5,10,30,50 ans), de mesurer pour ces différentes occupations du sol modifiées (et simplifiées), les conséquences sur l’estimation des dommages de la crue centennale (notée \(Q_{100}\)), en utilisant les résultats calculés en TP.

Hauteurs de submersion de Q_{100} et types d’enjeux sur le delta de l’Orb

3 Etapes du TP

3.1 Installation et visualisation du jeu de données

Les données cartographiques disponibles sont listées dans la Table 1. Elles sont toutes référencées dans le système Lambert 93 (Code EPSG: 2154).

Les données nécessaires à la réalisation du TP sont disponibles à l’adresse suivante:

https://www.dropbox.com/sh/3kgclyo75h77yvr/AACmnJH7wI8atel3HqZwk9Mta?dl=0

Dossier dataOrb à télécharger (clic droit sur le dossier) et dézipper.

nom contenu
terraindetude_l93.shp limite de la zone inondable
alea_l93.shp hauteurs d’eau de \(Q_{100}\) à 50 m de résolution par classe de 50 cm
enjeux_l93.shp habitations, entreprises, campings et cultures actuels (détaillé)
occsol_100m_l93.asc occupation du sol raster actuelle à 100 m (simplifiée)
occsol_250m_l93.asc occupation du sol raster actuelle à 250 m (simplifiée)
reseau_orb.shp routes (pour spaCELLE)
reseau_ferre.shp voies ferrées (pour spaCELLE)

Table 1 : Sources de données

  1. Copier-Coller le répertoire dataOrb depuis Q: ou depuis le lien ci-dessus pour créer D:/dataOrb

  2. Ouvrir QGIS2

  3. Charger la limite de la zone inondable terraindetude_l93.shp puis la couche des hauteurs d’eau maximales atteintes durant la crue centennale \(Q_{100}\) de 2100 \(m^3.s^{-1}\) (enregistrée en amont du delta à la station hydrométrique de Tabarka): alea_l93.shp. Observer les valeurs (exprimées en cm comme milieu de tranches de 50 cm). Attribuer une légende en niveaux de bleu suivant les valeurs de hauteurs d’eau.


  • Couche \(\rightarrow\) Ajouter une couche vecteur \(\rightarrow\) EPSG:2154

  • Sélectionner la couche puis: Click droit \(\rightarrow\) Propriétés \(\rightarrow\) Style \(\rightarrow\) Symbole gradué \(\rightarrow\) 20 classes


  1. Charger la carte vecteur des enjeux actuels et détaillés (BD-TOPO ©: habitations, entreprises, cultures, campings): enjeux_l93.shp. Visualiser le contenu de la table attributaire. Afficher une couleur par type d’enjeu.

  • Couche \(\rightarrow\) Ajouter une couche vecteur \(\rightarrow\) EPSG:2154

  • Sélectionner une couche puis: Click droit \(\rightarrow\) Ouvrir la table d’attributs

  • Sélectionner la couche puis: Click droit \(\rightarrow\) Propriétés \(\rightarrow\) Style \(\rightarrow\) Catégorisé


  1. Charger la carte raster d’occupation du sol simplifiée à 100 m (Corine-Land-Cover© : occsol_100m_l93.asc). La transformer en une couche vecteur occsol.shp. Afficher la table attributaire puis la couche occsol.shp avec une légende par valeur du champ DN. Ce champ code une légende Corine-Land-Cover niveau 3, dont la signification peut-être trouvée, par exemple, à cette adresse : http://fr.wikipedia.org/wiki/Corine_Land_Cover#La_nomenclature.5B8.5D).

  • Couche \(\rightarrow\) Ajouter une couche raster

  • Raster \(\rightarrow\) Conversion \(\rightarrow\) Polygoniser \(\rightarrow\) Nome de champ: DN ; Charger la carte une fois terminée

  • Sélectionner une couche puis: Click droit \(\rightarrow\) Ouvrir la table d’attributs

  • Sélectionner la couche puis: Click droit \(\rightarrow\) Propriétés \(\rightarrow\) Style \(\rightarrow\) Catégorisé

  • Charger la légende Corine_Land_Cover.qml et Click droit \(\rightarrow\) Classer \(\rightarrow\) Non


3.2 Calcul des surfaces d’enjeux par classe d’occupation du sol simplifiée

  1. Simplifier la nomenclature de occsol.shp suivant la Table 1 (en créant un nouveau champ texte classe dans la table d’attributs de occsol.shp).
Code CLC niveau 3 Classe
111 à 121, 124, 141, 142 ‘UR’
212 à 222, 242, 243 ‘AG’
122, 133, 231, \(\geq\) 311 ‘AU’

Table 2 : Correspondance des Codes CLC


  • Dans la table d’attributs de occsol.shp \(\rightarrow\) Activer le mode d’édition \(\rightarrow\) Nouvelle colonne \(\rightarrow\) Nom=classe, Type=texte, largeur=5

  • Dans la table d’attributs de occsol.shp \(\rightarrow\) Filtre avancé (expression) \(\rightarrow\) DN <= 121 OR DN = 124 OR DN=141 OR DN=142

  • Sélectionner les entités (control+A) \(\rightarrow\) Calculatrice de champ \(\rightarrow\) Mise à jour des entités sélectionnées; Champ de mise à jour existant = classe ; Expression : ‘UR’

  • … Dé-sélectionner les entités puis refaire la sélection et le calcul pour ‘AG’ puis ‘AU’ puis \(\rightarrow\) Désactiver le mode édition


  1. Fusionner les polygones de occsol.shp partageant une frontière et ayant la même classe pour créer une nouvelle couche occsol_bis.shp.

  • Vecteur \(\rightarrow\) Outils de géotraitements \(\rightarrow\) Regrouper : Couche de saisie=occsol, Camp de catégorie=classe, Fichier de sortie=occsol_bis.
    Décocher la case Utiliser uniquement les valeurs sélectionnées, si nécessaire

  1. Poinçonner la couche occsol_bis.shp avec terraindetude_l93.shp pour former occsol0-100.shp. Calculer la surface totale de chaque classe d’occupation du sol (ligne 1 de la Table 3). Visualiser les différences entre types d’enjeux et classes d’occupation du sol liées aux effets de résolution en affichant sur la carte uniquement ces deux couches et suivant des légendes appropriées.

  • Vecteur \(\rightarrow\) Outils de géotraitements \(\rightarrow\) Découper : Couche de saisie=occsol-bis, Couche de découpage=terraindetude_l93, Fichier de sortie=occsol0-100 Décocher la case Utiliser uniquement les valeurs sélectionnées, si nécessaire

  • Dans la table d’attributs de occsol0-100.shp \(\rightarrow\) Activer le mode d’édition \(\rightarrow\) Calculatrice de champ \(\rightarrow\) Créer un nouveau champ; Nom=surface, Type=nombre décimal, Precision = 0, Longueur=10 ; Expression : $area \(\rightarrow\) Désactiver le mode édition Décocher la case Utiliser uniquement les valeurs sélectionnées, si nécessaire


  1. Calculer puis noter dans la Table 3 les surfaces totales de types d’enjeux détaillés par classe d’occupation du sol simplifiée de la zone inondable (par intersection vecteur). Connaissant les surfaces totales des classes d’occupation du sol sur le terrain d’étude, en déduire la proportion de types d’enjeux par classe d’occupation du sol en Table 4. Vérifier la cohérence des résultats (que la majorité des surfaces d’habitations soient bien dans la classe urbaine, etc).

  • Vecteur \(\rightarrow\) Outils de géotraitements \(\rightarrow\) Intersection : Couche de saisie=occsol0-100, Couche d’intersection=enjeux_l93.shp, Fichier de sortie=occsol_enj Décocher la case Utiliser uniquement les valeurs sélectionnées, si nécessaire

  • Dans la table d’attributs de occsol_enj.shp \(\rightarrow\) Activer le mode d’édition \(\rightarrow\) Calculatrice de champ \(\rightarrow\) Créer un nouveau champ; Nom=surface, Type=nombre décimal, Precision = 0, Longueur=10 ; Expression : $area \(\rightarrow\) Désactiver le mode édition

  • Sélectionner une classe d’occupation du sol; vecteur \(\rightarrow\) Outils d’analyse \(\rightarrow\) Statistiques basiques; utiliser uniquement les valeurs sélectionnées \(\rightarrow\) Noter la somme

  • et ainsi de suite pour chaque classe d’occupation du sol et chaque type d’enjeux \(\rightarrow\) vous pouvez aussi, pour aller plus vite, utiliser Excel ou R (cf script ci-après)


A noter que si vous choisissez de faire ces calculs sous Excel, copier d’abord occsol-enj.dbf et occsol0-100.dbf sous d’autres noms avant de l’ouvrir dans Excel (pour éviter d’écraser la table attributaire des couches).

Avec alt text:

setwd("D:/dataOrb")
#install.packages(foreign)
library(foreign)
dat<-read.dbf("occsol0-100.dbf")
S.tot<-tapply(dat$surface,dat$classe,"sum")
dat<-read.dbf("occsol_enj.dbf")
res2<-aggregate(dat$surface, list(dat$classe,dat$ENJEU),"sum")
res2
table2<-matrix(res2$x,ncol=3, byrow=T)
colnames(table2)<-levels(res2$Group.1)
rownames(table2)<-levels(res2$Group.2)
table2
table3<-table2/matrix(rep(S.tot,4), ncol=3, byrow=T)
table3
apply(table3,2,"sum")
save(table3,file="table3.RData")
SURFACES (m\(^2\)) Agricole (‘AG’) Autre (‘AU’) Urbain (‘UR’)
Total terrain d’étude \(S^{ag}\) \(S^{au}\) \(S^{ur}\)
Campings \(\in\) \(S_a^{ag}\) \(S_a^{au}\) \(S_a^{ur}\)
Cultures \(\in\) \(S_c^{ag}\) \(S_c^{au}\) \(S_c^{ur}\)
Entreprises \(\in\) \(S_e^{ag}\) \(S_e^{au}\) \(S_e^{ur}\)
Habitations \(\in\) \(S_h^{ag}\) \(S_h^{au}\) \(S_h^{ur}\)
Table 3 : Total des surfaces d’enjeux par classe d’occupation du sol (Remplacer par des valeurs)
% Agricole (‘AG’) Autre (‘AU’) Urbain (‘UR’)
Campings \(\in\) \(p_a^{ag}=\frac{S_a^{ag}}{S^{ag}}\) \(p_a^{au}\) \(p_a^{ur}\)
Cultures \(\in\) \(p_c^{ag}\) \(p_c^{au}\) \(p_c^{ur}\)
Entreprises \(\in\) \(p_e^{ag}\) \(p_e^{au}\) \(p_e^{ur}\)
Habitations \(\in\) \(p_h^{ag}\) \(p_h^{au}\) \(p_h^{ur}\)

Table 4 : Pourcentages de surfaces d’enjeux par classe d’occupation du sol (Remplacer par des valeurs avec 4 chiffres significatifs)

3.3 Croisement Alea-Enjeux

Cette opération résulte du simple croisement entre l’occupation du sol et les hauteurs d’eau.


  1. Vecteur \(\rightarrow\) Outils de géotraitements \(\rightarrow\) Intersection : Couche de saisie=occsol0-100, Couche d’intersection=alea_l93, Fichier de sortie=risque Décocher la case Utiliser uniquement les valeurs sélectionnées, si nécessaire

  2. Dans la table d’attributs de risque.shp \(\rightarrow\) Activer le mode d’édition \(\rightarrow\) Calculatrice de champ \(\rightarrow\) Champ de mise à jour existant=surface ; Expression = $area \(\rightarrow\) Désactiver le mode édition


La table risque.dbf comprend désormais tous les éléments nécessaires pour calculer les dommages : pour chaque entité (polygone) de cette couche, on connaît la hauteur d’eau (\(H\)), la classe d’occupation du sol, sa surface et donc la surface des types d’enjeux d’après la Table 4.

3.4 Calcul de courbes d’endommagement équivalentes

Les dommages sur les enjeux actuels créés par \(Q_{100}\) sont donnés en Table 5

Habitations Entreprises Campings Cultures
40.9 107.8 34.1 2.3
Table 5 : Dommages actuels de la crue centennale en M€

Les courbes d’endommagement (\(C,H\)) initiales moyennes utilisées sont, avec \(H\) exprimée en cm, données ci-après :

  1. Pour les habitations, le coût des dommages, exprimé en €/\(m^2\) est :
  • \(C_h=0\) pour \(H=0\)
  • \(C_h=20+0.5*H\) sinon
  1. Pour les entreprises, le coût des dommages, exprimé en €/\(m^2\) est :
  • \(C_e=3*H\)
  1. Pour les campings, le coût des dommages, exprimé en €/\(m^2\) est :
  • \(C_a=0.2*H\)
  1. pour les cultures :
  • \(C_c=0\) pour \(H=0\)
  • \(C_c=0.1\) pour \(0<H\leq150\)
  • \(C_c=0.2\) pour \(H>150\)

  1. Calculer à partir de la table risque.dbf, les dommages par type d’enjeu suivant les courbes initiales. Pour ce faire vous pouvez utiliser Excel avec les mêmes conseils que précédemment ou alt text. Si vous utilisez alt text, un script vous est proposé ci-après.

  2. Ajuster chacune de ces courbes d’endommagement \(C_i, i \in {h,e,a,c}\) suivant un simple coefficient multiplicateur \(k_i\) par type d’enjeu afin de retrouver les dommages actuels. Notez ces valeurs de coefficients dans la table ci-dessous. Que traduisent ces valeurs de coefficients (\(>1\)) ?

\(k_h\) \(k_e\) \(k_a\) \(k_c\)

….

….

….

….


Calcul pas à pas des dommages par type d’enjeu avec alt text (faire un script) :

setwd('/home/bailly/temp')
library(foreign)
load("table3.RData")
dat<-read.dbf("risque.dbf")
# pour la classe agricole
sub.ag<-dat[dat$classe=="AG",]
mod<-cbind(0.2*sub.ag$H, (0.1+(sub.ag$H>150)*0.1)*(sub.ag$H>0), 
(3*sub.ag$H)*(sub.ag$H>0), (20+0.5*sub.ag$H)*(sub.ag$H>0))
surf<-outer(sub.ag$surface,table3[,"AG"])
dim(mod)
dim(surf)
ag<-mod*surf
ag.enj<-apply(ag,2,"sum")
# pour la classe autre
sub.au<-dat[dat$classe=="AU",]
mod<-cbind(0.2*sub.au$H, (0.1+(sub.au$H>150)*0.1)*(sub.au$H>0), 
(3*sub.au$H)*(sub.au$H>0), (20+0.5*sub.au$H)*(sub.au$H>0))
surf<-outer(sub.au$surface,table3[,"AU"])
dim(mod)
dim(surf)
au<-mod*surf
au.enj<-apply(au,2,"sum")
# pour la classe urbaine
sub.ur<-dat[dat$classe=="UR",]
mod<-cbind(0.2*sub.ur$H, (0.1+(sub.ur$H>150)*0.1)*(sub.ur$H>0), 
(3*sub.ur$H)*(sub.ur$H>0), (20+0.5*sub.ur$H)*(sub.ur$H>0))
surf<-outer(sub.ur$surface,table3[,"UR"])
dim(mod)
dim(surf)
ur<-mod*surf
ur.enj<-apply(ur,2,"sum")
#sommation
tot.enj<-ag.enj+au.enj+ur.enj
#coefficients k
k<-tot.enj/(c(34.1e06, 2.3e06, 107.8e06, 40.9e06))

Ces nouvelles courbes d’endommagement \(k_h*C_h, \cdots, k_c*C*c\) sont celles qui seront utilisées pour le TD qui suit.

4 Etapes et cahier des charges du TD

Les résultats du TD (éléments demandés listés ci-après) sont à remettre dans un document .doc ou .pdf et à envoyer par mail à :

jean-pierre.chery@agroparistech.fr jean-stephane.bailly@agroparistech.fr fabrice.vinatier@supagro.inra.fr

en fin d’UE (vendredi midi).

4.1 Simulation de dynamiques territoriales

Pour le TD libre, on vous demande dans un premier temps de construire et appliquer un modèle de dynamique territoriale avec SpaCELLE sur le delta de l’Orb en partant de l’occupation du sol actuelle simplifiée au format raster (soit à 100 m occsol_100m_l93.asc, soit à 250m occsol_250m_l93.asc) et d’un fichier sur les routes principales routes_l93.shp.

  1. Expliquer et justifier les valeurs de paramètres du modèle SpaCELLE que vous avez retenues.

  2. Exporter sous forme d’images les cartes d’occupation du sol obtenues suivant des classes simplifiées (urbain, cultures et autres) aux horizons, 5, 10, 20 et 50 ans.

  3. Commenter ces images et les résultats obtenus

4.2 Impact du changement d’occupation du sol sur l’estimation des dommages de crue

En ré-exploitant le TP sur l’occupation du sol actuelle, calculer les dommages urbains et agricoles de la crue centennale par type d’enjeux et totaux à 5, 10, 20 et 50 ans.

  1. Présenter sous forme de tableaux les résultats obtenus chiffrés, et les variations en % par rapport aux dommages actuels

  2. Discutez alors de l’impact du changement d’occupation du sol.

  3. Cet impact est-il linéaire en fonction du temps ? Comment expliquer cette tendance ?

  4. Identifiez et discutez les limites de l’exercice réalisé.
  5. Comment améliorer les modèles de simulation de dynamiques territoriales pour rendre l’exercice plus réaliste ?

References

Erdlenbruch, K., E. Gilbert, F. Grelot, and C. Lescoulier. 2008. “Une Analyse Coût-Bénéfice Spatialisée de La Protection Contre Les Inondations - Application de La Méthode Des Dommages Évités a La Basse Vallee de L’Orb.” EAT Ingéniéries 53: 5–20.


  1. quelquefois, les vitesses maximales atteintes et les durées de submersion sont également prises en compte

  2. Les instructions QGIS sont celles de la version QGIS 1.8.0© à 2.0.1©, Linux