This repository is a collaboration between RMI and Catalyst Cooperative to identify energy communities as defined by the Inflation Reduction Act.
To install the software in this repository, clone it to your computer using git. If you're authenticating using SSH:
git clone git@github.com:catalyst-cooperative/rmi-energy-communities.gitOr if you're authenticating via HTTPS:
git clone https://github.com/catalyst-cooperative/rmi-energy-communities.gitThen in the top level directory of the repository, create a conda environment
based on the environment.yml file that is stored in the repo:
conda env create --name energy_comms --file environment.ymlNote that the software in this repository depends on
the dev branch of the
main PUDL repository,
and the setup.py in this repository indicates that it should be installed
directly from GitHub. This can be a bit slow, as pip (which in this case is
running inside of a conda environment) clones the entire history of the
repository containing the package being installed. How long it takes will depend on
the speed of your network connection. It might take ~5 minutes.
To generate the outputs in this repo you will need a pre-processed data archive for
PUDL to access. When you extract that archive you will need to tell PUDL where to
find it by putting the path to
that data in a file called .pudl.yml in your home directory.
For more instructions on setting up PUDL with the necessary data and settings
to generate the outputs in this repo, you can
read the PUDL docs.
To generate output dataframes of the qualifying energy community areas you can run
the following commands from your command line once the energy_comms package is
installed. There will be the county FIPS and name for every record, so for an
MSA that qualifies under the employment criteria, there will be a record for each
county in that MSA. If a Census tract qualifies under the coal criteria, the
county_id_fips and county_name column will contains the FIPS and name for
the county that the tract is contained in. For more information about what these
qualifying criteria mean, see the below section on IRA criteria.
Command Line Arguments:
--coal_area: The type of qualifying area for the coal criteria.
Options are tract and county. The legislative text specifies
tract and the default value for this argument is tract.
--brownfields_area: The type of qualifying area for the brownfields
criteria. Options are tract and county. The legislative text doesn't
specify what areas should qualify by this criteria. The default value is tract.
--update_employment_data: Whether to use a fresh download of QCEW and LAU
data for the employment criteria.
--output_filepath: Absolute or relative file path to save the pickled output
dataframe.
Commands:
To save a pickled dataframe of all areas that qualify as an energy community and the criteria they qualify by, you can run:
get_all_qualifying_areas --coal_area tract --brownfields_area tract --output_filepath all_qualifying_areas.pklTo get just the counties or census tracts that qualify under the coal closures community criteria run:
get_coal_qualifying_areas --coal_area tract --output_filepath coal_qualifying_areas.pklTo get the counties or census tracts that qualify under the brownfields criteria run:
get_brownfields_qualifying_areas --brownfields_area tractTo get the metropolitan statistical areas and non-metropolitan statistical areas that qualify under the employment criteria run:
get_employment_qualifying_areas --update_employment_data TrueWithout Command Line:
To generate these output dataframes not from the command line, you can call
the functions in the energy_comms.coordinate module.
Output Dataframe Columns:
county_id_fips, county_name, state_id_fips, state_name,
state_abbr: County/state FIPS, name, abbreviation for every record.
tract_id_fips, tract_name: Tract FIPS/name for records whose criteria is
on the tract level (brownfields or coal criteria only).
geoid: county_id_fips or tract_id_fips depending on the area level of
the brownfields and coal criteria, county_id_fips for the employment criteria
since this criteria specifies qualifying MSAs.
site_name: The mine name, plant name, brownfield site name, or MSA name for
the employment criteria.
qualifying_criteria: The criteria that qualifies the record, values are
coalmine, coal_plant, coal_mine_adjacent_tract,
coal_plant_adjacent_tract, brownfield, or fossil_fuel_employment.
qualifying_area: The area type that qualifies a record under its
qualifying_criteria, values are tract for the coal criteria, point
for the brownfields criteria, MSA for the employment criteria.
latitude, longitude: Latitude and longitude of the coal mine, coal plant,
or brownfield. Will be null for employment criteria records and records that
qualify due to adjacency to a coal plant or mine.
site_geometry, area_geometry: The shape geometry of the site - a point for
brownfields and coal criteria records, null for other records. The shape geometry
for the area type of the qualifying criteria for that record (tract or county for
brownfields and coal criteria, county for employment criteria). The
area_geometry shape matches the FIPS code in geoid.
The IRA defines an energy community as an area that qualifies by at least one of the following outlined criteria:
- A Brownfield Site
- A metropolitan statistical area or non-metropolitan statistical area which meets both of these requirements: - has at any time after Dec. 31 2009, had .17% or greater direct employment or 25% or greater local tax revenues related to the fossil fuel industry (extraction, processing, transport, storage of coal, oil, natural gas) - has an unemployment rate at or above the national average unemployment rate for the previous year.
- A census tract in which after Dec 31, 1999 a coal mine has closed, or after after Dec 31, 2009 a coal-fired electric generating unit has been retired. Or a census tract that is directly adjoining an aforementioned census tract.
To run the pre-commit hooks before you commit code run:
pre-commit installThank you to Resources for the Future for generously sharing with us their own work and insight on identifing energy communities. You can view their report on IRA energy communities here.