Package: climateforcing
climateforcingAn incomplete toolbox of scripts and modules used for analysis of climate models and climate data.InstallationcondaPutting this onconda-forgeis a TODO, for now you can grab it from my personal channel:conda install -c chrisroadmap climateforcingpypipip install climateforcingdevelopment versionI strongly recommend doing this inside a virtual environment, e.g. conda, to keep your base python installation clean.Clone the repository,cdtoclimateforcingand runpip install -e .[dev]Contentsaprp: Approximate Partial Radiative PerturbationGenerates the components of shortwave effective radiative forcing (ERF) from changes in absorption, scattering and cloud amount. For aerosols, this can be used to approximate the ERF from aerosol-radiation interactions (ERFari) and aerosol-cloud interactions (ERFaci). Citations:Zelinka, M. D., Andrews, T., Forster, P. M., and Taylor, K. E. (2014), Quantifying components of aerosol‐cloud‐radiation interactions in climate models, J. Geophys. Res. Atmos., 119, 7599–7615,https://doi.org/10.1002/2014JD021710.Taylor, K. E., Crucifix, M., Braconnot, P., Hewitt, C. D., Doutriaux, C., Broccoli, A. J., Mitchell, J. F. B., & Webb, M. J. (2007). Estimating Shortwave Radiative Forcing and Response in Climate Models, Journal of Climate, 20(11), 2530–2543,https://doi.org/10.1175/JCLI4143.1atmos: general atmospheric physics toolshumidity: Conversions for specific to relative humidity and vice versa.geometry: quick and dirty area-weighted meanFor when you relly want to know the global mean but don’t want to think too hard or download anything much. (Works nicely withaprp).solar: time-mean solar zenith angleLots of tools exist for calculating the solar zenith angle. No tools exist, as far as I can see, for calculating the daylight-corrected mean solar zenith angle. Why do we want to do this? Sub-daily climate model data is often outputted only as hourly, 3-hourly or 6-hourly means, including for shortwave radiation diagnostics. Say you want to try and calculate the mean direct normal radiation over a 3-hour mean timestep, given the horizontal diffuse (rsdsdiff) and horizontal total (rsds). You will need an estimate of the mean solar zenith angle to do this.twolayermodel: two-layer energy balance climate modelImplementation of the Held et al (2010) and Geoffroy et al (2013a, 2013b) two-layer climate model. Thanks toGlen Harrisfor the original code.Held, I. M., Winton, M., Takahashi, K., Delworth, T., Zeng, F., & Vallis, G. K. (2010), Probing the Fast and Slow Components of Global Warming by Returning Abruptly to Preindustrial Forcing, J. Climate, 23(9), 2418–2427,https://doi.org/10.1175/2009JCLI3466.1Geoffroy, O., Saint-Martin, D., Olivié, D. J. L., Voldoire, A., Bellon, G., & Tytéca, S. (2013a). Transient Climate Response in a Two-Layer Energy-Balance Model. Part I: Analytical Solution and Parameter Calibration Using CMIP5 AOGCM Experiments, J. Climate, 26(6), 1841-1857,https://doi.org/10.1175/JCLI-D-12-00195.1Geoffroy, O., Saint-Martin, D., Bellon, G., Voldoire, A., Olivié, D. J. L., & Tytéca, S. (2013b), Transient Climate Response in a Two-Layer Energy-Balance Model. Part II: Representation of the Efficacy of Deep-Ocean Heat Uptake and Validation for CMIP5 AOGCMs, J. Climate, 26(6), 1859-1876,https://doi.org/10.1175/JCLI-D-12-00196.1Palmer, M. D., Harris, G. R. and Gregory, J. M. (2018), Extending CMIP5 projections of global mean temperature change and sea level rise due to the thermal expansion using a physically-based emulator, Environ. Res. Lett., 13(8), 084003,https://doi.org/10.1088/1748-9326/aad2e4utci: Universal Climate Thermal IndexCalculates a measure of heat stress based on meteorological data. The code provided is a Python translation of the original FORTRAN, used under kind permission of Peter Bröde. If you use this code please cite:Bröde P, Fiala D, Blazejczyk K, Holmér I, Jendritzky G, Kampmann B, Tinz B, Havenith G, 2012. Deriving the operational procedure for the Universal Thermal Climate Index (UTCI). International Journal of Biometeorology 56, 481-494,https://doi.org/10.1007/s00484-011-0454-1utils: non-climate related utility functionsdownloads datasets from URLs and simple function to make nested directories from Python.