radar.components.element
Module Contents
Classes
Represents an individual radar antenna element with its radiation beam pattern. |
API
- class radar.components.element.Element(pattern: radar.utils.calculate.pattern.Pattern, az: radar.utils.typing.AngleBound, el: radar.utils.typing.AngleBound, frequency_response: radar.components.response.FrequencyResponse | radar.utils.typing.units.Frequency, over_sample_factor: int = 1)[source]
Represents an individual radar antenna element with its radiation beam pattern.
Handles spatial mesh grid configuration across explicit angular bounds and manages the evaluation of underlying analytical or data-driven pattern models.
Initialization
Initializes the radar antenna element.
- Args:
- pattern (Pattern): An implementation of the Pattern interface used to
compute spatial gain distribution.
az (AngleBound): The validation bounds specifying minimum and maximum Azimuth. el (AngleBound): The validation bounds specifying minimum and maximum Elevation. over_sample_factor (int, optional): Multiplier to increase the resolution
density of the calculated grid surface. Defaults to 1.
- beam_pattern(freq: radar.utils.typing.units.Frequency) polars.DataFrame[source]
Returns the complete evaluated beam pattern dataset including coordinates and gains.
- property azimuth_bound: radar.utils.typing.AngleBound
Returns the configured spatial Azimuth boundaries for this element.
- property elevation_bound: radar.utils.typing.AngleBound
Returns the configured spatial Elevation boundaries for this element.
- azimuth_domain(domain: radar.utils.typing.PhaseUnit) polars.DataFrame[source]
Selects the Azimuth coordinates from the dataset in the specified unit.
- Args:
domain (PhaseUnit): The desired angular format (e.g., Degree or Radian).
- Returns:
pl.DataFrame: A single-column DataFrame containing Azimuth coordinate values.
- elevation_domain(domain: radar.utils.typing.PhaseUnit) polars.DataFrame[source]
Selects the Elevation coordinates from the dataset in the specified unit.
- Args:
domain (PhaseUnit): The desired angular format (e.g., Degree or Radian).
- Returns:
pl.DataFrame: A single-column DataFrame containing Elevation coordinate values.
- _generate_beam_grid(az: radar.utils.typing.AngleBound, el: radar.utils.typing.AngleBound) polars.DataFrame[source]
Generates a 2D spatial mesh grid spanning across the angular limits.
Transforms coordinate intervals into structured mesh domains, computes sine-space $u$ and $v$ projections, and applies a unit-circle safety filter mask to track physical boundaries.
- Args:
az (AngleBound): Structural Azimuth constraint boundaries. el (AngleBound): Structural Elevation constraint boundaries.
- Returns:
pl.DataFrame: Flattened coordinate map dataset containing angular, directional sine space columns ($u, v$), and the active region validation mask.
- class Plot(outer: radar.components.element.Element)[source]
Bases:
radar.utils.plotter.BeamInterfaceInner bridge class handling plotting commands for its parent Element.
Initialization
Initializes the plotting handler bound to an Element context.
- Args:
outer (Element): Parent instance providing the underlying beam pattern records.
- beam(direction_domain: radar.utils.typing.DirectionDomain, phase_unit: radar.utils.typing.PhaseUnit, amplitude_domain: radar.utils.typing.AmplitudeDomain, amplitude_unit: radar.utils.typing.AmplitudeUnit, figure_type: radar.utils.typing.FigureType, frequency: radar.utils.typing.units.Frequency, steer: tuple[radar.utils.typing.units.Angle, radar.utils.typing.units.Angle] | None = None) None[source]
Prepares data parameters and dispatches requests to the plotter renderer.
Automatically intercepts and falls back to a standard Gain representation if Antenna Factor processing is requested, as Antenna Factor parameters are undefined for independent standalone element models.
- Args:
direction_domain (DirectionDomain): The spatial domain to utilize (e.g., Angle or UV). phase_unit (PhaseUnit): The angular display unit (e.g., Degrees or Radians). amplitude_domain (AmplitudeDomain): Measurement framework type to track. amplitude_unit (AmplitudeUnit): Linear vs logarithmic scale configuration context. figure_type (FigureType): Targeted plot layout style (e.g., Image, Surface, Slice). steer (tuple[Angle, Angle] | None): Ignored for single element beams.
- __slots__ = ()
- class Animate(outer: radar.components.element.Element)[source]
Bases:
radar.utils.animate.BeamInterface- beam(frequency: radar.utils.typing.units.Frequency, position: numpy.typing.NDArray, direction_domain: radar.utils.typing.DirectionDomain, phase_unit: radar.utils.typing.PhaseUnit, amplitude_domain: radar.utils.typing.AmplitudeDomain, amplitude_unit: radar.utils.typing.AmplitudeUnit, steer: tuple[radar.utils.typing.units.Angle, radar.utils.typing.units.Angle] | None = None) manim.Surface[source]
- __slots__ = ()