Health impacts of waterborne microbes: Difference between revisions

From Opasnet
Jump to navigation Jump to search
 
(15 intermediate revisions by the same user not shown)
Line 28: Line 28:
Daily cold tap water use of Finns  
Daily cold tap water use of Finns  


<rcode name="consumption">
<rcode
      name="consumption"
      label="Initialize water use"
      embed=1
>
# This is code Op_en7957/consumption on page [[Health impacts of waterborne microbes]]
# This is code Op_en7957/consumption on page [[Health impacts of waterborne microbes]]
library(OpasnetUtils)
library(OpasnetUtils)
Line 34: Line 38:
Wateruse = Ovariable("Wateruse", data = data.frame(WateruseResult = 1153))
Wateruse = Ovariable("Wateruse", data = data.frame(WateruseResult = 1153))


objects.save(Wateruse)
objects.store(Wateruse)
cat("Ovariable Wateruse saved. \n")


oprint(Wateruse)
</rcode>
</rcode>


 
<rcode
<rcode name="rawconsumption">
        name="rawconsumption"
        label="Initialize raw consumption"
embed=1
>
# This is code Op_en7957/rawconsumption in page [[Health impacts of waterborne microbes]]
# This is code Op_en7957/rawconsumption in page [[Health impacts of waterborne microbes]]
library(OpasnetUtils)
library(OpasnetUtils)
Line 52: Line 59:


objects.store(RawConsumption)
objects.store(RawConsumption)
cat("Ovariable RawConsumption saved. \n")


oprint(RawConsumption)
</rcode>
</rcode>


Concentrations of pathogens in drinking water
Log decrease of concentration of microbes in drinking water due to water treatment


<rcode  
<rcode  
name="pathconcentration"  
name="logdecrease"  
label="Initialize variable"  
label="Initialize microbe log decrease"  
graphics="1"
graphics="1"
embed=1
>
>
#This is code "Op_en7957/pathconcentration" on page [[Health impacts of waterborne microbes]]
#This is code "Op_en7957/logdecrease" on page [[Health impacts of waterborne microbes]]
library(OpasnetUtils)
library(OpasnetUtils)


dependencies <- data.frame(
Name = c("RawConcentration", "Disinfection", "TreatmentEfficiency", "ChlorineEfficiency"),
MicrobeLogDecrease <- Ovariable("MicrobeLogDecrease",
Ident = c("Op_en7953/variable", "Op_en7955/variable", "Op_en7954/variable", "Op_en7956/efficiency")
                                dependencies=data.frame(
                                  Name=c("TreatmentEfficiency", "ChlorineEfficiency", "OzoneEfficiency", "UVEfficiency"),
                                  Ident=c("Op_en7954/variable", "Op_en7956/efficiency", "Op_en7955/ozefficiency", "Op_en7955/uvefficiency")
                                ),
                                formula=function(...){
                                  # Calculate the total log decrease of pathogen concentration from treatment methods
                                  MicrobeLogDecrease <- oapply(TreatmentEfficiency, cols="TreatmentMethod", FUN=sum)
                                  # Then sum that with the disinfection methods to get the total microbe log decrease
                                  MicrobeLogDecrease <- MicrobeLogDecrease+ChlorineEfficiency+OzoneEfficiency+UVEfficiency
                                 
                                  return(MicrobeLogDecrease)
                                }
 
 
)
)


