radar.components.geometry
Module Contents
Classes
Abstract base class establishing structural data and plotting for radar arrays. |
|
Defines an arbitrary custom geometry layout from predefined position arrays. |
|
Generates a center-aligned 1D linear sensor array along a targeted axis. |
|
Generates a center-aligned cross (cruciform) antenna array layout. |
|
Generates a circular ring array layout with uniformly distributed elements. |
|
Generates a center-aligned 2D planar rectangular matrix/grid array layout. |
API
- class radar.components.geometry.Geometry[source]
Bases:
abc.ABCAbstract base class establishing structural data and plotting for radar arrays.
Provides core storage properties, enforces automatic default column configuration, and routes spatial positioning data to specialized visual plot renderers.
Initialization
Initializes the base array geometry and attaches its plot interface.
- abstractmethod _generate_positions_df() polars.DataFrame[source]
Abstract method that subclasses must implement to yield their initial position dataframe.
- property phases
- property gains
- _validate_input_df(df: polars.DataFrame, required_column: str) None[source]
Helper method to validate that the input DataFrame matches the current geometry.
- property geometry: polars.DataFrame
Returns the internal Polars DataFrame containing element physical positions.
- class Plot(geometry: radar.components.geometry.Geometry)[source]
Bases:
radar.utils.plotter.GeometryInterfaceInner bridge class handling plotting commands for its parent Geometry.
Initialization
- __slots__ = ()
- class Animate(geometry: radar.components.geometry.Geometry)[source]
Bases:
radar.utils.animate.GeometryInterfaceInner bridge class handling animate commands for its parent Geometry.
Initialization
- __slots__ = ()
- __slots__ = ()
- class radar.components.geometry.CustomGeometry(x: numpy.typing.NDArray, y: numpy.typing.NDArray)[source]
Bases:
radar.components.geometry.GeometryDefines an arbitrary custom geometry layout from predefined position arrays.
Initialization
Initializes the base array geometry and attaches its plot interface.
- _set_default_gain_phase() None
- property phases
- property gains
- _validate_input_df(df: polars.DataFrame, required_column: str) None
- property geometry: polars.DataFrame
- class Plot(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.plotter.GeometryInterface- geometry() None
- __slots__ = ()
- class Animate(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.animate.GeometryInterface- geometry(position: numpy.typing.NDArray, colour: manim.ManimColor) manim.VGroup
- __slots__ = ()
- __slots__ = ()
- class radar.components.geometry.Linear(elements: pydantic.PositiveInt, orientation: radar.utils.typing.ArrayOrientation, spacing: radar.utils.typing.Distance)[source]
Bases:
radar.components.geometry.GeometryGenerates a center-aligned 1D linear sensor array along a targeted axis.
Initialization
Initializes the base array geometry and attaches its plot interface.
- _set_default_gain_phase() None
- property phases
- property gains
- _validate_input_df(df: polars.DataFrame, required_column: str) None
- property geometry: polars.DataFrame
- class Plot(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.plotter.GeometryInterface- geometry() None
- __slots__ = ()
- class Animate(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.animate.GeometryInterface- geometry(position: numpy.typing.NDArray, colour: manim.ManimColor) manim.VGroup
- __slots__ = ()
- __slots__ = ()
- class radar.components.geometry.Cross(azimuth_elements: pydantic.PositiveInt, elevation_elements: pydantic.PositiveInt, spacing: radar.utils.typing.Distance)[source]
Bases:
radar.components.geometry.GeometryGenerates a center-aligned cross (cruciform) antenna array layout.
Initialization
Initializes the base array geometry and attaches its plot interface.
- _set_default_gain_phase() None
- property phases
- property gains
- _validate_input_df(df: polars.DataFrame, required_column: str) None
- property geometry: polars.DataFrame
- class Plot(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.plotter.GeometryInterface- geometry() None
- __slots__ = ()
- class Animate(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.animate.GeometryInterface- geometry(position: numpy.typing.NDArray, colour: manim.ManimColor) manim.VGroup
- __slots__ = ()
- __slots__ = ()
- class radar.components.geometry.Circular(elements: pydantic.PositiveInt, radius: radar.utils.typing.Length)[source]
Bases:
radar.components.geometry.GeometryGenerates a circular ring array layout with uniformly distributed elements.
Initialization
Initializes the base array geometry and attaches its plot interface.
- _set_default_gain_phase() None
- property phases
- property gains
- _validate_input_df(df: polars.DataFrame, required_column: str) None
- property geometry: polars.DataFrame
- class Plot(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.plotter.GeometryInterface- geometry() None
- __slots__ = ()
- class Animate(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.animate.GeometryInterface- geometry(position: numpy.typing.NDArray, colour: manim.ManimColor) manim.VGroup
- __slots__ = ()
- __slots__ = ()
- class radar.components.geometry.Grid(azimuth_elements: pydantic.PositiveInt, elevation_elements: pydantic.PositiveInt, spacing: radar.utils.typing.Distance)[source]
Bases:
radar.components.geometry.GeometryGenerates a center-aligned 2D planar rectangular matrix/grid array layout.
Initialization
Initializes the base array geometry and attaches its plot interface.
- _set_default_gain_phase() None
- property phases
- property gains
- _validate_input_df(df: polars.DataFrame, required_column: str) None
- property geometry: polars.DataFrame
- class Plot(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.plotter.GeometryInterface- geometry() None
- __slots__ = ()
- class Animate(geometry: radar.components.geometry.Geometry)
Bases:
radar.utils.animate.GeometryInterface- geometry(position: numpy.typing.NDArray, colour: manim.ManimColor) manim.VGroup
- __slots__ = ()
- __slots__ = ()