ARM Restructures Open-Source Code Capabilities

Published: 24 March 2022

Science users and ARM staff can use and contribute code to work with ARM data

The Atmospheric Radiation Measurement (ARM) user facility supports the development of open-source code that can make it easier for users to work with its data. ARM also provides opportunities for users to contribute their own code for use by the scientific community.

ARM has restructured the open-source code repositories it hosts on the GitHub software development platform to better serve the scientific community and ARM’s infrastructure. Repositories can be assembled under organizations, which allow for groups to easily work across projects.

ARM now has three organizations on GitHub with different purposes and audiences. Software within these organizations can be categorized as follows:

  • open-source software – released under a license that allows anyone to use, change, and share the software, including its source code.
  • community code – developed specifically for the user community, which can use the code and also contribute back to it. There are clearly defined guidelines for contributing to the code.

The information below summarizes ARM’s three GitHub organizations.

Screenshot of ARM-DOE GitHub page shows repositories for the Python ARM Radar Toolkit, Atmospheric data Community Toolkit, ARM's Python-based data-oriented diagnostics package for climate model evaluation, and the ARM Data Integrator
The home page for the ARM-DOE organization on GitHub includes links to open-source repositories available for use by the scientific community.


ARM-DOE houses ARM-supported open-source software and community code for public use. Code repositories in ARM-DOE are expected to be actively maintained and available to the scientific community.

Some of the open-source repositories under ARM-DOE include:

These images were created using the Python ARM Radar Toolkit (Py-ART).
The left image shows multiple NEXRAD radars interpolated to the same grid. The right images are time-height slices through the red lines on the left plot. All images were created using the Python ARM Radar Toolkit (Py-ART).

ARM-Synergy –

ARM-Synergy is where ARM and Atmospheric System Research (ASR) principal investigators can host open-source software and community code.

ARM staff can help set up a principal investigator’s repository in ARM-Synergy. A request to submit code can be initiated by completing the Ask Us pop-up form on the ARM website. (The Ask Us link is located under Help at the bottom of each web page. Select “Other” in the “I need help with…” dropdown menu to help direct your request to the appropriate staff.)

To submit code, a user must be registered with ARM and confirm their information is up to date. ARM staff will work to ensure that vulnerability and antivirus scanning are set up before the acceptance of any code.

ARM-Development –

ARM-Development contains ARM infrastructure open-source software and community code that is in a state of development below public promotion. However, this organization is accessible to others besides ARM staff to allow for testing, experimentation, and idea generation.

If ARM decides to support a repository, it will be moved to ARM-DOE and promoted to the scientific community.

The Atmospheric data Community Toolkit (ACT) provides different plotting functions.
Images above were created with different plotting functions in the Atmospheric data Community Toolkit (ACT). The images are, from left to right, a time-height plot of Ka-Band ARM Zenith Radar (KAZR) reflectivity; a contour of temperatures from the Southern Great Plains (SGP) surface meteorology systems with a wind barb overlay; a skew-T plot of radiosonde data; aircraft measurements of refractory black carbon; and a wind rose plot from the SGP surface meteorology system.

Get Started

To use and/or contribute code, members of the scientific community and ARM staff should first visit the appropriate GitHub organization(s)—links to repositories are on the home page of each organization—and view the README documentation for each repository.

Those interested in learning more about ARM’s GitHub organizations, repositories, and other open science efforts are invited to attend the ARM/ASR Open Science Virtual Workshop 2022 from May 10 to 13. The aim is to expose attendees to the spectrum of open science occurring in the ARM/ASR stakeholder world and to break down silos.

The workshop will have a mix of presentations and tutorials each day. Presentations and tutorials are being solicited from the ARM/ASR and broader scientific communities on all aspects of open science related to the missions of ARM and ASR. The deadline to submit presentation abstracts and tutorial requests is April 15.

Register for the workshop until 11:59 p.m. Eastern time May 8.

Editor’s note: Videos from the workshop are available on YouTube

# # #

ARM is a DOE Office of Science user facility operated by nine DOE national laboratories.