Skip to content

Releases: jman4162/phased-array-systems

v0.4.0 - Documentation & Models

01 Feb 21:15

Choose a tag to compare

What's New

New Features

  • Digital array model - Digital beamforming calculations
  • RF cascade model - Noise figure and gain cascade analysis
  • MkDocs documentation site - Comprehensive API docs and tutorials

Improvements

  • Fixed Ruff linting errors in models module
  • Fixed MathJax rendering in documentation
  • Updated CLAUDE.md to reflect v0.4.0 completion status

Documentation

  • Added comprehensive MkDocs documentation site with:
    • API reference (auto-generated from docstrings)
    • User guide and tutorials
    • Architecture overview

Full Changelog: v0.3.0...v0.4.0

v0.3.0 - Radar & CLI

29 Jan 01:09

Choose a tag to compare

What's New

Phase 3: Radar Detection Models

  • Radar Range Equation - RadarModel class implementing monostatic radar equation
  • Detection Probability - Albersheim's equation for Pd/Pfa calculations
  • Pulse Integration - Coherent and noncoherent integration gain models
  • Swerling Models - Support for Swerling target fluctuation models (0-4)
  • Detection Range - Automatic computation of maximum detection range

Phase 4: CLI & Report Generation

  • CLI Tool (pasys) - Full command-line interface with subcommands:
    • pasys run <config> - Single-case evaluation
    • pasys doe <config> - DOE batch study with LHS/random/grid sampling
    • pasys report <results> - Generate HTML/Markdown reports
    • pasys pareto <results> - Extract and display Pareto frontier
  • HTML Reports - Styled HTML reports with summary stats, tables, and metric statistics
  • Markdown Reports - Markdown reports for documentation integration

New Examples

  • 03_radar_detection_trade.py - Complete radar detection trade study workflow

Test Coverage

  • 221 tests passing
  • 39 new tests for CLI and reports
  • 34 new tests for radar models

Installation

pip install phased-array-systems==0.3.0

CLI Usage

# Single case evaluation
pasys run config.yaml

# DOE trade study
pasys doe config.yaml -n 100 --method lhs

# Generate HTML report
pasys report results.parquet --format html

# Extract Pareto frontier
pasys pareto results.parquet -x cost_usd -y detection_range_m

v0.2.0 - Sub-array Constraints

28 Jan 17:57

Choose a tag to compare

phased-array-systems v0.2.0

New Features

Power-of-Two Sub-array Constraints

Added practical RF component design constraints that enforce sub-array dimensions to be powers of two (2, 4, 8, 16, 32, etc.).

New ArrayConfig fields:

  • max_subarray_nx / max_subarray_ny: Maximum elements per sub-array (default: 8, must be power of 2)
  • enforce_subarray_constraint: Enable/disable validation (default: True)

New computed properties:

  • subarray_nx / subarray_ny: Actual sub-array dimensions
  • n_subarrays_x / n_subarrays_y: Number of sub-arrays in each direction
  • n_subarrays: Total sub-array count
  • elements_per_subarray: Elements per sub-array

Validation Rules (when constraint enabled):

  • Small arrays (nx/ny <= max): dimensions must be powers of two
  • Large arrays (nx/ny > max): must be divisible by max_subarray size
  • Non-rectangular geometries skip validation
  • Set enforce_subarray_constraint=False to disable

Example

from phased_array_systems.architecture import ArrayConfig

# Valid: 16x16 array with 8x8 sub-arrays (2x2 = 4 sub-arrays)
config = ArrayConfig(nx=16, ny=16, max_subarray_nx=8, max_subarray_ny=8)
print(config.n_subarrays)  # 4

# Invalid: 10 is not a power of 2
ArrayConfig(nx=10, ny=8)  # Raises ValidationError

# Disable constraint for flexibility
config = ArrayConfig(nx=10, ny=12, enforce_subarray_constraint=False)

v0.1.2

28 Jan 17:50

Choose a tag to compare

phased-array-systems v0.1.2

Bug Fixes

  • Fix -0.00 dB display for scan loss at boresight (now shows 0.00 dB)

v0.1.1

28 Jan 17:46

Choose a tag to compare

phased-array-systems v0.1.1

Patch release to clean up repository.

Changes

  • Removed internal design document from public repository

v0.1.0 - Initial Release

28 Jan 17:43

Choose a tag to compare

phased-array-systems v0.1.0

Initial release of the phased array antenna system design and optimization package.

Features

  • Architecture Configuration: Pydantic models for array, RF chain, and cost configurations
  • Communications Link Budget: EIRP, path loss, SNR, and link margin calculations
  • Requirements Verification: Define and verify system requirements with pass/fail margins
  • DOE Trade Studies: Latin Hypercube Sampling, grid, and random sampling methods
  • Pareto Analysis: Extract and rank Pareto-optimal designs
  • Batch Evaluation: Parallel evaluation with caching and progress tracking
  • Visualization: Pareto plots and scatter matrices
  • Config I/O: YAML/JSON configuration loading and results export (Parquet, CSV)

Installation

pip install phased-array-systems

Documentation

See the README and example scripts in the examples/ directory.