Source
"It could take time to generate the image depending on your computer resource. "
# sd task for imaging
import contextlib
import os
import re
import shutil
import numpy
from casatasks import casalog
from casatools import image, imager
from casatools import ms as mstool
from casatools import quanta
from . import sdbeamutil, sdutil
from .cleanhelper import cleanhelper
# (1) Import the python application layer
from .imagerhelpers.imager_base import PySynthesisImager
from .imagerhelpers.input_parameters import ImagerParameters
image_suffix = '.image'
residual_suffix = '.residual'
weight_suffix = '.weight'
associate_suffixes = ['.psf', '.sumwt', weight_suffix, residual_suffix]
contextmanager .
def open_ia(imagename):
ia = image()
ia.open(imagename)
try:
yield ia
finally:
ia.close()
contextmanager .
def open_ms(vis):
ms = mstool()
ms.open(vis)
try:
yield ms
finally:
ms.close()
class SelectionHandler(object):
def __init__(self, sel):
self.sel = sel
if isinstance(self.sel, str):
self.selector = self._select0
elif len(self.sel) == 1:
self.selector = self._select1
else:
self.selector = self._select2
def __call__(self, i):
return self.selector(i)
def _select0(self, i):
return self.sel
def _select1(self, i):
return self.sel[0]
def _select2(self, i):
return self.sel[i]
class OldImagerBasedTools(object):
def __init__(self):
self.imager = imager()
contextmanager .
def open_old_imager(self, vis):
try:
self.imager.open(vis)
yield self.imager
finally:
self.imager.close()
contextmanager .
def open_and_select_old_imager(self, vislist, field, spw, antenna, scan, intent, timerange):
if isinstance(vislist, str):
with self.open_old_imager(vislist) as im:
im.selectvis(field=field,
spw=spw,
nchan=-1,
start=0,
step=1,
baseline=antenna,