Ero sivun ”Pienhiukkaspäästöt Raumalla” versioiden välillä

Opasnet Suomista
Siirry navigaatioon Siirry hakuun
(liikennemäärätaulukko lisätty)
(→‎Perustelut: koodia paranneltu, ei toimi)
Rivi 15: Rivi 15:


==Perustelut==
==Perustelut==
===Laskenta===


'''HUOM! Tällä hetkellä malli laskee ainoastaan pienhiukkaspäästön leviämisen 10-15 km:n säteellä olevaan väestöön. Mallia päivitetään jatkuvasti.
'''HUOM! Tällä hetkellä malli laskee ainoastaan pienhiukkaspäästön leviämisen 10-15 km:n säteellä olevaan väestöön. Mallia päivitetään jatkuvasti.
Rivi 50: Rivi 52:
}
}


# suorite
data <- tidy(op_baseGetData("opasnet_base", "Op_fi3190"), objname = "suorite")
data$suoriteResult <- data$suoriteLiikennemäärä * data$suoritePituus
suorite <- new("ovariable",
name = "suorite",
data = data
)
print(xtable(suorite@data), type = 'html')


# Päästö
# Päästö
Rivi 56: Rivi 69:
"ovariable",  
"ovariable",  
name = "Päästö",
name = "Päästö",
output = data.frame(PäästöResult = päästö), # unit: Mg /a
dependencies = data.frame(Name = "tieliikennepäästöt", Key = "0194s0uuucjxq8Wi"),
marginal = FALSE
formula = function(dependencies, ...) {
ComputeDependencies(dependencies, ...)
 
out <- tieliikennepäästöt * 365 * 10E-6 # Muutetaan päiväpäästö vuosipäästöksi ja grammat tonneiksi
 
return(out)
}
)
)


Rivi 66: Rivi 85:
erf <- 0.0097 # J. T. Tuomisto, A. Wilson, et al. Uncertainty in mortality response to airborne fine particulate matter... 2008
erf <- 0.0097 # J. T. Tuomisto, A. Wilson, et al. Uncertainty in mortality response to airborne fine particulate matter... 2008
# unit: m^-3 /ug
# unit: m^-3 /ug
print(xtable(EvalOutput(Päästö, N = 1)), type = 'html')
</rcode>


# Ovariablet
# Ovariablet
Rivi 131: Rivi 154:
Terveysvaikutukset <- EvalOutput(Terveysvaikutukset, N = N)
Terveysvaikutukset <- EvalOutput(Terveysvaikutukset, N = N)


print(xtable(suorite@output), type = 'html')
print(xtable(Päästö@output), type = 'html')
print(xtable(Päästö@output), type = 'html')
print(xtable(Altistuminen@output), type = "html")
print(xtable(Altistuminen@output), type = "html")

Versio 15. lokakuuta 2012 kello 14.03


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

Kuinka suuret ovat pienhiukkaspäästöt Raumalla, ja mitä terveysvaikutuksia niillä on?

Erityisesti kiinnostavat satamatoiminnasta aiheutuvat päästöt.

Vastaus

Päästöt ovat hyvin alustavien laskelmien mukaan 0.5 ton /a. Tämä kuitenkin sisältää vain tavarakuljetukset satamaan ja satamasta Rauman lähialueella. Terveysvaikutuksia tästä tulee 0.04 - 0.3 laskennallista ylimääräistä kuolemantapausta vuodessa.

Perustelut

Laskenta

HUOM! Tällä hetkellä malli laskee ainoastaan pienhiukkaspäästön leviämisen 10-15 km:n säteellä olevaan väestöön. Mallia päivitetään jatkuvasti.


Leveyspiiri (LA):

Pituuspiiri ( LO):

Pienhiukkaspäästö (ton/a) ( päästö):

Iteraatioiden määrä ( N):

+ Näytä koodi

  1. Ovariablet
    1. Pitoisuudet


Pitoisuus <- new( "ovariable", name = "Pitoisuus", formula = function(dependencies, ...) { ComputeDependencies(dependencies, ...)

temp <- GIS.Concentration.matrix(Päästö, LO, LA, ...)

return(temp) }, dependencies = data.frame( Name = c("Päästö", "LO", "LA") ) )

    1. Altistuminen

riippuvuudet2 <- data.frame( Name = c("Pitoisuus", "LO", "LA") )

funktio2 <- function(dependencies, ...) { ComputeDependencies(dependencies, ...)

Altistuminen <- GIS.Exposure(Pitoisuus, LO, LA, ...)

return(Altistuminen) }

Altistuminen <- new( "ovariable", name = "Altistuminen", formula = funktio2, dependencies = riippuvuudet2 )

    1. Terveysvaikutukset

riippuvuudet3 <- data.frame( Name = c("Altistuminen", "erf", "bg.mort") )

funktio3 <- function(dependencies, ...) { ComputeDependencies(dependencies, ...)

temp <- Altistuminen * erf * bg.mort

return(temp) }

Terveysvaikutukset <- new( "ovariable", name = "Terveysvaikutukset", formula = funktio3, dependencies = riippuvuudet3 )

Terveysvaikutukset <- EvalOutput(Terveysvaikutukset, N = N)

print(xtable(suorite@output), type = 'html') print(xtable(Päästö@output), type = 'html') print(xtable(Altistuminen@output), type = "html") print(xtable(Terveysvaikutukset@output), type = "html")


  1. exposure.Population <- tapply(Population.paasto$Pitoisuus * Population.paasto$Result, Population.paasto[,c("obs")], sum)
  1. cat("Odotusarvo kuolemille vuodessa:", mean(mort.out), "\n")
  1. cat("Ohjearvon 40 ugm^-3 mukaisen altistusrajan ylitti", sum(Population.paasto.korjaus$Vaesto[Population.paasto.korjaus$Pitoisuus>40]), "asukasta.\n")
                                                                  1. 3
  1. Draw a concentration map.

