The functions that form this module take the emission sets per TM5-FASST region and year generated in Module 1 (by m1_emissions_rescale), and estimate the fine particulate matter (PM2.5) and ozone (O3) concentration levels for each period and TM5-FASST region. In particular the package reports the following range of PM2.5 and O3 indicators:

Fine particulate matter (PM2.5) concentration levels (m2_get_conc_pm25)

knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)
library(rfasst)
library(magrittr)

 db_path<-"path_to_your_gcam_database"
 query_path<-"path_to_your_gcam_queries_file"
 db_name<-"name of the database"
 prj_name<-"name for a Project to add extracted results to" # (any name should work, avoid spaces just in case) 
 scen_name<-"name of the GCAM scenario"
 queries<-"Name of the query file" # (the package includes a default query file that includes all the queries required in every function in the packae, "queries_rfasst.xml")
 saveOutput: Writes the files.By default=T
 map: Produce the maps. By default=F

  # To write the csv files into the output folder:

     m2_get_conc_pm25(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=T,map=F) 

  # To save as data frame pm2.5 concentration levels by TM5-FASST region in year 2050:

     pm25.conc.2050<-dplyr::bind_rows(m2_get_conc_pm25(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=F)) %>% dplyr::filter(year==2050) 

     head(pm25.conc.2050)
library(rfasst)
library(magrittr)

 db_path<-"path_to_your_gcam_database"
 query_path<-"path_to_your_gcam_queries_file"
 db_name<-"name of the database"
 prj_name<-"name for a Project to add extracted results to" # (any name should work, avoid spaces just in case) 
 scen_name<-"name of the GCAM scenario",
 queries<-"Name of the query file" # (the package includes a default query file that includes all the queries required in every function in the packae, "queries_rfasst.xml")
 saveOutput: Writes the files.By default=T
 map: Produce the maps. By default=F

  # To write the csv files into the output folder:

     m2_get_conc_o3(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=T,map=F) 

  # To save as data frame ozone (O3) concentration levels by TM5-FASST region in year 2050:

     o3.conc.2050<-dplyr::bind_rows(m2_get_conc_o3(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=F)) %>% dplyr::filter(year==2050) 

     head(o3.conc.2050)
library(rfasst)
library(magrittr)

 db_path<-"path_to_your_gcam_database"
 query_path<-"path_to_your_gcam_queries_file"
 db_name<-"name of the database"
 prj_name<-"name for a Project to add extracted results to" # (any name should work, avoid spaces just in case) 
 scen_name<-"name of the GCAM scenario",
 queries<-"Name of the query file" # (the package includes a default query file that includes all the queries required in every function in the packae, "queries_rfasst.xml")
 saveOutput: Writes the files.By default=T
 map: Produce the maps. By default=F

  # To write the csv files into the output folder:

     m2_get_conc_m6m(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=T,map=F) 

  # To save as data frame ozone-M6M (6mDMAI) concentration levels by TM5-FASST region in year 2050:

     m6m.conc.2050<-dplyr::bind_rows(m2_get_conc_m6m(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=F)) %>% dplyr::filter(year==2050) 

     head(m6m.conc.2050)
library(rfasst)
library(magrittr)

 db_path<-"path_to_your_gcam_database"
 query_path<-"path_to_your_gcam_queries_file"
 db_name<-"name of the database"
 prj_name<-"name for a Project to add extracted results to" # (any name should work, avoid spaces just in case) 
 scen_name<-"name of the GCAM scenario"
 queries<-"Name of the query file" # (the package includes a default query file that includes all the queries required in every function in the packae, "queries_rfasst.xml")
 saveOutput: Writes the files.By default=T
 map: Produce the maps. By default=F

  # To write the csv files into the output folder:

     m2_get_conc_aot40(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=T,map=F) 

  # To save as data frame ozone-AOT40 concentration levels by TM5-FASST region in year 2050:

     aot40.conc.2050<-dplyr::bind_rows(m2_get_conc_aot40(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=F)) %>% dplyr::filter(year==2050) 

     head(aot40.conc.2050)
library(rfasst)
library(magrittr)

 db_path<-"path_to_your_gcam_database"
 query_path<-"path_to_your_gcam_queries_file"
 db_name<-"name of the database"
 prj_name<-"name for a Project to add extracted results to" # (any name should work, avoid spaces just in case) 
 scen_name<-"name of the GCAM scenario",
 queries<-"Name of the query file" # (the package includes a default query file that includes all the queries required in every function in the packae, "queries_rfasst.xml")
 saveOutput: Writes the files.By default=T
 map: Produce the maps. By default=F

  # To write the csv files into the output folder:

     m2_get_conc_mi(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=T,map=F) 

  # To save as data frame ozone-Mi concentration levels by TM5-FASST region in year 2050:

     mi.conc.2050<-dplyr::bind_rows(m2_get_conc_mi(db_path,query_path,db_name,prj_name,scen_name,queries,saveOutput=F)) %>% dplyr::filter(year==2050) 

     head(mi.conc.2050)

In addition, for all these functions, the package allows to produce different figures and/or animations, generated using the rmap package documented in the following page. To generate these maps, the user needs to include the map=T parameter, and they will be generated and stored in the corresponding output sub-directory. As an example for this module, the following map shows the PM2.5 concentrations in 2050:

PM2.5 concntration by region in 2050 (ug/m3)

As indicated in the documentation of TM5-FASST Van Dingenen et al 2018,estimates of PM2.5 and O3 concentration levels in a receptor region driven by the emissions of different precursors in different sources are based on parametrizations of meteorology and atmospheric chemistry drawn from the more complex TM5 model. In summary, concentration of a pollutant $j$, in region $y$, from all the precursors ($i$) emitted in all regions ($x_k$), is calculated as:

$$C_j (y)=C_{j,base} (y)+βˆ‘{k=1}^{n_x}βˆ‘{i=1}^{n_i}SRC_{i,j} [x_k,y]\cdot[E_i (x_k)-E_{i,base} (x_k )]$$

Following this equation, base-run emissions and concentrations, and source-receptor coefficient matrixes need to be combined with emissions pathways for the analyzed scenario. The package includes the following input information:

The package also includes the base emission and concentration levels for all these indicators.

In addition, primary PM2.5 emissions (BC and POM) are assumed to have a more direct influence in urban (more dense) areas, so the emission-concentration relation for these two pollutants is modified using adjustment coefficients that are included in the package.



JGCRI/rfasst documentation built on Feb. 2, 2023, 12:14 a.m.