jcclass

Automated gridded version of the Jenkinson-Collison classification.

https://github.com/pedrolormendez/jcclass

Science Score: 77.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 6 DOI reference(s) in README
  • Academic publication links
    Links to: springer.com, zenodo.org
  • Committers with academic emails
    2 of 4 committers (50.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.4%) to scientific vocabulary

Keywords

circulation-types circulations meteorology pattern python weather weather-patterns weather-types
Last synced: 6 months ago · JSON representation ·

Repository

Automated gridded version of the Jenkinson-Collison classification.

Basic Info
  • Host: GitHub
  • Owner: PedroLormendez
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 50 MB
Statistics
  • Stars: 5
  • Watchers: 1
  • Forks: 2
  • Open Issues: 0
  • Releases: 5
Topics
circulation-types circulations meteorology pattern python weather weather-patterns weather-types
Created over 3 years ago · Last pushed 11 months ago
Metadata Files
Readme Citation

README.md

Jenkinson - Collison automated gridded classification for Python

PyPI version fury.io DOI downloads PyPI license Twitter

This is an adapted version for python of the Jenkinson - Collison automated classfication based on the original Lamb Weather Types. This gridded version is based on the application made by Otero (2018) using a moving central gridded point with that allows to compute the synoptic circulation types on a gridded Mean Sea Level Pressure (MSLP) domain.

How does it work?

The method uses grid-point MSLP data to obtain numerical values of wind flow and vorticity which can be used to determine Cyclonic and Anticyclonic patterns as well as their dominant advective (direction of wind flow) characteristics. The 16 gridded points are moved along the region in reference to a central point where the dominant circulation type will be designated.

The Circulation Types (CTs)

The application of the automated classification allows to derive 27 synoptic circulations. 26 of them based on the dominant pressure pattern and wind direction plus a Low Flow (LF) type which is characterised by days when pressure gradients are to weak and a dominant circulation or advective direction can not be assigned.

|Name | Abreviation| Coding|Name| Abreviation| Coding|Name| Abreviation| Coding| | :- | :-: | :-: | :- | :-: | :-: | :- | :-: | :-:
|Low Flow | LF | -1
|Anticyclonic | A | 0 | | | |Cyclonic | C | 20 |Anticyclonic Northeasterly | ANE | 1 |Northeasterly| NE| 11|Cyclonic Northeasterly| CNE | 21 |Anticyclonic Easterly | AE | 2 |Easterly | E | 12|Cyclonic Easterly | CE | 22 |Anticyclonic Southeasterly | ASE | 3 |Southeasterly| SE| 13|Cyclonic Southeasterly| CSE | 23 |Anticyclonic Southerly | AS | 4 |Southerly | S | 14|Cyclonic Southerly | CS | 24 |Anticyclonic Southwesterly | ASW | 5 |Southwesterly| SW| 15|Cyclonic Southwesterly| CSW | 25 |Anticyclonic Westerly | AW | 6 |Westerly | W | 16|Cyclonic Westerly | CW | 26 |Anticyclonic Northwesterly | ANW | 7 |Northwesterly| NW| 17|Cyclonic Northwesterly| CNW | 27 |Anticyclonic Northerly | AN | 8 |Northerly | N | 18|Cyclonic Northerly | CN | 28

The original 27 circulations can be reduced to a set of 11 patterns based on their dominant advection.

|Name | Abreviation | Coding | :- | :-: | :-:
|Low Flow | LF | -1
|Anticyclonic | A | 0 |Northeasterly | NE | 1 |Easterly | E | 2 |Southeasterly | SE | 3 |Southerly | S | 4 |Southwesterly | SW | 5 |Westerly | W | 6 |Northwesterly | NW | 7 |Northerly | N | 8 |Cyclonic | C | 9

Working datasets

The current code has been has been tested for the following datasets: - ERA5 Reanalysis -NOAA 20th Century Reanalysis (V3) - Global Climate Models from the Coupled Model Intercomparison Project (CMIP6)

The method can be applied for any other netcdf files with latitude coordinates names as "latitude" or "lat", or longitudes coordinates as "longitude" or "lon" and MSLP coordinate names as "msl" or "psl".

Sample datasets from ERA5 is provided and available here

Installation

Simply run in the terminal pip install jcclass

How to use?

Importing the module python from jcclass.compute import compute_cts, eleven_cts from jcclass.plotting import plot_cts

Computing the automated circulation types based on gridded MSLP

Sample datasets available here.