temp <- EvalOutput(Pitoisuus, N = 1)

temp2 <- gsub("\\(", "", temp@output$LObin) temp2 <- gsub("\\]", "", temp2) temp2 <- strsplit(temp2, ",")

temp3 <- c()

for(i in 1:length(temp2)) { a <- as.numeric(temp2i[1]) b <- as.numeric(temp2i[2]) temp3[i] <- ((a + b) / 2) }

temp@output$LO <- temp3

temp2 <- gsub("\\(", "", temp@output$LAbin) temp2 <- gsub("\\]", "", temp2)

temp2 <- strsplit(temp2, ",")

temp3 <- c()

for(i in 1:length(temp2)){

a <- as.numeric(temp2i[1])
b <- as.numeric(temp2i[2])
temp3[i] <- ((a + b) / 2)

} temp@output$LA <- temp3

  1. print(temp)

data <- data.frame(LO=temp@output$LO, LA=temp@output$LA, concentration=temp@output$PitoisuusResult)

truncated = c() for(i in 1:nrow(data)){

if (data$concentration[i] > 1)
{
 truncated[i] <- 1
} 
else
{
 truncated[i] <- data$concentration[i]
}

}

data$truncated_concentration <- truncated


  1. Plot the data

coordinates(data)=c("LO","LA") proj4string(data)<-("+init=epsg:4326") epsg4326String <- CRS("+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs") shp<-spTransform(data,epsg4326String)

  1. Create blank raster

rast<-raster()

  1. Set raster extent to that of point data

extent(rast)<-extent(shp)

  1. Choose number of columns and rows

ncol(rast) <- 42 nrow(rast) <- 40

  1. cat("PM2.5\n")
  1. Rasterize point data

rast2<-rasterize(shp, rast, shp$truncated_concentration, fun=mean)

steps <- c(0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1) colors <- rev(rainbow(length(steps), start=0, end=0.50))

colorstrip(colors, steps)

  1. Plot data

google.show_raster_on_maps(rast2, col=colors, style="height:500px;")

</rcode>

Data

Ero sivun ”Pienhiukkaspäästöt Raumalla” versioiden välillä(-)
ObsVaihtoehtoAjoneuvoAjotapaLALOUnitLiikennemääräPituusDescription
1Rakennemalli 1TäysperävaunuyhdistelmäMaantieajo 70 % kuormalla61.13163421.491318kpl-km /d26629.5Päästöpiste oletetaan lähelle Rauman keskustaa
2Rakennemalli 1Sähköjuna61.13163421.491318ton-km /d69539.5Päästöpiste oletetaan lähelle Rauman keskustaa
3Rakennemalli 1Dieseljuna61.13163421.491318ton-km /d69539.5Päästöpiste oletetaan lähelle Rauman keskustaa
4Rakennemalli 2TäysperävaunuyhdistelmäMaantieajo 70 % kuormalla61.13163421.491318kpl-km /d12469.5Päästöpiste oletetaan lähelle Rauman keskustaa
5Rakennemalli 2TäysperävaunuyhdistelmäMaantieajo 70 % kuormalla61.10669821.492348kpl-km /d165310.1Päästöpiste oletetaan valtatielle 8.
6Rakennemalli 2Sähköjuna61.09780221.492691ton-km /d277514.9Päästöpiste oletetaan eteläiselle ratalinjaukselle
7Rakennemalli 2Dieseljuna61.09780221.492691ton-km /d277514.9Päästöpiste oletetaan eteläiselle ratalinjaukselle
8Rakennemalli 2Sähköjuna61.13163421.491318ton-km /d32549.5Päästöpiste oletetaan lähelle Rauman keskustaa
9Rakennemalli 2Dieseljuna61.13163421.491318ton-km /d32549.5Päästöpiste oletetaan lähelle Rauman keskustaa
10Rakennemalli 3TäysperävaunuyhdistelmäMaantieajo 70 % kuormalla61.13163421.491318kpl-km /d26629.5Päästöpiste oletetaan lähelle Rauman keskustaa
11Rakennemalli 3Sähköjuna61.13163421.491318ton-km /d69539.5Päästöpiste oletetaan lähelle Rauman keskustaa
12Rakennemalli 3Dieseljuna61.13163421.491318ton-km /d69539.5Päästöpiste oletetaan lähelle Rauman keskustaa
  • Taulukko sisältää sen liikenteen, joka muuttuu eri rakennemallivaihtoehdoissa eli satama-alueen ja Rauman sisällä keskustan tai ohiajotien alueella. Liikennemääristä oletettiin, että Rakennemallissa 1 ja 3 liikenne vastaa suunnitelmaa Satama-Ve2 (Ruuhiluoto) ja Rakennemallissa 2 suunnitelmaa Satama-Ve3 (Järviluoto).
  • Reittien pituudet ja oletetut päästöpisteet (jotka on valittu siten, että ne edustaisivat tyypillistä etäisyyttä väestöstä) löytyvät Google-kartasta sivulta Rauman sataman laajennuksen vaikutus terveyteen.
  • Liikennemäärät on otettu Rauman sataman laajennoksen YVA-selostuksesta[1], josta määrät on laskettu päivää kohti.
    • Junien osalta oletetaan, että puolet on sähköjunia ja puolet dieseljunia.

Katso myös

Viitteet

Aiheeseen liittyviä tiedostoja

<mfanonymousfilelist></mfanonymousfilelist>