Capítulo 3 Dados de Qualidade da Água e o Índice de Qualidade da Água (IQA)

Neste capítulo, vamos mergulhar na matéria-prima do nosso trabalho: os dados de qualidade da água. Entenderemos suas características e, crucialmente, como o Índice de Qualidade da Água (IQA) é construído e interpretado.

3.1 Entendendo os Dados de Qualidade da Água

Dados de qualidade da água são tipicamente multi-variados (muitas variáveis medidas) e podem ter dimensões temporais (coletados ao longo do tempo) e espaciais (coletados em diferentes locais).

3.1.1 Parâmetros Comuns do IQA da ANA (Agência Nacional de Águas)

O IQA é um índice que busca traduzir a qualidade da água em um único número, facilitando a comunicação. Ele é composto por nove parâmetros, cada um com um peso e uma curva de qualidade associada:

  1. Oxigênio Dissolvido (OD): Vital para a vida aquática. Baixos níveis indicam poluição orgânica. (Peso 0.17)
  2. Coliformes Termotolerantes (CT): Indicador de contaminação fecal, risco de patógenos. (Peso 0.15)
  3. pH: Mede acidez ou alcalinidade. Valores extremos são prejudiciais. (Peso 0.12)
  4. Nitrogênio Total (NT): Reflete a presença de nutrientes, pode levar à eutrofização. (Peso 0.10)
  5. Fósforo Total (PT): Outro nutriente chave para a eutrofização. (Peso 0.10)
  6. Temperatura: Afeta a solubilidade do OD e a taxa metabólica dos organismos. (Peso 0.10)
  7. Turbidez: Mede a clareza da água; alta turbidez pode indicar partículas em suspensão. (Peso 0.08)
  8. Resíduo Total (RT): Sólidos dissolvidos e em suspensão, podem afetar a vida aquática. (Peso 0.08)
  9. DBO (Demanda Bioquímica de Oxigênio): Quantidade de oxigênio consumida por micro-organismos para decompor matéria orgânica. Alto valor indica poluição orgânica. (Peso 0.10)

Soma dos Pesos: A soma dos pesos para os 9 parâmetros do IQA deve ser igual a 1 (ou 100%).

3.1.2 Desafios na Coleta de Dados

  • Dados Faltantes (Missing Data): É comum ter lacunas nos dados devido a problemas nos equipamentos, condições climáticas adversas ou logística.
  • Outliers: Valores muito discrepantes que podem indicar erros de medição ou eventos reais, mas extremos.
  • Variações Sazonais e Espaciais: A qualidade da água varia naturalmente com as estações do ano e ao longo do curso do rio.

3.2 A Matemática por Trás do IQA

O IQA é calculado pela média ponderada das qualidades de cada parâmetro (\(q_i\)), elevadas aos seus respectivos pesos (\(w_i\)):

\[IQA = \prod_{i=1}^{9} q_i^{w_i}\]

Onde:

  • \(q_i\) é a qualidade do i-ésimo parâmetro (valor entre 0 e 100).
  • \(w_i\) é o peso correspondente ao i-ésimo parâmetro.

Os valores de \(q_i\) são obtidos a partir de curvas de qualidade específicas para cada parâmetro, que transformam a medição bruta em uma pontuação de qualidade. Ou podemos utilizar as fórmulas proposta por Grunitzki et al. (2013) nos quais apresentamos na tabela 1.

Tabela 1. Equações para calcular o valor q da curva média de qualidade. As siglas OD, CF, pH, DBO, FT,NT, TU, ST e ΔT significam respectivamente Oxigênio dissolvido, Coliformes fecais termotolerantes, Potencial hidrogeniônico, Demanda bioquímica de oxigênio, Fósforo total, Nitrogênio total, Turbidez, Sólidos total e Variação de temperatura. As respectivas siglas em letras minúsculas significam os valores no qual se pretende predizer o valor de q
Variável Equação Restrição
OD(%) q = 100,8 · exp((od -106)2/-3745) OD > 140, q = 50
CF(UFC/100mL) q = 98,03 - 36,45 · (log10(cf)) + 3,138 · (log10)2 + 0,06776·(log10(cf))3 CF > 105, q = 2
pH q = 0,05421 · ph(1,23·ph -0,09873·ph2) + 5,213 pH < 2 Ou pH>12,q=0
DBO(mg/L) q = 102,6 · exp(-0,1101·dbo) dbo > 30,q=2
FT(mg/L) q = 213,7 · exp(-1,68·ft0,3325) ft > 10,q=2
NT(mg/L) q = 98,96 · nt(-0,2232 - 0,006457·nt) nt>100,q=1
TU(NTU) q = 97,34 · exp(-0,01139 · tu - 0,04917 · &radic,tu) tu > 100,q=5
ST(mg/L) q = 80,26 · exp(-0,00107 · st + 0,03009 · √st) -0,1185· st st > 500, q=20
ΔT q = 1/(0,0003869· (deltatemp+0,1815)2 + 0,01081) deltatemp < -5, q = indefinido;
deltatemp > 15,q=9

