Feat/minimum elev service grid#242
Conversation
… 1.2 antenna pattern.
* Also added a CLI option to stream simulation log to a file
There was a problem hiding this comment.
Pull request overview
This PR extends the IMT MSS-DC topology to support a configurable minimum ground elevation angle for service-grid-based beam selection, and exposes additional S.1528 antenna pattern parameters (major/minor axis ratio and far-out side-lobe level) through the configuration system and tests.
Changes:
- Introduces
minimum_service_anglein the service grid parameters, wires it into satellite–grid association logic inTopologyImtMssDc.get_satellite_pointing, and adds tests/YAML defaults for IMT and MSS-D2D profiles. - Refactors
TopologyImtMssDc.get_coordinatesto loop until at least one base station is created, and adds a service-grid-focused test validating that increasing the minimum service angle reduces the number of selected grid points. - Adds configurable
major_minor_axis_ratioandfar_out_side_lobeto S.1528 antenna parameters, uses them inAntennaS1528, and expands tests and test YAML; also tightens validation and error handling in the reference atmosphere model.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
tests/test_topology_imt_mss_dc.py |
Adds a unit test for minimum_service_angle behavior in service-grid mode and imports calc_elevation to validate the selected grid points vs. the configured elevation threshold. |
tests/test_antenna_s1528.py |
Extends S.1528 antenna tests to set major_minor_axis_ratio and far_out_side_lobe, exercising the new parameterized behavior. |
tests/parameters/test_parameters.py |
Verifies that IMT, MSS-D2D, and single-space-station parameter trees correctly expose minimum_service_angle and S.1528 antenna sub-parameters from the YAML. |
tests/parameters/parameters_for_testing.yaml |
Provides test configuration values for minimum_service_angle in IMT/MSS-D2D and S.1528 major_minor_axis_ratio and far_out_side_lobe under single_space_station. |
sharc/topology/topology_imt_mss_dc.py |
Refactors coordinate generation into an outer loop that repeats until at least one base station is produced, and updates service-grid satellite pointing to compute and filter per-grid-point elevation using minimum_service_angle. |
sharc/propagation/atmosphere.py |
Normalizes the season argument to lowercase and adds validation to reject invalid season names with a ValueError. |
sharc/parameters/imt/parameters_grid.py |
Adds the minimum_service_angle parameter with validation to the service grid configuration (ParametersSatelliteWithServiceGrid). |
sharc/parameters/antenna/parameters_antenna_s1528.py |
Extends S.1528 antenna parameters to include major_minor_axis_ratio and far_out_side_lobe fields used by the antenna model. |
sharc/antenna/antenna_s1528.py |
Updates the S.1528 antenna implementation to accept configurable far_out_side_lobe and major_minor_axis_ratio, adjusting derived parameters (e.g., a, l_b) accordingly and improving error messaging on invalid l_s. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
artistrea
left a comment
There was a problem hiding this comment.
Changes should be done as requested by copilot, considering the unresolved comments
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
"visilibity" in the test docstring is misspelled; it should be "visibility" to match the parameter name and improve clarity. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
These two consecutive assertions both check major_minor_axis_ratio against 1.0, which is redundant and makes the test harder to maintain; one of them can be removed without changing test behavior. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Changes were applied. Waiting for approval. |
This PR adds a feature to DC-MSS systems where the minimum ground elevation angle of a service grid beam can be set. That parameter limits the field-of-view of satellite beams and prevents very low and distorted beams to be created when the service grid point is far from the servicing satellite.
This PR also adds minor fixes to the S.1528 antenna pattern parameters. The far outside lobe and major_minor_axis_ratio are now input parameters.