pasys run¶
Evaluate a single configuration case.
Synopsis¶
Description¶
The run command evaluates a single architecture/scenario configuration and displays the resulting metrics. This is useful for quick checks and debugging configurations.
Arguments¶
| Argument | Required | Description |
|---|---|---|
config |
Yes | Path to configuration file (YAML or JSON) |
Options¶
| Option | Short | Default | Description |
|---|---|---|---|
--output |
-o |
None | Save results to file |
--format |
table |
Output format: table, json, yaml |
Output Formats¶
Table (default)¶
Human-readable grouped output:
Results for config.yaml
============================================================
Antenna:
g_peak_db: 24.0821
beamwidth_az_deg: 12.5000
beamwidth_el_deg: 12.5000
Link Budget:
eirp_dbw: 45.0821
path_loss_db: 152.4426
snr_rx_db: 17.0395
link_margin_db: 7.0395
Cost:
cost_usd: 21,400.0
recurring_cost_usd: 6,400.0
Power:
rf_power_w: 64.0000
dc_power_w: 213.3333
prime_power_w: 213.3333
Metadata:
meta.case_id: single_case
meta.runtime_s: 0.0123
JSON¶
Machine-readable JSON:
{
"g_peak_db": 24.082,
"eirp_dbw": 45.082,
"path_loss_db": 152.443,
"link_margin_db": 7.040,
"cost_usd": 21400.0,
"meta.case_id": "single_case"
}
YAML¶
YAML output:
Saving Results¶
Examples¶
Basic Evaluation¶
JSON Output for Scripting¶
# Extract specific metric
pasys run config.yaml --format json | jq '.link_margin_db'
# Check if passes threshold
MARGIN=$(pasys run config.yaml --format json | jq '.link_margin_db')
if (( $(echo "$MARGIN > 0" | bc -l) )); then
echo "Link closes!"
fi
Save and Display¶
Configuration Requirements¶
The configuration file must include:
architecturesection witharrayandrfscenariosection with scenario parameters
Optional:
- requirements section for verification
# Minimal config.yaml
architecture:
array:
nx: 8
ny: 8
rf:
tx_power_w_per_elem: 1.0
scenario:
type: comms
freq_hz: 10.0e9
bandwidth_hz: 10.0e6
range_m: 100.0e3
required_snr_db: 10.0
Error Handling¶
# File not found
pasys run missing.yaml
# Error: Config file not found: missing.yaml
# Invalid configuration
pasys run invalid.yaml
# Error: validation error for ArrayConfig
# nx: Input should be greater than or equal to 1