Skip to main content

aeris-channel

aeris-channel is a Python library for 5G NR and 6G channel modeling, deterministic/stochastic hybrid workflows, and hardware-in-the-loop integration.

It provides public APIs for:

  • 3GPP TR 38.901 stochastic, CDL, and TDL channel models.
  • TR 36.777 aerial-UE/UAV and TR 38.811/38.821 non-terrestrial channel models.
  • MIMO, massive-MIMO, XL-MIMO, near-field, and beam-management workflows.
  • ISAC sensing, channel estimation, and system-level metrics.
  • Deterministic-path and stochastic-residual composition, plus time-domain, frequency-domain, resource-grid, and impulse-response interfaces.

Installation

Install the latest release from PyPI:

python -m pip install aeris-channel

Prebuilt wheels are provided for Windows and Linux with CPython 3.11-3.14. The package installs its aeris-license dependency automatically.

Optional feature groups are available:

python -m pip install "aeris-channel[gpu]"      # CuPy for CUDA 12.x
python -m pip install "aeris-channel[plots]"    # Matplotlib
python -m pip install "aeris-channel[profiles]" # YAML profile loading

License

Runtime use requires a valid aeris.lic. Obtain a license through the approved Keysight process and configure its location using the supplied licensing instructions before running licensed functionality.

Quick start: stochastic channel

from aeris_channel.tr38901 import (
    StochasticChannelConfig,
    generate_stochastic_channel,
)

config = StochasticChannelConfig(
    scenario="UMi",
    carrier_freq_hz=3.5e9,
    n_tx=2,
    n_rx=2,
    num_time_samples=64,
    seed=42,
)
result = generate_stochastic_channel(config)

print(result.H.shape)  # (2, 2, 64)
print(result.pathloss_db)

Map-based hybrid channels

For the TR 38.901 map-based hybrid workflow, aeris-channel consumes complete Step 3 deterministic path sets produced by a connected scene or ray-tracing tool, then generates the stochastic residual and ray-resolved channel for one link and snapshot. Map preparation and deterministic ray tracing are upstream responsibilities; the package does not replace a ray tracer.

The documented Clause 8 profiles include UMa, UMi Street Canyon, RMa through 7 GHz, InH-Office, and InF-SL/DL/SH/DH for LOS/NLOS, plus LOS-only InF-HH. RMa, InH, and InF require caller-supplied cluster delay spread where the referenced table marks it N/A. The map-based model is intended for company-specific use and calibration; it does not claim universal cross-company calibration.

Documentation and examples

Release-matched public documentation and runnable examples are distributed separately from the PyPI wheel. Use the documentation and examples marked for the installed package version. They cover stochastic/CDL/TDL channels, NTN and aerial UE workflows, spatial consistency, MIMO/XL-MIMO, ISAC, deterministic path interoperability, resource grids, and RF/HIL or PROPSIM integrations.

Support

Contact support.aeris@keysight.com for licensing and product support.

Metadata

Release files for aeris-channel 1.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for aeris-channel 1.0.5
File
aeris_channel-1.0.5-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
aeris_channel-1.0.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
aeris_channel-1.0.5-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
aeris_channel-1.0.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
aeris_channel-1.0.5-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
aeris_channel-1.0.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
aeris_channel-1.0.5-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
aeris_channel-1.0.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details

Total release size: 28.1 MB

Release files / aeris_channel-1.0.5-cp314-cp314-win_amd64.whl

Download URL aeris_channel-1.0.5-cp314-cp314-win_amd64.whl
Size 3.1 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
d3c752f27ca75dfdac4b64cc5b5adceffe2741bccfc403354cc5d11bd3632486
BLAKE2b-256 checksum
How to use checksums
977dcfe7811baac4525fe2aff6747a479bbfc99478b178767fbe8dccc02eca62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / aeris_channel-1.0.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL aeris_channel-1.0.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.4 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5837b5447a7a11652c329df8015c0b271e618e9dc9c263324faf409ffd7e95bc
BLAKE2b-256 checksum
How to use checksums
f80529ee0f3053ff16ec6cfa91b6ade4eb019f6e166775d8d130c7bc6c070446
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / aeris_channel-1.0.5-cp313-cp313-win_amd64.whl

Download URL aeris_channel-1.0.5-cp313-cp313-win_amd64.whl
Size 3.0 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
61d9cc91057ee8838c0c8e3f54a5be0ad89fbfb56cadf80537cbb03458f1b06d
BLAKE2b-256 checksum
How to use checksums
44fbfc810e1999d73749d5a0bc557c3c74f03017d97b8bd8d61a81eb38d0d975
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / aeris_channel-1.0.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL aeris_channel-1.0.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.2 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5514765f26628184e5dbffcc28a8904c4001fce8ed3cab0f80aed36cc30a7861
BLAKE2b-256 checksum
How to use checksums
54b1af7d074a02335aeea3f2cf71f64219c2fa1e3f19e4e0b883e00530f696ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / aeris_channel-1.0.5-cp312-cp312-win_amd64.whl

Download URL aeris_channel-1.0.5-cp312-cp312-win_amd64.whl
Size 3.0 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
f3cda5258b6773575d23936c5f2ddea3e7e620d0bf73f0f315e9cdd9304614e6
BLAKE2b-256 checksum
How to use checksums
36f949a9aefdd4b697d99705257d8b792459bd89cb213d891348feeb87cd6516
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / aeris_channel-1.0.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL aeris_channel-1.0.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.2 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
6f5415e16b6de9d7ce83bebe4901d07e5f4c4aba94904b83d63dbd3c52614f36
BLAKE2b-256 checksum
How to use checksums
ca43381c5d4b8edb42059a41f3db56d0057d2ec3484faefab6d36d7fea6129ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / aeris_channel-1.0.5-cp311-cp311-win_amd64.whl

Download URL aeris_channel-1.0.5-cp311-cp311-win_amd64.whl
Size 2.6 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
e0b35d616806f8bd8c39249331b4643b473983b0169d5d82a69c76f2ce59f695
BLAKE2b-256 checksum
How to use checksums
28abdacc8be52dc0f804693f820f10be1fc375afb59c4c5f3a1aa3ab2126d0ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / aeris_channel-1.0.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL aeris_channel-1.0.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 3.7 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
986b4aa4b71773f4db7a98ea4229607af098d04ef1f4e566f83da75a36c2d8e9
BLAKE2b-256 checksum
How to use checksums
f0946a8f19ecfb32e28bad518e7ae20beb3467968e04d70b1f3b3b1861e3f33a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Security for aeris-channel 1.0.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page