Source
xxxxxxxxxx
from __future__ import absolute_import
import sys
# get is_CASA6 and is_python3
from casatasks.private.casa_transition import *
if is_CASA6:
from casatools import image, coordsys, regionmanager
from casatasks import casalog
from .ialib import write_image_history
else:
from taskinit import *
from ialib import write_image_history
image = iatool
regionmanager = rgtool
coordsys = cstool
def imdev(
imagename, outfile, region, box, chans,
stokes, mask, overwrite, stretch,
grid, anchor, xlength, ylength, interp, stattype, statalg,
zscore, maxiter
):
_myia = image()
_myrg = regionmanager()
_mycs = coordsys()
try:
casalog.origin('imdev')
_myia.open(imagename)
_mycs = _myia.coordsys()
csrec = _mycs.torecord()
shape = _myia.shape()
reg = _myrg.frombcs(
csrec, shape,
box, chans, stokes, "a", region
)
outia = _myia.deviation(
outfile=outfile, region=reg, mask=mask,
overwrite=overwrite, stretch=stretch, grid=grid,
anchor=anchor, xlength=xlength, ylength=ylength,
interp=interp, stattype=stattype, statalg=statalg,
zscore=zscore, maxiter=maxiter
)
try:
param_names = imdev.__code__.co_varnames[:imdev.__code__.co_argcount]
if is_python3:
vars = locals()
param_vals = [vars[p] for p in param_names]
else:
param_vals = [eval(p) for p in param_names]
write_image_history(
outia, sys._getframe().f_code.co_name,
param_names, param_vals, casalog
)
except Exception as instance:
casalog.post("*** Error \'%s\' updating HISTORY" % (instance), 'WARN')
finally:
_myia.done()
_myrg.done()
_mycs.done()