Ejemplo n.º 1
0
        ugali.utils.skymap.writeSparseHealpixMap(self.roi.pixels_target,
                                                 data_dict,
                                                 self.config['coords']['nside_pixel'],
                                                 outfile,
                                                 distance_modulus_array=self.distance_modulus_array,
                                                 coordsys='NULL', ordering='NULL',
                                                 header_dict=header_dict)

############################################################
    
if __name__ == "__main__":
    import ugali.utils.parser
    description = "Script for executing the likelihood scan."
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_config()
    parser.add_argument('outfile',metavar='outfile.fits',help='Output fits file.')
    parser.add_debug()
    parser.add_verbose()
    parser.add_coords(required=True,radius=False)
    opts = parser.parse_args()

    if len(opts.coords) != 1: 
        raise Exception('Must specify exactly one coordinate.')
    lon,lat,radius = opts.coords[0]

    grid = createGridSearch(opts.config,lon,lat)
    if not opts.debug:
        result = grid.search()
        grid.write(opts.outfile)

Ejemplo n.º 2
0
            logger.info("Fit parameter values:")
            for d in dtype:
                logger.info('\t%s: %s'%(d[0], results[i][d[0]]))

            if (i%self.config['simulate']['save'])==0 and outfile:
                ugali.utils.fileio.write(outfile,results)
                
        if outfile: ugali.utils.fileio.write(outfile,results,clobber=True)
            
        return results

if __name__ == "__main__":
    import ugali.utils.parser
    parser = ugali.utils.parser.Parser(description=__doc__)
    parser.add_config()
    parser.add_argument('-p','--popfile',default=None,
                        help='simulated population input file')
    parser.add_argument('-c','--catfile',default=None,
                        help='simulated catalog input file')
    parser.add_argument('-o','--outfile',default=None,
                        help='output results file')
    parser.add_argument('-i','--mc-source-id',default=None,type=int,action='append',
                        help='specific source id to run')
    parser.add_force()
    parser.add_debug()
    parser.add_verbose()
    args = parser.parse_args()

    analyzer = Analyzer(args.config,args.catfile,args.popfile)
    
    if args.mc_source_id is None:
        basename = os.path.splitext(args.catfile)[0]
Ejemplo n.º 3
0
    if samples is not None:
        mcmc.load_samples(samples)

    return mcmc

if __name__ == "__main__":
    import ugali.utils.parser
    description = "Script for running MCMC followup"
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_config()
    parser.add_debug()
    parser.add_verbose()
    #parser.add_coords(required=True)
    parser.add_coords()
    parser.add_name()
    parser.add_argument('--srcmdl',help='Source model file')
    parser.add_argument('--grid',action='store_true',help='Grid search for intial parameters')
    parser.add_argument('outfile',default=None,help="Output file name")
                        
    opts = parser.parse_args()

    if opts.coords is not None and len(opts.coords) != 1: 
        raise Exception('Must specify exactly one coordinate.')
    
    #try:
    #    # Initialize the MPI-based pool used for parallelization.
    #    from emcee.utils import MPIPool
    #    pool = MPIPool(loadbalance=True)
    #except (ImportError,ValueError) as e:
    #    logger.warn(e.message)
    #    pool = None
Ejemplo n.º 4
0
                          clobber=True)

        fitsio.write(outfile,
                     dict(DISTANCE_MODULUS=self.distance_modulus_array.astype(
                         'f4', copy=False)),
                     extname='DISTANCE_MODULUS',
                     clobber=False)


if __name__ == "__main__":
    import ugali.utils.parser
    description = "Script for executing the likelihood scan."
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_config()
    parser.add_argument('outfile',
                        metavar='outfile.fits',
                        help='Output fits file.')
    parser.add_argument('-m',
                        '--mlimit',
                        nargs='?',
                        default=-1,
                        type=int,
                        help='Memory limit (KB)')
    parser.add_debug()
    parser.add_verbose()
    parser.add_coords(required=True, radius=False)
    opts = parser.parse_args()

    if len(opts.coords) != 1:
        raise Exception('Must specify exactly one coordinate.')
    lon, lat, radius = opts.coords[0]
