Skip to main content

sysml2kit-rf-library

CI PyPI License Docs

A SysML v2 model library for antenna/RF systems engineering, consumed through sysml2kit.

The kit stays domain-general; this library carries the RF vocabulary:

  • RFVocabulary — quantity kinds with canonical units (Frequency_GHz, Gain_dBi, EIRP_dBW, GOverT_dBK, SidelobeLevel_dB, ScanLoss_dB, LinkMargin_dB, PrimePower_W, ...).
  • RFParts — part/port definitions: AntennaElement, RadiatingAperture, TRModule, Beamformer, PhasedArrayAntenna, RFFrontEnd, Modem, SatcomTerminal.
  • RFRequirements — requirement definitions carrying the metricKey convention, so sysml2kit.interop.extract_requirements hands them to a requirements engine (phased-array-systems, aedl) mechanically.
  • RFAnalyses — analysis case definitions (link budget, pattern integration, scan performance, SWaP-C rollup) that verify links point at.
  • SatcomTerminal28GHz — a worked example mirroring the aedl t3-001 benchmark: a 28 GHz LEO uplink phased-array ground terminal with its full requirement set (worst-case link margin, sidelobes, independent link crosscheck, power and cost ceilings, grating-lobe margin), each satisfied by a part and verified by an analysis.
  • SatcomTerminalPAS — the executable example: five requirements keyed to metrics phased-array-systems emits, with a verificationBinding so sysml2kit verify runs a real study and every requirement passes with margin.

Both bridges into the stack are merged: phased_array_systems.interop.sysml (requirement sets, and the phased-array-systems verification engine) and aedl.interop (bound-form benchmark requirements). Agents load these models through sysml2kit's library_load MCP tool.

Install and load

pip install sysml2kit-rf-library
from sysml2kit_rf_library import load_model
from sysml2kit.interop import extract_requirements
from sysml2kit.query import trace_matrix

model = load_model("satcom-terminal-t3001")
print(trace_matrix(model).render())
for spec in extract_requirements(model):
    print(spec.id, spec.metric_key, spec.op, spec.value, spec.units)

Or from the command line (paths via models_dir(), which works for pip installs, not just a checkout):

MODELS=$(python -c 'import sysml2kit_rf_library as m; print(m.models_dir())')
sysml2kit show "$MODELS/interchange/satcom_terminal_t3001.json" --traceability
sysml2kit verify "$MODELS/interchange/satcom_terminal_pas.json" --report run.json

How the repo is organized

src/sysml2kit_rf_library/_build.py is the authoritative source: it constructs the models with the sysml2kit builder, keeping attribute values, units, and relationship kinds exact. The committed artifacts under src/sysml2kit_rf_library/models/ — one .sysml file per package for humans and other tools, plus interchange JSON with stable UUIDv5 ids — are generated by scripts/regenerate.py, and CI fails if they drift from the build.

All content is authored fresh under Apache-2.0; nothing is copied from the EPL-2.0 OMG model libraries.

Citation

@software{hodge2026sysml2kitrflibrary,
  author  = {Hodge, John},
  title   = {sysml2kit-rf-library: SysML v2 models for antenna/RF systems engineering},
  year    = {2026},
  url     = {https://github.com/jman4162/sysml2kit-rf-library},
  license = {Apache-2.0}
}

License

Apache-2.0. See LICENSE and NOTICE.

Metadata

Release files for sysml2kit-rf-library 0.2.1

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

Source distribution (sdist)

Source distribution for sysml2kit-rf-library 0.2.1
File Size Uploaded
sysml2kit_rf_library-0.2.1.tar.gz 28.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sysml2kit-rf-library 0.2.1
File Interpreter ABI Platform
sysml2kit_rf_library-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 62.6 kB

Release files / sysml2kit_rf_library-0.2.1.tar.gz

Download URL sysml2kit_rf_library-0.2.1.tar.gz
Size 28.5 kB
Tags Source
SHA-256 checksum
How to use checksums
b5eb26961550df8e85f7c98a17237f3d676bd5c4676a5984da3bf367c3a8bc54
BLAKE2b-256 checksum
How to use checksums
abad938f73c237a515efa8258889a41705512390e9029d6d2f9d87601b76767b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / sysml2kit_rf_library-0.2.1-py3-none-any.whl

Download URL sysml2kit_rf_library-0.2.1-py3-none-any.whl
Size 34.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8b42a3bfc585317780ef27c233c11419ab63e6e49ed34f0cc96eb97c9b88da20
BLAKE2b-256 checksum
How to use checksums
976cb91e238dcc79e79b114a61298948a59cde3023aa605c5892bf2885b4c86f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

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