radarlabviewer
The radar lab viewer is an interactive viewer of simulated radar reflectivities of a model simulation. Initially designed for an undergraduate radar and satellite course, this applet provides the capability to display vertical and horizontal cross sections of a weather scene.
Installation
To download this applet, either for development purposes or to host it yourself, first clone the repository and its submodules:
$ git clone --recursive https://github.com/ethan-nelson/radarlabviewer
This applet is generated using the Jekyll framework, which is used to generate the case pages from the template. While Jekyll is not required to serve the website, it is still necessary for the generation of the rendered web pages locally. However, because this is a static site, you can upload the repository (without rendered web pages) to GitHub to host the website. Do ensure that GitHub Pages is enabled for the repository in the settings.
Generating the applet figures and geospatial information requires Python with a few modules. These are listed in the requirements.txt
file to aid in installation using pip, but they can also be installed manually.
$ pip install -r requirements.txt
After the Python modules are installed, you need to download the data, either using the download_data.sh
script if you have curl installed or manually from https://lecuyer.aos.wisc.edu/radarlabviewerdocs/data.tar.gz
. The five data files must go in the data
directory.
Building
The figures and geospatial information can be generated by calling python on the supplied script:
$ python generate_plots.py
To only generate the rendered pages (which can then be served by other web server software such as Apache or nginx):
$ jekyll build --destination _site
To generate rendered pages and serve the website:
$ jekyll serve --watch --destination _site
The --watch
flag regenerates the pages when any files have been modified.
Customization
Additional cases can be included by following the template of one of the scenes in cases/
. Namely, a custom javascript defining a few variables (like the directory location of new images and the specific crosses for case studies) as well as a markdown file are required. This hasn't really been done much, so contact for more information.
Map and Libraries
Included in this repository is a version of the Leaflet library to display the slippy map. Map tiles are available for the Western Hemisphere in zooms from 3 to 7 at https://github.com/ethan-nelson/radarlabviewertiles. (Note that if you use git clone --recursive
, the tiles should have been already downloaded to the proper directory.) These tiles have all country borders, only have North American roads included, and only display United States city names. They are standard map tiles, so you can render custom tiles and add them to the map images directory or alternatively modify the map tile variable in js/map.js
.
Citations
This applet can be cited as:
- Nelson EL, L'Ecuyer TS, Igel AL, and van den Heever SC (2019): An interactive online educational applet for multiple frequencies of radar observations. Bulletin of the American Meteorological Society, 100 (5), 747--752. http://doi.org/10.1175/BAMS-D-18-0249.1
Model data were taken from a Regional Atmospheric Modeling System cloud allowing simulation:
- Igel AL, van den Heever SC, Naud CM, Saleeby SM, and Posselt DJ (2013): Sensitivity of warm-frontal processes to cloud-nucleating aerosol concentrations. Journal of the Atmospheric Sciences, 70 (6), 1768--1783. http://doi.org/10.1175/JAS-D-12-0170.1.
Radar observations were simulated using the Quickbeam simulator:
- Haynes JM, Marchand RT, Luo Z, Bodas-Salcedo A, and Stephens GL (2007): A multipurpose radar simulation package: QuickBeam. Bulletin of the American Meteorological Society, 88, 1723--1728. http://doi.org/10.1175/BAMS-88-11-1723.
All plots were generated with Python matplotlib:
- Hunter JD (2007): Matplotlib: A 2D graphics environment. Computing in Science and Engineering, 9 (3), 90--95. http://doi.org/10.1109/MCSE.2007.55.
License
The applet code is (c) 2015 Ethan Nelson under the MIT License. See the license file for more information. Please visit the map tiles repository for license and acknowledgement information with respect to the map.
Acknowledgements
The development of this module was possible thanks to generous funding by NASA Headquarters under the Earth and Space Science Fellowship #NNX14AL35H. An associated learning activity sheet was developed under the auspices of the University of Wisconsin Delta Program for Research, Teaching, and Learning, a project of the Center of the Integration of Research, Teaching, and Learning (NSF Grant #0227592).