Ejemplo n.º 5
0
class Marigo2017(Padova):
    defaults = dict(defaults_30)
    defaults['isoc_kind'] = 'parsec_CAF09_v1.2S_NOV13'

def factory(name, **kwargs):
    from ugali.utils.factory import factory
    return factory(name, module=__name__, **kwargs)

if __name__ == "__main__":
    import ugali.utils.parser
    description = "Download isochrones"
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_verbose()
    parser.add_force()
    parser.add_argument('-a','--age',default=None,type=float)
    parser.add_argument('-z','--metallicity',default=None,type=float)
    parser.add_argument('-k','--kind',default='Bressan2012')
    parser.add_argument('-s','--survey',default='des')
    parser.add_argument('-o','--outdir',default=None)
    parser.add_argument('-n','--njobs',default=10,type=int)
    args = parser.parse_args()

    if args.verbose:
        try:                                                                                            
            from http.client import HTTPConnection
        except ImportError:                                                                     from httplib import HTTPConnection
        HTTPConnection.debuglevel = 1

    if args.outdir is None: 
        args.outdir = os.path.join(args.survey.lower(),args.kind.lower())
Ejemplo n.º 6
0
        outfile.write('s.WAVG_SPREAD_MODEL_R, s.CLASS_STAR_R \n')
        outfile.write('FROM %s s \n' % (table))
        outfile.write('WHERE %s; \n' % (select))
        outfile.write(' > %s \n' % (db))
        outfile.close()


if __name__ == "__main__":
    import ugali.utils.parser
    description = "Download data set."
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_config()
    parser.add_debug()
    parser.add_verbose()
    parser.add_argument('pixfile',
                        metavar='pixels.dat',
                        default=None,
                        nargs='?',
                        help='Input pixel file.')
    opts = parser.parse_args()

    from ugali.utils.config import Config
    config = Config(opts.config)

    survey = config['data']['survey'].lower()
    release = config['data']['release'].lower()
    outdir = config['data']['dirname']

    db = databaseFactory(survey, release)
    db.run(pixfile=opts.pixfile, outdir=outdir)
Ejemplo n.º 7
0
        results.load_samples(samples)

    return results


def write_results(filename, config, srcfile, samples):
    """ Package everything nicely """
    results = createResults(config, srcfile, samples=samples)
    results.write(filename)


if __name__ == "__main__":
    import ugali.utils.parser
    parser = ugali.utils.parser.Parser(description=__doc__)
    parser.add_config()
    parser.add_verbose()
    parser.add_argument('--srcmdl', required=True, help='Source model file')
    parser.add_argument('--section',
                        default='source',
                        help='Section of source file')
    parser.add_argument('--samples',
                        required=True,
                        help='Posterior samples file')
    parser.add_argument('outfile', default=None, help="Output file name")

    args = parser.parse_args()

    #write_results(args.outfile,args.config,args.srcmdl,args.samples)
    results = createResults(args.config, args.srcmdl, samples=args.samples)
    results.write(args.outfile)
Ejemplo n.º 8
0
import ugali.utils.parser
import numpy as np
from ugali.utils.projector import gal2cel, ang2const, ang2iau

#CATALOGS = ['McConnachie12','Rykoff14', 'Harris96', 'Corwen04', 'Nilson73', 'Webbink85', 'Kharchenko13', 'WEBDA14']
CATALOGS = [
    'McConnachie12', 'Harris96', 'Corwen04', 'Nilson73', 'Webbink85',
    'Kharchenko13', 'Bica08', 'WEBDA14', 'ExtraDwarfs', 'ExtraClusters'
]