funktio <- function(...) {
objects.store(MicrobeLogDecrease)
cat("Ovariable MicrobeLogDecrease saved. \n")
 
</rcode>
#MicrobeLogDecrease <- combine(Disinfection, TreatmentEfficiency, ChlorineEfficiency, name = "MicrobeLogDecrease")
Pathogen concentration in drinking water
 
#MicrobeLogDecrease@output[["TreatmentMethod"]][
<rcode
# MicrobeLogDecrease@output[["MicrobeLogDecreaseSource"]] == "ChlorineEfficiencyF"
name="pathconcentration"  
#] <- "Chlorination"
label="Initialize pathogen concentration"  
graphics="1"
#MicrobeLogDecrease <- oapply(MicrobeLogDecrease, cols = c("TreatmentMethod", "ChlorineDoseSource"), FUN = sum, na.rm = TRUE)
embed=1
# Varo laskemasta kloorausta monesti
>
#This is code "Op_en7957/pathconcentration" on page [[Health impacts of waterborne microbes]]
#MicrobeLogDecrease@output <- fillna(MicrobeLogDecrease@output, colnames(MicrobeLogDecrease@output)[MicrobeLogDecrease@marginal])
library(OpasnetUtils)
 
MicrobeLogDecrease <- orbind(Disinfection, TreatmentEfficiency)
TreatedConcentration <- Ovariable("TreatedConcentration", dependencies = data.frame(
MicrobeLogDecrease <- orbind(MicrobeLogDecrease, ChlorineEfficiency)
                                  Name=c("RawConcentration", "MicrobeLogDecrease"),
                                  Ident=c("Op_en7953/variable", "Op_en7957/logdecrease")
MicrobeLogDecrease <- fillna(MicrobeLogDecrease, grep("Source$", colnames(MicrobeLogDecrease)))
                                  ),
                                  formula = function(...){
MicrobeLogDecrease$DisinfectionResult[is.na(MicrobeLogDecrease$DisinfectionResult)] <- 0
MicrobeLogDecrease$TreatmentEfficiencyResult[is.na(MicrobeLogDecrease$TreatmentEfficiencyResult)] <- 0
MicrobeLogDecrease$ChlorineEfficiencyResult[is.na(MicrobeLogDecrease$ChlorineEfficiencyResult)] <- 0
MicrobeLogDecrease$MicrobeLogDecreaseResult <- MicrobeLogDecrease$DisinfectionResult +
MicrobeLogDecrease$TreatmentEfficiencyResult + MicrobeLogDecrease$ChlorineEfficiencyResult
MicrobeLogDecrease <- Ovariable(
"MicrobeLogDecrease",  
dependencies = data.frame(
Name = c("Disinfection", "TreatmentEfficiency", "ChlorineEfficiency")
),
output = MicrobeLogDecrease
)
MicrobeLogDecrease <- CheckMarginals(MicrobeLogDecrease, verbose = FALSE)
MicrobeLogDecrease <- oapply(MicrobeLogDecrease, cols = c("TreatmentMethod"), FUN = sum, na.rm = TRUE)
out <- RawConcentration * 10 ^(-1*(MicrobeLogDecrease))
return(out@output)
}


TreatedConcentration <- Ovariable("TreatedConcentration", dependencies = dependencies, formula = funktio)
                                    # Calculate the concentration of bacteria after treatment from log decrease
                                    out <- RawConcentration * 10 ^(-1*(MicrobeLogDecrease))
                                   
                                    return(out)
                                  })


objects.store(TreatedConcentration)
objects.store(TreatedConcentration)
cat("Ovariable TreatedConcentration saved. \n")


</rcode>
</rcode>
Line 125: Line 128:
The amount of pathogens an average water consumer is exposed to in a day
The amount of pathogens an average water consumer is exposed to in a day


<rcode name="exposure">
<rcode
        name="exposure"
        label="Initialize exposure"
embed=1
>
#This is code "Op_en7957/exposure" on page [[Health impacts of waterborne microbes]]
#This is code "Op_en7957/exposure" on page [[Health impacts of waterborne microbes]]
library(OpasnetUtils)
library(OpasnetUtils)


Exposure <- Ovariable("Exposure",  
exposure <- Ovariable("exposure",  
                       dependencies = data.frame(
                       dependencies = data.frame(
                         Name = c("TreatedConcentration", "RawConsumption"),
                         Name = c("TreatedConcentration", "RawConsumption"),
Line 135: Line 142:
                         ),
                         ),
                       formula = function(...){
                       formula = function(...){
                         return(TreatedConcentration * RawConcumption)
                        out <- TreatedConcentration * RawConsumption
                        colnames(out@output)[colnames(out@output) == "Pathogen"] <- "Exposure_agent"
                         return(out)
                       }
                       }
)
)


objects.store(Exposure)
objects.store(exposure)
cat("Ovariable exposure saved. \n")


</rcode>
</rcode>

Latest revision as of 10:10, 11 September 2019



Question

What are the health impacts of waterborne microbes in drinking water?

Answer

Rationale

Data

Health impacts of waterborne microbes depends on the following parameters:

Calculations

RCode

Daily cold tap water use of Finns

+ Show code

+ Show code

Log decrease of concentration of microbes in drinking water due to water treatment

+ Show code

Pathogen concentration in drinking water

+ Show code

The amount of pathogens an average water consumer is exposed to in a day

+ Show code

See also