From 2fb810701f5fb8ff0e694080ddec4c2a1f4bce97 Mon Sep 17 00:00:00 2001 From: Dorchies David <david.dorchies@inrae.fr> Date: Wed, 15 Sep 2021 18:12:57 +0200 Subject: [PATCH] =?UTF-8?q?feat(bnpe):=20Affinement=20typologie=20des=20pr?= =?UTF-8?q?=C3=A9l=C3=A8vements=20industriels?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DESCRIPTION | 5 +- vignettes/v10-bnpe.Rmd | 267 +++++++++++++++++++++++++++-------------- 2 files changed, 177 insertions(+), 95 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 7800011..c6b37cd 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,7 +1,7 @@ Package: InWopUsages Type: Package Title: Données et analyses des usages du bassin versant de la Seine -Version: 0.1.0 +Version: 0.1.1 Authors@R: c( person("David", "Dorchies", role = c("aut", "cre"), comment = c(ORCID = "0000-0002-6595-7984"), email = "david.dorchies@inrae.fr"), person("N'Guessan Ghislain", "Yao", role = c("ctb"), email = "yaoulricho@gmail.com") @@ -36,5 +36,4 @@ URL: https://in-wop.g-eau.fr/usages BugReports: https://gitlab.irstea.fr/in-wop/inwopusages/-/issues/ Roxygen: list(markdown = TRUE) RoxygenNote: 7.1.1 -Remotes: - url::https://gitlab.irstea.fr/in-wop/hubeau/-/archive/master/hubeau-master.zip +Remotes: inrae/hubeau diff --git a/vignettes/v10-bnpe.Rmd b/vignettes/v10-bnpe.Rmd index 8548aac..50ab380 100644 --- a/vignettes/v10-bnpe.Rmd +++ b/vignettes/v10-bnpe.Rmd @@ -11,7 +11,7 @@ bibliography: InWopUsages.bib ```{r, include = FALSE} knitr::opts_chunk$set( collapse = TRUE, - comment = "#>", + comment = "#>", fig.width = 7 ) ``` @@ -20,6 +20,8 @@ knitr::opts_chunk$set( library(InWopUsages) ``` +La Banque Nationale des Prélèvements quantitatifs en Eau a été instituée en 2014 [@nowakConstructionDispositifConnaissance2014] afin de fédérer les données collectées par les différentes administrations (DDT, DREAL, Agences de l'eau). Cette base de données contient le volume annuel prélevé pour chaque ouvrage de prélèvement avec une typologie concernant la source du prélèvement et le type d'usage. Elle sera la principale source d'information sur les usages utilisée dans cette étude. + # Extraction des points de prélèvement ```{r} @@ -49,6 +51,8 @@ L'extraction des points de prélèvement donne `r nrow(dfPP)` points de prélèv # Extraction des chroniques de prélèvement +## Extraction des chroniques avec l'API hubeau + ```{r} if(!file.exists("v10-dfChro.rds")) { lChro <- lapply(dfCom$insee_com, function(insee_com) { @@ -61,41 +65,94 @@ if(!file.exists("v10-dfChro.rds")) { } ``` -Sélection des prélèvements liés aux ouvrages sélectionnés précédemment. Les prélèvements à fort volume mais à restitution immédiate (usages énergie, refroidissement, barrage) sont exclus du champ de l'étude (`prelevement_ecrasant == FALSE`). +Sélection des prélèvements liés aux ouvrages sélectionnés précédemment. Les prélèvements à fort volume mais à restitution immédiate (usages énergie, refroidissement, barrage) sont exclus du champ de l'étude car leur influence sur l'hydrologie du cours d'eau est nulle (`prelevement_ecrasant == FALSE`). ```{r} -dfChro <- dfChroRaw %>% +dfChro <- dfChroRaw %>% filter(volume > 0, prelevement_ecrasant == FALSE) %>% select(code_ouvrage, nom_ouvrage, annee, volume, code_usage, latitude, longitude) %>% inner_join(dfPPInf, by = "code_ouvrage") ``` -# Calcul des prélèvement nets +## Correction d'erreurs manifestes dans la base + +Les ouvrages d'alimentation du canal de l'Ourcq sont en doublon dans la base avec l'usage "Industriel" et l'usage "Canaux de navigation" avec le même code ouvrage. Nous supprimons les doublons avec l'usage "Canaux de navigation" car nous considérons les eaux prélevées pour le canal de l'Ourcq comme un usage industriel (voir plus bas). + +Les prises d'eau nommées "VILLE DE PARIS" classées en usage "canal" sont aussi des prises d'eau du canal de l'Ourcq à requalifier en usage industriel : la prise de Congis-sur-Thérouane est [l'usine élévatoire de Villers-lès-Rigault](https://fr.wikipedia.org/wiki/Usine_%C3%A9l%C3%A9vatoire_de_Villers-l%C3%A8s-Rigault) qui alimente le canal de l'Ourcq. La prise de Gressy alimente aussi le canal de l'Ourcq en dérivant une partie du débit de la Beuvronne. + +```{r} +ouvrages_Ourcq <- dfChro$code_ouvrage[grepl("Canal de l'Ourcq", dfChro$nom_ouvrage)] +dfChroOurcq <- dfChro %>% filter(code_ouvrage %in% ouvrages_Ourcq, code_usage == "CAN") + +dfChro <- dfChro %>% + anti_join(dfChroOurcq) + +dfChro <- dfChro %>% + mutate(code_usage = replace(code_usage, nom_ouvrage == "VILLE DE PARIS" & code_usage == "CAN", "IND")) +``` + +```{r} +ouvrages_Ourcq <- grepl("Canal de l'Ourcq", dfChro$nom_ouvrage) | + dfChro$nom_ouvrage == "VILLE DE PARIS" | + dfChro$code_ouvrage %in% c("OPR0000039822", "OPR0000039823") +``` + + +```{r} +dfChroOurcq <- dfChro[ouvrages_Ourcq,] +ggplot( + dfChroOurcq, + aes(x = annee, y = volume / 1E6) + ) + + geom_col(aes(fill = paste0(str_trunc(nom_commune, 12),": ", str_trunc(nom_ouvrage, 30), " (", str_sub(code_ouvrage, -6), ")")), width = 0.5) + + scale_x_continuous(breaks = sort(unique(dfChroOurcq$annee))) + + labs(x = "Année", y = "Volume (millions m3/an)", fill = "Ouvrage") +``` + +Le graphique ci-dessus indique des incohérences et des doublons. La prise de Congis-sur-Thérouane est représentée par les ouvrages '199443' et '199442'. Les données libellés "VILLE DE PARIS" de l'ouvrage '199442' sont identiques chaque année à celles de l'ouvrage '199444' et les volumes ne sont pas compatibles avec ceux d'une usine de relevage. Nous préférons ignorer ces données. L'ouvrage '033702' à Sens + +```{r} +dfChro <- dfChro %>% filter(nom_ouvrage != "VILLE DE PARIS") +``` + -Calcul de la moyenne inter-annuelle des prélèvements pour chaque ouvrage. + +## Calcul des prélèvements moyens inter-annuels + +Pour la suite de l'analyse, nous allons nous appuyer sur la moyenne inter-annuelle des prélèvements pour chaque ouvrage. ```{r} -dfMoy <- dfChro %>% +dfMoy <- dfChro %>% group_by(code_ouvrage, nom_ouvrage, code_usage, code_type_milieu, code_commune_insee, nom_commune, uri_ouvrage) %>% - summarise(vol_moy = round(mean(volume) / 1E6, 3), + summarise(vol_moy = round(mean(volume) / 1E6, 3), vol_min = round(min(volume) / 1E6, 3), vol_max = round(max(volume) / 1E6, 3), .groups = "drop") ``` -Les prélèvements industrielles ont un statut particulier par rapport aux autres usages car une proportion non négligeable peut être immédiatement restituée. Il faut donc calculer un coefficient de consommation permettant de calculer le prélèvement net. +# Détermination des ratios de consommation pour l'usage industriel + +Les prélèvements industrielles ont un statut particulier par rapport aux autres usages car une proportion non négligeable peut être immédiatement restituée. Il faut donc affecter aux prélèvements un coefficient de consommation qui dépend du type d'industrie considérée. Ce coefficient de consommation permettra de calculer le prélèvement net par la formule : $P_{net} = r_{conso} \times P_{brut}$ -Analyse des plus gros ouvrages de prélèvement industriels (en millions de m<sup>3</sup>/an): +@IndustrieEauAnalyse2003 propose des ratios qui ont été repris par @bipeExplore2070Prospective2012, nous utiliserons les ratios proposés par ces références pour chaque type d'industrie. +Pour définir le type d'industrie de chaque ouvrage de prélèvement, nous allons d'abord procéder au cas par cas pour les plus gros préleveurs, traiter les préleveurs moyens par une affectation du type par mot-clé et les préleveurs les plus petits n'ayant pas été typés seront traités avec un coefficient moyen. ```{r} dfInd <- dfMoy %>% filter(code_usage == "IND") %>% select(code_ouvrage, nom_ouvrage, code_commune_insee, nom_commune, vol_moy, vol_min, vol_max) %>% - mutate(r_conso = NA) -knitr::kable(dfInd %>% - arrange(-vol_moy) %>% slice(1:10) %>% select(-c(r_conso, code_commune_insee))) + mutate(type = NA, r_conso = NA) ``` + +Liste des plus gros ouvrages de prélèvements industriels (en millions de m<sup>3</sup>/an): + +```{r} +knitr::kable(dfInd %>% + arrange(-vol_moy) %>% slice(1:10) %>% select(-c(type, r_conso, code_commune_insee))) +``` + + ## Centrale nucléaire de Nogent-sur-Seine La centrale nucléaire de Nogent-sur-Seine a une consommation théorique de 37.5 % [@vicaudBesoinsEauRefroidissement2008]. @@ -103,8 +160,9 @@ La centrale nucléaire de Nogent-sur-Seine a une consommation théorique de 37.5 Détermination des prélèvements: ```{r} -dfInd <- dfInd %>% - mutate(r_conso = replace(r_conso, code_commune_insee == "10268" & grepl("CENTRALE", nom_ouvrage), 0.375)) +dfInd <- dfInd %>% + mutate(type = replace(type, code_commune_insee == "10268" & grepl("CENTRALE", nom_ouvrage), "energie"), + r_conso = replace(r_conso, code_commune_insee == "10268" & grepl("CENTRALE", nom_ouvrage), 0.375)) knitr::kable( dfInd %>% filter(code_commune_insee == "10268", grepl("CENTRALE", nom_ouvrage)) %>% select(-code_commune_insee) ) @@ -115,7 +173,7 @@ knitr::kable( La centrale de Vitry-sur-Seine est la centrale à fioul de Vitry-Arrigi mise en route en 2007. Le site comptait auparavant aussi une centrale à charbon arrêtée en 2015. Ce type de centrale fonctionne quelques centaines d'heures par an pendant les périodes les plus froides de l'année. -La centrale au fioul de Porcheville a été définitivement arrêtée le 1er mai 2017. Comme pour la centrale de Vitry, c'est une centrale qui ne fonctionnait que pendant les pointes annuelles de consommation. +La centrale au fioul de Porcheville a été définitivement arrêtée le 1er mai 2017. Comme pour la centrale de Vitry, c'est une centrale qui ne fonctionnait que pendant les pointes annuelles de consommation. Le site des Renardières est un site de R&D qui comprenait la centrale thermique de Montereau jusqu'en 2011. Chatou est aussi un centre de R&D. Les volumes prélèvés sont assez faibles en l'absence d'information, on utilise le même ratio de 5 %. @@ -127,76 +185,114 @@ ouvrages_EDF <- unique(unlist( sapply(EDF_keywords, function(x) dfInd$code_ouvrage[grepl(x, dfInd$nom_ouvrage) & is.na(dfInd$r_conso)]) )) -dfInd <- dfInd %>% mutate(r_conso = replace(r_conso, code_ouvrage %in% ouvrages_EDF, 0.05)) +dfInd <- dfInd %>% mutate(type = replace(type, code_ouvrage %in% ouvrages_EDF, "energie"), + r_conso = replace(r_conso, code_ouvrage %in% ouvrages_EDF, 0.05)) knitr::kable( - dfInd %>% filter(code_ouvrage %in% ouvrages_EDF) %>% select(-c(code_commune_insee)) %>% arrange(-vol_moy) + dfInd %>% filter(code_ouvrage %in% ouvrages_EDF) %>% select(-c(code_commune_insee, type)) %>% arrange(-vol_moy) ) ``` + + ## Canal de l'Ourcq -Des prises d'eau du canal de l'Ourcq sont classés dans les prélèvements industriels certainement par le fait que ce canal sert en partie à alimenter Paris en eau brute [@CanalOurcq2021]. Le ratio eau consommé / eau prélevé est de 1. +Dans la base BNPE, les prises d'eau du canal de l'Ourcq sont classées dans les usages industriels ou pour canaux de navigation. Cela est dû au fait que ce canal sert au moins en partie à alimenter Paris en eau non potable (ENP Paris) [@CanalOurcq2021]. + +```{r} +dfInd$type[grepl("Canal de l'Ourcq", dfInd$nom_ouvrage)] <- "ENP Paris" +``` + +Les usines d'Auteuil et d'Austerlitz sont des usines de pompage des eaux pour les eaux brutes de Paris. + +```{r} +dfInd$type[dfInd$code_ouvrage == "OPR0000039823"] <- "ENP Paris" +dfInd$type[dfInd$code_ouvrage == "OPR0000039822"] <- "ENP Paris" +``` + +La prise de Congis-sur-Thérouane sur la Marne est [l'usine élévatoire de Villers-lès-Rigault](https://fr.wikipedia.org/wiki/Usine_%C3%A9l%C3%A9vatoire_de_Villers-l%C3%A8s-Rigault) et la prise de Gressy (dérivation de la Beuvronne) alimentent le canal de l'Ourcq. Elles sont libellées "VILLE DE PARIS" dans la base : + +```{r} +dfInd$type[dfInd$nom_ouvrage == "VILLE DE PARIS"] <- "ENP Paris" +``` + + +D'après @trinhDiversificationRessourcesReseau2017, le canal de l'Ourcq et les usines d'Auteuil, d'Austerlitz et de la Villette (ouvrage pompant dans le canal de l'Ourcq) apportent 200 000 m<sup>3</sup> d'eau brute par jour. ```{r} -ouvrages_Ourcq <- dfInd$code_ouvrage[grepl("Canal de l'Ourcq", dfInd$nom_ouvrage)] -dfInd <- dfInd %>% mutate(r_conso = replace(r_conso, code_ouvrage %in% ouvrages_Ourcq, 1)) knitr::kable( - dfInd %>% filter(code_ouvrage %in% ouvrages_Ourcq) %>% - select(-c(code_commune_insee, code_ouvrage)) %>% arrange(-vol_moy) +dfInd %>% filter(type == "ENP Paris") %>% summarise(volume_min = sum(vol_min), + volume_moy = sum(vol_moy), + volume_max = sum(vol_max)) / 365 * 1E6 ) ``` +Les données de la BNPE sont cohérentes avec un volume moyen de 211 milliers de m<sup>3</sup> par jour dans une fourchette de 171 à 256 millers de m<sup>3</sup> par jour. Il semble que la totalité des prélèvements concernant le canal de l'Ourcq et l'ENP Paris sont entièrement consommés par l'ENP Paris. L'alimentation du canal Saint-Martin et du canal Saint-Denis sont négligeables et on considère donc un usage exclusivement industriel de ces eaux. + +Le ratio d'eau consommée est difficile à estimer entre les restitutions des canaux Saint-Martin et Saint-Denis vers la Seine, et les différents usages du réseau d'eau non potable. D'après @trinhDiversificationRessourcesReseau2017, les principaux usages sont les chasses du réseau d'assainissement, le nettoyage des voiries et l'arrosage des bois et jardins. Les deux premiers usages font l'objet d'un retour vers la Seine via le réseau d'assainissement ou le réseau de collecte des eaux pluviales, on considérera donc une consommation nulle. La consommation des bois de Vincennes et de Boulogne pour l'arrosage et la mise à niveau des plans d'eau était estimée à 19 500 m<sup>3</sup>/j et l'arrosage des jardins de Paris intra-muros à 6200 m<sup>3</sup>/j en 2013. Sur les 200 000 mm<sup>3</sup>/j utilisés par le réseau ENP, cela représente une consommation $r_{conso} = 13\%$ + +```{r} +dfInd$r_conso[dfInd$type == "ENP Paris"] <- 0.13 +knitr::kable( + dfInd %>% filter(type == "ENP Paris") %>% + select(-c(code_commune_insee, code_ouvrage, type)) %>% arrange(-vol_moy) +) +``` + + ## Autres gros préleveurs industriels ```{r} knitr::kable( - dfInd %>% + dfInd %>% filter(is.na(r_conso)) %>% - arrange(-vol_moy) %>% slice(1:20) %>% select(-c(r_conso, code_commune_insee)) + arrange(-vol_moy) %>% slice(1:20) %>% select(-c(r_conso, code_commune_insee, type)) ) ``` IP XIII correspond à l'incinérateur de Ivry/Paris XIII. Le volume prélevé en 2019 était de 78 143 841 m3 dont 1 057 740 m3 effectivement consommé par le process soit 1.5 % du volume prélevé [@UsineIncinerationOrdures2020]. Valène à Guerville ainsi que le TIRU à Saint-Ouen sont aussi des incinérateurs. En l'absence d'information, on prendra le même ratio un ratio que pour IP XIII. ```{r} -dfInd$r_conso[grepl("IP XIII", dfInd$nom_ouvrage)] <- 0.015 -dfInd$r_conso[dfInd$nom_ouvrage %in% c("VALENE", "T.I.R.U.")] <- 0.015 +ouvrages_incinerateurs <- grepl("IP XIII", dfInd$nom_ouvrage) | dfInd$nom_ouvrage %in% c("VALENE", "T.I.R.U.") +dfInd$type[ouvrages_incinerateurs] <- "energie" +dfInd$r_conso[ouvrages_incinerateurs] <- 0.015 ``` Isseane est un nouvel incinérateur qui produit de la chaleur sous forme de vapeur mis en route en 2008 en remplacement du T.I.R.U arrêté fin 2007 [@Isseane2020]. En 2017, le volume prélevé dans la Seine était de 91 199 732 m3 dont 207 819 m3 effectivement consommé par le process soit 0.25 % du volume prélevé [@DossierInformationPublic2018]. ```{r} +dfInd$type[dfInd$nom_ouvrage == "ISSEANE"] <- "energie" dfInd$r_conso[dfInd$nom_ouvrage == "ISSEANE"] <- 0.0025 ``` Les prélèvements "Climespace" et SUC correspondent à des centrales réfrigérantes qui prélèvent l'eau pour leur circuit de refroidissement et la restitue immédiatement. ```{r} -dfInd$r_conso[dfInd$code_ouvrage == "OPR0000333925"] <- 0.0025 -dfInd$r_conso[grepl("Climespace", dfInd$nom_ouvrage)] <- 0.0025 +ouvrages_climespace <- dfInd$code_ouvrage == "OPR0000333925" | grepl("Climespace", dfInd$nom_ouvrage) +dfInd$type[ouvrages_climespace] <- "energie" +dfInd$r_conso[ouvrages_climespace] <- 0.0025 ``` -Les usines d'Auteuil et d'Austerlitz sont des usines de pompage des eaux pour les eaux brutes de Paris ($r = 1$). -```{r} -dfInd$r_conso[dfInd$code_ouvrage == "OPR0000039823"] <- 1 -dfInd$r_conso[dfInd$code_ouvrage == "OPR0000039822"] <- 1 -``` -D'après @trinhDiversificationRessourcesReseau2017, le canal de l'Ourcq et les usines d'Auteuil, d'Austerlitz et de la Villette (ouvrage pompant dans le canal de l'Ourcq) apportent 200 000 m<sup>3</sup> d'eau brute par jour. +## Typologie et ratio de consommation des autres industries + +On spécifie les types d'industries à partir de mots clés recherchés dans le nom des ouvrages. Les mots-clés ci-dessous ont été définis à partir des 50 ouvrages aux prélèvements les plus importants : ```{r} -knitr::kable( -dfInd %>% filter(r_conso == 1) %>% summarise(volume_min = sum(vol_min), - volume_moy = sum(vol_moy), - volume_max = sum(vol_max)) / 365 +lTypeInd <- list( + papeterie = c("PAPER", "PAPETERIE", "SAICA"), + chimie = c("RHODIA", "CHIMIE", "JOINT", "CLARIANT", "WEYLCHEM", "Raffinage", "DSP", "TOTAL FRANCE"), + fabrication = c("SPONTEX", "AUTOMOBILE", "RENAULT", "GOBAIN", "MOTEUR"), + IAA = c("TEREOS", "BIO", "CRISTAL UNION", "CU BAZANCOURT", "ALIMENTAIRE", "ROQUETTE", "G3", "BONDUELLE", "SUCRE", + "WILLIAM SAURIN", "NESTLE", "SOPAD", "COCA COLA", "MONDELEZ"), + BTP = c("GRANULAT", "CALCIA", "carri", "BETON", "PLATRE", "SABLIERE"), + metallurgie = c("SAM MONTEREAU", "ARCELORMITTAL", "SILEC", "ALUMINIUM", "CABLES", "FONDERIE", "FORGES", "SOUDAGE"), + energie = c("COGE", "C P C U", "C.P.C.U", "GLACE"), + irrigation = c("GOLF"), + SAV = c("A IV", "Seine AVAL") # STEU Seine Aval ) ``` -Les données de la BNPE sont cohérentes avec un volume moyen de 211 milliers de m<sup>3</sup> par jour dans une fourchette de 171 à 256 millers de m<sup>3</sup> par jour. - -## Affectation des autres industries - -La ratio d'eau consommée varie beaucoup d'un type d'industrie à l'autre. @IndustrieEauAnalyse2003 propose des ratios qui ont été repris par @bipeExplore2070Prospective2012. +Le ratio d'eau consommée par type d'industrie est issu de @IndustrieEauAnalyse2003. Ces ratios ont aussi été utilisés dans le projet Explore 2070 [@bipeExplore2070Prospective2012]. ```{r} ratiosTypeInd <- c( @@ -205,30 +301,19 @@ ratiosTypeInd <- c( chimie = 0.24, fabrication = 0.21, IAA = 0.5, - metallurgie = 0.12, - energie = 0.03, - SAV = 1 # UPBD Seine Aval Hypothèse rejet en STEU + metallurgie = 0.12, + energie = 0.03, + irrigation = 1, + SAV = 0 # UPBD Seine Aval Hypothèse rejet en STEU ) ``` - -On peut affecter ces ratios aux différents types d'industries à partir de mots clés recherchés dans le nom des ouvrages. Les mots-clés ci-dessous ont été définis à partir des premiers 50 ouvrages ayant consommés le plus en une année - ```{r} -lTypeInd <- list( - papeterie = c("PAPER", "PAPETERIE", "SAICA"), - chimie = c("RHODIA", "CHIMIE", "JOINT", "CLARIANT", "WEYLCHEM", "Raffinage", "DSP"), - fabrication = c("SPONTEX", "AUTOMOBILE", "RENAULT", "GOBAIN"), - IAA = c("TEREOS", "BIO", "CRISTAL UNION", "CU BAZANCOURT", "ALIMENTAIRE", "ROQUETTE", "G3"), - BTP = c("GRANULATS", "CALCIA", "carri"), - metallurgie = c("SAM MONTEREAU", "ARCELORMITTAL", "SILEC"), - energie = c("COGE", "C P C U", "C.P.C.U", "GLACE"), - SAV = c("A IV", "Seine AVAL") -) for(typeInd in names(lTypeInd)) { for(keyword in lTypeInd[[typeInd]]) { found <- which(is.na(dfInd$r_conso) & grepl(paste0("(?i)", keyword), dfInd$nom_ouvrage)) message("Keyword: ", keyword, " - Found ", length(found)) + dfInd$type[found] <- typeInd dfInd$r_conso[found] <- ratiosTypeInd[typeInd] } } @@ -237,25 +322,22 @@ for(typeInd in names(lTypeInd)) { Les `r length(which(is.na(dfInd$r_conso)))` ouvrages non classés totalisent `r sum(dfInd$vol_moy[is.na(dfInd$r_conso)])` millions de m<sup>3</sup> en moyenne par an. Soit `r round(sum(dfInd$vol_moy[is.na(dfInd$r_conso)]) / sum(dfInd$vol_moy) * 100,2)` % du total des prélèvements industriels. Nous les classerons en divers avec $r=0.5$. ```{r} +dfInd$type[is.na(dfInd$type)] <- "divers" dfInd$r_conso[is.na(dfInd$r_conso)] <- 0.5 ``` -## Calcul des prélèvements nets - -Les ouvrages d'alimentation du canal de l'Ourcq sont en doublon dans la base avec l'usage "Canaux de navigation" et le même code ouvrage, il faut les supprimer. - -De plus d'eau prises d'eau de la ville de Paris classé en usage "canal" sont en fait des prises d'eau du canal de l'Ourcq à requalifier en usage industriel : la prise de Congis-sur-Thérouane est [l'usine élévatoire de Villers-lès-Rigault](https://fr.wikipedia.org/wiki/Usine_%C3%A9l%C3%A9vatoire_de_Villers-l%C3%A8s-Rigault) qui alimente le canal de l'Ourcq. La prise de Gressy alimente aussi le canal de l'Ourcq en dérivant une partie du débit de la Beuvronne. +## Prélèvements brutes et nets par type d'industrie ```{r} -dfChroOurcq <- dfChro %>% filter(code_ouvrage %in% ouvrages_Ourcq, code_usage == "CAN") - -dfChro <- dfChro %>% - anti_join(dfChroOurcq) - -dfChro <- dfChro %>% - mutate(code_usage = replace(code_usage, nom_ouvrage == "VILLE DE PARIS" & code_usage == "CAN", "IND")) +knitr::kable( + dfInd %>% mutate(vol_net = vol_moy * r_conso) %>% + group_by(type) %>% summarise(nb_ouv = n(), vol_brut = sum(vol_moy), vol_net = sum(vol_net)) %>% + arrange(-vol_net) +) ``` +# Calcul des prélèvements nets + Calcul des prélèvements net avec $r=1$ pour les autres usages (AEP, canaux, irrigation). ```{r} @@ -280,9 +362,9 @@ saveRDS(dfChroNet, "v10-dfChroNet.rds") ## Selon le prélèvement moyen de l'ouvrage ```{r} -dfMoy <- dfChroNet %>% +dfMoy <- dfChroNet %>% group_by(code_ouvrage, nom_ouvrage, code_usage, code_type_milieu, code_commune_insee, nom_commune, uri_ouvrage) %>% - summarise(vol_moy = mean(volume) / 1E6, + summarise(vol_moy = mean(volume) / 1E6, vol_min = min(volume) / 1E6, vol_max = max(volume) / 1E6, .groups = "drop") @@ -290,8 +372,8 @@ dfMoy <- dfChroNet %>% ```{r} -ggplot(dfMoy, aes(x = log10(vol_moy * 1E6))) + - geom_histogram(binwidth = 1) + +ggplot(dfMoy, aes(x = log10(vol_moy * 1E6))) + + geom_histogram(binwidth = 1) + scale_x_continuous(breaks = seq_len(floor(log10(max(dfMoy$vol_moy * 1E6))))) + labs(y = "Nombre d'ouvrages", x = "Prélèvement par ouvrage (log10 m3)") ``` @@ -300,27 +382,28 @@ La plupart des ouvrages prélèvent moins de 100 000 m<sup>3</sup> par an. ```{r} -ggplot(dfMoy %>% +ggplot(dfMoy %>% mutate(VolumeLog10 = floor(log10(vol_moy * 1E6))) %>% group_by(VolumeLog10) %>% summarise(vol_moy = sum(vol_moy)) %>% - filter(vol_moy > 0), - aes(x = VolumeLog10, y = vol_moy)) + + filter(vol_moy > 0), + aes(x = VolumeLog10, y = vol_moy)) + geom_col() + scale_x_continuous(breaks = seq_len(floor(log10(max(dfMoy$vol_moy * 1E6))))) + labs(y = "volume net prélevé (millions m3)", x = "Prélèvement par ouvrage (log10 m3)") ``` -Les ouvrages prélevant moins de 100 000 m<sup>3</sup>/an représentent plus de 700 millions de m3/an mais les volumes les plus importants sont prélevés par des ouvrages prélevant entre 10 et 100 millions de m<sup>3</sup>/an avec plus de 2 milliards de m<sup>3</sup>/an prélevés en moyenne. + +Les ouvrages prélevant moins de 100 000 m<sup>3</sup>/an représentent plus de 700 millions de m3/an mais les volumes les plus importants sont prélevés par des ouvrages prélevant entre 10 et 100 millions de m<sup>3</sup>/an avec plus de 1,5 milliards de m<sup>3</sup>/an prélevés en moyenne. ## Evolution par type de milieu prélevé ```{r} ggplot( - dfChroNet %>% + dfChroNet %>% group_by(code_type_milieu, annee) %>% - summarise(nb = n(), .groups = 'drop'), - aes(x=annee, y=nb)) + + summarise(nb = n(), .groups = 'drop'), + aes(x=annee, y=nb)) + geom_col(aes(fill = code_type_milieu)) + labs(x = "Année", y = "Nombre d'ouvrages") + scale_x_continuous(breaks = sort(unique(dfChro$annee))) @@ -328,23 +411,23 @@ ggplot( ```{r} ggplot( - dfChroNet %>% + dfChroNet %>% group_by(code_type_milieu, annee) %>% - summarise(volume = sum(volume) / 1E6, .groups = 'drop'), - aes(x=annee, y=volume)) + + summarise(volume = sum(volume) / 1E6, .groups = 'drop'), + aes(x=annee, y=volume)) + geom_col(aes(fill = code_type_milieu)) + scale_x_continuous(breaks = sort(unique(dfChro$annee))) + labs(y = "volume net prélevé (millions m3)", x = "Année") ``` - + ## Evolution par type d'usage ```{r} ggplot( - dfChroNet %>% + dfChroNet %>% group_by(code_usage, annee) %>% - summarise(nb = n(), .groups = 'drop'), - aes(x=annee, y=nb)) + + summarise(nb = n(), .groups = 'drop'), + aes(x=annee, y=nb)) + geom_col(aes(fill = code_usage)) + labs(x = "Année", y = "Nombre d'ouvrages") + scale_x_continuous(breaks = sort(unique(dfChro$annee))) @@ -352,10 +435,10 @@ ggplot( ```{r} ggplot( - dfChroNet %>% + dfChroNet %>% group_by(code_usage, annee) %>% - summarise(volume = sum(volume), .groups = 'drop'), - aes(x=annee, y=volume / 1E6)) + + summarise(volume = sum(volume), .groups = 'drop'), + aes(x=annee, y=volume / 1E6)) + geom_col(aes(fill = code_usage)) + labs(x = "Année", y = "volume net prélevé (millions m3)") + scale_x_continuous(breaks = sort(unique(dfChro$annee))) -- GitLab