====== 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}}