Skip to content

Commit

Permalink
fixes polcal 47 (#619)
Browse files Browse the repository at this point in the history
Co-authored-by: bennahugo <[email protected]>
Co-authored-by: Sphesihle Makhathini <[email protected]>
  • Loading branch information
3 people authored May 13, 2020
2 parents f98ad15 + 9dec814 commit 25c24fe
Showing 1 changed file with 43 additions and 6 deletions.
49 changes: 43 additions & 6 deletions stimela/cargo/cab/casa47_polcal/src/run.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,21 @@
import sys
import logging
import Crasa.Crasa as crasa

sys.path.append("/scratch/stimela")

utils = __import__('utils')
from casacore.tables import table
import numpy
import glob
import yaml
import shutil

CONFIG = os.environ["CONFIG"]
INPUT = os.environ["INPUT"]
OUTPUT = os.environ["OUTPUT"]
MSDIR = os.environ["MSDIR"]

cab = utils.readJson(CONFIG)
with open(CONFIG, "r") as _std:
cab = yaml.safe_load(_std)

junk = cab["junk"]

args = {}
for param in cab['parameters']:
Expand All @@ -25,4 +29,37 @@
args[name] = value

task = crasa.CasaTask(cab["binary"], **args)
task.run()
try:
task.run()
finally:
for item in junk:
for dest in [OUTPUT, MSDIR]: # these are the only writable volumes in the container
items = glob.glob("{dest}/{item}".format(**locals()))
for f in items:
if os.path.isfile(f):
os.remove(f)
elif os.path.isdir(f):
shutil.rmtree(f)
# Leave other types

gtab = args["caltable"]
if not os.path.exists(gtab):
raise RuntimeError("The gaintable was not created. Please refer to CASA {0:s} logfile for further details".format(cab["binary"]))

tab = table(gtab)
field_ids = numpy.unique(tab.getcol("FIELD_ID"))
tab.close()

tab = table(gtab+"::FIELD")
field_names = tab.getcol("NAME")
tab.close()

field_in = args["field"].split(",")

try:
ids = map(int, field_in)
except ValueError:
ids = map(lambda a: field_names.index(a), field_in)

if not set(ids).intersection(field_ids):
raise RuntimeError("None of the fields has solutions after the calibration. Please refer to CASA the {} logfile for further details".format(cab["binary"]))

0 comments on commit 25c24fe

Please sign in to comment.