ska-sdp-assignres

SDP assign resources 1.0

Example

{
    "execution_block": {
        "eb_id": "eb-mvp01-20210623-00000",
        "max_length": 100.0,
        "context": {},
        "beams": [{
            "beam_id": "vis0",
            "function": "visibilities"
        }, {
            "beam_id": "pss1",
            "search_beam_id": 1,
            "function": "pulsar search"
        }, {
            "beam_id": "pss2",
            "search_beam_id": 2,
            "function": "pulsar search"
        }, {
            "beam_id": "pst1",
            "timing_beam_id": 1,
            "function": "pulsar timing"
        }, {
            "beam_id": "pst2",
            "timing_beam_id": 2,
            "function": "pulsar timing"
        }, {
            "beam_id": "vlbi1",
            "vlbi_beam_id": 1,
            "function": "vlbi"
        }],
        "scan_types": [{
            "scan_type_id": ".default",
            "beams": {
                "vis0": {
                    "channels_id": "vis_channels",
                    "polarisations_id": "all"
                },
                "pss1": {
                    "field_id": "pss_field_0",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "pss2": {
                    "field_id": "pss_field_1",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "pst1": {
                    "field_id": "pst_field_0",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "pst2": {
                    "field_id": "pst_field_1",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "vlbi": {
                    "field_id": "vlbi_field",
                    "channels_id": "vlbi_channels",
                    "polarisations_id": "all"
                }
            }
        }, {
            "scan_type_id": "target:a",
            "derive_from": ".default",
            "beams": {
                "vis0": {
                    "field_id": "field_a"
                }
            }
        }],
        "channels": [{
            "channels_id": "vis_channels",
            "spectral_windows": [{
                "spectral_window_id": "fsp_1_channels",
                "count": 744,
                "start": 0,
                "stride": 2,
                "freq_min": 350000000.0,
                "freq_max": 368000000.0,
                "link_map": [
                    [0, 0],
                    [200, 1],
                    [744, 2],
                    [944, 3]
                ]
            }, {
                "spectral_window_id": "fsp_2_channels",
                "count": 744,
                "start": 2000,
                "stride": 1,
                "freq_min": 360000000.0,
                "freq_max": 368000000.0,
                "link_map": [
                    [2000, 4],
                    [2200, 5]
                ]
            }, {
                "spectral_window_id": "zoom_window_1",
                "count": 744,
                "start": 4000,
                "stride": 1,
                "freq_min": 360000000.0,
                "freq_max": 361000000.0,
                "link_map": [
                    [4000, 6],
                    [4200, 7]
                ]
            }]
        }, {
            "channels_id": "pulsar_channels",
            "spectral_windows": [{
                "spectral_window_id": "pulsar_fsp_channels",
                "count": 744,
                "start": 0,
                "freq_min": 350000000.0,
                "freq_max": 368000000.0
            }]
        }],
        "polarisations": [{
            "polarisations_id": "all",
            "corr_type": ["XX", "XY", "YY", "YX"]
        }],
        "fields": [{
            "field_id": "field_a",
            "phase_dir": {
                "target_name": "target_a",
                "reference_frame": "icrs",
                "attrs": {
                    "c1": 201.365,
                    "c2": -43.0191667
                }
            },
            "pointing_fqdn": "low-tmc/telstate/0/pointing"
        }, {
            "field_id": "field_b",
            "phase_dir": {
                "target_name": "Zenith",
                "reference_frame": "altaz",
                "attrs": {
                    "c1": 180.0,
                    "c2": 90.0
                }
            },
            "pointing_fqdn": "low-tmc/telstate/0/pointing"
        }, {
            "field_id": "field_c",
            "phase_dir": {
                "target_name": "Cass-A",
                "reference_frame": "galactic",
                "attrs": {
                    "c1": 111.734745,
                    "c2": -2.12957
                }
            },
            "pointing_fqdn": "low-tmc/telstate/0/pointing"
        }, {
            "field_id": "field_d",
            "phase_dir": {
                "target_name": "Sun",
                "reference_frame": "special"
            },
            "pointing_fqdn": "low-tmc/telstate/0/pointing"
        }, {
            "field_id": "field_e",
            "phase_dir": {
                "target_name": "ISS (ZARYA)",
                "reference_frame": "tle",
                "attrs": {
                    "line1": "1 25544U 98067A   08264.51782528 -.00002182  00000-0 -11606-4 0  2927",
                    "line2": "2 25544  51.6416 247.4627 0006703 130.5360 325.0288 15.72125391563537"
                }
            },
            "pointing_fqdn": "low-tmc/telstate/0/pointing"
        }]
    },
    "processing_blocks": [{
        "pb_id": "pb-mvp01-20210623-00000",
        "sbi_ids": ["sbi-mvp01-20200325-00001"],
        "script": {
            "kind": "realtime",
            "name": "vis_receive",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "pb_id": "pb-mvp01-20210623-00001",
        "sbi_ids": ["sbi-mvp01-20200325-00001"],
        "script": {
            "kind": "realtime",
            "name": "test_realtime",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "pb_id": "pb-mvp01-20210623-00002",
        "sbi_ids": ["sbi-mvp01-20200325-00002"],
        "script": {
            "kind": "batch",
            "name": "ical",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20210623-00000",
            "kind": ["visibilities"]
        }]
    }, {
        "pb_id": "pb-mvp01-20210623-00003",
        "sbi_ids": ["sbi-mvp01-20200325-00001", "sbi-mvp01-20200325-00002"],
        "script": {
            "kind": "batch",
            "name": "dpreb",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20210623-00002",
            "kind": ["calibration"]
        }]
    }],
    "resources": {
        "receptors": ["SKA001", "SKA036", "SKA063", "SKA100"]
    }
}

Used for assigning resources to an SDP subarray.

As concrete resource usage for the SDP depend strongly on the underlying processing script, this fully parameterises all processing blocks to be executed. This especially means that in contrast to most other sub-systems, SDP processing deployments might persist across scans (and scan configuration) boundaries.

https://schema.skao.int/ska-sdp-assignres/1.0

type

object

properties

  • interface

type

string

  • transaction_id

type

string

  • execution_block

Execution block

Execution_block_1.0

  • resources

External resources

type

object

properties

  • receptors

type

array

items

type

string

additionalProperties

True

  • processing_blocks

Processing blocks

type

array

items

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

Processing_block_1.0

additionalProperties

True

Execution_block_1.0

type

object

properties

  • eb_id

type

string

  • max_length

type

number

  • context

Free-form information from OET, see ADR-54

type

object

  • beams

Beam parameters

type

array

items

Beam parameters for the purpose of the Science Data Processor.

Beam_1.0

  • scan_types

Scan types. Associates scans with per-beam fields & channel configurations

type

array

items

type

object

properties

  • scan_type_id

type

string

  • derive_from

type

string

  • beams

type

object

additionalProperties

True

  • channels

Channels

type

array

items

Spectral windows per channel configuration.

Scan_channels_1.0

  • polarisations

Polarisation definitions

type

array

items

Polarisation definition.

type

object

properties

  • polarisations_id

type

string

  • corr_type

type

array

items

type

string

additionalProperties

True

  • fields

Fields / targets

type

array

items

Fields / Targets

type

object

properties

  • field_id

type

string

  • pointing_fqdn

type

string

  • phase_dir

A union of the various standard sky direction representations supported by SKA, as defined in ADR-63.

anyOf

A sky direction defined in the ICRS reference frame.

type

object

properties

  • target_name

A name for the target. If reference_frame is ‘special’ or ‘tle’ then the name might be of a solar system body or a satellite in Earth orbit.

type

string

  • reference_frame

Must be “icrs” for a sky direction defined in the ICRS reference

frame.

Validation is case-insensitive.

type

string

  • attrs

Attributes for an ICRS sky direction

type

object

properties

  • c1

The longitude coordinate, specifying degrees right ascension in the ICRS reference frame.

Value must be in the range 0 <= c1 < 360.

type

number

  • c2

The latitude coordinate, specifying degrees declination in the ICRS reference frame.

Value must be in the range -90 <= c2 <= 90.

type

number

  • pm_c1

Longitudinal proper motion of target, measured in arcseconds per year.

type

number

default

0.0

  • pm_c2

Latitudinal proper motion of target, measured in arcseconds per year.

type

number

default

0.0

  • epoch

Epoch of proper motion, giving the date when the proper motion offset was zero.

type

number

default

2000.0

  • parallax

The parallax in seconds of arc.

type

number

default

0.0

  • radial_velocity

Radial velocity along the line of sight in m/s.

type

number

default

0.0

additionalProperties

True

additionalProperties

True

A sky direction defined in the AltAz reference frame

type

object

properties

  • target_name

A name for the target. If reference_frame is ‘special’ or ‘tle’ then the name might be of a solar system body or a satellite in Earth orbit.

type

string

  • reference_frame

Fixed as “altaz” for a sky direction defined in the AltAz

reference frame.

Validation is case-insensitive.

type

string

  • attrs

Allowed attributes for an AltAz sky direction

type

object

properties

  • c1

The azimuth coordinate in degrees.

Value must be in the range 0 <= c1 < 360.

type

number

  • c2

The elevation coordinate in degrees.

Value must be in the range 0 <= c2 <= 90.

type

number

additionalProperties

True

additionalProperties

True

A sky direction defined in the Galactic reference frame.

type

object

properties

  • target_name

A name for the target. If reference_frame is ‘special’ or ‘tle’ then the name might be of a solar system body or a satellite in Earth orbit.

type

string

  • reference_frame

Must be “galactic” for a sky direction defined in the Galactic

reference frame.

Validation is case-insensitive.

type

string

  • attrs

Attributes for a Galactic sky direction

type

object

properties

  • c1

The longitude coordinate, specifying degrees right ascension in the Galactic reference frame.

Value must be in the range 0 <= c1 < 360.

type

number

  • c2

The latitude coordinate, specifying degrees declination in the Galactic reference frame.

Value must be in the range -90 <= c2 <= 90.

type

number

  • pm_c1

Longitudinal proper motion of target, measured in arcseconds per year.

type

number

default

0.0

  • pm_c2

Latitudinal proper motion of target, measured in arcseconds per year.

type

number

default

0.0

  • epoch

Epoch of proper motion, giving the date when the proper motion offset was zero.

type

number

default

2000.0

  • parallax

The parallax in seconds of arc.

type

number

default

0.0

  • radial_velocity

Radial velocity along the line of sight in m/s.

type

number

default

0.0

additionalProperties

True

additionalProperties

True

A sky direction whose coordinates are defined in Katpoint.

type

object

properties

  • target_name

A name for the target. This should be the name of a resolvable entity in Katpoint, for example, the name of a solar system body.

type

string

  • reference_frame

Must be “special” for a catalogue sky direction.

Validation is case-insensitive.

type

string

additionalProperties

True

A sky direction defined by a Two-Line Element (TLE) set.

type

object

properties

  • target_name

A name for the target. For a TLE sky direction, this could be the name of a satellite in orbit.

type

string

  • reference_frame

Must be “tle” for a sky direction defined in the TLE reference

frame.

Validation is case-insensitive.

type

string

  • attrs

Attributes for a TLE sky direction.

type

object

properties

  • line1

First line of a two-line element (TLE) sky direction.

type

string

  • line2

Second line of a two-line element (TLE) sky direction.

type

string

additionalProperties

True

additionalProperties

True

additionalProperties

True

additionalProperties

True

Beam_1.0

Beam parameters for the purpose of the Science Data Processor.

type

object

properties

  • beam_id

Name to identify the beam within the SDP configuration.

type

string

  • function

Identifies the type and origin of the generated beam data. This corresponds to a certain kind of calibration or receive functionality SDP is meant to provide for it.

Possible options:

  • visibilities: Correlated voltages from CBF used for calibration and imaging

  • pulsar search: SDP provides calibrations for tied-array beam as well as post-processes and delivers pulsar search data products

  • pulsar timing: SDP provides calibrations for tied-array beam as well as post-processes and delivers pulsar timing data products

  • vlbi: SDP provides calibrations for tied-array beam

  • transient buffer: SDP receives and delivers transient buffer data dumps

type

string

  • search_beam_id

type

integer

default

null

  • timing_beam_id

type

integer

default

null

  • vlbi_beam_id

type

integer

default

null

  • visibility_beam_id

type

integer

default

null

additionalProperties

True

Scan_channels_1.0

Spectral windows per channel configuration.

type

object

properties

  • channels_id

type

string

  • spectral_windows

type

array

items

type

object

properties

  • spectral_window_id

type

string

  • count

Number of channels

type

integer

  • start

First channel ID

type

integer

  • stride

Distance between subsequent channel IDs

type

integer

default

null

  • freq_min

Lower bound of first channel

type

number

  • freq_max

Upper bound of last channel

type

number

  • link_map

Channel map that specifies which network link is going to get used to send channels to SDP. Intended to allow SDP to optimise network and receive node configuration.

type

array

default

null

items

additionalProperties

True

additionalProperties

True

Processing_block_1.0

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

type

object

properties

  • pb_id

Unique identifier for this processing block.

type

string

  • script

Specification of the workflow to be executed along with configuration parameters for the workflow.

type

object

properties

  • kind

The kind of processing script (realtime or batch)

type

string

  • name

The name of the processing script

type

string

  • version

Version of the processing script. Uses semantic versioning.

type

string

additionalProperties

True

  • parameters

Configuration parameters needed to execute the workflow. As these parameters will be workflow specific, this is left as an object to be specified by the workflow definition.

type

object

default

null

  • dependencies

A dependency between processing blocks means that one processing block requires something from the other processing block to run - typically an intermediate Data Product. This generally means that

  1. The dependent processing block might only be able to start once the dependency has been fulfilled

  2. Data associated with the dependency must be kept alive until the dependent processing block is finished.

As processing blocks might have many different outputs, the dependency “kind” can be used to specify how this dependency is meant to be interpreted (e.g. “visibilities”, “calibration”…)

type

array

default

null

items

type

object

properties

  • pb_id

type

string

  • kind

type

array

items

type

string

additionalProperties

True

  • sbi_ids

Scheduling block instances that the processing block belongs to.

type

array

default

null

items

type

string

additionalProperties

True

SDP assign resources 0.5

Example

{
    "execution_block": {
        "eb_id": "eb-mvp01-20210623-00000",
        "max_length": 100.0,
        "context": {},
        "beams": [{
            "beam_id": "vis0",
            "function": "visibilities"
        }, {
            "beam_id": "pss1",
            "search_beam_id": 1,
            "function": "pulsar search"
        }, {
            "beam_id": "pss2",
            "search_beam_id": 2,
            "function": "pulsar search"
        }, {
            "beam_id": "pst1",
            "timing_beam_id": 1,
            "function": "pulsar timing"
        }, {
            "beam_id": "pst2",
            "timing_beam_id": 2,
            "function": "pulsar timing"
        }, {
            "beam_id": "vlbi1",
            "vlbi_beam_id": 1,
            "function": "vlbi"
        }],
        "scan_types": [{
            "scan_type_id": ".default",
            "beams": {
                "vis0": {
                    "channels_id": "vis_channels",
                    "polarisations_id": "all"
                },
                "pss1": {
                    "field_id": "pss_field_0",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "pss2": {
                    "field_id": "pss_field_1",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "pst1": {
                    "field_id": "pst_field_0",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "pst2": {
                    "field_id": "pst_field_1",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "vlbi": {
                    "field_id": "vlbi_field",
                    "channels_id": "vlbi_channels",
                    "polarisations_id": "all"
                }
            }
        }, {
            "scan_type_id": "target:a",
            "derive_from": ".default",
            "beams": {
                "vis0": {
                    "field_id": "field_a"
                }
            }
        }],
        "channels": [{
            "channels_id": "vis_channels",
            "spectral_windows": [{
                "spectral_window_id": "fsp_1_channels",
                "count": 744,
                "start": 0,
                "stride": 2,
                "freq_min": 350000000.0,
                "freq_max": 368000000.0,
                "link_map": [
                    [0, 0],
                    [200, 1],
                    [744, 2],
                    [944, 3]
                ]
            }, {
                "spectral_window_id": "fsp_2_channels",
                "count": 744,
                "start": 2000,
                "stride": 1,
                "freq_min": 360000000.0,
                "freq_max": 368000000.0,
                "link_map": [
                    [2000, 4],
                    [2200, 5]
                ]
            }, {
                "spectral_window_id": "zoom_window_1",
                "count": 744,
                "start": 4000,
                "stride": 1,
                "freq_min": 360000000.0,
                "freq_max": 361000000.0,
                "link_map": [
                    [4000, 6],
                    [4200, 7]
                ]
            }]
        }, {
            "channels_id": "pulsar_channels",
            "spectral_windows": [{
                "spectral_window_id": "pulsar_fsp_channels",
                "count": 744,
                "start": 0,
                "freq_min": 350000000.0,
                "freq_max": 368000000.0
            }]
        }],
        "polarisations": [{
            "polarisations_id": "all",
            "corr_type": ["XX", "XY", "YY", "YX"]
        }],
        "fields": [{
            "field_id": "field_a",
            "phase_dir": {
                "ra": [123, 0.1],
                "dec": [80, 0.1],
                "reference_time": "...",
                "reference_frame": "ICRF3"
            },
            "pointing_fqdn": "low-tmc/telstate/0/pointing"
        }]
    },
    "processing_blocks": [{
        "pb_id": "pb-mvp01-20210623-00000",
        "sbi_ids": ["sbi-mvp01-20200325-00001"],
        "script": {
            "kind": "realtime",
            "name": "vis_receive",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "pb_id": "pb-mvp01-20210623-00001",
        "sbi_ids": ["sbi-mvp01-20200325-00001"],
        "script": {
            "kind": "realtime",
            "name": "test_realtime",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "pb_id": "pb-mvp01-20210623-00002",
        "sbi_ids": ["sbi-mvp01-20200325-00002"],
        "script": {
            "kind": "batch",
            "name": "ical",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20210623-00000",
            "kind": ["visibilities"]
        }]
    }, {
        "pb_id": "pb-mvp01-20210623-00003",
        "sbi_ids": ["sbi-mvp01-20200325-00001", "sbi-mvp01-20200325-00002"],
        "script": {
            "kind": "batch",
            "name": "dpreb",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20210623-00002",
            "kind": ["calibration"]
        }]
    }],
    "resources": {
        "receptors": ["SKA001", "SKA036", "SKA063", "SKA100"]
    }
}

Used for assigning resources to an SDP subarray.

As concrete resource usage for the SDP depend strongly on the underlying processing script, this fully parameterises all processing blocks to be executed. This especially means that in contrast to most other sub-systems, SDP processing deployments might persist across scans (and scan configuration) boundaries.

https://schema.skao.int/ska-sdp-assignres/0.5

type

object

properties

  • interface

type

string

  • transaction_id

type

string

  • execution_block

Execution block

Execution_block_0.5

  • resources

External resources

type

object

properties

  • receptors

type

array

items

type

string

additionalProperties

True

  • processing_blocks

Processing blocks

type

array

items

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

Processing_block_0.5

additionalProperties

True

Execution_block_0.5

type

object

properties

  • eb_id

type

string

  • max_length

type

number

  • context

Free-form information from OET, see ADR-54

type

object

  • beams

Beam parameters

type

array

items

Beam parameters for the purpose of the Science Data Processor.

Beam_0.5

  • scan_types

Scan types. Associates scans with per-beam fields & channel configurations

type

array

items

type

object

properties

  • scan_type_id

type

string

  • derive_from

type

string

  • beams

type

object

additionalProperties

True

  • channels

Channels

type

array

items

Spectral windows per channel configuration.

Scan_channels_0.5

  • polarisations

Polarisation definitions

type

array

items

Polarisation definition.

type

object

properties

  • polarisations_id

type

string

  • corr_type

type

array

items

type

string

additionalProperties

True

  • fields

Fields / targets

type

array

items

Fields / Targets

type

object

properties

  • field_id

type

string

  • phase_dir

Phase direction

type

object

properties

  • ra

type

array

items

  • dec

type

array

items

  • reference_time

type

string

  • reference_frame

const

ICRF3

additionalProperties

True

  • pointing_fqdn

type

string

additionalProperties

True

additionalProperties

True

Beam_0.5

Beam parameters for the purpose of the Science Data Processor.

type

object

properties

  • beam_id

Name to identify the beam within the SDP configuration.

type

string

  • function

Identifies the type and origin of the generated beam data. This corresponds to a certain kind of calibration or receive functionality SDP is meant to provide for it.

Possible options:

  • visibilities: Correlated voltages from CBF used for calibration and imaging

  • pulsar search: SDP provides calibrations for tied-array beam as well as post-processes and delivers pulsar search data products

  • pulsar timing: SDP provides calibrations for tied-array beam as well as post-processes and delivers pulsar timing data products

  • vlbi: SDP provides calibrations for tied-array beam

  • transient buffer: SDP receives and delivers transient buffer data dumps

type

string

  • search_beam_id

type

integer

default

null

  • timing_beam_id

type

integer

default

null

  • vlbi_beam_id

type

integer

default

null

  • visibility_beam_id

type

integer

default

null

additionalProperties

True

Scan_channels_0.5

Spectral windows per channel configuration.

type

object

properties

  • channels_id

type

string

  • spectral_windows

type

array

items

type

object

properties

  • spectral_window_id

type

string

  • count

Number of channels

type

integer

  • start

First channel ID

type

integer

  • stride

Distance between subsequent channel IDs

type

integer

default

null

  • freq_min

Lower bound of first channel

type

number

  • freq_max

Upper bound of last channel

type

number

  • link_map

Channel map that specifies which network link is going to get used to send channels to SDP. Intended to allow SDP to optimise network and receive node configuration.

type

array

default

null

items

additionalProperties

True

additionalProperties

True

Processing_block_0.5

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

type

object

properties

  • pb_id

Unique identifier for this processing block.

type

string

  • script

Specification of the workflow to be executed along with configuration parameters for the workflow.

type

object

properties

  • kind

The kind of processing script (realtime or batch)

type

string

  • name

The name of the processing script

type

string

  • version

Version of the processing script. Uses semantic versioning.

type

string

additionalProperties

True

  • parameters

Configuration parameters needed to execute the workflow. As these parameters will be workflow specific, this is left as an object to be specified by the workflow definition.

type

object

default

null

  • dependencies

A dependency between processing blocks means that one processing block requires something from the other processing block to run - typically an intermediate Data Product. This generally means that

  1. The dependent processing block might only be able to start once the dependency has been fulfilled

  2. Data associated with the dependency must be kept alive until the dependent processing block is finished.

As processing blocks might have many different outputs, the dependency “kind” can be used to specify how this dependency is meant to be interpreted (e.g. “visibilities”, “calibration”…)

type

array

default

null

items

type

object

properties

  • pb_id

type

string

  • kind

type

array

items

type

string

additionalProperties

True

  • sbi_ids

Scheduling block instances that the processing block belongs to.

type

array

default

null

items

type

string

additionalProperties

True

SDP assign resources 0.4

Example

{
    "execution_block": {
        "eb_id": "eb-mvp01-20210623-00000",
        "max_length": 100.0,
        "context": {},
        "beams": [{
            "beam_id": "vis0",
            "function": "visibilities"
        }, {
            "beam_id": "pss1",
            "search_beam_id": 1,
            "function": "pulsar search"
        }, {
            "beam_id": "pss2",
            "search_beam_id": 2,
            "function": "pulsar search"
        }, {
            "beam_id": "pst1",
            "timing_beam_id": 1,
            "function": "pulsar timing"
        }, {
            "beam_id": "pst2",
            "timing_beam_id": 2,
            "function": "pulsar timing"
        }, {
            "beam_id": "vlbi1",
            "vlbi_beam_id": 1,
            "function": "vlbi"
        }],
        "scan_types": [{
            "scan_type_id": ".default",
            "beams": {
                "vis0": {
                    "channels_id": "vis_channels",
                    "polarisations_id": "all"
                },
                "pss1": {
                    "field_id": "pss_field_0",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "pss2": {
                    "field_id": "pss_field_1",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "pst1": {
                    "field_id": "pst_field_0",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "pst2": {
                    "field_id": "pst_field_1",
                    "channels_id": "pulsar_channels",
                    "polarisations_id": "all"
                },
                "vlbi": {
                    "field_id": "vlbi_field",
                    "channels_id": "vlbi_channels",
                    "polarisations_id": "all"
                }
            }
        }, {
            "scan_type_id": "target:a",
            "derive_from": ".default",
            "beams": {
                "vis0": {
                    "field_id": "field_a"
                }
            }
        }],
        "channels": [{
            "channels_id": "vis_channels",
            "spectral_windows": [{
                "spectral_window_id": "fsp_1_channels",
                "count": 744,
                "start": 0,
                "stride": 2,
                "freq_min": 350000000.0,
                "freq_max": 368000000.0,
                "link_map": [
                    [0, 0],
                    [200, 1],
                    [744, 2],
                    [944, 3]
                ]
            }, {
                "spectral_window_id": "fsp_2_channels",
                "count": 744,
                "start": 2000,
                "stride": 1,
                "freq_min": 360000000.0,
                "freq_max": 368000000.0,
                "link_map": [
                    [2000, 4],
                    [2200, 5]
                ]
            }, {
                "spectral_window_id": "zoom_window_1",
                "count": 744,
                "start": 4000,
                "stride": 1,
                "freq_min": 360000000.0,
                "freq_max": 361000000.0,
                "link_map": [
                    [4000, 6],
                    [4200, 7]
                ]
            }]
        }, {
            "channels_id": "pulsar_channels",
            "spectral_windows": [{
                "spectral_window_id": "pulsar_fsp_channels",
                "count": 744,
                "start": 0,
                "freq_min": 350000000.0,
                "freq_max": 368000000.0
            }]
        }],
        "polarisations": [{
            "polarisations_id": "all",
            "corr_type": ["XX", "XY", "YY", "YX"]
        }],
        "fields": [{
            "field_id": "field_a",
            "phase_dir": {
                "ra": [123, 0.1],
                "dec": [80, 0.1],
                "reference_time": "...",
                "reference_frame": "ICRF3"
            },
            "pointing_fqdn": "low-tmc/telstate/0/pointing"
        }]
    },
    "processing_blocks": [{
        "pb_id": "pb-mvp01-20210623-00000",
        "sbi_ids": ["sbi-mvp01-20200325-00001"],
        "script": {
            "kind": "realtime",
            "name": "vis_receive",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "pb_id": "pb-mvp01-20210623-00001",
        "sbi_ids": ["sbi-mvp01-20200325-00001"],
        "script": {
            "kind": "realtime",
            "name": "test_realtime",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "pb_id": "pb-mvp01-20210623-00002",
        "sbi_ids": ["sbi-mvp01-20200325-00002"],
        "script": {
            "kind": "batch",
            "name": "ical",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20210623-00000",
            "kind": ["visibilities"]
        }]
    }, {
        "pb_id": "pb-mvp01-20210623-00003",
        "sbi_ids": ["sbi-mvp01-20200325-00001", "sbi-mvp01-20200325-00002"],
        "script": {
            "kind": "batch",
            "name": "dpreb",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20210623-00002",
            "kind": ["calibration"]
        }]
    }],
    "resources": {
        "receptors": ["SKA001", "SKA036", "SKA063", "SKA100"]
    }
}

Used for assigning resources to an SDP subarray.

As concrete resource usage for the SDP depend strongly on the underlying processing script, this fully parameterises all processing blocks to be executed. This especially means that in contrast to most other sub-systems, SDP processing deployments might persist across scans (and scan configuration) boundaries.

https://schema.skao.int/ska-sdp-assignres/0.4

type

object

properties

  • interface

type

string

  • transaction_id

type

string

  • execution_block

Execution block

Execution_block_0.4

  • resources

External resources

type

object

properties

  • receptors

type

array

items

type

string

additionalProperties

True

  • processing_blocks

Processing blocks

type

array

items

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

Processing_block_0.4

additionalProperties

True

Execution_block_0.4

type

object

properties

  • eb_id

type

string

  • max_length

type

number

  • context

Free-form information from OET, see ADR-54

type

object

  • beams

Beam parameters

type

array

items

Beam parameters for the purpose of the Science Data Processor.

Beam_0.4

  • scan_types

Scan types. Associates scans with per-beam fields & channel configurations

type

array

items

type

object

properties

  • scan_type_id

type

string

  • derive_from

type

string

  • beams

type

object

additionalProperties

True

  • channels

Channels

type

array

items

Spectral windows per channel configuration.

Scan_channels_0.4

  • polarisations

Polarisation definitions

type

array

items

Polarisation definition.

type

object

properties

  • polarisations_id

type

string

  • corr_type

type

array

items

type

string

additionalProperties

True

  • fields

Fields / targets

type

array

items

Fields / Targets

type

object

properties

  • field_id

type

string

  • phase_dir

Phase direction

type

object

properties

  • ra

type

array

items

  • dec

type

array

items

  • reference_time

type

string

  • reference_frame

const

ICRF3

additionalProperties

True

  • pointing_fqdn

type

string

additionalProperties

True

additionalProperties

True

Beam_0.4

Beam parameters for the purpose of the Science Data Processor.

type

object

properties

  • beam_id

Name to identify the beam within the SDP configuration.

type

string

  • function

Identifies the type and origin of the generated beam data. This corresponds to a certain kind of calibration or receive functionality SDP is meant to provide for it.

Possible options:

  • visibilities: Correlated voltages from CBF used for calibration and imaging

  • pulsar search: SDP provides calibrations for tied-array beam as well as post-processes and delivers pulsar search data products

  • pulsar timing: SDP provides calibrations for tied-array beam as well as post-processes and delivers pulsar timing data products

  • vlbi: SDP provides calibrations for tied-array beam

  • transient buffer: SDP receives and delivers transient buffer data dumps

type

string

  • search_beam_id

type

integer

default

null

  • timing_beam_id

type

integer

default

null

  • vlbi_beam_id

type

integer

default

null

  • visibility_beam_id

type

integer

default

null

additionalProperties

True

Scan_channels_0.4

Spectral windows per channel configuration.

type

object

properties

  • channels_id

type

string

  • spectral_windows

type

array

items

type

object

properties

  • spectral_window_id

type

string

  • count

Number of channels

type

integer

  • start

First channel ID

type

integer

  • stride

Distance between subsequent channel IDs

type

integer

default

null

  • freq_min

Lower bound of first channel

type

number

  • freq_max

Upper bound of last channel

type

number

  • link_map

Channel map that specifies which network link is going to get used to send channels to SDP. Intended to allow SDP to optimise network and receive node configuration.

type

array

default

null

items

additionalProperties

True

additionalProperties

True

Processing_block_0.4

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

type

object

properties

  • pb_id

Unique identifier for this processing block.

type

string

  • script

Specification of the workflow to be executed along with configuration parameters for the workflow.

type

object

properties

  • kind

The kind of processing script (realtime or batch)

type

string

  • name

The name of the processing script

type

string

  • version

Version of the processing script. Uses semantic versioning.

type

string

additionalProperties

True

  • parameters

Configuration parameters needed to execute the workflow. As these parameters will be workflow specific, this is left as an object to be specified by the workflow definition.

type

object

default

null

  • dependencies

A dependency between processing blocks means that one processing block requires something from the other processing block to run - typically an intermediate Data Product. This generally means that

  1. The dependent processing block might only be able to start once the dependency has been fulfilled

  2. Data associated with the dependency must be kept alive until the dependent processing block is finished.

As processing blocks might have many different outputs, the dependency “kind” can be used to specify how this dependency is meant to be interpreted (e.g. “visibilities”, “calibration”…)

type

array

default

null

items

type

object

properties

  • pb_id

type

string

  • kind

type

array

items

type

string

additionalProperties

True

  • sbi_ids

Scheduling block instances that the processing block belongs to.

type

array

default

null

items

type

string

additionalProperties

True

SDP assign resources 0.3

Example

{
    "eb_id": "eb-mvp01-20210623-00000",
    "max_length": 100.0,
    "scan_types": [{
        "scan_type_id": "science",
        "reference_frame": "ICRS",
        "ra": "02:42:40.771",
        "dec": "-00:00:47.84",
        "channels": [{
            "count": 744,
            "start": 0,
            "stride": 2,
            "freq_min": 350000000.0,
            "freq_max": 368000000.0,
            "link_map": [
                [0, 0],
                [200, 1],
                [744, 2],
                [944, 3]
            ]
        }, {
            "count": 744,
            "start": 2000,
            "stride": 1,
            "freq_min": 360000000.0,
            "freq_max": 368000000.0,
            "link_map": [
                [2000, 4],
                [2200, 5]
            ]
        }]
    }, {
        "scan_type_id": "calibration",
        "reference_frame": "ICRS",
        "ra": "12:29:06.699",
        "dec": "02:03:08.598",
        "channels": [{
            "count": 744,
            "start": 0,
            "stride": 2,
            "freq_min": 350000000.0,
            "freq_max": 368000000.0,
            "link_map": [
                [0, 0],
                [200, 1],
                [744, 2],
                [944, 3]
            ]
        }, {
            "count": 744,
            "start": 2000,
            "stride": 1,
            "freq_min": 360000000.0,
            "freq_max": 368000000.0,
            "link_map": [
                [2000, 4],
                [2200, 5]
            ]
        }]
    }],
    "processing_blocks": [{
        "pb_id": "pb-mvp01-20210623-00000",
        "workflow": {
            "kind": "realtime",
            "name": "vis_receive",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "pb_id": "pb-mvp01-20210623-00001",
        "workflow": {
            "kind": "realtime",
            "name": "test_realtime",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "pb_id": "pb-mvp01-20210623-00002",
        "workflow": {
            "kind": "batch",
            "name": "ical",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20210623-00000",
            "kind": ["visibilities"]
        }]
    }, {
        "pb_id": "pb-mvp01-20210623-00003",
        "workflow": {
            "kind": "batch",
            "name": "dpreb",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20210623-00002",
            "kind": ["calibration"]
        }]
    }]
}

Used for assigning resources to an SDP subarray.

As concrete resource usage for the SDP depend strongly on the underlying processing script, this fully parameterises all processing blocks to be executed. This especially means that in contrast to most other sub-systems, SDP processing deployments might persist across scans (and scan configuration) boundaries.

https://schema.skao.int/ska-sdp-assignres/0.3

type

object

properties

  • interface

type

string

  • transaction_id

type

string

  • eb_id

Execution block ID to associate with processing

type

string

  • max_length

Hint about the maximum observation length to support by the SDP. Used for ensuring that enough buffer capacity is available to capture measurements. Resources assignment might fail if we do not have enough space to guarantee that all data could be captured.

type

number

  • scan_types

Scan types to be supported on subarray

type

array

items

A scan configuration for SDP. Once AssignResources has been performed successfully, subsequent Configure commands can select from these scan types in order to coordinate SDP with other sub-systems participating in the observation - for instance to switch between targets, or perform special calibration scans.

Scan_type_0.3

  • processing_blocks

type

array

items

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

Processing_block_0.3

additionalProperties

True

Scan_type_0.3

A scan configuration for SDP. Once AssignResources has been performed successfully, subsequent Configure commands can select from these scan types in order to coordinate SDP with other sub-systems participating in the observation - for instance to switch between targets, or perform special calibration scans.

type

object

properties

  • scan_type_id

type

string

  • reference_frame

Specification of the reference frame or system for a set of pointing coordinates (see ADR-49)

type

string

default

null

  • ra

Right Ascension in degrees (see ADR-49)

type

string

default

null

  • dec

Declination in degrees (see ADR-49)

type

string

default

null

  • channels

type

array

default

null

items

Informs SDP ingest about the expected channel configuration, especially which frequencies are expected to be mapped to which channel ID. Note that channel IDs are not guaranteed to be continuous, so this might involve gaps and/or strides.

Scan_channels_0.3

additionalProperties

True

Scan_channels_0.3

Informs SDP ingest about the expected channel configuration, especially which frequencies are expected to be mapped to which channel ID. Note that channel IDs are not guaranteed to be continuous, so this might involve gaps and/or strides.

type

object

properties

  • count

Number of channels

type

integer

  • start

First channel ID

type

integer

  • stride

Distance between subsequent channel IDs

type

integer

default

null

  • freq_min

Lower bound of first channel

type

number

  • freq_max

Upper bound of last channel

type

number

  • link_map

Channel map that specifies which network link is going to get used to send channels to SDP. Intended to allow SDP to optimise network and receive node configuration.

type

array

default

null

items

additionalProperties

True

Processing_block_0.3

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

type

object

properties

  • pb_id

Unique identifier for this processing block.

type

string

  • workflow

Specification of the workflow to be executed along with configuration parameters for the workflow.

type

object

properties

  • kind

The kind of processing script (realtime or batch)

type

string

  • name

The name of the processing script

type

string

  • version

Version of the processing script. Uses semantic versioning.

type

string

additionalProperties

True

  • parameters

Configuration parameters needed to execute the workflow. As these parameters will be workflow specific, this is left as an object to be specified by the workflow definition.

type

object

default

null

  • dependencies

A dependency between processing blocks means that one processing block requires something from the other processing block to run - typically an intermediate Data Product. This generally means that

  1. The dependent processing block might only be able to start once the dependency has been fulfilled

  2. Data associated with the dependency must be kept alive until the dependent processing block is finished.

As processing blocks might have many different outputs, the dependency “kind” can be used to specify how this dependency is meant to be interpreted (e.g. “visibilities”, “calibration”…)

type

array

default

null

items

type

object

properties

  • pb_id

type

string

  • kind

type

array

items

type

string

additionalProperties

True

additionalProperties

True

SDP assign resources 0.2

Example

{
    "id": "sbi-mvp01-20200325-00001",
    "max_length": 100.0,
    "scan_types": [{
        "id": "science",
        "coordinate_system": "ICRS",
        "ra": "02:42:40.771",
        "dec": "-00:00:47.84",
        "channels": [{
            "count": 744,
            "start": 0,
            "stride": 2,
            "freq_min": 350000000.0,
            "freq_max": 368000000.0,
            "link_map": [
                [0, 0],
                [200, 1],
                [744, 2],
                [944, 3]
            ]
        }, {
            "count": 744,
            "start": 2000,
            "stride": 1,
            "freq_min": 360000000.0,
            "freq_max": 368000000.0,
            "link_map": [
                [2000, 4],
                [2200, 5]
            ]
        }]
    }, {
        "id": "calibration",
        "coordinate_system": "ICRS",
        "ra": "12:29:06.699",
        "dec": "02:03:08.598",
        "channels": [{
            "count": 744,
            "start": 0,
            "stride": 2,
            "freq_min": 350000000.0,
            "freq_max": 368000000.0,
            "link_map": [
                [0, 0],
                [200, 1],
                [744, 2],
                [944, 3]
            ]
        }, {
            "count": 744,
            "start": 2000,
            "stride": 1,
            "freq_min": 360000000.0,
            "freq_max": 368000000.0,
            "link_map": [
                [2000, 4],
                [2200, 5]
            ]
        }]
    }],
    "processing_blocks": [{
        "id": "pb-mvp01-20200325-00001",
        "workflow": {
            "type": "realtime",
            "id": "vis_receive",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "id": "pb-mvp01-20200325-00002",
        "workflow": {
            "type": "realtime",
            "id": "test_realtime",
            "version": "0.1.0"
        },
        "parameters": {}
    }, {
        "id": "pb-mvp01-20200325-00003",
        "workflow": {
            "type": "batch",
            "id": "ical",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20200325-00001",
            "type": ["visibilities"]
        }]
    }, {
        "id": "pb-mvp01-20200325-00004",
        "workflow": {
            "type": "batch",
            "id": "dpreb",
            "version": "0.1.0"
        },
        "parameters": {},
        "dependencies": [{
            "pb_id": "pb-mvp01-20200325-00003",
            "type": ["calibration"]
        }]
    }]
}

https://schema.skao.int/ska-sdp-assignres/0.2

type

object

properties

  • interface

type

string

  • id

type

string

  • max_length

type

number

  • scan_types

Scan types to be supported on subarray

type

array

items

Scan_type_0.2

  • processing_blocks

type

array

items

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

Processing_block_0.2

additionalProperties

True

Scan_type_0.2

type

object

properties

  • id

type

string

  • coordinate_system

allOf

const

ICRS

  • ra

type

string

  • dec

type

string

  • channels

type

array

items

Informs SDP ingest about the expected channel configuration, especially which frequencies are expected to be mapped to which channel ID. Note that channel IDs are not guaranteed to be continuous, so this might involve gaps and/or strides.

Scan_channels_0.2

additionalProperties

True

Scan_channels_0.2

Informs SDP ingest about the expected channel configuration, especially which frequencies are expected to be mapped to which channel ID. Note that channel IDs are not guaranteed to be continuous, so this might involve gaps and/or strides.

type

object

properties

  • count

Number of channels

type

integer

  • start

First channel ID

type

integer

  • stride

Distance between subsequent channel IDs

type

integer

default

null

  • freq_min

Lower bound of first channel

type

number

  • freq_max

Upper bound of last channel

type

number

  • link_map

Channel map that specifies which network link is going to get used to send channels to SDP. Intended to allow SDP to optimise network and receive node configuration.

type

array

default

null

items

additionalProperties

True

Processing_block_0.2

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

type

object

properties

  • id

type

string

  • workflow

type

object

properties

  • type

type

string

  • id

type

string

  • version

type

string

additionalProperties

True

  • parameters

type

object

  • dependencies

type

array

items

type

object

properties

  • pb_id

type

string

  • type

type

array

items

type

string

additionalProperties

True

additionalProperties

True

SDP assign resources 0.1

https://schema.skao.int/ska-sdp-assignres/0.1

type

object

properties

  • interface

type

string

  • id

type

string

  • max_length

type

number

  • scan_types

Scan types to be supported on subarray

type

array

items

Scan_type_0.1

  • processing_blocks

type

array

items

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

Processing_block_0.1

additionalProperties

True

Scan_type_0.1

type

object

properties

  • id

type

string

  • coordinate_system

allOf

const

ICRS

  • ra

type

string

  • dec

type

string

  • channels

type

array

items

Informs SDP ingest about the expected channel configuration, especially which frequencies are expected to be mapped to which channel ID. Note that channel IDs are not guaranteed to be continuous, so this might involve gaps and/or strides.

Scan_channels_0.1

additionalProperties

True

Scan_channels_0.1

Informs SDP ingest about the expected channel configuration, especially which frequencies are expected to be mapped to which channel ID. Note that channel IDs are not guaranteed to be continuous, so this might involve gaps and/or strides.

type

object

properties

  • count

Number of channels

type

integer

  • start

First channel ID

type

integer

  • stride

Distance between subsequent channel IDs

type

integer

default

null

  • freq_min

Lower bound of first channel

type

number

  • freq_max

Upper bound of last channel

type

number

  • link_map

Channel map that specifies which network link is going to get used to send channels to SDP. Intended to allow SDP to optimise network and receive node configuration.

type

array

default

null

items

additionalProperties

True

Processing_block_0.1

A Processing Block is an atomic unit of data processing for the purpose of SDP’s internal scheduler. Each PB references a processing script and together with the associated execution block provides all parameters necessary to carry out scheduling - both on TM’s side for observation planning and on SDP’s side - as well as enable processing to locate all required inputs once it is in progress.

PBs are used for both real-time and deferred, batch, processing. An execution block will often contain many Processing Blocks, for example for ingest, self-calibration and Data Product preparation.

type

object

properties

  • id

type

string

  • workflow

type

object

properties

  • type

type

string

  • id

type

string

  • version

type

string

additionalProperties

True

  • parameters

type

object

  • dependencies

type

array

items

type

object

properties

  • pb_id

type

string

  • type

type

array

items

type

string

additionalProperties

True

additionalProperties

True