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"]
}]
}]
}
type |
object |
|
properties |
||
|
type |
string |
|
type |
string |
|
type |
number |
|
Scan types to be supported on subarray |
|
type |
array |
|
items |
||
|
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. |
|
additionalProperties |
True |
|
Scan_type_0.2
type |
object |
||
properties |
|||
|
type |
string |
|
|
allOf |
const |
ICRS |
|
type |
string |
|
|
type |
string |
|
|
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. |
||
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 |
||
|
Number of channels |
|
type |
integer |
|
|
First channel ID |
|
type |
integer |
|
|
Distance between subsequent channel IDs |
|
type |
integer |
|
|
Lower bound of first channel |
|
type |
number |
|
|
Upper bound of last channel |
|
type |
number |
|
|
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 |
|
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 |
|||||
|
type |
string |
|||
|
type |
object |
|||
properties |
|||||
|
type |
string |
|||
|
type |
string |
|||
|
type |
string |
|||
additionalProperties |
True |
||||
|
type |
object |
|||
|
type |
array |
|||
items |
Processing block dependency 0.2 |
||||
type |
object |
||||
properties |
|||||
|
type |
string |
|||
|
type |
array |
|||
items |
type |
string |
|||
additionalProperties |
True |
||||
additionalProperties |
True |
||||