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

Opasnet Suomista
Siirry navigaatioon Siirry hakuun
(→‎Laskenta: koodi toimii mutta kaksi bugia)
(→‎Laskenta: nyt koodi toimii)
Rivi 20: Rivi 20:
'''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.


LA|Leveyspiiri|61.126744|
LO|Pituuspiiri|21.499386|
päästö|Pienhiukkaspäästö (ton/a)|0.5|


<rcode  
<rcode  
variables = "
variables = "
LA|Leveyspiiri|61.126744|
LO|Pituuspiiri|21.499386|
päästö|Pienhiukkaspäästö (ton/a)|0.5|
N|Iteraatioiden määrä|1
N|Iteraatioiden määrä|1
"  
"  
Rivi 74: Rivi 74:


out <- tieliikennepäästöt * 365 * 10E-6 # Muutetaan päiväpäästö vuosipäästöksi ja grammat tonneiksi
out <- tieliikennepäästöt * 365 * 10E-6 # Muutetaan päiväpäästö vuosipäästöksi ja grammat tonneiksi
 
out <- out / 10 # En ymmärrä miksi tulos on 10 kertaa liian suuri, mutta tämä toivottavasti korjaa sen.
return(out)
return(out)
}
}
Rivi 109: Rivi 109:


## Altistuminen
## Altistuminen
riippuvuudet2 <- data.frame(
Name = c("Pitoisuus", "LO", "LA")
)
funktio2 <- function(dependencies, ...) {
ComputeDependencies(dependencies, ...)
Altistuminen <- GIS.Exposure(Pitoisuus, LO, LA, ...)
return(Altistuminen)
}


Altistuminen <- new(
Altistuminen <- new(
"ovariable",  
"ovariable",  
name = "Altistuminen",  
name = "Altistuminen",  
formula = funktio2,  
dependencies = data.frame(
dependencies = riippuvuudet2
Name = c("Pitoisuus", "LO", "LA")
)
),
formula = function(dependencies, ...) {
ComputeDependencies(dependencies, ...)


## Terveysvaikutukset
out <- GIS.Exposure(Pitoisuus, LO, LA, ...)


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


funktio3 <- function(dependencies, ...) {
## Terveysvaikutukset
ComputeDependencies(dependencies, ...)
out <- Altistuminen * erf * bg.mort
return(out)
}


Terveysvaikutukset <- new(
Terveysvaikutukset <- new(
"ovariable",  
"ovariable",  
name = "Terveysvaikutukset",  
name = "Terveysvaikutukset",  
formula = funktio3,  
dependencies = data.frame(
dependencies = riippuvuudet3
Name = c("Altistuminen", "erf", "bg.mort")
),
formula = function(dependencies, ...) {
ComputeDependencies(dependencies, ...)
out <- Altistuminen * erf * bg.mort
return(out)
}
)
)


Rivi 153: Rivi 145:
Päästö.temp@output <- Päästö.temp@output[Päästö.temp@output$Saaste == "PM", ]
Päästö.temp@output <- Päästö.temp@output[Päästö.temp@output$Saaste == "PM", ]


#Päästö.temp
for(i in 1:nrow(Päästö.temp@output)) {


for(i in 1:nrow(Päästö.temp@output)) {
# Tässä on tarkoituksena käydä läpi yksi päästölähde kerrallaan ja laskea sille pitoisuus, altistus ja terveysvaikutus.
 
Päästö <- Päästö.temp@output$PäästöResult[i]
LA <- as.numeric(as.character(Päästö.temp@output$LA[i]))
LO <- as.numeric(as.character(Päästö.temp@output$LO[i]))


# Tässä on tarkoituksena käydä läpi yksi päästölähde kerrallaan ja laskea sille pitoisuus, altistus ja terveysvaikutus.
# EvalOutput käyttää tilapäisiä, rivikohtaisia tietoja. Vai käyttääkö?


Päästö <- Päästö.temp@output$PäästöResult[i]
temp <- EvalOutput(Terveysvaikutukset, N = N)@output$TerveysvaikutuksetResult
LA <- as.numeric(as.character(Päästö.temp@output$LA[i]))
LO <- as.numeric(as.character(Päästö.temp@output$LO[i]))


# EvalOutput käyttää tilapäisiä, rivikohtaisia tietoja. Vai käyttääkö?
# Terveysvaikutus sijoitetaan Päästö-muuttujan sisään, koska se on oikean muotoinen.


temp <- EvalOutput(Terveysvaikutukset, N = N)@output$TerveysvaikutuksetResult
Päästö.temp@output$TerveysvaikutuksetResult[i] <- temp
cat("Terveysvaikutus\n")
print(temp)


# Terveysvaikutus sijoitetaan Päästö-muuttujan sisään, koska se on oikean muotoinen.
# Nollataan Altistuminen ja Pitoisuus, jotta malli laskee ne uusiksi uudelle päästölle.


Päästö.temp@output$TerveysvaikutuksetResult[i] <- temp
Altistuminen@output <- data.frame()
Pitoisuus@output <- data.frame()


}
}


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


temp <- as.data.frame(as.table(tapply(Päästö.temp@output$TerveysvaikutuksetResult, Päästö.temp@output[c("Vaihtoehto", "Ajoneuvo")], sum)))
temp <- as.data.frame(as.table(tapply(Päästö.temp@output$TerveysvaikutuksetResult, Päästö.temp@output[c("Vaihtoehto")], sum)))
print(xtable(temp), type = 'html')
print(xtable(temp), type = 'html')


Rivi 223: Rivi 213:
truncated = c()
truncated = c()
for(i in 1:nrow(data)){
for(i in 1:nrow(data)){
if (data$concentration[i] > 1)
if (data$concentration[i] > 1)
{
{
  truncated[i] <- 1
truncated[i] <- 1
}  
}  
else
else
{
{
  truncated[i] <- data$concentration[i]
truncated[i] <- data$concentration[i]
}
}
}
}


Rivi 268: Rivi 258:


{{vastusta|#: |Koodi toimii mutta Päästö on 10 kertaa liian iso verrattuna Tieliikennepäästöt-muuttujaan.|--[[Käyttäjä:Jouni|Jouni Tuomisto]] 15. lokakuuta 2012 kello 22.11 (EEST)}}
{{vastusta|#: |Koodi toimii mutta Päästö on 10 kertaa liian iso verrattuna Tieliikennepäästöt-muuttujaan.|--[[Käyttäjä:Jouni|Jouni Tuomisto]] 15. lokakuuta 2012 kello 22.11 (EEST)}}
{{vastusta|#: |Terveysvaikutus on joka päästörivillä samansuuruinen. Ottaako koodi päästötiedon aina jostain globaalimuuttujasta, vaikka Päästö-muuttujaa muutetaan for-loopin sisällä joka kerran?|--[[Käyttäjä:Jouni|Jouni Tuomisto]] 15. lokakuuta 2012 kello 22.11 (EEST)}}


Ovariablet:
Ovariablet:

Versio 15. lokakuuta 2012 kello 19.35


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.

LA|Leveyspiiri|61.126744| LO|Pituuspiiri|21.499386| päästö|Pienhiukkaspäästö (ton/a)|0.5|

Iteraatioiden määrä (N):

+ Näytä koodi

#: Koodi toimii mutta Päästö on 10 kertaa liian iso verrattuna Tieliikennepäästöt-muuttujaan. --Jouni Tuomisto 15. lokakuuta 2012 kello 22.11 (EEST)

Ovariablet:

  • Terveysvaikutukset: syötteenä Altistuminen * erf * bg.mort
    • erf: vakio, annetaan koodissa
    • bg.mort: vakio, annetaan koodissa
    • Altistuminen: syötteenä Pitoisuus, LO, LA
      • LO ja LA: saadaan muuttujan suorite sarakkeista LO ja LA.
      • Pitoisuus: syötteenä Päästö, LO, LA.

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>