if __name__ == "__main__":
    import argparse
    description = "python script"
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_coords(required=True, radius=True, targets=True)
    parser.add_argument('-n', '--nnearest', default=1, type=int)
    opts = parser.parse_args()

    catalog = ugali.candidate.associate.SourceCatalog()
    for i in CATALOGS:
        catalog += ugali.candidate.associate.catalogFactory(i)

    for name, (glon, glat, radius) in zip(opts.names, opts.coords):
        ra, dec = gal2cel(glon, glat)
        iau = ang2iau(glon, glat)
        const = ang2const(glon, glat)[0]
        if radius <= 0: radius = None

        idx1, idx2, sep = catalog.match([glon], [glat],
                                        tol=radius,
                                        nnearest=opts.nnearest)
Ejemplo n.º 9
0
        results.load_samples(samples)

    return results

def write_results(filename,config,srcfile,samples):
    """ Package everything nicely """ 
    results = createResults(config,srcfile,samples=samples)
    results.write(filename)


if __name__ == "__main__":
    import ugali.utils.parser
    parser = ugali.utils.parser.Parser(description=__doc__)
    parser.add_config()
    parser.add_verbose()
    parser.add_argument('--srcmdl',required=True,
                        help='Source model file')
    parser.add_argument('--section',default='source',
                        help='Section of source file')
    parser.add_argument('--samples',required=True,
                        help='Posterior samples file')
    parser.add_argument('outfile',default=None,
                        help="Output file name")
                        
    args = parser.parse_args()

    #write_results(args.outfile,args.config,args.srcmdl,args.samples)
    results = createResults(args.config,args.srcmdl,samples=args.samples)
    results.write(args.outfile)

Ejemplo n.º 10
0
    defaults = dict(defaults_30)
    defaults['isoc_kind'] = 'parsec_CAF09_v1.2S_NOV13'


def factory(name, **kwargs):
    from ugali.utils.factory import factory
    return factory(name, module=__name__, **kwargs)


if __name__ == "__main__":
    import ugali.utils.parser
    description = "Download isochrones"
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_verbose()
    parser.add_force()
    parser.add_argument('-a', '--age', default=None, type=float)
    parser.add_argument('-z', '--metallicity', default=None, type=float)
    parser.add_argument('-k', '--kind', default='Bressan2012')
    parser.add_argument('-s', '--survey', default='des')
    parser.add_argument('-o', '--outdir', default=None)
    parser.add_argument('-n', '--njobs', default=10, type=int)
    args = parser.parse_args()

    if args.verbose:
        try:
            from http.client import HTTPConnection
        except ImportError:
            from httplib import HTTPConnection
        HTTPConnection.debuglevel = 1

    if args.outdir is None:
Ejemplo n.º 11
0
                assert np.allclose(age,float(a),atol=1e-5)
            except:
                msg = "Age does not match:\n"+lines[13]
                raise Exception(msg)

def factory(name, **kwargs):
    from ugali.utils.factory import factory
    return factory(name, module=__name__, **kwargs)

if __name__ == "__main__":
    import ugali.utils.parser
    description = "Download Dotter isochrones"
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_verbose()
    parser.add_force()
    parser.add_argument('-a','--age',default=None,type=float,action='append')
    parser.add_argument('-z','--metallicity',default=None,type=float,action='append')
    parser.add_argument('-k','--kind',default='Dotter2008')
    parser.add_argument('-s','--survey',default='des')
    parser.add_argument('-o','--outdir',default=None)
    parser.add_argument('-n','--njobs',default=1,type=int)
    args = parser.parse_args()

    if args.verbose:
        try:
            from http.client import HTTPConnection
        except ImportError:
            from httplib import HTTPConnection
        HTTPConnection.debuglevel = 1

    if args.outdir is None: 
Ejemplo n.º 12
0
        outfile.write('s.WAVG_MAG_PSF_G, s.WAVG_MAGERR_PSF_G, \n')
        outfile.write('s.MAG_PSF_R, s.MAGERR_PSF_R, \n')
        outfile.write('s.WAVG_MAG_PSF_R, s.WAVG_MAGERR_PSF_R, \n')
        outfile.write('s.SPREAD_MODEL_R, s.SPREADERR_MODEL_R, \n')
        outfile.write('s.WAVG_SPREAD_MODEL_R, s.CLASS_STAR_R \n')
        outfile.write('FROM %s s \n'%(table))
        outfile.write('WHERE %s; \n'%(select))
        outfile.write(' > %s \n'%(db))
        outfile.close()

