Rcaline
provides an interface to the CALINE family of line-source atmospheric dispersion models (Benson 1979, 1992). These steady-state, Gaussian dispersion models are used to predict pollutant concentrations downwind from mobile emission sources such as highway traffic.
if (!require(devtools)) install.packages("devtools")
devtools::install_github("BAAQMD/Rcaline")
vignette("SanFrancisco", package = "Rcaline")
At the heart of Rcaline
is a Fortran library, libcal3qhcr
, that wraps original code from the CALINE3 implementation created by the California Department of Transportation (CALTRANS). Given the same inputs, libcal3qhcr
has been tested to produce identical outputs. However, libcal3qhcr
removes significant limitations found in previous implementations of CALINE: for example, libcal3qhcr
can be used to model an unlimited number of roadway links and an unlimited number of receptors, bound only by available memory and CPU resources.
By providing access to libcal3qhcr
within the R environment, Rcaline
also makes it much easier to use features of the CALINE3 model family with contemporary data sources, such as ESRI shapefiles. Rcaline
also provides full machine-precision access to CALINE3 model results in a convenient format. Thus, it's easy to use basic R commands---or third-party R packages---to visualize, compare, and export model results. Accompanying vignettes illustrate the use of several complementary packages, including sp
, rgdal
, rgeos
, and ggplot2
, for handling spatial data and plotting results.
Finally, the R environment also provides useful scripting capabilities for automating large batches of model runs. For advanced users, it is possible to combine Rcaline
with parallel computing tools, like the foreach
package, to achieve significant speed gains in large model runs (e.g., ~4x on a modern 4-core machine, or 8x on an 8-core machine) in pure R. Within a shell environment, Rcaline
can also be scripted, with the use of GNU make
, qsub
, or other distributed computing tools.
The CALINE3 model was originally developed for modeling the dispersion of carbon monoxide (CO) from free-flow traffic, over homogeneous terrain, where wind speeds generally exceed 1.0 m/s. As with any model, care should be exercised to ensure that the practical application is theoretically well founded. For more on the theoretical scope and limitations of the CALINE model family, including terrain and other considerations, see Benson (1992).
The author thanks Profs. Edmund Seto and Michael Jerrett of the UC Berkeley School of Public Health, Division of Environmental Health Sciences, as well as the UC Berkeley Center for Information Technology in the Interests of Society (CITRIS), for their generous support of the development of Rcaline
and libcal3qhcr
. Sincere thanks also go to Phil Martien of the Bay Area Air Quality District (BAAQMD), who generously contributed user testing, feedback, and support leading to the 1.0 release.
Rcaline is still in development, and feedback is welcome. If you have questions, suggestions, or related work to discuss, or if you have additional datasets that you would like to contribute to the Rcaline
package, please contact the package maintainer, \href{mailto:[email protected]}{[email protected]}.
- P.E. Benson. CALINE3: a versatile dispersion model for predicting air pollutant levels near highways and arterial streets. Interim report. Technical report, PB-80-220841, California State Dept. of Transportation, Sacramento, 1979.
- P.E. Benson. A review of the development and application of the CALINE3 and 4 models. Atmospheric Environment. Part B. Urban Atmosphere, 26(3):379–390, 1992.