ska_oso_pdm.entities.csp.common

The csp.common module models SB entities concerned with CSP (Central Signal Processing) beam former and correlator configuration. The contents of the module are presented in the diagram below.

../../../_images/common.png

Class diagram for the common module within csp

An example serialisation of this model to JSON is shown below.

  # JSON modelled specifically by csp_configuration
  ...
"csp_configurations": [{
    "config_id": "csp-mvp01-20220329-00001",
    "subarray": {"subarray_name": "science period 23"},
    "common": {
      "subarray_id": 1,
      "band_5_tuning": [5.85,7.25]
    },
    "cbf": {
      "fsp": [{
          "fsp_id": 1,
          "function_mode": "CORR",
          "frequency_slice_id": 1,
          "integration_factor": 1,
          "zoom_factor": 0,
          "channel_averaging_map": [[0,2],[744,0]],
          "channel_offset": 0,
          "output_link_map": [[0,0],[200,1]]
        },
        {
          "fsp_id": 2,
          "function_mode": "CORR",
          "frequency_slice_id": 2,
          "integration_factor": 1,
          "zoom_factor": 1,
          "zoom_window_tuning": 650000
        }]
    }
  }
],
  ...

The entities.csp_configuration module defines a simple Python representation of CSP and FSP configurations.

class CBFConfiguration(fsp_configs: List[FSPConfiguration], vlbi_config: VLBIConfiguration | None = None)[source]

Class to hold all FSP and VLBI configurations.

class CSPConfiguration(config_id: str | None = None, subarray_config: SubarrayConfiguration | None = None, common_config: CommonConfiguration | None = None, cbf_config: CBFConfiguration | None = None, pst_config: PSTConfiguration | None = None, pss_config: PSSConfiguration | None = None)[source]

Class to hold all CSP configuration.

CSPConfigurationID

alias of str

class CommonConfiguration(subarray_id: int | None = None, band_5_tuning: List[float] | None = None)[source]

Class to hold the CSP sub-elements.

class FSPConfiguration(fsp_id: int, function_mode: FSPFunctionMode, frequency_slice_id: int, integration_factor: int, zoom_factor: int, channel_averaging_map: List[Tuple] | None = None, output_link_map: List[Tuple] | None = None, channel_offset: int | None = None, zoom_window_tuning: int | None = None)[source]

FSPConfiguration defines the configuration for a CSP Frequency Slice Processor.

class FSPFunctionMode(value)[source]

FSPFunctionMode is an enumeration of the available FSP modes.

class SubarrayConfiguration(subarray_name: str)[source]

Class to hold the parameters relevant only for the current sub-array device.