Python package to perform calculations with the FAIR simple climate model
Project description
FAIR
Finite Amplitude Impulse-Response simple climate-carbon-cycle model
Installation
Make sure you have Python 2 or 3 and pip installed
From terminal/command prompt pip install fair
Usage
FAIR takes emissions of greenhouse gases, aerosol and ozone precursors, and converts these into greenhouse gas concentrations, radiative forcing and temperature change.
There are two ways to run FAIR:
Carbon dioxide emissions only with all other radiative forcings specified externally (specify useMultigas=False in the call to fair_scm);
All species included in the RCP emissions datasets, with, optionally, solar and volcanic forcing still specified externally. For convenience, the RCP datasets are provided in the RCP subdirectory and can be imported:
from fair.forward import fair_scm from fair.RCPs import rcp85 emissions = rcp85.Emissions.emissions C,F,T = fair_scm(emissions=emissions)
The main engine of the model is the fair_scm function in forward.py. This function can be imported into a Python script or iPython session. The most important keyword to fair_scm is the emissions. This should be either a (nt, 40) numpy array (in multigas mode) or (nt,) numpy array (in CO2 only mode), where nt is the number of model timesteps. The outputs are a tuple of (C, F, T) arrays which are GHG concentrations ((nt, 31) in multigas mode, (nt,) in CO2-only mode), forcing ((nt, 13) or (nt,)) and temperature change (nt,). The index numbers corresponding to each species will be given in tables 1 to 3 of the revised version of the Smith et al. paper reference below (we hope to make this object-oriented in the future). For now, note that the input emissions follow the ordering of the RCP datasets, which are included under fair/RCPs, and the GHG concentrations output are in the same order, except that we don’t output the year, only use one column for total CO2, and the short-lived species (input indices 5 to 11 inclusive) are not included, reducing the number of columns from 40 to 31. In multigas mode the forcing output indices are:
CO2
CH4
N2O
Minor GHGs (CFCs, HFCs etc)
Tropospheric ozone
Stratospheric ozone
Stratospheric water vapour from methane oxidation
Contrails
Aerosols
Black carbon on snow
Land use
Volcanic
Solar
For further information, see the example ipython notebook contained in the GitHub repo at https://github.com/OMS-NetZero/FAIR.
References:
Smith, C. J., Forster, P. M., Allen, M., Leach, N., Millar, R. J., Passerello, G. A., and Regayre, L. A.: FAIR v1.3: A simple emissions-based impulse response and carbon cycle model, Geosci. Model Dev., https://doi.org/10.5194/gmd-2017-266, 2018.
Millar, R. J., Nicholls, Z. R., Friedlingstein, P., and Allen, M. R.: A modified impulse-response representation of the global near-surface air temperature and atmospheric concentration response to carbon dioxide emissions, Atmos. Chem. Phys., 17, 7213-7228, https://doi.org/10.5194/acp-17-7213-2017, 2017.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file fair-1.3.1.tar.gz
.
File metadata
- Download URL: fair-1.3.1.tar.gz
- Upload date:
- Size: 23.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4fd68334e093c0cea0de2e87ded113844b7ce2ea320171d1e5a8e07c04f7c7e7 |
|
MD5 | 79c41dd040da5ab29106ec851055931c |
|
BLAKE2b-256 | f2bf8b61beb53dc961ac0439bf2857a6977cab73c998e5a86776395a6d249a52 |
File details
Details for the file fair-1.3.1-py2.py3-none-any.whl
.
File metadata
- Download URL: fair-1.3.1-py2.py3-none-any.whl
- Upload date:
- Size: 619.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67eb154d0d9b6fd1d603792f9c85b7761fb32820c162118d84af39551566f15a |
|
MD5 | 65a73263333d777faff9b4b8258c45e0 |
|
BLAKE2b-256 | 56cee7e597d70e9d29471f1fcba65a8bb180c9d421c1a49d389cb4e919cb4782 |