Skip to main content

depression detection/tracking schemes

Project description

PyPI version

colindex2

A Python package for detecting and tracking atmospheric disturbances. It is primarily designed to capture upper-tropospheric systems, such as cutoff lows, and to define their intensity indices.

  • Snapshot-based: Capable of extracting features directly from snapshots.

  • Early-stage tracking: Seamlessly trace disturbances from their initial phase along with continuous feature parameter transitions.

  • Global and scale-selective: Extract disturbances within any size range, across all latitudes and vertical levels.

  • Mesh-agnostic: Independent of data mesh structures (since v2.11).

  • GPU acceleration: High-speed computation powered by GPUs (experimental).

Reference

Install

pip install colindex2

Dependecies are...

numpy pandas pytorch scipy xarray netCDF4 h5netcdf matplotlib cartopy  

Tutorial

Try quick tutorial

How to execute

Two different ways are available using (1) python functions and (2) command lines

(1) Python functions -> documents

(2) Shell commands

Add -h to see documets.

    1. Generate data_settings.py
gen_data_settings
detect z.nc
    1. Run tracking
track

or, you can do doth if multiple timesteps are included in input, as follows:

detect z.nc -track
  • Find and make each tracking data
find_track ./d01 L 300 a

Directory structure of outputs

current_dir/
|
└── d01/  # default name
    |
    ├── AS/yyyymm  # 2D averaged slope function
    |       └── AS-{ty}-{yyyymmddhhTT}-{llll}.nc (or .grd)
    |
    ├── V/yyyymm   # point values after detection, will be used for tracking
    |       └── V-{ty}-{yyyymmddhhTT}-{llll}.csv
    |
    ├── Vt/yyyymm  # intermediate data (you can remove after all processes finished)
    |       └── V-{ty}-{yyyymmddhhTT}-{llll}.csv
    |
    ├── Vtc/yyyymm # final point values after tracking
    |       └── V-{ty}-{yyyymmddhhTT}-{llll}.csv
    |
    └── ID/  # continuous csv for a specific track whose id is `ID`
        └── {ty}-{l}-{yyyymm}-{ID}.csv

where, ty is L (cyclone) or H (anticyclone), yyyymmddhhTT is timestep, llll is level in 4 digits, and l is level.

Parameter list for Vct data

Names Description
time Time.
ty 0 for lows and troughs,
1 for highs and ridges.
lev Level of the input field.
lat, lon Central coorditates in latitude and longitude.
valV Value of input field on the center
valX Value of the nearest local minimum (maximum) of input field for a low (high).
lonX,latX Latitude and longitude of the nearest local extremum if any, otherwise this value will be 999.9
So Optimal slope [m/100 km]. Intensity of depresion (circular geostrophic wind speed).
ro Optimal radius [r km]. Size of depression (as a radius of its surrounding circulation).
Do Optimal depth [m]. Vertical depth of depression.
SBG Background slope [m/100 km].
SBGang Angle of Background slope vector [radian]. 0 for east.
m, n Zonal, meridional components of SBG, respectivelly [m/100 km].
SR Slope ratio. Less (more) than 1.34 tends to correspond to a closed-contour (open-contour) system. See K21 for detail discussions.
ex Distinction between closed and open systems.
1 (there is a extremum within ro*0.65) for lows/highs
0 for troughs/ridges.
EE Eccentricity (1 for pure isotropic, smaller values for oval shape).
EEang Angle of the long axis from east [radian].
XX Zonal discrete laplacian with a step of ro [m/(100 km)**2]. Small value means the feature has weak zonal concavity. 0.5 might be a good value to exclude sub-tropical large ridges.
ID Identification number. It is assigned after tracking. ID will be initialized in every new year's day when long_term=True in Track()
MERGE Merge lysis flag.
0 for being tracked successfully,
-1 for soritary lysis,
-2 for being merged from someone,
-3 for lysis at the end of analysis,
-4 for being involved in the secondary process (see Fig. S2 in KH25),
other int for the object ID of its merge lysis.
SPLIT Split genesis flag.
0 for being tracked successfully,
-1 for soritary genesis,
-2 for being splitting and producing someone,
-3 for genesis at the start of analysis,
-4 for being involved in the secondary process (see Fig. S2 in KH25),
other int for the object ID of its split genesis.
DIST Moving distance in a timestep [km]. Central difference. When merge/split/genesis/lysis, value will be missing.
SPEED Moving speed [m/s]. DIST/timestep.
DIR Moving direction [radian]. 0 for east.
_ DC Accumulated duration [timestep] including before split.
DU Duration [hour].
XS Sequential duration being ex=1 (lows/highs).
QS Quasi-stational (QS) duration [hour]. The conditions for QS are controlled by the options in Track() as follows:
- QS_min_intensity
- QS_min_radius
- QS_min_overlap_ratio
TOTDIST Accumulated moving distance [km].
MAX 1 for the maximum development timestep (maximum So).
MAXSo So when MAX.
exGEN Closed system genesys (ex changed from 0 to 1 in this timestep).
exLYS Closed system lysis (ex changed from 1 to 0 in the next timestep).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

colindex2-2.11.1.tar.gz (41.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

colindex2-2.11.1-py3-none-any.whl (40.5 kB view details)

Uploaded Python 3

File details

Details for the file colindex2-2.11.1.tar.gz.

File metadata

  • Download URL: colindex2-2.11.1.tar.gz
  • Upload date:
  • Size: 41.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for colindex2-2.11.1.tar.gz
Algorithm Hash digest
SHA256 b8d749fc274f833334eb37dd33bb07e5f9f12da9f02ab25c278830b9cab2d214
MD5 665e81338b19a27b9101c9d9f9fe37aa
BLAKE2b-256 b05296ad202d8b91626c0a2d540750bffac217b704dc97d2dfd92eaf91d285d1

See more details on using hashes here.

File details

Details for the file colindex2-2.11.1-py3-none-any.whl.

File metadata

  • Download URL: colindex2-2.11.1-py3-none-any.whl
  • Upload date:
  • Size: 40.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for colindex2-2.11.1-py3-none-any.whl
Algorithm Hash digest
SHA256 eef682b2af925b327b475a9799ea60a9b6c83c9ca274e0f9c65fd4c8881f8be1
MD5 be9ff6ac29b6d5774bdc8fe0a7df0204
BLAKE2b-256 69ff86f67d259c044c00b3ea91b66abd48dca909eef2306f668badece8c09538

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page