No caso da variável \(OD\), a mensuração no campo é feita em \(mg/L\). Na fórmula a unidade de medida precisa estar em percentual. Logo, utilizamos a seguinte fórmula para fazer tal conversão.

\[ \begin{eqnarray} OD(\%) = \frac{OD(mg/L)}{OD(ppm)} \cdot 100 \end{eqnarray} \]

Para o cálculo da saturação em ppm do oxigênio ajustou-se um polinômio de ordem dois aos dados obtidos no manual de Siste, Girão, and Duncan (2011) na tabela 4, utilizando o método dos mínimos quadrados ordinários. Então chegamos ao seguinte modelo:

\[ \hat{y} = 14.41 - 0.3371 x + 0.0035 x^2 \]

em que:

  • y é a saturação em ppm do oxigênio
  • x é a temperatura da água em graus celsius.

3.2.1 Exemplo Simplificado de Cálculo de \(q_i\) (Curvas de Qualidade)

Vamos utilizar o conjunto de dados obtidos do Rio Cachoeira, mais especificamente no trecho que corresponde a ponte no bairro Vila Cachoeira e, em seguida, calcular o IQA para ilustrar.

3.2.1.1 Importação e Preparação de Dados para o Rio Cachoeira

O conjunto de dados foram publicados nos boletins v.1, n.2, n.3 e n.4 e podem ser acessados por meio do link https://www.uesc.br/projetos/boletimriocachoeira/index.php?item=conteudo_anuarios.php.

O link para baixar os dados tabulados é: https://ivanallaman.com.br/dados/dados.xlsx

# Para importar os dados no formato `.xlsx` vamos utilizar a biblioteca **openxlsx**. 
library(knitr)
library(openxlsx)
dados_brutos_cachoeira <- read.xlsx("dados.xlsx",detectDates=TRUE)
dados_brutos_cachoeira
##          Data Amostra colTermotolerantes  ph   od   vt    nt   ft turb resttot
## 1  2024-07-23    iqa1                336 6.3  8.2 -0.6 18.49 6.39 1.81     376
## 2  2024-07-23    iqa2               2600 6.0 10.4 -0.9 14.58 3.75 1.74     443
## 3  2024-07-23    iqa3               3960 6.5  7.6  2.0 12.15 4.32 1.51     380
## 4  2024-07-23    iqa4               4450 6.8  8.4  2.1 14.01 4.79 2.00     366
## 5  2024-09-25    iqa1                297 6.6  6.8  1.2  5.99 1.76 2.74     276
## 6  2024-09-25    iqa2                198 6.6  8.0  0.9  5.49 1.64 2.72     348
## 7  2024-09-25    iqa3                290 7.3  7.5  0.5  5.41 1.40 2.95     343
## 8  2024-09-25    iqa4                200 6.7  6.3  1.3  5.93 2.03 2.92     271
## 9  2024-11-22    iqa1                410 6.8  3.6  1.5  4.27 1.26 1.14     320
## 10 2024-11-22    iqa2                110 6.6  3.4  1.3  2.64 1.53 1.13     322
## 11 2024-11-22    iqa3                510 6.4  3.1  1.3  5.33 4.14 1.12     323
## 12 2024-11-22    iqa4                718 6.2  4.2  0.9  2.52 0.74 1.14     318
##      dbo temp
## 1  32.19 26.6
## 2  27.21 25.1
## 3  28.09 28.0
## 4  27.12 28.1
## 5   8.54 27.2
## 6   9.61 26.5
## 7   7.65 27.3
## 8   8.64 26.5
## 9   7.36 27.5
## 10  9.32 27.3
## 11  6.85 27.3
## 12  8.18 26.9
summary(dados_brutos_cachoeira)
##       Data              Amostra          colTermotolerantes       ph       
##  Min.   :2024-07-23   Length:12          Min.   : 110.0     Min.   :6.000  
##  1st Qu.:2024-07-23   Class :character   1st Qu.: 267.5     1st Qu.:6.375  
##  Median :2024-09-25   Mode  :character   Median : 373.0     Median :6.600  
##  Mean   :2024-09-23                      Mean   :1173.2     Mean   :6.567  
##  3rd Qu.:2024-11-22                      3rd Qu.:1188.5     3rd Qu.:6.725  
##  Max.   :2024-11-22                      Max.   :4450.0     Max.   :7.300  
##        od               vt                nt               ft       
##  Min.   : 3.100   Min.   :-0.9000   Min.   : 2.520   Min.   :0.740  
##  1st Qu.: 4.050   1st Qu.: 0.8000   1st Qu.: 5.065   1st Qu.:1.498  
##  Median : 7.150   Median : 1.2500   Median : 5.710   Median :1.895  
##  Mean   : 6.458   Mean   : 0.9583   Mean   : 8.068   Mean   :2.812  
##  3rd Qu.: 8.050   3rd Qu.: 1.3500   3rd Qu.:12.615   3rd Qu.:4.185  
##  Max.   :10.400   Max.   : 2.1000   Max.   :18.490   Max.   :6.390  
##       turb          resttot           dbo              temp      
##  Min.   :1.120   Min.   :271.0   Min.   : 6.850   Min.   :25.10  
##  1st Qu.:1.140   1st Qu.:319.5   1st Qu.: 8.047   1st Qu.:26.57  
##  Median :1.775   Median :333.0   Median : 8.980   Median :27.25  
##  Mean   :1.910   Mean   :340.5   Mean   :15.063   Mean   :27.02  
##  3rd Qu.:2.725   3rd Qu.:368.5   3rd Qu.:27.142   3rd Qu.:27.35  
##  Max.   :2.950   Max.   :443.0   Max.   :32.190   Max.   :28.10

