Ero sivun ”Mikrobien määrä pohjavedessä” versioiden välillä

Opasnet Suomista
Siirry navigaatioon Siirry hakuun
(Ak: Uusi sivu: {{muuttuja}} == Rajaus == Mikrobien määrä pohjavedessä kuvaa eri mikrobien mitattuja pitoisuuksia pohjavedessä. == Määritelmä == === Data === Data perustuu kuviteltuun ti…)
 
(edistymisluokitus lisätty)
 
(29 välissä olevaa versiota 6 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
{{muuttuja}}
{{muuttuja}}
{{edistymisluokitus|edistyminen=Luonnos}}
[[Luokka:Pohjavesi]]
[[Luokka:Sisältää R-koodia]]


== Rajaus ==
==Kysymys==
 
Mitä mikrobien määrä pohjavedessa kuvaa?
 
==Vastaus==


Mikrobien määrä pohjavedessä kuvaa eri mikrobien mitattuja pitoisuuksia pohjavedessä.
Mikrobien määrä pohjavedessä kuvaa eri mikrobien mitattuja pitoisuuksia pohjavedessä.


== Määritelmä ==
==Malli==
'''Skenaariot'''
*1a - Kulkeutuminen pohjavesivyöhykkeessä päästölähteestä raakavesilähteeseen. Ei imeytystä tai pumppausta.
*1b - Kulkeutuminen pohjavesivyöhykkeessä päästölähteestä vedenottokaivoon. Ei imeytystä.
*1c - Vedenottokaivon saastuminen viemäputken rikkoutumisen tai vuodon seurauksena, kun viemärivuoto tapahtuu pohjavesivyöhykkeessä.
*1d - Mikrobien kulkeutuminen kaivoimeytyksestä vedenottokaivoon. Kyseessä on paineellinen akviferi, jossa vettä imeytetään hyvin johtavaan pohjavesivyöhykkeeseen, jonka yläpuolella on huonosti vettä johtava kerros.
*1e - Mikrobien kulkeutuminen rantaimeytyksen kautta pohjavesivyöhykkeessä vedenottokaivoon.
*2a - Kulkeutuminen pohjavesivyöhykkeen yläpuolella sijaitsevasta päästölähteestä raakavesilähteeseen. Ei imeytystä tai pumppausta.
*2b - Kulkeutuminen pohjavesivyöhykkeen yläpuolella sijaitsevasta päästölähteestä vedenottokaivoon.
*2c - Vedenottokaivon saastuminen viemäputken rikkoutumisen tai vuodon seurauksena, kun viemärivuoto tapahtuu pohjavesivyöhykkeen yläpuolisessa osittain kyllästyneessä vyöhykkeessä.
*2d - Mikrobien kulkeutuminen sadetusimeytyksestä vedenottokaivoon.
*2e - Mikrobien kulkeutuminen allasimeytyksestä vedenottokaivoon.
 
<rcode
embed=0
name='mikrobien_kulkeutuminen'
variables="
name:sc_type|description:Valitse tyyppi|type:selection|options:;- valitse -;'1';1 - Mikrobien kulkeutuminen pohjavesivyöhykkeessä;'2';2 - Mikrobien kulkeutuminen päästölähteestä pohjavesivyöhykkeeseen ja edelleen|
category:Skenaario|
name:scenario|description:Valitse skenaario|type:selection|options:;- valitse -;'1a';a;'1b';b;'1c';c;'1d';d;'1e';e|
category:Aliskenaariot 1|category_conditions:sc_type;'1'|
name:scenario|description:Valitse skenaario|type:selection|options:;- valitse -;'2a';a;'2b';b;'2c';c;'2d';d;'2e';e|
category:Aliskenaariot 2|category_conditions:sc_type;'2'|
name:R|description:Etäisyys päästölähteestä (m)|default:100|
category:Pohjavesialueen ominaisuudet 1|category_conditions:scenario;'1d'|
name:H_2|description:Paineelliisen pohjavesivyöhykkeen paksuus (m)|default:10|
name:R|description:Etäisyys päästölähteestä (m)|default:100|
category:Pohjavesialueen ominaisuudet 2|category_conditions:scenario;'1a';'1b';'1c';'1e'|
name:H_2|description:Pohjavesivyöhykeen paksuus (m)|default:10|
name:R|description:Etäisyys päästölähteestä (m)|default:100|
category:Pohjavesialueen ominaisuudet 3|category_conditions:sc_type;'2'|
name:H_2|description:Pohjavesivyöhykeen paksuus (m)|default:10|
name:H_us|description:Osittain kyllästyneen vyöhykkeen paksuus (m)|default:3|
name:g_input_type|description:Valitse maalaji tai oma määritelmä|type:selection|options:;- valitse -;'Sora';Sora;'Karkea hiekka';Karkea hiekka;'Hiekka';Hiekka;'Hieno hiekka';Hieno hiekka;'Siltti';Siltti;'Savi';Savi;'Hiekkamoreeni';Hiekkamoreeni;'Hienoainesmoreeni';Hienoainesmoreeni;'custom1';Oma määritelmä|
category:Maaperän rakenne ja hydrauliset ominaisuudet 1|category_conditions:scenario;'1a';'1b';'1c';'1d';'1e';'2d';'2e'|
name:g_input_type|description:Valitse maalaji tai oma määritelmä|type:selection|options:;- valitse -;'Sora';Sora;'Karkea hiekka';Karkea hiekka;'Hiekka';Hiekka;'Hieno hiekka';Hieno hiekka;'Siltti';Siltti;'Savi';Savi;'Hiekkamoreeni';Hiekkamoreeni;'Hienoainesmoreeni';Hienoainesmoreeni;'custom2';Oma määritelmä|
category:Maaperän rakenne ja hydrauliset ominaisuudet 2|category_conditions:scenario;'2a';'2b';'2c'|
name:n_2|description:Huokoisuus pohjavesivyöhykkeessä|default:0.35|
category:Maaperän rakenne ja hydrauliset ominaisuudet oma määritelmä 1|category_conditions:g_input_type;'custom1'|
name:K_2|description:Vedenjohtavuus pohjavesivyöhykkeessä (m/s)|default:0.001|
name:n_2|description:Huokoisuus pohjavesivyöhykkeessä 2|default:0.35|
category:Maaperän rakenne ja hydrauliset ominaisuudet oma määritelmä|category_conditions:g_input_type;'custom2'|
name:K_2|description:Vedenjohtavuus pohjavesivyöhykkeessä (m/s)|default:0.001|
name:n_1|description:Huokoisuus osittain kyllästyneessä vyöhykkeessä|default:0.35|
name:K_us|description:Vedenjohtavuus osittain kyllästyneessä vyöhykkeessä (m/s)|default:2.43e-07|
name:theta|description:Tilavuusvesipitoisuus|default:'-'|
name:Se|description:Kyllästysaste|default:'-'|
name:lambda|description:Huokosten kokoa kuvaava parametri|default:'-'|
name:q|description:Vuodon määrä (m^3/d)|default:100.0|
category:Viemärivuoto 1|category_conditions:scenario;'1c'|
name:h|description:Pohjaveden pinnankorkeus vedenottokaivossa(m)|default:10.0|
name:hj|description:Pohjaveden pinnankorkeus jätevesiviemärin kohdalla (m)|default:13.0|
name:q|description:Vuodon määrä (m^3/d)|default:100.0|
category:Viemärivuoto 2|category_conditions:scenario;'2c'|
name:H_v|description:Virtausnopeus akviferissä (m/s)|default:1.5|
name:Q_i|description:Imeytyksen määrä (m3/d)|default:1000.0|
category:Imeytys 1|category_conditions:scenario;'1d'|
name:W|description:Sadetuksen määrä (m3/d)|default:500.0|
category:Imeytys 2|category_conditions:scenario;'2d'|
name:As|description:Sadetuksen pinta-ala (m^2)|default:50.0|
name:W|description:Allasimeytyksen määrä (m3/d)|default:1000.0|
category:Imeytys 3|category_conditions:scenario;'2e'|
name:As|description:Imeytyksen pinta-ala (m^2)|default:2700.0|
name:Q_2|description:Vedenottokaivon tuotto (m3/d)|default:1000.0|
category:Vedenotto|category_conditions:scenario;'1b';'1c';'1d';'1e';'2b';'2c';'2d';'2e'|
name:vesilähde|description:Vesilähde|type:selection|
options:;- valitse -;'Pohjavesi';Pohjavesi;'Luonnontilainen joki';Luonnontilainen joki;
'Vaikutuksen alainen joki';Vaikutuksen alainen joki;'Järvi';Järvi;'Jätevesi';Jätevesi;'custom';Oma määritelmä|
category:Vesi|
name:c_A|description:Mikrobin aktiivisuuden määräävä rajapitoisuus (1/l)|default:10.0|
name:mu_type|description:Mikrobien inaktivaatio|type:selection|options:'default';Oletusarvot;'custom';Oma määritelmä|
name:p_kampy|description:Kampylobakteeripitoisuus (mikrobia/l)|default:'-'|
category:Patogeenien pitoisuudet|category_conditions:vesilähde;'custom'|
name:p_salmo|description:Salmonellapitoisuus (mikrobia/l)|default:'-'|
name:p_ecoli|description:E.colipitoisuus (mikrobia/l)|default:'-'|
name:p_rotav|description:Rotaviruspitoisuus (mikrobia/l)|default:'-'|
name:p_shige|description:Shigella (mikrobia/l)|default:'-'|
name:p_giard|description:Giardiapitoisuus (mikrobia/l)|default:'-'|
name:p_crypt|description:Cryptosporidiumpitoisuus (mikrobia/l)|default:'-'|
name:mu|description:Mikrobien inaktivaatiokerroin (1/d)|default:0.01|
category:Mikrobien inaktivaatio|category_conditions:mu_type;'custom'
"
>
 
if (is.null(sc_type)) stop("Skenaariota ei ole määritetty!")
if (is.null(scenario)) stop("Aliskenaariota ei ole määritetty!")
if (is.null(g_input_type)) stop("Maaperän ominaisuuksia ei ole määritetty!")
if (is.null(vesilähde)) stop("Mikrobipitoisuuksia ei ole määritetty!")
 
library(OpasnetUtils)
 
openv.setN(10)
 
# Patogeenien pitoisuudet
 
if (vesilähde == "custom"){
temp <- list(p_kampy, p_salmo, p_ecoli, p_rotav, p_shige, p_giard, p_crypt)
Patogeeni = c("Kampylobakteeri", "Salmonella", "E.coli","Rotavirus","Shigella","Giardia", "Cryptosporidium")
c_0 <- data.frame(
Patogeeni,
Patogeenin.tyyppi = c(rep("Bakteeri", 3), "Virus", "Alkueläin"),
Result = suppressWarnings(as.numeric(temp))
)
c_0 <- c_0[!is.na(c_0$Result), ]
c_0 <- Ovariable("c_0", data = c_0)
} else {
objects.latest("Op_fi3939", "muuttuja") # RaakaPitoisuus, customoitia varten
c_0@data <- c_0@data[as.character(c_0@data$Vesilähde) == vesilähde, ]
#c_0 <- c_0[colnames(c_0) != c("Vesilähde")]
#c_0 <- Ovariable("c_0", data = c_0)
}
 
# Inaktivaatiokertoimet
 
if (mu_type == "default") {
objects.latest("Op_fi3942", "muuttuja")
}
 
mu_1 <- mu
mu_2 <- mu
 
# Maaperän ominaisuudet
 
if(!g_input_type %in% c("custom1", "custom2")) {
objects.latest("Op_fi3940", "muuttuja") #n
objects.latest("Op_fi3941", "muuttuja") #K
if(scenario %in% c("2a","2b","2c")) {
n_1 <- Ovariable("n_1", data = n@data[n@data$Maalaji == g_input_type,]) # huokoisuus osittain kyllästyneessä vyöhykkeessä
colnames(n_1@data)[colnames(n_1@data) == "nResult"] <- "n_1Result"
K_us <- 2.43e-07 # vedenjohtavuus osittain kyllästyneessä vyöhykkeessä
n_2 <- Ovariable("n_2", data = n@data[n@data$Maalaji == g_input_type,])
colnames(n_2@data)[colnames(n_2@data) == "nResult"] <- "n_2Result"
K_2 <- Ovariable("K_2", data = K@data[K@data$Maalaji == g_input_type,])
colnames(K_2@data)[colnames(K_2@data) == "KResult"] <- "K_2Result"
} else {
n_2 <- Ovariable("n_2", data = n@data[n@data$Maalaji == g_input_type,])
colnames(n_2@data)[colnames(n_2@data) == "nResult"] <- "n_2Result"
K_2 <- Ovariable("K_2", data = K@data[K@data$Maalaji == g_input_type,])
colnames(K_2@data)[colnames(K_2@data) == "KResult"] <- "K_2Result"
}
}
 
# Models
 
time_pre <- function(H, n, K) {
H*n/K
}
 
time_type1 <- function(R, n, K, H) {
R^2*n/(K*H)
}
 
time_type2 <- function(n, H, R, Q) {
2*pi*n*H*R^2/Q
}
 
concentration <- function(c_0, mu, t) {
c_0*exp(-1*mu*t)
}
 
inactivation <- function(c_threshold, c_initial, mu){
-1*log(c_threshold/c_initial)/mu
}
 
scenario <- as.character(scenario)
scenario <- strsplit(scenario, "")[[1]]
 
# Model parameter values unique to scenario:
 
if (scenario[1] == "1" & scenario[2] == "c") { # depends on Ks, hj, h, Hs, c_0
Q_a <- Ks*(hj-h)*Hs
c_aq <- c_0*q/Q_a
c_0 <- c_aq
}


=== Data ===
if (scenario[1] == "1" & scenario[2] == "d") { # depends on c_0, Q_i and Q
c_aq <- c_0*Q_i/Q
c_0 <- c_aq
}
 
if (scenario[1] == "2" & scenario[2] == "c") { # depends on K_us, H_us, H_v, c_0 and q
Q_us <- K_us*(H_us-H_v)^2
c_us <- c_0*q/Q_us
c_0 <- c_us # not in the Excel but i think this is what is intended
}
 
if (scenario[1] == "2" & (scenario[2] == "d"|scenario[2] == "e")) { # depends on W and As
vs <- W/As
}
 
# First pass. Only for scenarios beginning with 2.
 
if (scenario[1]=="2") {
if (scenario[2] == "a"|scenario[2] == "b") { # depends on H_us and K_us
H_1 <- H_us
K_1 <- K_us
}
if (scenario[2] == "c") { # depends on H_us, H_v and K_us
H_1 <- H_us - H_v
K_1 <- K_us
}
if (scenario[2] == "d"|scenario[2] == "e") { # depends on H_us and vs
H_1 <- H_us
K_1 <- vs
}
t_1 <- time_pre(H_1, n_1, K_1) # depends
c_1 <- concentration(c_0, mu_1, t_1) # depends
t_in_1 <- inactivation(c_A, c_0, mu_1)
} else {
t_1 <- 0
c_1 <- c_0
t_in_1 <- Inf
}
 
# Second pass. Model used depends on scenario second part.
 
if (scenario[2] == "a") {
t_2 <- time_type1(R, n_2, K_2, H_2) # depends
} else {
t_2 <- time_type2(n_2, H_2, R, Q_2) # depends
}
 
c_2 <- concentration(c_1, mu_2, t_2) # depends
t_in_2 <- inactivation(c_A, c_1, mu_2) # depends
 
cat("Pitoisuus\n")
oprint(summary(c_2, marginals = c("Patogeeni", "Havainto")))
cat("Kulkeutumisaika\n")
oprint(summary(t_1 + t_2))
cat("Inaktivaatioaika\n")
oprint(summary(t_in_2, marginals = c("Patogeeni", "Havainto")))
 
</rcode>
 
==Perustelut==
 
===Data===


Data perustuu kuviteltuun tilanteeseen.
Data perustuu kuviteltuun tilanteeseen.


=== Kausaliteetti ===
<t2b index="Symboli,Parametri,Selite,Havainto" locations="Arvo,Yksikkö,Excel" unit="-">
Ks|vedenjohtavuus|Kyllästyneen tilan vedenjohtavuus|1.00E-05|m /s|D9
Hs|paksuus|Pohjavesivyöhykkeen paksuus|5-15|m|D10
R|etäisyys|Etäisyys päästölähteestä|100|m|D11
n|huokoisuus|Maaperän huokoisuus|0.35||D12
C0|mikrobipit.lähde|Päästölähteen mikrobipitoisuus = mikrobipitoisuus akviferissä|1.00E+08|# /l|D13
CA|inaktivaatiopit|Pitoisuus jolloin mikrobien ajatellaan inaktivoituneen|10|# /l|D14
µ|inaktivaationopeus|Inaktivaatiokerroin|0.01|1 /vrk|D15
t|kulkeutumisaika|Kulkeutumisaika|405.0925926|vrk|D17: =D11/(D9*(D10/D11)/D12)/3600/24
Ct|mikrobipit.kohde|Pitoisuus tarkastelukohdassa|1.74E+06|# /l|D18: =D13*EXP((-D15*D17))
tin|inaktivaatioaika|Inaktivaatioaika|1610|vrk|D19: =LOG10(D14/D13)/(-D15/2.3)
</t2b>
 
===Riippuvuudet===
*[[Patogeenien pitoisuudet vedessä]]
*[[Patogeenien inaktivaatioaika]]
*[[Maaperän huokoisuus]]
*[[Maaperän vedenjohtavuus]]


===Yksikkö===
=== Yksikkö ===


N/L
<nowiki># /l</nowiki>


=== Kaava ===
===Laskenta===


Tämä laskenta kuvaa mikrobien kulkeutumista pohjavedessä tai maaperässä.


== Tulokset ==
Yksinkertaisimmillaan mikrobien voidaan arvioida kulkeutuvan päästölähteestä raakavesilähteeseen samalla nopeudella kuin vesi virtaa kyllästyneessä maaperässä. Päästölähteen oletetaan sijaitsevan pohjavesivyöhykkeessä  ja virtauksen tapahtuvat lateraalisuunnassa. Päästölähteen virtaamaa ei ole tunnettu, joten pohjavesivyöhykkeen ja päästölähteen ja pohjavesivyöhykkeen mikrobipitoisuudet oletetaan samoiksi. Pumppausta ei ole huomioitu. Tiedot ovat tiedostosta Riskinarviointilaskelmat_inaktivaatio271112.xls.
 
'''Kaikki laskennat yhdessä:'''
 
<rcode variables="
category:Anna arvo vain jos se poikkeaa ylläolevasta oletusarvojen taulukosta|
name:tilanne|type:selection|options:'suoravirtaus';Suoravirtaus;'kaivoimu';Kaivoimu|default:'suoravirtaus'|
name:tuloste|type:selection|options:'kulkeutumisaika';Kulkeutumisaika;'mikrobipit.kohde';Mikrobipitoisuus kohteessa;'inaktivaatioaika';Inaktivaatioaika|default:'kulkeutumisaika'|
name:kaivon.tuotto|default:1000|
name:vedenjohtavuus|default:|
name:paksuus|default:|
name:etäisyys|default:|
name:huokoisuus|default:|
name:mikrobipit.lähde|default:|
name:inaktivaatiopit|default:|
name:inaktivaationopeus|default:
">
library(OpasnetUtils)
library(xtable)
 
# Ensin valikoidaan tietolähde. Käyttäjän antama input on ensisijainen, jos sitä ei ole, kaivetaan Basesta oletusarvo.
# Joka tapauksessa lähtötiedosta rakennetaan ovariable, olipa alkutieto NULL, NA, "", vektori tai data.frame.
# Kannattaisi ehkä ottaa yleiseksi käytännöksi silloin kun data voi tulla käyttäjältä tai tietokannasta?
 
apparate <- function(objname, source = "Op_fi1755") {
obj <- get(objname)
if(is.null(obj)) obj <- NA
if(is.na(obj) | obj == "") {
temp <- opbase.data(source)
obj <- temp[temp$Parametri == objname & temp$Havainto == "Arvo", ]["Result"]
}
if(is.vector(obj)) obj <- data.frame(Result = obj)
if(is.data.frame(obj)) obj <- new("ovariable", name = objname, data = obj)
return(obj)
}
 
kaivon.tuotto <- apparate("kaivon.tuotto")
vedenjohtavuus <- apparate("vedenjohtavuus")
paksuus <- apparate("paksuus")
etäisyys <- apparate("etäisyys")
huokoisuus <- apparate("huokoisuus")
mikrobipit.lähde <- apparate("mikrobipit.lähde")
inaktivaatiopit <- apparate("inaktivaatiopit")
inaktivaationopeus <- apparate("inaktivaationopeus")
 
# Ovariable laskee mikrobipitoisuuden pohjavedessä, kulkeutumisajan ja inaktivaatioajan. Ulos annetaan yksi näistä kolmesta
# riippuen lähtötiedon "tuloste" arvosta.
 
mikrobit.pohjavesi <- new("ovariable",
name = "mikrobit.pohjavesi",
formula =  function(dependencies, ...) {
ComputeDependencies(dependencies, ...)
 
#Lasketaan kulkeutumisaika kahdella eri tavalla riippuen tilanteesta.
kulkeutumisaika <- 0
if(tilanne == "suoravirtaus") {
kulkeutumisaika <- etäisyys / (vedenjohtavuus * (paksuus / etäisyys) / huokoisuus) / 3600 / 24
}
if(tilanne == "kaivoimu") {
kulkeutumisaika <- 2 * pi * huokoisuus * paksuus * etäisyys ^ 2 / kaivon.tuotto # Miksi 2 * ?
}
 
mikrobipit.kohde <- mikrobipit.lähde * exp(0 - inaktivaationopeus * kulkeutumisaika)
inaktivaatioaika <- log10(inaktivaatiopit / mikrobipit.lähde) / (0 - inaktivaationopeus / 2.3) # Miksi 2.3?
 
#Loputuloksena annetaan se kolmesta lasketusta outputista joka tulosteessa määritellään.
return(get(tuloste))
},
dependencies = data.frame(Name = c(
"tilanne",
"tuloste",
"kaivon.tuotto",
"vedenjohtavuus",
"paksuus",
"etäisyys",
"huokoisuus",
"mikrobipit.lähde",
"inaktivaatiopit",
"inaktivaationopeus"
))
)
 
mikrobit.pohjavesi <- EvalOutput(mikrobit.pohjavesi, N = 10)
cat(tuloste, "\n")
print(mikrobit.pohjavesi)
 
</rcode>
 
'''Mikrobien inaktivaatioajan laskeminen:'''
 
<rcode variables="
category:Anna arvo vain jos se poikkeaa ylläolevasta oletusarvojen taulukosta|
name:tilanne|type:selection|options:'suoravirtaus';Suoravirtaus;'kaivoimu';Kaivoimu|default:'suoravirtaus'|
name:kaivon.tuotto|default:1000|
name:vedenjohtavuus|default:|
name:paksuus|default:|
name:etäisyys|default:|
name:huokoisuus|default:|
name:mikrobipit.lähde|default:|
name:inaktivaatiopit|default:|
name:inaktivaationopeus|default:
">
library(OpasnetUtils)
library(xtable)
 
# Ensin valikoidaan tietolähde. Käyttäjän antama input on ensisijainen, jos sitä ei ole, kaivetaan Basesta oletusarvo.
# Joka tapauksessa lähtötiedosta rakennetaan ovariable, olipa alkutieto NULL, NA, "", vektori tai data.frame.
# Kannattaisi ehkä ottaa yleiseksi käytännöksi silloin kun data voi tulla käyttäjältä tai tietokannasta?
 
apparate <- function(objname, source = "Op_fi1755") {
obj <- get(objname)
if(is.null(obj)) obj <- NA
if(is.na(obj) | obj == "") {
temp <- opbase.data(source)
obj <- temp[temp$Parametri == objname & temp$Havainto == "Arvo", ]["Result"]
}
if(is.vector(obj)) obj <- data.frame(Result = obj)
if(is.data.frame(obj)) obj <- new("ovariable", name = objname, data = obj)
return(obj)
}
 
kaivon.tuotto <- apparate("kaivon.tuotto")
vedenjohtavuus <- apparate("vedenjohtavuus")
paksuus <- apparate("paksuus")
etäisyys <- apparate("etäisyys")
huokoisuus <- apparate("huokoisuus")
mikrobipit.lähde <- apparate("mikrobipit.lähde")
inaktivaatiopit <- apparate("inaktivaatiopit")
inaktivaationopeus <- apparate("inaktivaationopeus")
 
# Ovariable laskee mikrobipitoisuuden pohjavedessä, kulkeutumisajan ja inaktivaatioajan. Ulos annetaan yksi näistä kolmesta
# riippuen lähtötiedon "tuloste" arvosta.
 
mikrobit.inaktivaatioaika <- new("ovariable",
name = "mikrobit.inaktivaatioaika",
formula =  function(dependencies, ...) {
ComputeDependencies(dependencies, ...)
 
#Lasketaan inaktivaatioaika.
inaktivaatioaika <- log10(inaktivaatiopit / mikrobipit.lähde) / (0 - inaktivaationopeus / 2.3) # Miksi 2.3?
 
#Loputuloksena annetaan se kolmesta lasketusta outputista joka tulosteessa määritellään.
return(get(tuloste))
},
dependencies = data.frame(Name = c(
"tilanne",
"tuloste",
"kaivon.tuotto",
"vedenjohtavuus",
"paksuus",
"etäisyys",
"huokoisuus",
"mikrobipit.lähde",
"inaktivaatiopit",
"inaktivaationopeus"
))
)
 
mikrobit.pohjavesi <- EvalOutput(mikrobit.pohjavesi, N = 10)
cat(tuloste, "\n")
print(mikrobit.pohjavesi)
 
</rcode>
 
 
'''Mikrobien kulkeutumisajan laskeminen:'''
 
<rcode variables="
category:Anna arvo vain jos se poikkeaa ylläolevasta oletusarvojen taulukosta|
name:tilanne|type:selection|options:'suoravirtaus';Suoravirtaus;'kaivoimu';Kaivoimu|default:'suoravirtaus'|
name:kaivon.tuotto|default:1000|
name:vedenjohtavuus|default:|
name:paksuus|default:|
name:etäisyys|default:|
name:huokoisuus|default:|
name:mikrobipit.lähde|default:|
name:inaktivaatiopit|default:|
name:inaktivaationopeus|default:
">
library(OpasnetUtils)
library(xtable)
 
# Ensin valikoidaan tietolähde. Käyttäjän antama input on ensisijainen, jos sitä ei ole, kaivetaan Basesta oletusarvo.
# Joka tapauksessa lähtötiedosta rakennetaan ovariable, olipa alkutieto NULL, NA, "", vektori tai data.frame.
# Kannattaisi ehkä ottaa yleiseksi käytännöksi silloin kun data voi tulla käyttäjältä tai tietokannasta?
 
apparate <- function(objname, source = "Op_fi1755") {
obj <- get(objname)
if(is.null(obj)) obj <- NA
if(is.na(obj) | obj == "") {
temp <- opbase.data(source)
obj <- temp[temp$Parametri == objname & temp$Havainto == "Arvo", ]["Result"]
}
if(is.vector(obj)) obj <- data.frame(Result = obj)
if(is.data.frame(obj)) obj <- new("ovariable", name = objname, data = obj)
return(obj)
}
 
kaivon.tuotto <- apparate("kaivon.tuotto")
vedenjohtavuus <- apparate("vedenjohtavuus")
paksuus <- apparate("paksuus")
etäisyys <- apparate("etäisyys")
huokoisuus <- apparate("huokoisuus")
mikrobipit.lähde <- apparate("mikrobipit.lähde")
inaktivaatiopit <- apparate("inaktivaatiopit")
inaktivaationopeus <- apparate("inaktivaationopeus")
 
# Ovariable laskee mikrobipitoisuuden pohjavedessä, kulkeutumisajan ja inaktivaatioajan. Ulos annetaan yksi näistä kolmesta
# riippuen lähtötiedon "tuloste" arvosta.
 
mikrobit.kulkeutumisaika <- new("ovariable",
name = "mikrobit.kulkeutumisaika",
formula =  function(dependencies, ...) {
ComputeDependencies(dependencies, ...)
 
#Lasketaan kulkeutumisaika kahdella eri tavalla riippuen tilanteesta.
kulkeutumisaika <- 0
if(tilanne == "suoravirtaus") {
kulkeutumisaika <- etäisyys / (vedenjohtavuus * (paksuus / etäisyys) / huokoisuus) / 3600 / 24
}
if(tilanne == "kaivoimu") {
kulkeutumisaika <- 2 * pi * huokoisuus * paksuus * etäisyys ^ 2 / kaivon.tuotto # Miksi 2 * ?
}
 
#Loputuloksena annetaan se kolmesta lasketusta outputista joka tulosteessa määritellään.
return(get(tuloste))
},
dependencies = data.frame(Name = c(
"tilanne",
"tuloste",
"kaivon.tuotto",
"vedenjohtavuus",
"paksuus",
"etäisyys",
"huokoisuus",
"mikrobipit.lähde",
"inaktivaatiopit",
"inaktivaationopeus"
))
)
 
mikrobit.pohjavesi <- EvalOutput(mikrobit.pohjavesi, N = 10)
cat(tuloste, "\n")
print(mikrobit.pohjavesi)
 
</rcode>
 
 
'''Mikrobien pitoisuuden laskeminen:'''
 
<rcode variables="
category:Anna arvo vain jos se poikkeaa ylläolevasta oletusarvojen taulukosta|
name:tilanne|type:selection|options:'suoravirtaus';Suoravirtaus;'kaivoimu';Kaivoimu|default:'suoravirtaus'|
name:kaivon.tuotto|default:1000|
name:vedenjohtavuus|default:|
name:paksuus|default:|
name:etäisyys|default:|
name:huokoisuus|default:|
name:mikrobipit.lähde|default:|
name:inaktivaatiopit|default:|
name:inaktivaationopeus|default:
">
library(OpasnetUtils)
library(xtable)
 
# Ensin valikoidaan tietolähde. Käyttäjän antama input on ensisijainen, jos sitä ei ole, kaivetaan Basesta oletusarvo.
# Joka tapauksessa lähtötiedosta rakennetaan ovariable, olipa alkutieto NULL, NA, "", vektori tai data.frame.
# Kannattaisi ehkä ottaa yleiseksi käytännöksi silloin kun data voi tulla käyttäjältä tai tietokannasta?
 
apparate <- function(objname, source = "Op_fi1755") {
obj <- get(objname)
if(is.null(obj)) obj <- NA
if(is.na(obj) | obj == "") {
temp <- opbase.data(source)
obj <- temp[temp$Parametri == objname & temp$Havainto == "Arvo", ]["Result"]
}
if(is.vector(obj)) obj <- data.frame(Result = obj)
if(is.data.frame(obj)) obj <- new("ovariable", name = objname, data = obj)
return(obj)
}
 
kaivon.tuotto <- apparate("kaivon.tuotto")
vedenjohtavuus <- apparate("vedenjohtavuus")
paksuus <- apparate("paksuus")
etäisyys <- apparate("etäisyys")
huokoisuus <- apparate("huokoisuus")
mikrobipit.lähde <- apparate("mikrobipit.lähde")
inaktivaatiopit <- apparate("inaktivaatiopit")
inaktivaationopeus <- apparate("inaktivaationopeus")
 
# Ovariable laskee mikrobipitoisuuden pohjavedessä, kulkeutumisajan ja inaktivaatioajan. Ulos annetaan yksi näistä kolmesta
# riippuen lähtötiedon "tuloste" arvosta.
 
mikrobipitoisuus.pohjavesi <- new("ovariable",
name = "mikrobipitoisuus.pohjavesi",
formula =  function(dependencies, ...) {
ComputeDependencies(dependencies, ...)
 
#Lasketaan mikrobien pitoisuus pohjavedessä.
mikrobipit.kohde <- mikrobipit.lähde * exp(0 - inaktivaationopeus * kulkeutumisaika)
#Loputuloksena annetaan se kolmesta lasketusta outputista joka tulosteessa määritellään.
return(get(tuloste))
},
dependencies = data.frame(Name = c(
"tilanne",
"tuloste",
"kaivon.tuotto",
"vedenjohtavuus",
"paksuus",
"etäisyys",
"huokoisuus",
"mikrobipit.lähde",
"inaktivaatiopit",
"inaktivaationopeus"
))
)
 
mikrobipitoisuus.pohjavesi <- EvalOutput(mikrobit.pohjavesi, N = 100000)
cat(tuloste, "\n")
print(mikrobipitoisuus.pohjavesi)
 
</rcode>
 
===Tulokset===
{| {{prettytable}}
{| {{prettytable}}
|  
|  
|Clean
|Medium
|Contaminated
|----
|Norovirus
|Norovirus
|0
|204.167
|2166.667
|----
|Rotavirus
|Rotavirus
|0
|204.167
|2166.667
|----
|----
|Clean
|Murine norovirus
|triangular(0,0,0)
|0
|triangular(0,0,0)
|204.167
|----
|2166.667
|Medium
|triangular(12.5,100,500)
|triangular(12.5,100,500)
|----
|Contaminated
|triangular(500,1000,5000)
|triangular(500,1000,5000)
|----
|----
|}
|}


==Katso myös==


== Katso myös ==
* [[Mikrobien määrä juomavedessä]]


{{minera}}


== Viitteet ==
==Viitteet==
<references/>


<references/>
==Aiheeseen liittyviä tiedostoja==
{{mfiles}}

Nykyinen versio 30. lokakuuta 2014 kello 13.24


Edistymisluokitus
Opasnetissa lukuisat sivut ovat työn alla eri vaiheissa. Niiden tietosisältöön pitää siis suhtautua harkiten. Tämän sivun sisällön edistyminen on arvioitu:
Tämä sivu on luonnos
Sivun olennainen sisältö ja rakenne on jo hahmottunut, mutta kuitenkin isoja sisältöpuutteita on edelleen.

Kysymys

Mitä mikrobien määrä pohjavedessa kuvaa?

Vastaus

Mikrobien määrä pohjavedessä kuvaa eri mikrobien mitattuja pitoisuuksia pohjavedessä.

Malli

Skenaariot

  • 1a - Kulkeutuminen pohjavesivyöhykkeessä päästölähteestä raakavesilähteeseen. Ei imeytystä tai pumppausta.
  • 1b - Kulkeutuminen pohjavesivyöhykkeessä päästölähteestä vedenottokaivoon. Ei imeytystä.
  • 1c - Vedenottokaivon saastuminen viemäputken rikkoutumisen tai vuodon seurauksena, kun viemärivuoto tapahtuu pohjavesivyöhykkeessä.
  • 1d - Mikrobien kulkeutuminen kaivoimeytyksestä vedenottokaivoon. Kyseessä on paineellinen akviferi, jossa vettä imeytetään hyvin johtavaan pohjavesivyöhykkeeseen, jonka yläpuolella on huonosti vettä johtava kerros.
  • 1e - Mikrobien kulkeutuminen rantaimeytyksen kautta pohjavesivyöhykkeessä vedenottokaivoon.
  • 2a - Kulkeutuminen pohjavesivyöhykkeen yläpuolella sijaitsevasta päästölähteestä raakavesilähteeseen. Ei imeytystä tai pumppausta.
  • 2b - Kulkeutuminen pohjavesivyöhykkeen yläpuolella sijaitsevasta päästölähteestä vedenottokaivoon.
  • 2c - Vedenottokaivon saastuminen viemäputken rikkoutumisen tai vuodon seurauksena, kun viemärivuoto tapahtuu pohjavesivyöhykkeen yläpuolisessa osittain kyllästyneessä vyöhykkeessä.
  • 2d - Mikrobien kulkeutuminen sadetusimeytyksestä vedenottokaivoon.
  • 2e - Mikrobien kulkeutuminen allasimeytyksestä vedenottokaivoon.

Skenaario

Valitse tyyppi:

Aliskenaariot 1

Valitse skenaario:

Aliskenaariot 2

Valitse skenaario:

Pohjavesialueen ominaisuudet 1

Etäisyys päästölähteestä (m):

Paineelliisen pohjavesivyöhykkeen paksuus (m):

Pohjavesialueen ominaisuudet 2

Etäisyys päästölähteestä (m):

Pohjavesivyöhykeen paksuus (m):

Pohjavesialueen ominaisuudet 3

Etäisyys päästölähteestä (m):

Pohjavesivyöhykeen paksuus (m):

Osittain kyllästyneen vyöhykkeen paksuus (m):

Maaperän rakenne ja hydrauliset ominaisuudet 1

Valitse maalaji tai oma määritelmä:

Maaperän rakenne ja hydrauliset ominaisuudet 2

Valitse maalaji tai oma määritelmä:

Maaperän rakenne ja hydrauliset ominaisuudet oma määritelmä 1

Huokoisuus pohjavesivyöhykkeessä:

Vedenjohtavuus pohjavesivyöhykkeessä (m/s):

Maaperän rakenne ja hydrauliset ominaisuudet oma määritelmä

Huokoisuus pohjavesivyöhykkeessä 2:

Vedenjohtavuus pohjavesivyöhykkeessä (m/s):

Huokoisuus osittain kyllästyneessä vyöhykkeessä:

Vedenjohtavuus osittain kyllästyneessä vyöhykkeessä (m/s):

Tilavuusvesipitoisuus:

Kyllästysaste:

Huokosten kokoa kuvaava parametri:

Viemärivuoto 1

Vuodon määrä (m^3/d):

Pohjaveden pinnankorkeus vedenottokaivossa(m):

Pohjaveden pinnankorkeus jätevesiviemärin kohdalla (m):

Viemärivuoto 2

Vuodon määrä (m^3/d):

Virtausnopeus akviferissä (m/s):

Imeytys 1

Imeytyksen määrä (m3/d):

Imeytys 2

Sadetuksen määrä (m3/d):

Sadetuksen pinta-ala (m^2):

Imeytys 3

Allasimeytyksen määrä (m3/d):

Imeytyksen pinta-ala (m^2):

Vedenotto

Vedenottokaivon tuotto (m3/d):

Vesi

Vesilähde:

Mikrobin aktiivisuuden määräävä rajapitoisuus (1/l):

Mikrobien inaktivaatio:

Patogeenien pitoisuudet

Kampylobakteeripitoisuus (mikrobia/l):

Salmonellapitoisuus (mikrobia/l):

E.colipitoisuus (mikrobia/l):

Rotaviruspitoisuus (mikrobia/l):

Shigella (mikrobia/l):

Giardiapitoisuus (mikrobia/l):

Cryptosporidiumpitoisuus (mikrobia/l):

Mikrobien inaktivaatio

Mikrobien inaktivaatiokerroin (1/d):

+ Näytä koodi

Perustelut

Data

Data perustuu kuviteltuun tilanteeseen.

Ero sivun ”Mikrobien määrä pohjavedessä” versioiden välillä(-)
ObsSymboliParametriSeliteArvoYksikköExcel
1KsvedenjohtavuusKyllästyneen tilan vedenjohtavuus1.00E-05m /sD9
2HspaksuusPohjavesivyöhykkeen paksuus5-15mD10
3RetäisyysEtäisyys päästölähteestä100mD11
4nhuokoisuusMaaperän huokoisuus0.35D12
5C0mikrobipit.lähdePäästölähteen mikrobipitoisuus = mikrobipitoisuus akviferissä1.00E+08# /lD13
6CAinaktivaatiopitPitoisuus jolloin mikrobien ajatellaan inaktivoituneen10# /lD14
7µinaktivaationopeusInaktivaatiokerroin0.011 /vrkD15
8tkulkeutumisaikaKulkeutumisaika405.0925926vrkD17: =D11/(D9*(D10/D11)/D12)/3600/24
9Ctmikrobipit.kohdePitoisuus tarkastelukohdassa1.74E+06# /lD18: =D13*EXP((-D15*D17))
10tininaktivaatioaikaInaktivaatioaika1610vrkD19: =LOG10(D14/D13)/(-D15/2.3)

Riippuvuudet

Yksikkö

# /l

Laskenta

Tämä laskenta kuvaa mikrobien kulkeutumista pohjavedessä tai maaperässä.

Yksinkertaisimmillaan mikrobien voidaan arvioida kulkeutuvan päästölähteestä raakavesilähteeseen samalla nopeudella kuin vesi virtaa kyllästyneessä maaperässä. Päästölähteen oletetaan sijaitsevan pohjavesivyöhykkeessä ja virtauksen tapahtuvat lateraalisuunnassa. Päästölähteen virtaamaa ei ole tunnettu, joten pohjavesivyöhykkeen ja päästölähteen ja pohjavesivyöhykkeen mikrobipitoisuudet oletetaan samoiksi. Pumppausta ei ole huomioitu. Tiedot ovat tiedostosta Riskinarviointilaskelmat_inaktivaatio271112.xls.

Kaikki laskennat yhdessä:

Anna arvo vain jos se poikkeaa ylläolevasta oletusarvojen taulukosta

tilanne:

tuloste:

kaivon.tuotto:

vedenjohtavuus:

paksuus:

etäisyys:

huokoisuus:

mikrobipit.lähde:

inaktivaatiopit:

inaktivaationopeus:

+ Näytä koodi

Mikrobien inaktivaatioajan laskeminen:

Anna arvo vain jos se poikkeaa ylläolevasta oletusarvojen taulukosta

tilanne:

kaivon.tuotto:

vedenjohtavuus:

paksuus:

etäisyys:

huokoisuus:

mikrobipit.lähde:

inaktivaatiopit:

inaktivaationopeus:

+ Näytä koodi


Mikrobien kulkeutumisajan laskeminen:

Anna arvo vain jos se poikkeaa ylläolevasta oletusarvojen taulukosta

tilanne:

kaivon.tuotto:

vedenjohtavuus:

paksuus:

etäisyys:

huokoisuus:

mikrobipit.lähde:

inaktivaatiopit:

inaktivaationopeus:

+ Näytä koodi


Mikrobien pitoisuuden laskeminen:

Anna arvo vain jos se poikkeaa ylläolevasta oletusarvojen taulukosta

tilanne:

kaivon.tuotto:

vedenjohtavuus:

paksuus:

etäisyys:

huokoisuus:

mikrobipit.lähde:

inaktivaatiopit:

inaktivaationopeus:

+ Näytä koodi

Tulokset

Clean Medium Contaminated
Norovirus 0 204.167 2166.667
Rotavirus 0 204.167 2166.667
Murine norovirus 0 204.167 2166.667

Katso myös

Minera-malli: Ohjeistusta kaivostoiminnan ympäristö- ja terveysriskien arviointiin.
Osa linkeistä vie ohjeistuksiin eri vaikutusarvioinnin osien tekemisestä, osa taas valmiisiin laskentamalleihin (lihavoitu).
Kaivostoiminta

Kohdekohtaisen arvioinnin esimerkkisivu · Rikastus · Kaivosprosessit

Pölyn ja hiukkasten päästöt

Pöly (ohje) · Lähteet · Pintamaan poisto! · Tarvekivi ! · Louhinta ! · Murskaus · Lastaus ja pudotus · Kuljetuksen pakokaasupäästöt! · Kuljetuksen pölypäästöt! · Työkoneet · Hihnakuljetus · Energiantuotanto · Polttomoottorit! · Sähköntuotanto ! · Boilerit ! · Varastointi · Kaivannaisjäte · Sivukivi · Rikastushiekka

Muut päästöt

Haju · Kaasut · Typpi · Säteily! · Tärinä · Jätevesi · Varastoinnin vesipäästö · Mallinnusohjelmat · Rikastuskemikaalipäästöt · Melu

Pitoisuus ympäristössä

Pohjavesi · Pintavesi · Kulkeutuminen vedessä! · Sedimentit · Sedimentit (mittaukset) · Sedimentit (huokosvedet) · Maaperä! · Maaperän terveysriskinarvio

Ihmiset Ympäristö ja ekologia
Altistuminen

Altistumisen arviointi

Nisäkkäät ja linnut · Kasvit! · Maaselkärangattomat! · Ravinto!

Vaikutus

Terveysriskinarvioinnin rakenne · Riskinarviointiohjeet: · Pohjavesi · Pintavesi · Pöly · Kaasumaiset ilman epäpuhtaudet · Maaperä · Tärinä · Haju · Säteily! · Maaperän terveysriski · Kaasut · Melu · Pienhiukkasvaikutukset! · Terveysriskin kuvaus

Vesistöt · Maaperä · Sedimentti · Ekologinen riskinarviointi: · Ekologisten vaikutusten arviointi · Kohdekohtaisen mallin vaiheet · Alustus · Kohdetutkimukset · Vaikutusten arviointi · Mittauksiin perustuva arvio · Luonnehdinta

Integroitu riskinarvio

Integroitu riskinarvio · Viitearvoja

Muita Minera-projektin tuotoksia
Minera-mallin sovelluksia

· Luikonlahden tapaustutkimus · Luikonlahden sienitutkimusraportti

Muut

· Metallimalmikaivostoiminnan parhaat ympäristökäytännöt · Minera-hanke · MINERA Loppuseminaari · Kauppila T, Makkonen S, Komulainen H, Tuomisto JT: Metallikaivosalueiden ympäristöriskinarviointiosaamisen kehittäminen: MINERA-hankkeen loppuraportti. · Lehdistötiedote 15.4.2013 · Kohdekohtainen esimerkki · Lyhenteet ja määritelmät · Loppuraportti kokonaismalli · Kaivostoiminnan ympäristöterveysriskien arviointi (suojattu sivu) · Mallinnusohjelmat päästöjen arvioinnissa · Viitearvot · Talvivaaran kaivoksen terveysvaikutukset · Loppuraportti · Raportti · Yaran tapaustutkimus

Muita kaivostoimintaan liittyvää

· Vesijalanjälki · Hyvä kaivos pohjoisessa · Yhteiskuntatieteellinen kaivostutkimus Itä-Suomen yliopistossa · Teemasivu:Kaivostoiminnan vaikutusarviointi


Viitteet


Aiheeseen liittyviä tiedostoja

<mfanonymousfilelist></mfanonymousfilelist>