Generate uv-complete radio telescope arrays with the RULES algorithm
Project description
uvrules: Generating uv-Complete Arrays
uvrules implements the Regular uv Layout Engineering Strategy (RULES) algorithm for generating radio interferometer arrays with complete and efficient uv-plane coverage.
This tool generates antenna layouts that fulfill a specified set of baseline vectors, and is optimized for sets of uv-complete baselines, as defined in MacKay et al. 2025 (ApJ, accepted), with applications to 21 cm cosmology and radio interferometry more broadly.
Features
- Generate sets of uv points that are uv complete
- Generate uv-complete layouts from commanded set of uv points
- Enforce physical layout constraints (dish diameter, max array size, etc.)
- Optimize placements for coverage, compactness, or spacing
- Parallel and sequential modes available
- Visualization of array layout, uv coverage, synthesized beam, and algorithmic statistics
Installation
You can install uvrules via pip:
pip install uvrules
Documentation
See examples/RULES_tutorial.ipynb for a hands-on demonstration of building a uv-complete layout with AntArray and add_ant_rules.
In the meantime, see:
uvrules/antarray.pyfor the coreAntArrayclassuvrules/algo/rules.pyfor the RULES algorithmuvrules/plotting.pyfor basic visualizations of arrays and their associated PSFs
Version used in the accompanying paper
The v0.1.0 release of uvrules corresponds to the implementation used in
the analysis for:
MacKay et al., Complete Sampling of the Plane with Realistic Radio Arrays: Introducing the RULES Algorithm, with Application to 21 cm Foreground Wedge Removal, 2025, ApJ (accepted, in review).
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file uvrules-0.1.0.tar.gz.
File metadata
- Download URL: uvrules-0.1.0.tar.gz
- Upload date:
- Size: 41.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4976ca7968a9f4793dda33988abdaf332be8027177a0e5733a72029f37c1e327
|
|
| MD5 |
ea1a3b1cec1022db748a1a18c54da68a
|
|
| BLAKE2b-256 |
187c51bb1e42973fd794ff63a0ea1dc917ff4d2a9c383f014841298e4d4d7387
|
File details
Details for the file uvrules-0.1.0-py3-none-any.whl.
File metadata
- Download URL: uvrules-0.1.0-py3-none-any.whl
- Upload date:
- Size: 46.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
591d7587f94f61d230b9b9252ac280bbdc4a2719cd75ea3e562166eb02d819db
|
|
| MD5 |
a26ddf88b2d46fe9ef750183b015118a
|
|
| BLAKE2b-256 |
a843bfc773c5c7c129e7df6a31ffd97a4e9a7edfc661c3429fac2637f20d8826
|