3.2.1.2 Cálculo do índice \(q_i\) para cada parâmetro que compõe o IQA

Para comodidade do público vamos utilizar uma função pronta disponível no seguinte link: https://ivanallaman.com.br/dados/qIndex.R

source('qIndex.R')

qOD = qIndex(parameter="OD",x=dados_brutos_cachoeira[1,5],Temperatura=dados_brutos_cachoeira[1,12])
qOD
## [1] 100.6373
qCF = qIndex(parameter="CF",x=dados_brutos_cachoeira[1,3])
qCF
## [1] 27.06544
qpH = qIndex(parameter="pH",x=dados_brutos_cachoeira[1,4])
qpH
## [1] 67.71278
qdeltaT = qIndex(parameter="DeltaT",x=dados_brutos_cachoeira[1,6])
qdeltaT
## [1] 91.93067
qNT = qIndex(parameter="NT",x=dados_brutos_cachoeira[1,7])
qNT
## [1] 36.4267
qFT = qIndex(parameter="FT",x=dados_brutos_cachoeira[1,8])
qFT
## [1] 9.505453
qTU = qIndex(parameter="TU",x=dados_brutos_cachoeira[1,9])
qTU
## [1] 89.25011
qST = qIndex(parameter="ST",x=dados_brutos_cachoeira[1,10])
qST
## [1] 51.64292
qDBO = qIndex(parameter="DBO",x=dados_brutos_cachoeira[1,11])
qDBO
## [1] 2
qindexTudo = matrix(NA,nrow=nrow(dados_brutos_cachoeira),ncol=9)

dadosParametros = dados_brutos_cachoeira[,-c(1:2,12)]

parametros=c("CF","pH","OD","DeltaT","NT","FT","TU","ST","DBO")
for(i in 1:nrow(dadosParametros)){
    for(j in 1:9){
     qindexTudo[i,j] <- qIndex(dadosParametros[i,j],parameter=parametros[j],Temperatura=dados_brutos_cachoeira[i,12])
     }
    }

colnames(qindexTudo) <- parametros
rownames(qindexTudo) <- paste0("Ponto",1:12)

3.2.1.3 Cálculo do IQA

Segue o cálculo.

pesos <- c(0.15,0.12,0.17,0.1,0.1,0.1,0.08,0.08,0.1)

sum(pesos)
## [1] 1
IQA <- apply(qindexTudo, 1, function(linha_vector) {
  # Eleva cada elemento do vetor da linha à sua potência correspondente (vetorizada)
  elementos_elevados <- linha_vector ^ pesos
  # Calcula o produtório desses elementos elevados
  return(prod(elementos_elevados))
})  

IQA  
##   Ponto1   Ponto2   Ponto3   Ponto4   Ponto5   Ponto6   Ponto7   Ponto8   Ponto9 
## 35.35816 34.91320 35.42048 35.50221 57.08582 58.14896 60.27924 56.83569 50.93663 
##  Ponto10  Ponto11  Ponto12 
## 51.68415 43.60335 51.77322

References

Grunitzki, Ricardo, Jarbas Cleber Ferrari, Ana Carla da Silva, Patrı́cia H Zambão, and Eduardo VP Neckel. 2013. “Ferramenta Web Para Determinação Do ı́Ndice de Qualidade de água a Partir Da Reestruturação Das Equações Que Descrevem as Curvas Dos Indicadores de Qualidade.” XX Simpósio Brasileiro de Recursos Hı́dricos, Bento Gonçalves, RS.
Siste, CE, EG Girão, and BL Duncan. 2011. “Manual Para Formação e Capacitação de Grupos Comunitários Em Metodologias Participativas de Monitoramento Da Qualidade Da água-módulo III: Avaliação fı́sico-Quı́mica.”