API Reference

Subpackages

Submodules

cinrad.calc module

class cinrad.calc.GridMapper(fields: List[Dataset], max_dist: Union[int, float] = 0.1)[source]

This class can merge scans from different radars to a single cartesian grid.

Args:

fields (list(xarray.Dataset)): Lists of scans to be merged.

max_dist (int, float): The maximum distance in kdtree searching.

Example:
>>> gm = GridMapper([r1, r2, r3])
>>> grid = gm(0.1)
class cinrad.calc.VCS(r_list: List[Dataset])[source]

Class performing vertical cross-section calculation

Args:

r_list (list(xarray.Dataset)): The whole volume scan.

get_section(start_polar: Optional[Tuple[float, float]] = None, end_polar: Optional[Tuple[float, float]] = None, start_cart: Optional[Tuple[float, float]] = None, end_cart: Optional[Tuple[float, float]] = None, spacing: int = 500) Dataset[source]

Get cross-section data from input points

Args:

start_polar (tuple): polar coordinates of start point i.e.(distance, azimuth)

end_polar (tuple): polar coordinates of end point i.e.(distance, azimuth)

start_cart (tuple): geographic coordinates of start point i.e.(longitude, latitude)

end_cart (tuple): geographic coordinates of end point i.e.(longitude, latitude)

Returns:

xarray.Dataset: Cross-section data

cinrad.calc.hydro_class(z: Dataset, zdr: Dataset, rho: Dataset, kdp: Dataset, band: str = 'S') Dataset[source]

Hydrometeor classification

Args:

z (xarray.Dataset): Reflectivity data.

zdr (xarray.Dataset): Differential reflectivity data.

rho (xarray.Dataset): Cross-correlation coefficient data.

kdp (xarray.Dataset): Specific differential phase data.

band (str): Band of the radar, default to S.

Returns:

xarray.Dataset: Classification result.

cinrad.calc.quick_cr(r_list: List[Dataset], resolution: tuple = (1000, 1000)) Dataset[source]

Calculate composite reflectivity

Args:

r_list (list(xarray.Dataset)): Reflectivity data.

Returns:

xarray.Dataset: composite reflectivity

cinrad.calc.quick_et(r_list: List[Dataset]) Dataset[source]

Calculate echo tops

Args:

r_list (list(xarray.Dataset)): Reflectivity data.

Returns:

xarray.Dataset: echo tops

cinrad.calc.quick_vil(r_list: List[Dataset]) Dataset[source]

Calculate vertically integrated liquid.

This algorithm process data in polar coordinates, which avoids the loss of data. By default, this function calls low-level function vert_integrated_liquid in C-extension. If the C-extension is not available, the python version will be used instead but with much slower speed.

Args:

r_list (list(xarray.Dataset)): Reflectivity data.

Returns:

xarray.Dataset: vertically integrated liquid

cinrad.calc.quick_vild(r_list: List[Dataset]) Dataset[source]

Calculate vertically integrated liquid density.

By default, this function calls low-level function vert_integrated_liquid in C-extension. If the C-extension is not available, the python version will be used instead but with much slower speed.

Args:

r_list (list(xarray.Dataset)): Reflectivity data.

Returns:

xarray.Dataset: Vertically integrated liquid

cinrad.common module

cinrad.grid module

cinrad.grid.grid_2d(data: ndarray, x: ndarray, y: ndarray, x_out: Optional[ndarray] = None, y_out: Optional[ndarray] = None, resolution: tuple = (1000, 1000)) tuple[source]

Interpolate data in polar coordinates into geographic coordinates

Args:

data (numpy.ndarray): Original radial data.

x (numpy.ndarray): Original longitude data arranged in radials.

y (numpy.ndarray): Original latitude data arranged in radials.

resolution (tuple): The size of output.

Returns:

numpy.ndarray: Interpolated data in grid.

numpy.ndarray: Interpolated longitude in grid.

numpy.ndarray: Interpolated latitude in grid.

cinrad.grid.resample(data: ndarray, distance: ndarray, azimuth: ndarray, d_reso: Union[int, float], a_reso: int) tuple[source]

Resample radar radial data which have different number of radials in one scan into that of 360 radials

Args:

data (numpy.ndarray): Radar radial data.

distance (numpy.ndarray): Original distance.

azimuth (numpy.ndarray): Original azimuth.

Returns:

numpy.ndarray: Resampled radial data.

numpy.ndarray: Resampled distance.

numpy.ndarray: Resampled azimuth.

cinrad.utils module