Radar Fundmentals#
This module adapts and extends concepts and calculations inspired by the CSU Radar Tools and wradlib packages. We acknowledge their foundational contributions to radar meteorology software development.
Attenuation and Scattering Coefficients#
Functions related to absorption, scattering, and extinction for spherical particles.
References
Doviak and Zrnic (1993). Doppler Radar and Weather Observations.
Battan (1973). Radar Observations of the Atmosphere.
Absorption coefficient Qa for a spherical particle. |
|
Extinction coefficient Qe (absorption + scattering). |
|
Complex dielectric factor used in scattering calculations. |
|
Scattering coefficient Qs for a spherical particle. |
Beam Geometry and Resolution#
Functions related to radar beamwidth and spatial resolution.
References
Doviak, R. J., & Zrnić, D. S. (1993). Doppler Radar and Weather Observations. Academic Press.
Compute azimuthal resolution given beamwidth in degrees. |
|
Convert beamwidth from degrees to radians. |
|
Compute azimuthal resolution (cross-range resolution). |
|
Compute the beamwidth of a radar. |
|
Compute radar volume resolution. |
|
Compute radar volume resolution using horizontal and vertical beamwidth in degrees. |
Common Utilities#
Shared helper functions for internal use across radarx.fundamentals modules.
Alias for z_to_dbz for compatibility with legacy terminology. |
|
Convert logarithmic reflectivity dBZ to linear Z [mm^6/m^3]. |
|
Raise a ValueError if the input value is not positive. |
|
Convert knots to meters per second. |
|
Convert knots to meters per second. |
|
Convert kilometers to meters. |
|
Convert kilometers to meters (SI). |
|
Convert kilometers to meters. |
|
Convert kilometers to meters (SI). |
|
Alias for dbz_to_z for compatibility with legacy terminology. |
|
Convert meters to kilometers. |
|
Convert meters to kilometers. |
|
Convert meters per second to knots. |
|
Convert meters per second to knots. |
|
Convert SI distance to kilometers. |
|
Convert SI distance (meters) to kilometers. |
|
Convert meters per second to knots. |
|
Convert linear reflectivity Z [mm^6/m^3] to logarithmic dBZ. |
Constants#
This module contains constants used across radar signal processing and physical modeling, including: - Physical constants (e.g., speed of light, Boltzmann constant) - Radar-specific constants (e.g., dielectric constants, beamwidths)
int([x]) -> integer int(x, base=10) -> integer |
|
Double-precision floating-point number type, compatible with Python |
|
Convert a string or number to a floating-point number, if possible. |
|
Convert a string or number to a floating-point number, if possible. |
|
Convert a string or number to a floating-point number, if possible. |
|
Convert a string or number to a floating-point number, if possible. |
|
Convert a string or number to a floating-point number, if possible. |
|
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2). |
|
Convert a string or number to a floating-point number, if possible. |
|
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2). |
|
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2). |
|
Double-precision floating-point number type, compatible with Python |
Doppler Radar Calculations#
Functions related to Doppler radar performance and velocity limits.
References
Rinehart, R. E. (1997). Radar for Meteorologists.
Doviak, R. J., & Zrnić, D. S. (1993). Doppler Radar and Weather Observations.
Solve the Doppler dilemma equation: trade-off between unambiguous range and velocity. |
|
Compute Doppler frequency shift. |
|
Compute Nyquist velocity using dual-PRF scheme. |
|
Compute the maximum observable Doppler frequency. |
|
Compute Nyquist velocity (maximum unambiguous Doppler velocity). |
|
Compute maximum unambiguous range for a given PRF. |
|
Radar Geometry Calculations#
Functions related to beam propagation, height, and sampling volume estimation.
References
Rinehart, R. E. (1997). Radar for Meteorologists.
Bech et al. (2003). JAOT, Beam Blockage Corrections.
Calculate height of beam center above sea level. |
|
Compute effective Earth radius considering atmospheric refraction. |
|
Compute half-power beam radius. |
|
Compute radar sample volume assuming Gaussian beam shape. |
Radar Power Calculations#
Functions for computing peak power, average power, and minimum detectable signal.
References
Rinehart, R. E. (2004). Radar for Meteorologists. 4th ed.
Doviak, R. J., & Zrnić, D. S. (1993). Doppler Radar and Weather Observations.
Compute average power from peak power and duty cycle. |
|
Compute minimum detectable signal power. |
|
Compute peak power from voltage and impedance. |
Radar Principles#
Core physical and theoretical principles in radar meteorology.
References
Rinehart, R. E. (2004). Radar for Meteorologists. 4th ed. Rinehart Publications.
Doviak, R. J., & Zrnić, D. S. (1993). Doppler Radar and Weather Observations. Academic Press.
Compute Doppler frequency shift. |
|
Compute the Nyquist velocity for Doppler radar. |
|
Compute the radar range resolution. |
|
Compute signal-to-noise ratio (SNR). |
|
Compute Doppler frequency shift given radial velocity and wavelength. |
|
Compute maximum radar detection range using the radar range equation. |
|
Alias for compute_range_resolution for compatibility. |
|
Compute round trip time for a given distance. |
|
Compute signal-to-noise ratio in linear scale. |
Reflectivity-Based Retrievals#
Functions for reflectivity-based rainfall estimation, attenuation correction, and reflectivity conversions. These functions are based on established meteorological principles and are commonly used in radar meteorology.
References: - Marshall, J. S., & Palmer, W. M. (1948). The distribution of raindrops with size. Journal of Meteorology, 5(4), 165-166. - Bringi, V. N., & Chandrasekar, V. (2001). Polarimetric Doppler Weather Radar: Principles and Applications. Cambridge University Press.
Simple attenuation correction using a power-law fit. |
|
Custom Z-R relation to estimate rain rate [mm/hr]. |
|
Estimate rain rate [mm/hr] from reflectivity [dBZ] using Marshall-Palmer Z-R relation. |
Rayleigh Scattering Approximations#
Functions for computing backscatter cross-sections, size parameters, and absorption, scattering, and extinction coefficients under Rayleigh scattering assumptions.
References
Rinehart (1997). Radar for Meteorologists.
Battan (1973). Radar Observations of the Atmosphere.
Rayleigh backscatter cross-section for a water sphere. |
|
Normalize Rayleigh backscatter cross-section by projected area. |
|
Calculate size parameter alpha = π * D / λ. |
|
Compute Rayleigh absorption coefficient. |
|
Compute Rayleigh scattering coefficient. |
|
Compute Rayleigh extinction coefficient (Qa + Qs). |
Radar System Characteristics#
Core functions related to radar system components like antenna gain, pulse parameters, wavelength/frequency conversion, and radar constants.
|
Compute effective antenna area from gain and wavelength. |
|
Compute antenna gain in dB from power ratio. |
|
Alias for frequency_from_wavelength. |
|
Compute frequency from radar wavelength. |
|
Compute received power from a radar target using the radar equation. |
|
Alias for pulse_duration_from_length. |
|
Compute pulse duration from physical pulse length. |
|
Alias for pulse_length_from_duration. |
|
Compute physical pulse length from pulse duration. |
|
Compute the radar constant (unitless). |
|
Compute the received power using the radar range equation. |
|
Compute size parameter alpha. |
|
Solve for transmitter peak power using the radar equation. |
|
Alias for wavelength_from_frequency. |
Compute wavelength from radar frequency. |
Timing Calculations#
Functions for radar timing-related calculations: PRF, duty cycle, blind range, etc.
References
Doviak, R. J., & Zrnić, D. S. (1993). Doppler Radar and Weather Observations. Academic Press.
Compute blind range (minimum detectable range) caused by transmission pulse. |
|
Compute the duty cycle of the radar. |
|
Compute the maximum unambiguous range. |
|
Compute the maximum unambiguous velocity. |
|
Compute Pulse Repetition Frequency (PRF). |
|
Compute Pulse Repetition Interval (PRI) from PRF. |
Radar-Derived Variables#
Functions related to reflectivity, differential reflectivity, and radial velocity.
References
Rinehart, R. E. (1997). Radar for Meteorologists.
Doviak and Zrnic (1993). Doppler Radar and Weather Observations.
Compute reflectivity factor Z [mm^6/m^3]. |
|
Compute differential reflectivity ZDR [dB]. |
|
Compute linear depolarization ratio LDR [dB]. |
|
Compute circular depolarization ratio CDR [dB]. |
|
Compute radial velocity from Doppler frequency shift. |