Skip to content
Snippets Groups Projects
Commit 9084e69a authored by Nico Vermaas's avatar Nico Vermaas
Browse files

fan-out alta conversion algorithm

parent be2930cb
No related branches found
No related tags found
1 merge request!3fan-out alta conversion algorithm
Pipeline #35434 passed
...@@ -41,6 +41,35 @@ def calc_beam(name): ...@@ -41,6 +41,35 @@ def calc_beam(name):
return 0 return 0
# conversion algorithm to extract a bit more metadata from an ALTA record
def convert_dataproduct(row):
name, pid, access_url, ra, dec, dt, dst, observation = row
if dt in ['inspectionPlot']:
return None
if dst in ['calibrationTable']:
return None
# determine collection
collection = 'apertif-imaging'
if dt == 'timeSeries':
collection = 'apertif-timeseries'
level = 0
if dst == 'uncalibratedVisibility':
level = 0
if dst == 'calibratedVisibility':
level = 1
if dst in ['continuumMF','continuumChunk','imageCube','beamCube','polarisationImage','polarisationCube','continuumCube']:
level = 2
beam = calc_beam(name)
record_to_insert = (name, observation, beam, ra, dec, collection, level, dt, dst, access_url)
return record_to_insert
def do_convert(source, target): def do_convert(source, target):
try: try:
...@@ -82,31 +111,10 @@ def do_convert(source, target): ...@@ -82,31 +111,10 @@ def do_convert(source, target):
insert_count = 0 insert_count = 0
for row in rows: for row in rows:
name, pid, access_url,ra,dec,dt,dst,observation = row name, pid, access_url,ra,dec,dt,dst,observation = row
record_to_insert = convert_dataproduct(row)
# TODO: move this algorithm to a sane place, finish it and have scientists review it. if not record_to_insert:
# determine which dataproducts to skip
insert_this_record = True
if dt in ['inspectionPlot']:
continue
if dst in ['calibrationTable']:
continue continue
# determine collection
collection = 'apertif-imaging'
if dt == 'timeSeries':
collection = 'apertif-timeseries'
level = 0
if dst == 'calibratedVisibility':
level=1
if 'cube' in dt:
level=2
# todo: calculate beam
beam = calc_beam(name)
record_to_insert = (name, pid, observation, beam, ra, dec, collection, level, dt,dst, access_url)
target_cursor.execute(sql_scripts.insert_into_skyviews,record_to_insert) target_cursor.execute(sql_scripts.insert_into_skyviews,record_to_insert)
target_connection.commit() target_connection.commit()
insert_count = insert_count + 1 insert_count = insert_count + 1
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment