ska_oso_pdm.sb_definition.dish
The ska_oso_pdm.sb_definition.dish package contains classes used to define resource allocations and configurations for SKA MID dishes.
ska_oso_pdm.sb_definition.dish.dish_allocation
The dish_allocation module defines which SKA MID dishes should be allocated to a sub-array prior to an observation.
Class diagram for the dish_allocation module
An example serialisation of this model to JSON is shown below.
"dish_allocations": {
"dish_ids": ["SKA100", "SKA001", "SKA063", "SKA036"],
"dish_allocation_id": "dish-allocation-74519",
"selected_subarray_definition": "AA0.5"
},
"observing_constraints": {
"sun_separation": {
"min": {
"value": 30.0,
"unit": "arcmin"
}
},
"moon_separation": {
"min": {
"value": 45.0,
"unit": "arcsec"
}
},
"jupiter_separation": {
"min": {
"value": 12.0,
"unit": "deg"
}
},
"altitude": {
"min": {
"value": 0.5,
"unit": "rad"
},
"max": {
"value": 80.0,
"unit": "deg"
}
},
"lst": {
"start": {
"value": 1.0,
"unit": "hourangle"
},
"end": {
"value": 3.14159,
"unit": "rad"
}
},
"minimum_receptors": 16,
"required_receptors": [
"SKA001",
"SKA036",
"SKA063"
]
}
}
The ska_oso_pdm.sb_definition.dish.dish_allocation module defines a simple Python representation of the dish allocation
- class DishAllocation(*, dish_allocation_id: str | None = None, selected_subarray_definition: str | None = None, dish_ids: frozenset[str] = frozenset({}), reference_dishes: frozenset[str] = frozenset({}), scan_sequence: list[~ska_oso_pdm.sb_definition.scan_definition.ScanDefinition] = <factory>)[source]
Represents the required dish array for an observation described by an SBDefinition
- Parameters:
dish_allocation_id – The identifier of this object within the SBDefinition
selected_subarray_definition – The subarray definition, e.g. AA1. This could be inferred from the dish_ids but is stored here as well for UI purposes.
dish_ids – The identifier of the dishes in the allocation, e.g. SKA063
scan_sequence – list of ScanDefinitions to be observed by these dishes