====== Patrícia do Amaral Meirinho ======
{{:bie5782:01_curso2009:alunos:trabalho_final:r.gif|}}
===== Proposta =====
==== Principal ====
Determinação de oxigenio dissolvido na água pelo método de Winkler (1988). Esta técnica muito utilizada é considerada a mais precisa até hoje. Neste método,o iodo liberado como um resultado de reações que liga quimicamente o oxigênio dissolvido, é medido quantitativamente através da titulação com tiossulfato de sódio, fornecendo por meio de equações a concentração de oxigênio dissolvido na água em mg/l e % de saturação do oxigênio na água. A saturação é obtida quando se tem os valores da temperatura da água e altitude local que se procurados em tabelas que fornecem respectivamente solubilidade e pressão atmosférica podem ser utilizados na fórmula de saturação. Assim a função tem como objetivo a automatização do processo.
=== Comentários ===
== Paulo ==
A idéia é legal e de ampla aplicação. O que não ficou claro para mim são as variáveis de entrada e os valores que serão retornados. E para isto funcionar você precisa das equações que convertem as medidas no valor de oxigênio dissolvido, é isto?
==== Plano B ====
Retornar gráfico de perfil das variáveis (temperatura, pH, condutividade e oxigênio dissolvido) pela profundidade do ponto amostrado, é dificil encontrar programas que reproduzam este gráfico clássico da limnologia, principalmente pela impossibilidade de colocar vários eixos x no mesmo gráfico. Uma função capaz de reproduzir este gráfico seria muito utilizada.
=== Comentários ===
== Paulo ==
Sem dúvida!!! Gostei tanto desta proposta como da anterior. As duas são muito úteis e apropriadas para a disciplina.
===== Página de Ajuda =====
od package:nenhum R Documentation
Determinação de oxigênio dissolvido na água pelo método de Winkler (1988)
Description:
Reproduz o método de Winkler (1988) para a determinação de oxigênio dissolvido na água, produzindo assim uma matriz com os valores do oxigênio dissolvido na água em mg/l e porcentagem de saturação do oxigênio na água.
Usage:
od((t,a,f,N,temp,alt)
Arguments:
t: vetor numérico ou número. Valores dos volumes de tiossulfato usados na titulação das amostras
a: vetor numérico ou número. Volumes das amostras de água em ml
f: vetor numérico ou número. Volumes dos frascos em ml
N: valor da normalidade do tiossulfato utilizado para titulação das amostras
temp: vetor numérico ou número. Temperatura da água em ºC
alt: vetor numérico ou número. Valor ou valores da altitude(s) em que foram coletadas as amostras
Details:
Os valores dos volumes das amostras, tiossulfato e frascos, juntamente com a normalidade (N), são usados em uma fórmula que retorna os valores do oxigênio dissolvido em mg/l. Após isso, para a saturação de oxigênio, são necessários dados da temperatura da água nas amostras coletadas e altitude do local ou locais (se tiverem diferentes altitudes). Assim, a função troca esses dados por respectivamente, dados de solubilidade a dada temperatura e pressão a dada altitude, colocando estes novos valores em outra fórmula que retornará os valores da % de saturação.
Value:
Uma matriz de duas colunas é gerada com os resultados dos cálculos para oxigênio dissolvido e respectiva saturação na água.
Warning:
Os valores de temperatura devem estar entre 0 e 35 ºC, e os de altitude entre 0 a 2500m.
Todos os vetores usados devem ter o mesmo comprimento, pois cada elemento dentro do vetor se refere a uma amostra.
Author(s):
Patrícia do Amaral Meirinho
patymeiri@yahoo.com.br
References:
Método de Winkler descrito em Golterman, H.L.; Clymo, R.S. & Ohnstao, M.Am. 1969. Methods for Physical and Chemical Analysis of Freshwaters. I.B.P. Handbook n° 6. Blackwell Scientific Public.
Fiurucci, A. R. & Filho, E. B. A Importância do Oxigênio Dissolvido em Ecossistemas Aquáticos. Química Nova na Escola, v.22, p.10-16, 2005. http://qnesc.sbq.org.br/online/qnesc22/a02.pdf .
Examples:
x=c(5,7,4,6.5)
y=c(100,200,150,170)
z=c(17,20.2,22,25)
od(x,100,y,0.019,z,300)
===== Código da Função =====
od=function(t,a,f,N,temp,alt)
{
# OD em mg/l
O=(t*N*8*1000)/(a*((f-4)/f))
#para saber a saturação precisamos dos valores da temperatura e altitude da região
#fornece a solubilidade correspondente a temperatura:
ts1=seq(0,35)
ts2=c(14.63,14.23,13.84,13.46,13.11,12.77,12.45,12.13,11.84,11.55,11.28,11.02,10.77,10.53,10.29,10.07,9.86,9.65,9.45,9.27,9.08,8.91,8.74,8.57,8.42,8.26,8.12,7.97,7.84,7.70,7.57,7.45,7.33,7.21,7.09,6.98)
lt=length(temp)
sol=seq(1,lt)
for(i in 1:lt)
{
ts=approxfun(ts1,ts2)
sol=ts(temp)
}
#fornece a pressão correspondente a altitude da região:
ap1=c(0,100,200,300,400,500,600,700,800,900,1000,1100,1200,1300,1400,1500,1600,1700,1800,1900,2000,2100,2200,2300,2400,2500)
ap2=c(760,750,741,732,723,714,705,696,687,679,671,663,655,647,639,631,623,615,608,601,594,587,580,573,566,560)
la=length(alt)
pre=seq(1,la)
for(i in 1:la)
{
ap=approxfun(ap1,ap2)
pre=ap(alt)
}
# % de saturação
S=(O*100)/((sol*pre)/760)
m=matrix(c(O,S),,2)
colnames(m)=c("OD(mg/l)","%saturação")
return(m)
}
===== Arquivo da Função =====
{{:bie5782:01_curso2009:alunos:trabalho_final:od.r|od}}