if __name__ == "__main__":
    import ugali.utils.parser
    description = "Download data set."
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_config()
    parser.add_debug()
    parser.add_verbose()
    parser.add_argument('pixfile',metavar='pixels.dat',default=None,
                        nargs='?',help='Input pixel file.')
    opts = parser.parse_args()

    from ugali.utils.config import Config
    config = Config(opts.config)

    survey = config['data']['survey'].lower()
    release = config['data']['release'].lower()
    outdir = config['data']['dirname']

    db = databaseFactory(survey,release)
    db.run(pixfile=opts.pixfile,outdir=outdir)
Ejemplo n.º 13
0
        mcmc.load_samples(samples)

    return mcmc


if __name__ == "__main__":
    import ugali.utils.parser
    description = "Script for running MCMC followup"
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_config()
    parser.add_debug()
    parser.add_verbose()
    #parser.add_coords(required=True)
    parser.add_coords()
    parser.add_name()
    parser.add_argument('--srcmdl', help='Source model file')
    parser.add_argument('--grid',
                        action='store_true',
                        help='Grid search for intial parameters')
    parser.add_argument('outfile', default=None, help="Output file name")

    opts = parser.parse_args()

    if opts.coords is not None and len(opts.coords) != 1:
        raise Exception('Must specify exactly one coordinate.')

    #try:
    #    # Initialize the MPI-based pool used for parallelization.
    #    from emcee.utils import MPIPool
    #    pool = MPIPool(loadbalance=True)
    #except (ImportError,ValueError) as e:
Ejemplo n.º 14
0
                          clobber=True)

        fitsio.write(outfile,
                     dict(DISTANCE_MODULUS=self.distance_modulus_array.astype(
                         'f4', copy=False)),
                     extname='DISTANCE_MODULUS',
                     clobber=False)


if __name__ == "__main__":
    import ugali.utils.parser
    description = "Script for executing the likelihood scan."
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_config()
    parser.add_argument('outfile',
                        metavar='outfile.fits',
                        help='Output fits file.')
    parser.add_debug()
    parser.add_verbose()
    parser.add_coords(required=True, radius=False)
    opts = parser.parse_args()

    if len(opts.coords) != 1:
        raise Exception('Must specify exactly one coordinate.')
    lon, lat, radius = opts.coords[0]

    grid = createGridSearch(opts.config, lon, lat)
    if not opts.debug:
        result = grid.search()
        grid.write(opts.outfile)
Ejemplo n.º 15
0
                logger.info('\t%s: %s' % (d[0], results[i][d[0]]))

            if (i % self.config['simulate']['save']) == 0 and outfile:
                ugali.utils.fileio.write(outfile, results)

        if outfile: ugali.utils.fileio.write(outfile, results, clobber=True)

        return results


if __name__ == "__main__":
    import ugali.utils.parser
    parser = ugali.utils.parser.Parser(description=__doc__)
    parser.add_config()
    parser.add_argument('-p',
                        '--popfile',
                        default=None,
                        help='simulated population input file')
    parser.add_argument('-c',
                        '--catfile',
                        default=None,
                        help='simulated catalog input file')
    parser.add_argument('-o',
                        '--outfile',
                        default=None,
                        help='output results file')
    parser.add_argument('-i',
                        '--mc-source-id',
                        default=None,
                        type=int,
                        action='append',
                        help='specific source id to run')
