Source
##########################################################################
# task_specflux.py
#
# Copyright (C) 2008, 2009, 2010
# Associated Universities, Inc. Washington DC, USA.
#
# This script is free software; you can redistribute it and/or modify it
# under the terms of the GNU Library General Public License as published by
# the Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This library is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
# License for more details.
#
# You should have received a copy of the GNU Library General Public License
# along with this library; if not, write to the Free Software Foundation,
# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
#
# Correspondence concerning AIPS++ should be adressed as follows:
# Internet email: aips2-request@nrao.edu.
# Postal address: AIPS++ Project Office
# National Radio Astronomy Observatory
# 520 Edgemont Road
# Charlottesville, VA 22903-2475 USA
#
# <author>
# Dave Mehringer
# </author>
#
###########################################################################
import os.path
import numpy
from casatasks.private.casa_transition import *
if is_CASA6:
from casatools import image, regionmanager, quanta
from casatasks import casalog
from .ialib import write_image_history, get_created_images
else:
from taskinit import *
from taskinit import iatool as image
from ialib import write_image_history, get_created_images
image = iatool
regionmanager = rgtool
quanta = qatool
def specflux(
imagename, region, box, chans, stokes, mask, stretch,
function, unit, major, minor, logfile, overwrite
):
casalog.origin('specflux')
myia = image()
myrg = regionmanager()
_qa = quanta()
try:
if logfile and not overwrite and os.path.exists(logfile):
raise Exception(logfile + " exists and overwrite is False")
funclower = function.lower()
if not (
funclower.startswith("f") or funclower.startswith("mea")
or funclower.startswith("med") or funclower.startswith("s")