python import xarray as xr filename = 'era5_daily_lowres.nc' ds_mslp = xr.open_dataset("sample_data/era5_daily_lowres.nc").msl cts_27 = compute_cts(ds_mslp) Computing the reduced eleven circulation types python cts_11 = eleven_cts(cts_27) Ploting the circulation types on a map ```python

Select a single day

date = "1979-01-03" cts2d = cts27.sel(time = date) # selecting one time fig = plotcts(cts2d, args) ``` - *cts : a 2D xarray.DataArray of the 27 CTs - **args :

  • float, optional (latsouth, latnorth, lonwest, loneast)*
  • bool, optional (show = True)* False to not show the figure

Saving the figures

You can save anytime any of the figures using fig.savefig.

py fig.savefig('figname.png', dpi = 150)

Acknowledging this work

The code can be used and modified freely without any restriction. If you use it for your own research, I would appreciate if you cite this work as follows:

Herrera-Lormendez P., 2022: PedroLormendez/jcclass: version x.y.z doi:10.5281/zenodo.7025220

Reports on errors are welcomed by raising an issue

Further literature on the method

  • Jenkinson AF, Collison FP. 1977. An Initial Climatology of Gales over the North Sea. Synoptic Climatology Branch Memorandum, No. 62., Meteorological Office, Bracknell.
  • Lamb HH. 1972. British Isles weather types and a register of daily sequence of circulation patterns, 1861-1971: Geophysical Memoir. HMSO.
  • Jones PD, Hulme M, Briffa KR. 1993. A comparison of Lamb circulation types with an objective classification scheme. International Journal of Climatology. John Wiley & Sons, Ltd, 13(6): 655–663. https://doi.org/10.1002/joc.3370130606.
  • Otero N, Sillmann J, Butler T. 2018. Assessment of an extended version of the Jenkinson–Collison classification on CMIP5 models over Europe. Climate Dynamics. Springer Verlag, 50(5–6): 1559–1579. https://doi.org/10.1007/s00382-017-3705-y.

Owner

  • Name: Pedro Herrera Lormendez
  • Login: PedroLormendez
  • Kind: user
  • Location: Germany

Citation (CITATION.cff)

cff-version: 1.1.0
message: "If you use this Python Module, please cite it as below."
authors:
  - family-names: Herrera-Lormendez
    given-names: Pedro
    orcid: https://orcid.org/0000-0003-0982-0032
title: PedroLormendez/jcclass: v0.0.3
version: v0.0.3
date-released: 2022-09-07

GitHub Events

Total
  • Create event: 7
  • Release event: 1
  • Issues event: 2
  • Watch event: 1
  • Delete event: 5
  • Push event: 2
Last Year
  • Create event: 7
  • Release event: 1
  • Issues event: 2
  • Watch event: 1
  • Delete event: 5
  • Push event: 2

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 95
  • Total Committers: 4
  • Avg Commits per committer: 23.75
  • Development Distribution Score (DDS): 0.074
Past Year
  • Commits: 3
  • Committers: 1
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Pedro Herrera Lormendez P****z@i****e 88
Pedro Herrera Lormendez p****z@k****e 3
Pedro Herrera Lormendez p****z@g****m 3
Pedro Herrera Lormendez 8****z 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 4
  • Total pull requests: 2
  • Average time to close issues: 5 days
  • Average time to close pull requests: 9 days
  • Total issue authors: 4
  • Total pull request authors: 2
  • Average comments per issue: 1.0
  • Average comments per pull request: 1.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: 1 day
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • caoths (1)
  • lteckentrup (1)
  • fipoucat (1)
  • kobebryant432 (1)
Pull Request Authors
  • nilsbackstrom (2)
  • kobebryant432 (2)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 18 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 5
  • Total maintainers: 1
pypi.org: jcclass

Jenkinson and Collison automated gridded classification

  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 18 Last month
Rankings
Dependent packages count: 6.6%
Average: 26.7%
Forks count: 30.5%
Dependent repos count: 30.6%
Stargazers count: 39.1%
Maintainers (1)
Last synced: 6 months ago

Dependencies

requirements.txt pypi
  • cartopy >=0.17.0
  • cftime *
  • h5netcdf *
  • matplotlib >=3.2.0
  • netCDF4 *
  • numpy >=1.19.5
  • pyproj *
  • xarray >=0.16.2
setup.py pypi
  • cartopy >=0.17.0
  • cftime *
  • matplotlib >=3.2.0
  • netCDF4 *
  • numpy >=1.19.2
  • xarray >=0.16.2
.github/actions/install-pypi/action.yml actions
  • ./.github/actions/setup-proj * composite
  • actions/setup-python v4 composite
.github/actions/setup-proj/action.yml actions
  • actions/cache v3 composite
.github/workflows/build-pip.yml actions
  • ./.github/actions/install-pypi * composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • codecov/codecov-action v1 composite
docs/environment.yml conda
  • cartopy >=0.17.0
  • cftime
  • matplotlib
  • netcdf4
  • numpy >=1.19.5
  • pip
  • pyproj
  • python >3.5
  • xarray