Last active
June 22, 2020 11:17
-
-
Save PedroBern/5767ea0b401f31c0e97e7878b74f1412 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
title: "A2 - Hidrologia" | |
author: | |
- "Pedro Bernardino Alves Moreira - 20142104155" | |
date: "18/06/2020" | |
abstract: "Resolução da prova A2 de Hidrologia 2020.1 do professor Moacir Porto na UVA. Deve ser lido em conjunto com a folha de questões. Esse relatório foi calculado e gerado em linguagem de programação *R* com um arquivo *Rmd* que se encontra disponível [**nesse link**](https://gist.github.com/PedroBern/5767ea0b401f31c0e97e7878b74f1412)." | |
output: | |
pdf_document: | |
number_sections: no | |
header-includes: | |
- \renewcommand{\abstractname}{Resumo} | |
- \usepackage{booktabs} | |
- \usepackage{longtable} | |
- \usepackage{supertabular} | |
- \usepackage{array} | |
- \usepackage{multirow} | |
- \usepackage{wrapfig} | |
- \usepackage{colortbl} | |
- \usepackage{pdflscape} | |
- \usepackage{tabu} | |
- \usepackage{threeparttable} | |
- \usepackage[normalem]{ulem} | |
- \usepackage{caption} | |
- \usepackage{floatrow} | |
- \floatsetup[table]{capposition=top} | |
- \floatsetup[figure]{capposition=top} | |
- \captionsetup{options=chunk} | |
- \DeclareNewFloatType{chunk}{placement=H, fileext=chk, name=} | |
- \renewcommand{\thechunk}{\arabic{chunk}} | |
- \usepackage{indentfirst} | |
- \setlength{\parindent}{20pt} | |
# - \setlength{\mathindent}{40pt} | |
--- | |
```{r setup, include=FALSE, cache=F} | |
# Install libraries, if not already installed | |
if(!require(knitr)) install.packages("knitr") | |
if(!require(kableExtra)) install.packages("kableExtra") | |
# Load libraries | |
library(knitr) | |
library(kableExtra) | |
# Set global options | |
options(knitr.kable.NA = '') | |
opts_chunk$set(echo = FALSE, fig.align = 'center', cache=F, prompt=F, highlight=T ) | |
``` | |
\renewcommand{\figurename}{Figura} | |
\renewcommand{\tablename}{Tabela} | |
\renewcommand{\contentsname}{Sumário} | |
\tableofcontents | |
\newpage | |
# Questão 1 | |
```{r questao1} | |
df <- data.frame( | |
de=c(NA, 35, 40, 45, 50, 55, 60), | |
ate=c(35, 40, 45, 50, 55, 60, NA), | |
area=c(80, 130, 140, 150, 250, 210, 40), | |
pontos=c(1,2,2,3,0,2,2), | |
A=c(NA, 35, 44.6, 49.4, NA, 59, 63.4), | |
B=c(NA, 38.6, NA, 48.2, NA, 56.2, NA), | |
C=c(35, NA, 42.8, 47.8, NA, NA, 61.2), | |
Calculo=c( | |
"35", | |
"(35 + 38.6)/2", | |
"(44.6 + 42.8)/2", | |
"(47.8 + 48.2 + 49.4)/3", | |
"(50 + 55)/2", | |
"(56.2 + 59)/2", | |
"(61.2 + 63.4)/2"), | |
Pm=c(35, 36.8, 43.7, 48.5, 52.5, 57.6, 62.3) | |
) | |
colnames(df) <- c("De", "Até", "Área", "Pontos", "A", "B", "C", "Cálculo do Pm" ,"Pm") | |
rownames(df) <- NULL | |
# letra A | |
P <- sum(df$Área * df$Pm)/sum(df$Área) | |
ano_s <- 60 * 60 * 24 * 365 | |
semana_s <- 60 * 60 * 24 * 7 | |
constant <- ano_s/semana_s | |
P_ano <- constant * P | |
# letra B | |
fator_t <- 0.24 | |
fator_i <- 0.1 | |
Area_ha <- 9.4 * 10^6 # ha | |
Area_m <- 9.4 * 10^6 * 10^4 # m | |
P_ano_m <- P_ano * 10^-3 # m | |
Vp <- P_ano_m * Area_m # m3/ano | |
Vt <- Vp * fator_t # m3/ano | |
Vi <- Vp * fator_i # m3/ano | |
Ve <- Vp - (Vt + Vi) # m3/ano | |
# letra C | |
consumo_per_capta_m3_por_hab_s <- 3.2407 * 10^-6 # m3/(hab.s) | |
consumo_per_capta_m3_por_hab_dia <- consumo_per_capta_m3_por_hab_s * 3600 * 24 # m3/(hab.dia) | |
populacao <- 512000 | |
consumo_cidade_dia <- populacao * consumo_per_capta_m3_por_hab_dia # m3/dia | |
# Letra D | |
Vol_capt <- 0.06 * Ve | |
``` | |
## Cálculo do $Pm$ | |
```{r tabela1} | |
kable( | |
df, | |
escape = F, | |
booktabs = T, | |
caption = "Cálculos iniciais", | |
linesep = "\\addlinespace", | |
align = "c", | |
digits=2 | |
) %>% | |
kable_styling(latex_options = c("HOLD_position")) | |
# %>% | |
# column_spec(8, width = "5cm") | |
``` | |
## Letra A | |
$$\overline{P} = \frac{\sum \overline{P_i} \cdot A_i}{A}$$ | |
$$\overline{P}_{semana} = \frac{ \sum \Big[`r df$Área` \Big] \times \Big[`r round(df$Pm, 2)` \Big]}{`r sum(df$Área)`} = `r P` mm/semana$$ | |
$$fator = \frac{ano}{semana} = \frac{`r ano_s`s}{`r semana_s`s} \implies `r constant`$$ | |
$$\therefore$$ | |
$$\overline{P}_{ano} = \overline{P}_{semana} \cdot fator = `r P_ano` mm/ano$$ | |
## Letra B | |
$$A = 9.4 \times 10^6 ha \implies 9.4 \times 10^6 \times 10^4 m \implies `r Area_m`m^2$$ | |
$$P = `r P_ano` \times 10^{-3} m \implies `r P_ano_m`m$$ | |
$$V_p = A \times P \implies `r Area_m` \times `r P_ano_m` \implies `r Vp` m^3/ano$$ | |
$$V_t = V_p \times `r fator_t` \implies `r Vt` m^3/ano$$ | |
$$V_i = V_p \times `r fator_i` \implies `r Vi` m^3/ano$$ | |
$$V_e = V_p - (V_t + V_i) \implies `r Vp` - (`r Vt` - `r Vi`) \implies `r Ve` m^3/ano$$ | |
## Letra C | |
$$C_{per\;capta,dia} = `r consumo_per_capta_m3_por_hab_s` \times 60 \times 60 \times 24 \implies `r consumo_per_capta_m3_por_hab_dia` \: m^3/(hab \cdot dia)$$ | |
$$C_{cidade,dia} = população \times C_{per\;capta,dia} \implies `r populacao` \times `r consumo_per_capta_m3_por_hab_dia` \implies `r consumo_cidade_dia` m^3/dia$$ | |
## Letra D | |
$$C_{cidade,ano} = 365 \times C_{cidade,dia} \implies `r 365 * consumo_cidade_dia` \: m^3/ano$$ | |
$$Vol_{captação,ano} = 0.06 \times V_e \implies 0.06 \times `r Ve` \implies `r Vol_capt` m^3/ano$$ | |
$$Vol_{captação,ano} > C_{cidade,ano} \implies OK$$ | |
Não haverá problema de abastecimento, pois o volume permitido de captação é muito superior ao volume de consumo da população para um mesmo período. | |
\newpage | |
# Questão 2 | |
```{r questao2} | |
total <- 16000 | |
perda <- 0.37 | |
df <- data.frame( | |
per_capta=c(2.8935, 1.1574, 3.1250, 2.0833), | |
memorial=c(1, 1/5, 1/100, 7/20) | |
) | |
df$per_capta <- df$per_capta * 10^-3 * 3600 # de l/h | |
df$populacao <- df$memorial * total | |
df$consumo <- df$per_capta * df$populacao | |
df$consumo_com_perda <- df$consumo / (1 - perda) | |
sums <- colSums(df) | |
df[nrow(df) + 1,] = sums | |
rownames(df) <- c("Residencias", "Escola", "Hospital", "Outros", "Total") | |
colnames1 <- c("per_capta", "fracao", "pop", "consumo", "consumo_perda") | |
colnames2 <- c("Per capta $(l/h)$", "Fração dos habitantes", "População", "Consumo $(l/h)$", "Consumo com perda $(l/h)$") | |
colnames(df) <- colnames1 | |
R <- 8 #m | |
D <- 1.5 #m | |
k <- 9.8 #m/dia | |
Q <- df["Total",]$consumo_perda * 10^-3 * 24 | |
h2 <- sqrt(Q * log(2*R/D) / (k * pi * (1 - (2/3)^2))) | |
h1 <- h2 * 2 / 3 | |
profundidade_poco <- 43 #m | |
pior_epoca <- 12.569 #m | |
h_pior <- profundidade_poco - pior_epoca | |
c_min <- h2 - profundidade_poco | |
``` | |
## Cálculos iniciais | |
```{r tabela2} | |
colnames(df) <- colnames2 | |
kable( | |
df, | |
escape = F, | |
booktabs = T, | |
caption = "Cálculos iniciais", | |
linesep = "\\addlinespace", | |
align = "c" | |
) %>% | |
kable_styling(latex_options = c("HOLD_position", "scale_down")) %>% | |
row_spec(nrow(df), bold = TRUE, italic = TRUE) | |
colnames(df) <- colnames1 | |
``` | |
## Letra A | |
$$Consumo_{com\;perda} = \frac{\sum per\;capta \times população}{1 - perda} \implies \frac{`r df["Total",]$per_capta` \times `r df["Total",]$pop`}{1 - `r perda`} = `r df["Total",]$consumo_perda` l/h$$ | |
## Letra B | |
![Esquema do poço com cota mínima do lençol freático](imagem1.jpeg) | |
$$R = `r R`m$$ | |
$$D = `r D`m$$ | |
$$k = `r k`m$$ | |
$$h_1 = \frac{2}{3}h_2$$ | |
$$Q_{com\;perda} = `r df["Total",]$consumo_perda` l/h \implies `r df["Total",]$consumo_perda * 10^-3 * 24` m^3/dia$$ | |
$$Q = \frac{k \cdot \pi \cdot (h_2^2 - h_1^2)}{ln(\frac{2R}{D})} \Longleftrightarrow h2 = \sqrt{\frac{Q \cdot ln(\frac{2R}{D})}{k \cdot \pi \cdot (1 - \big(\frac{2}{3}\big)^2)}}$$ | |
$$\therefore$$ | |
$$h2 = \sqrt{\frac{`r Q` \cdot ln(\frac{2 \cdot `r R`}{`r D`})}{`r k` \cdot \pi \cdot (1 - \big(\frac{2}{3}\big)^2)}} \implies `r h2`m$$ | |
$$\therefore$$ | |
$$h1 = `r h1`m$$ | |
$$\text{Cota mímima lençol} = h_{lençol} - h_{poço}\implies `r round(h2,2)` - 43 = `r round(c_min,2)`m$$ | |
## Letra C | |
A cota mínima que o lençol freático pode atingir para suprir a demanda da cidade e ao mesmo tempo cumprir com o limite imposto pelo poder público é de $`r round(c_min,2)`m$. Como nos meses de Julho a Setembro essa cota chega a $`r round(-pior_epoca, 2)`m$, representa risco. | |
<!-- O prejuizo no abastecimento ocorre caso a lâmina de água chegue a um nível menor do que o nível necessário para suprir a demanda da cidade. No item *B* foi calculado que o nível mínimo para suprir a demanda e se manter dentro da restrição imposta pelo poder público é de $`r round(h1,2)`m\:(h1)$. De acordo com os dados hidrogeológicos a pior cota do lençol é atingida nos meses de *Jul.-Set*, com valor de $`r pior_epoca`m\:(\Delta h)$. Como a profundiade do poço é de $`r profundidade_poco`m\:(h_{poço})$, a cota do nível de água na pior época resulta em $`r h_pior`m \: (h_{poço} - \Delta h)$. **Apesar de ser suficiente para suprir a demanda, não é suficiênte para suprir a demanda e estar de acordo com o limite imposto pelo poder público**, pois $\frac{2}{3}\cdot `r h_pior`$ (limite imposto) é igual a $`r round( h_pior *2/3, 2)`m$, que é menor do que o valor de $h_1$, ou seja, representa risco legal. Esse mesmo raciocínio é apresentado a seguir de forma matemática: --> | |
<!-- $$h_{poço,max} = `r profundidade_poco`m$$ --> | |
<!-- $$h_{poço,min} = `r round(h1,2)`m$$ --> | |
<!-- $$h_{lençol,min} = `r round(h2,2)`m$$ --> | |
<!-- $$\Delta h = `r pior_epoca`m$$ --> | |
<!-- $$h_{lençol,jul-set,min} = h_{poço} - \Delta h \implies `r round(h_pior,2)`m$$ --> | |
<!-- $$h_{poço,min} = `r round(h1,2)`m \implies \text{ Altura mínima para suprir a demanda numericamente}$$ --> | |
<!-- $$h_{lençol,min} = `r round(h2,2)`m \implies \text{ Suprir a demanda com limite imposto pelo poder público}$$ --> | |
<!-- $$h_{poço,max} = `r profundidade_poco`m$$ --> | |
<!-- $$\Delta h = `r pior_epoca`m \implies \text{Diferença em Jul-Set, pior época do ano}$$ --> | |
<!-- $$h_{jul-set,min} = h_{poço} - \Delta h \implies `r round(h_pior,2)`m$$ --> | |
<!-- $$h_{jul-set,min,legal} = \frac{2}{3} \cdot h_{jul-set,min} \implies `r round(h_pior*2/3,2)`m$$ --> | |
<!-- $$Logo,$$ --> | |
<!-- $$h_{jul-set,min} > h_{min} \implies \text{Supre a demanda}$$ --> | |
<!-- $$porém,$$ --> | |
<!-- $$h_{jul-set,min,legal} < h_{min,legal} \implies \text{Não atende o limite imposto pelo poder público, então representa risco legal.}$$ --> | |
\newpage | |
# Questão 3 | |
```{r questao3} | |
df <- data.frame( | |
area=c(317, 87, 204, 301, 244), | |
Pm=c(57, 110, 94, 129, 86) | |
) | |
df$AxPm <- df$area * df$Pm | |
sum_area <- sum(df$area) | |
sum_Pm <- sum(df$Pm) | |
sum_AxPm <- sum(df$AxPm) | |
df[nrow(df) + 1,] = c(sum_area, sum_Pm, sum_AxPm) | |
rownames(df) <- c("A", "B", "C", "D", "E", "Soma") | |
colnames1 <- c("A", "Pm", "AxPm") | |
colnames2 <- c("Área de influência $(km^2)$", "Altura da chuva $(mm)$", "$A \\times Pm$ $(km^2 \\cdot mm)$") | |
colnames(df) <- colnames1 | |
thiesen <- sum_AxPm / sum_area | |
vol <- sum_area * 10^6 * thiesen * 10^-3 | |
vol <- vol / 10^6 | |
``` | |
## Cálculos iniciais | |
```{r tabela3} | |
colnames(df) <- colnames2 | |
kable( | |
df, | |
escape = F, | |
booktabs = T, | |
caption = "Cálculos iniciais", | |
linesep = "\\addlinespace", | |
align = "c" | |
) %>% | |
kable_styling(latex_options = c("HOLD_position")) %>% | |
row_spec(nrow(df), bold = TRUE, italic = TRUE) | |
colnames(df) <- colnames1 | |
``` | |
## Altura da chuva média pelo método de *polígonos de Thiessen* | |
$$Pm = \frac{\sum{A \times Pm}}{\sum A}$$ | |
$$Pm = \frac{`r sum_AxPm`}{`r sum_area`} \implies `r thiesen` mm$$ | |
## Desflúvio pluvial pelo método de *polígonos de Thiessen* | |
$$Vol = \sum A \cdot \sum A \times Pm$$ | |
$$Vol = `r sum_area` \cdot `r thiesen` \cdot `r 1e-06` \implies `r sum_area * thiesen * 1e-06` km^3 \implies `r vol` hm^3$$ | |
\newpage | |
# Questão 4 | |
```{r questao4} | |
Tc <- function(L, Dh){57 * (L^3/Dh)^0.385} | |
Kc <- function(P, A){0.28 * P / sqrt(A)} | |
Kf <- function(A, L){A / L^2} | |
df <- data.frame( | |
A=c(2818, 5357, 1010, 1, 965, 1010 - 1), | |
B=c(2991, 5850, 960, 1.3, 949, 960 - 1.3) | |
) | |
rownames1 <- c("P", "A", "CN", "CF","L", "Dh") | |
rownames2 <- c("Perímetro $(km)$", "Área $(km^2)$", "Cota nascente $(m)$", "Cota foz $(m)$", | |
"Comprimento $(m)$", "$\\Delta h$ $(m)$") | |
rownames(df) <- rownames1 | |
Tc_A <- Tc(df["L",]$A, df["Dh",]$A) | |
Kc_A <- Kc(df["P",]$A, df["A",]$A) | |
Kf_A <- Kf(df["A",]$A, df["L",]$A) | |
Tc_B <- Tc(df["L",]$B, df["Dh",]$B) | |
Kc_B <- Kc(df["P",]$B, df["A",]$B) | |
Kf_B <- Kf(df["A",]$B, df["L",]$B) | |
``` | |
## Conversões de unidade | |
```{r tabela4} | |
rownames(df) <- rownames2 | |
kable( | |
df, | |
col.names = c("A", "B"), | |
escape = F, | |
booktabs = T, | |
caption = "Conversão das unidades e cálculo do $\\Delta h$.", | |
linesep = "\\addlinespace", | |
align = "c" | |
) %>% | |
kable_styling(latex_options = c("HOLD_position")) | |
rownames(df) <- rownames1 | |
``` | |
## $Tc$ | |
$$Tc = 57 \cdot \Bigg(\frac{L^3}{\Delta h}\Bigg) ^{0.385}$$ | |
$$Tc_A = 57 \cdot \Bigg(\frac{`r df["L",]$A`^3}{`r df["Dh",]$A`}\Bigg) ^{0.385} \implies `r Tc_A`$$ | |
$$Tc_B = 57 \cdot \Bigg(\frac{`r df["L",]$B`^3}{`r df["Dh",]$B`}\Bigg) ^{0.385} \implies `r Tc_B`$$ | |
O $Tc$ é **inversamente proporcional** a probabilidade de cheia, logo quanto maior o $Tc$, menor a probabilidade: | |
$$P_{cheia, T_c}^A < P_{cheia, T_c}^B$$ | |
## $Kc$ | |
$$Kc = 0.28 \cdot \frac{P}{\sqrt{A}}$$ | |
$$Kc_A = 0.28 \cdot \frac{`r df["P",]$A`}{\sqrt{`r df["A",]$A`}} \implies `r Kc_A`$$ | |
$$Kc_B = 0.28 \cdot \frac{`r df["P",]$B`}{\sqrt{`r df["A",]$B`}} \implies `r Kc_B`$$ | |
O $Kc$ é **inversamente proporcional** a probabilidade de cheia, logo quanto maior o $Kc$, menor a probabilidade: | |
$$P_{cheia, K_c}^A > P_{cheia, K_c}^B$$ | |
## $Kf$ | |
$$Kf = \frac{A}{L^2}$$ | |
$$Kf_A = \frac{`r df["A",]$A`}{`r df["L",]$A`^2} \implies `r Kf_A`$$ | |
$$Kf_B = \frac{`r df["A",]$B`}{`r df["L",]$B`^2} \implies `r Kf_B`$$ | |
O $Kf$ é **proporcional** a probabilidade de cheia, logo quanto maior o $Kf$, maior a probabilidade: | |
$$P_{cheia, K_f}^A < P_{cheia, K_f}^B$$ | |
\newpage | |
# Questão 5 | |
```{r questao5} | |
Pm = 800 # mm/ano | |
Q = 170 # m3/s | |
A = 15000 # km2 | |
Pm_ms <- Pm * 10^-3 / (365*24*3600) | |
A_m <- A * 10^6 | |
Vp <- Pm_ms * A_m | |
Ev <- Vp - Q | |
porc <- Ev/Vp | |
``` | |
$$Pm = `r Pm`mm/ano \implies `r Pm_ms`m^3/s$$ | |
$$A = `r A`km^2 \implies `r A_m`m^2$$ | |
$$Q = `r Q`m^3/s$$ | |
$$V_p = Pm \times A \implies `r Pm_ms` \times `r A_m` \implies `r Vp` m^3/s$$ | |
$$E_v = V_p - Q \implies `r Vp` - `r Q` \implies `r Ev`m^3/s \implies \frac{`r Ev`}{`r Vp`} \implies `r porc`$$ | |
$$E_v = `r round(Ev,2)`m^3/s = `r round(porc * 100,2)`\%$$ | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment