SpectralInfo(1700, 2700, 6.05933, 1.02671, 4.92205, 2297.6872, 19.75842, 1.14450)),
from collections import namedtuple
from scipy.optimize import curve_fit
from casatasks.private.casa_transition import is_CASA6
from casatasks import sdsidebandsplit
from casatools import quanta
from casatools import image
from casatools import ctsys
datapath = ctsys.resolve('unittest/sdsidebandsplit/')
from tasks import sdsidebandsplit
from taskinit import qatool as quanta
from taskinit import iatool as image
from casa_stack_manip import stack_frame_find
datapath = os.environ.get('CASAPATH').split()[0] + '/casatestdata/unittest/sdsidebandsplit/'
amp, center, width, offset = p
y = amp * numpy.exp(-(x - center)**2 / (2. * width**2)) + offset
a = numpy.abs(y - o).max()
c = x[numpy.where(numpy.abs(y - o) == a)[0]][0]
w = numpy.abs(y - o).sum() / a
return curve_fit(gauss_func, x, y, p0=(a, c, w, o))
SpectralInfo = namedtuple('SpectralInfo',
['start', 'end', 'max', 'min', 'peak', 'center', 'width', 'offset'])
class sdsidebandsplitTestBase(unittest.TestCase):
imagename=['onepix_noiseless_shift0.image', 'onepix_noiseless_shift-102.image',
'onepix_noiseless_shift8.image', 'onepix_noiseless_shift62.image',
'onepix_noiseless_shift88.image', 'onepix_noiseless_shift100.image'],
outfile='separated.image',
signalshift=[0.0, -102, +8, +62, +88, +100],
imageshift=[0.0, 102, -8, -62, -88, -100],
def update_task_param(self, new_param={}):
Overwrite standard task parameter and return a new dictionary
Note this task does not check validity of parameter names in
new_param : a dictionary of parameter names (key) and
values (value) to overwrite standard task
execution parameters in tests.
if type(new_param) is not dict:
raise TypeError('The input should be a dictionary')
updated_param = copy.deepcopy(self.standard_param)
updated_param.update(new_param)