Ejemplo n.º 16
0
            results[i]['FIT_MASS_ERR'] = grid.stellar_mass_conversion*richness_err
             
            distance_modulus_err = (err['distance_modulus'][1]-err['distance_modulus'][0])/2.
            results[i]['FIT_DISTANCE_ERR'] = distance_modulus_err
            """
        return results

    run = runall


if __name__ == "__main__":
    import ugali.utils.parser
    parser = ugali.utils.parser.Parser(description=__doc__)
    parser.add_config()
    parser.add_argument('-p',
                        '--popfile',
                        default=None,
                        help='simulated population input file')
    parser.add_argument('-c',
                        '--catfile',
                        default=None,
                        help='simulated catalog input file')
    parser.add_argument('-o',
                        '--outfile',
                        default=None,
                        help='output results file')
    parser.add_argument('-i',
                        '--mc-source-id',
                        default=None,
                        type=int,
                        action='append',
                        help='specific source id to run')
Ejemplo n.º 17
0

def factory(name, **kwargs):
    from ugali.utils.factory import factory
    return factory(name, module=__name__, **kwargs)


if __name__ == "__main__":
    import ugali.utils.parser
    description = "Download Dotter isochrones"
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_verbose()
    parser.add_force()
    parser.add_argument('-a',
                        '--age',
                        default=None,
                        type=float,
                        action='append')
    parser.add_argument('-z',
                        '--metallicity',
                        default=None,
                        type=float,
                        action='append')
    parser.add_argument('-k', '--kind', default='Dotter2008')
    parser.add_argument('-s', '--survey', default='des')
    parser.add_argument('-o', '--outdir', default=None)
    parser.add_argument('-n', '--njobs', default=1, type=int)
    args = parser.parse_args()

    if args.verbose:
        try:
Ejemplo n.º 18
0
#!/usr/bin/env python
import ugali.candidate.associate
import ugali.utils.parser
import numpy as np
from ugali.utils.projector import gal2cel,ang2const,ang2iau

#CATALOGS = ['McConnachie12','Rykoff14', 'Harris96', 'Corwen04', 'Nilson73', 'Webbink85', 'Kharchenko13', 'WEBDA14']
CATALOGS = ['McConnachie12', 'Harris96', 'Corwen04', 'Nilson73', 'Webbink85', 'Kharchenko13', 'Bica08', 'WEBDA14', 'ExtraDwarfs','ExtraClusters']

if __name__ == "__main__":
    import argparse
    description = "python script"
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_coords(required=True,radius=True,targets=True)
    parser.add_argument('-n','--nnearest',default=1,type=int)
    opts = parser.parse_args()

    catalog = ugali.candidate.associate.SourceCatalog()
    for i in CATALOGS:
        catalog += ugali.candidate.associate.catalogFactory(i)

    for name,(glon,glat,radius) in zip(opts.names, opts.coords):
        ra,dec = gal2cel(glon,glat)
        iau = ang2iau(glon,glat)
        const = ang2const(glon,glat)[0]
        if radius <= 0: radius = None
    
        idx1,idx2,sep = catalog.match([glon],[glat],tol=radius,nnearest=opts.nnearest)
        match = catalog[idx2]

        if len(match) > 0:
Ejemplo n.º 19
0
    defaults['isoc_kind'] = 'gi10b'

class Bressan2012(Padova):
    defaults = dict(defaults_27)
    defaults['isoc_kind'] = 'parsec_CAF09_v1.2S'


if __name__ == "__main__":
    import ugali.utils.parser
    description = "Download isochrones"
    parser = ugali.utils.parser.Parser(description=description)
    parser.add_config()
    parser.add_debug()
    parser.add_verbose()
    parser.add_force()
    parser.add_argument('-a','--age',default=None,type=float)
    parser.add_argument('-z','--metallicity',default=None,type=float)
    opts = parser.parse_args()

    from ugali.utils.config import Config
    config = Config(opts.config)

    #outdir = '/u/ki/kadrlica/des/isochrones/v1'
    #outdir = '/u/ki/kadrlica/sdss/isochrones/v2'
    #outdir = '/u/ki/kadrlica/des/isochrones/v2'
    #outdir = '/u/ki/kadrlica/des/isochrones/v3'
    #outdir = '/u/ki/kadrlica/des/isochrones/v4'
    outdir = '/u/ki/kadrlica/des/isochrones/v5'
    #outdir = '/u/ki/kadrlica/des/isochrones/v6'
    survey = config['data']['survey']