# rojak : A Library and CLI Tool for Aviation Turbulence Analysis
[](https://github.com/ImperialCollegeLondon/rojak/actions/workflows/ci.yml)
[](https://github.com/ImperialCollegeLondon/rojak/actions/workflows/cd.yml)
[](https://codecov.io/gh/ImperialCollegeLondon/rojak)
[](https://microsoft.github.io/pyright/)
[](https://github.com/astral-sh/ruff)
[](CODE_OF_CONDUCT.md)
Rojak is salad with Javanese origins. Colloquially (in Singlish), it means a mixture of things.
This package is for a traditionally unconventional mixture of aviation meteorology (turbulence diagnostics) and (coming
soon) aeroelasticity.
`rojak` is a distributed python library and command-line tool for using meterological data to forecast CAT and evaluating the effectiveness of CAT diagnostics against turbulence observations.
Currently, it supports,
1. Computing turbulence diagnostics on meteorological data from [European Centre for Medium-Range Weather Forecasts's (ECMWF) ERA5 reanalysis on pressure levels](https://doi.org/10.24381/cds.bd0915c6). Moreover, it is easily extendable to support other types of meteorological data.
2. Retrieving and processing turbulence observations from Aircraft Meteorological Data Relay (AMDAR) data [archived at National Oceanic and Atmospheric Administration (NOAA)](https://amdar.ncep.noaa.gov/index.shtml) and [AMDAR data collected via the Met Office MetDB system](https://catalogue.ceda.ac.uk/uuid/33f44351f9ceb09c495b8cef74860726/).
3. Computing 27 different turbulence diagnostics, such as the three-dimensional frontogenesis equation, turbulence index 1 and 2, negative vorticity advection, and Brown's Richardson tendency equation.
4. Converting turbulence diagnostic values into the eddy dissipation rate (EDR) --- the International Civil Aviation Organization's (ICAO) official metric for reporting turbulence.
>[!NOTE]
> This repository is under active development. As a result,
> 1. The API is subject to change and may not be stable
> 2. The documentation is incomplete and will be updated as development progresses.
>
> We appreciate your understanding and encourage you to check back for updates.
## Documentation
Learn more about `rojak` at [imperialcollegelondon.github.io/rojak/](https://imperialcollegelondon.github.io/rojak/).
## Installation
For installation instructions, please see the [Installation Guide](https://imperialcollegelondon.github.io/rojak/userguide/installguide.html#installation).
Raw data
{
"_id": null,
"home_page": null,
"name": "rojak-cat",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.12",
"maintainer_email": null,
"keywords": "aeroelasticity, aerospace, avaiation, climate, contrails, meteorology, turbulence",
"author": null,
"author_email": "Hui Ling Wong <71387295+wong-hl@users.noreply.github.com>",
"download_url": "https://files.pythonhosted.org/packages/d2/ca/33cfe612de359cde0372ada783a806830aac1248a19d84386ea9aee75fed/rojak_cat-0.1.1.tar.gz",
"platform": null,
"description": "# rojak : A Library and CLI Tool for Aviation Turbulence Analysis\n\n[](https://github.com/ImperialCollegeLondon/rojak/actions/workflows/ci.yml)\n[](https://github.com/ImperialCollegeLondon/rojak/actions/workflows/cd.yml)\n[](https://codecov.io/gh/ImperialCollegeLondon/rojak)\n\n[](https://microsoft.github.io/pyright/)\n[](https://github.com/astral-sh/ruff)\n[](CODE_OF_CONDUCT.md)\n\nRojak is salad with Javanese origins. Colloquially (in Singlish), it means a mixture of things.\nThis package is for a traditionally unconventional mixture of aviation meteorology (turbulence diagnostics) and (coming\nsoon) aeroelasticity.\n\n`rojak` is a distributed python library and command-line tool for using meterological data to forecast CAT and evaluating the effectiveness of CAT diagnostics against turbulence observations.\nCurrently, it supports,\n\n1. Computing turbulence diagnostics on meteorological data from [European Centre for Medium-Range Weather Forecasts's (ECMWF) ERA5 reanalysis on pressure levels](https://doi.org/10.24381/cds.bd0915c6). Moreover, it is easily extendable to support other types of meteorological data.\n2. Retrieving and processing turbulence observations from Aircraft Meteorological Data Relay (AMDAR) data [archived at National Oceanic and Atmospheric Administration (NOAA)](https://amdar.ncep.noaa.gov/index.shtml) and [AMDAR data collected via the Met Office MetDB system](https://catalogue.ceda.ac.uk/uuid/33f44351f9ceb09c495b8cef74860726/).\n3. Computing 27 different turbulence diagnostics, such as the three-dimensional frontogenesis equation, turbulence index 1 and 2, negative vorticity advection, and Brown's Richardson tendency equation.\n4. Converting turbulence diagnostic values into the eddy dissipation rate (EDR) --- the International Civil Aviation Organization's (ICAO) official metric for reporting turbulence.\n\n>[!NOTE]\n> This repository is under active development. As a result,\n> 1. The API is subject to change and may not be stable\n> 2. The documentation is incomplete and will be updated as development progresses.\n>\n> We appreciate your understanding and encourage you to check back for updates.\n\n## Documentation\n\nLearn more about `rojak` at [imperialcollegelondon.github.io/rojak/](https://imperialcollegelondon.github.io/rojak/).\n\n## Installation\n\n For installation instructions, please see the [Installation Guide](https://imperialcollegelondon.github.io/rojak/userguide/installguide.html#installation).\n",
"bugtrack_url": null,
"license": null,
"summary": "rojak a package with a blend of features -- from turbulence diagnostics to aeroelasticity",
"version": "0.1.1",
"project_urls": {
"documentation": "https://imperialcollegelondon.github.io/rojak/",
"issues": "https://github.com/ImperialCollegeLondon/rojak/issues",
"repository": "https://github.com/ImperialCollegeLondon/rojak"
},
"split_keywords": [
"aeroelasticity",
" aerospace",
" avaiation",
" climate",
" contrails",
" meteorology",
" turbulence"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "53e310d120cd737a73e2aa937e26986be17b4415a5cebf6ce3472aeb99fe2ed6",
"md5": "07a41586ee5aae109729a427348f1ead",
"sha256": "5b08cb43a807840eeb4bc015b8a199f42bd8cfb0b9c163ff8bde4a392f464ccc"
},
"downloads": -1,
"filename": "rojak_cat-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "07a41586ee5aae109729a427348f1ead",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.12",
"size": 90130,
"upload_time": "2025-07-21T13:47:01",
"upload_time_iso_8601": "2025-07-21T13:47:01.682494Z",
"url": "https://files.pythonhosted.org/packages/53/e3/10d120cd737a73e2aa937e26986be17b4415a5cebf6ce3472aeb99fe2ed6/rojak_cat-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d2ca33cfe612de359cde0372ada783a806830aac1248a19d84386ea9aee75fed",
"md5": "cdb777763c5b9c35a77adc309f90dd9d",
"sha256": "57d6dd6e19a1259e81c77706d9f1a6c3f7c06cc84d2021852ee8ec543e393227"
},
"downloads": -1,
"filename": "rojak_cat-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "cdb777763c5b9c35a77adc309f90dd9d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.12",
"size": 215155,
"upload_time": "2025-07-21T13:47:03",
"upload_time_iso_8601": "2025-07-21T13:47:03.333906Z",
"url": "https://files.pythonhosted.org/packages/d2/ca/33cfe612de359cde0372ada783a806830aac1248a19d84386ea9aee75fed/rojak_cat-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-21 13:47:03",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ImperialCollegeLondon",
"github_project": "rojak",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "rojak-cat"
}