예제 #1
0
#!/usr/bin/env python

import optparse
import pickle
import numpy as np
from SkyModel.Other import MyLogger
log=MyLogger.getLogger("MakeModel")
from SkyModel.Sky import ClassSM
try:
    from DDFacet.Imager.ModModelMachine import GiveModelMachine
except:
    from DDFacet.Imager.ModModelMachine import ClassModModelMachine
from DDFacet.Imager import ClassCasaImage
from pyrap.images import image

SaveName="last_MakeModel.obj"

def read_options():
    desc="""Questions and suggestions: [email protected]"""
    global options
    opt = optparse.OptionParser(usage='This is mostly used cluster the skymodels (usage %prog <options>). Two skymodels can be used (i) bbs-type skymodels (ii) DDF <BaseImageName>.DicoModel.',version='%prog version 1.0',description=desc)

    group = optparse.OptionGroup(opt, "* SM related options", "Won't work if not specified.")
    group.add_option('--SkyModel',help='Name of the bbs type skymodel',default='')
    group.add_option('--BaseImageName',help='List of targets [no default]',default='')
    opt.add_option_group(group)

    group = optparse.OptionGroup(opt, "* Options")
    group.add_option('--OutSkyModel',help='Name of the output skymodel (optional)',default='')
    group.add_option('--MaskName',help='If you want to use a mask to mask the DicoModel',default='')
    group.add_option('--CleanNegComp',help='Remove some negative componants (experimental - not adviced without looking at the code)',type="int",default=0)
예제 #2
0
from pyrap.images import image
import os
from SkyModel.Other import MyPickle
import numpy as np
from SkyModel.Other import MyLogger
log = MyLogger.getLogger("ClassCasaImage")
from SkyModel.Other import rad2hmsdms
import pyfits
import pyrap.images


def PutDataInNewImage(ImageNameIn, ImageNameOut, data, CorrT=False):
    im = image(ImageNameIn)

    F = pyfits.open(ImageNameIn)
    F0 = F[0]
    nx = F0.header["NAXIS1"]
    ny = F0.header["NAXIS2"]
    npol = F0.header["NAXIS3"]
    nch = F0.header["NAXIS4"]
    shape = (nch, npol, ny, nx)

    Dico = im.coordinates().dict()
    cell = abs(Dico["direction0"]["cdelt"][0]) * 180 / np.pi * 3600
    ra, dec = Dico["direction0"]["crval"]
    CasaImage = ClassCasaimage(ImageNameOut, shape, cell, (ra, dec))
    CasaImage.setdata(data, CorrT=CorrT)
    CasaImage.ToFits()
    CasaImage.close()

예제 #3
0
from SkyModel.Other import ModCoord
import numpy as np
from scipy.spatial import Voronoi
import ModVoronoi
from SkyModel.Other import MyLogger
from SkyModel.Other import ModColor
log = MyLogger.getLogger("VoronoiToReg")


class VoronoiToReg():
    def __init__(self, rac, decc):
        self.rac = rac
        self.decc = decc
        self.CoordMachine = ModCoord.ClassCoordConv(rac, decc)

    def ToReg(self, regFile, xc, yc, radius=0.1, Col="red"):
        print >> log, "Writing voronoi in: %s" % ModColor.Str(regFile,
                                                              col="blue")
        f = open(regFile, "w")
        f.write("# Region file format: DS9 version 4.1\n")
        ss0 = 'global color=green dashlist=8 3 width=1 font="helvetica 10 normal roman" select=1 highlite=1 dash=0'
        ss1 = ' fixed=0 edit=1 move=1 delete=1 include=1 source=1\n'

        f.write(ss0 + ss1)
        f.write("fk5\n")

        CoordMachine = self.CoordMachine

        xy = np.zeros((xc.size, 2), np.float32)
        xy[:, 0] = xc
        xy[:, 1] = yc
예제 #4
0
#!/usr/bin/env python

import optparse
import pickle
import numpy as np
from SkyModel.Other import MyLogger
log = MyLogger.getLogger("MaskDicoModel")

try:
    from DDFacet.Imager.ModModelMachine import GiveModelMachine
except:
    from DDFacet.Imager.ModModelMachine import ClassModModelMachine
from DDFacet.Imager import ClassCasaImage
from pyrap.images import image

SaveName = "last_MaskDicoModel.obj"


def read_options():
    desc = """Questions and suggestions: [email protected]"""
    global options
    opt = optparse.OptionParser(usage='Usage: %prog <options>',
                                version='%prog version 1.0',
                                description=desc)

    group = optparse.OptionGroup(opt, "* Data-related options",
                                 "Won't work if not specified.")
    group.add_option('--InDicoModel',
                     help='Input DicoModel name [no default]',
                     default='')
    group.add_option('--OutDicoModel',