lair is a collection of tools that I have developed/acquired for my research regarding land-air interactions. I spent a lot of time developing the uataq subpackage which provides a simple interface for reading in data from the Utah Atmospheric Trace Gas and Air Quality (UATAQ) project - the idea being that we as scientists spend too much time on data wrangling and not enough time on analysis. The lair package is designed to make it easier to work with atmospheric data, particularly data from the UATAQ project.
The lair package is installable from the git repository via pip, however, some dependencies can only be installed via conda.
Additionally, many components of lair require access to CHPC which encourages the use of conda. Therefore, we recommend using conda to install the package.
If you are using CHPC, it is assumed that
miniforge3is installed following the instructions at https://www.chpc.utah.edu/documentation/software/python-anaconda.php
To create a new conda environment for lair, use the following command:
mamba create -n lair -c conda-forge python=3.10 esmpyIf you already have a conda environment, simply install the dependencies:
mamba activate <lair-env>
mamba install -c conda-forge esmpy
lairrequires Python 3.10 or higher.
Now we can install the package via pip. Either directly from the git repository:
pip install git+https://github.com/jmineau/lair.gitor by cloning the repository and installing it as an editable package:
git clone https://github.com/jmineau/lair.git
cd lair
pip install -e .lair is a rather dependecy-heavy package, however, many are common in the field of atmospheric science. To keep lair as lightweight as possible, some dependencies related to meteorology are currently optional. These include:
boto3metpys3fssiphonsynopticpyzarr
The following modules are impacted:
lair.air.hrrrlair.air.soundings
To install the optional dependencies, use the following command:
# via conda (preferred on CHPC)
conda activate <lair-env> # activate your lair environment
conda install -c conda-forge boto3 metpy s3fs siphon synopticpy zarr
# via pip
pip install git+https://github.com/jmineau/lair.git[met]Verbosity for the lair package is set via lair.config.verbose as a boolean.
For early versions of the package, verbose will be set to True by default. This will be changed in future versions.
This package was partially inspired and uses some code generously provided by Brian Blaylock's Carpenter Workshop python package.
- Portions of this package were written with AI-based tools including Github CoPilot, ChatGPT, and Google Gemini.
- Additionally, various code snippets were borrowed from StackOverflow and other online resources.
Contributions are welcome! Please take a look at current issues and feel free to submit a pull request with new features or bug fixes.
If you use any portion of this package in your research, please cite the software and/or acknowledge me.
A DOI will be provided in the future.