def querySpectra(self):
     try:
         self.standardQuery()
         coord = []
         for i in range(0, len(self.ra)):
             coord.append(coords.SkyCoord(self.ra[i], self.dec[i], frame='icrs', unit='deg'))
         self.spectra = SDSS.query_crossid(coord, photoobj_fields=['modelMag_g', 'modelMag_r'])
         return self.spectra
     except:
         raise ValueError("No Results found. Try a different search area.")
    #Query the object table
    #----------------Sloan objects----------------------
    if Catalogue == 'sloan':
        mjd, plate, fiberID = int(mjd), int(plate), int(fiberID)
        
        obj_table = SDSS.query_specobj(mjd = mjd, plate = plate, fiberID=fiberID)
        
        if obj_table != None:
            #print Name, str(ephem.hours(math.radians(obj_table['ra'][0]))), str(ephem.degrees(math.radians(obj_table['dec'][0]))), '\n'
            SDSS_RA         = obj_table['ra'][0]
            SDSS_DEC        = obj_table['dec'][0]
            SDSS_RA_hours   = str(ephem.hours(math.radians(obj_table['ra'][0])))
            SDSS_DEC_hours  = str(ephem.degrees(math.radians(obj_table['dec'][0])))
            
            co                  = coords.SkyCoord(float(SDSS_RA), float(SDSS_DEC), unit="deg")
            Obj_query           = SDSS.query_crossid(co, photoobj_fields=['modelMag_u', 'modelMag_g', 'modelMag_r'])
            mag_u, mag_g, mag_r = Obj_query['modelMag_u'][0], Obj_query['modelMag_g'][0], Obj_query['modelMag_r'][0]
            website = "http://dr12.sdss3.org/spectrumDetail?mjd={mjd}&fiber={fiber}&plateid={plateid}".format(mjd = mjd, fiber = fiberID, plateid = plate)
            
            print Name, website

            pv.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_RA_deg', SDSS_RA)
            pv.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_DEC_deg', SDSS_DEC)
            pv.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_RA_Hour', SDSS_RA_hours)
            pv.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_DEC_Hour', SDSS_DEC_hours)
            pv.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_u_magModel', mag_u)
            pv.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_g_magModel', mag_g)
            pv.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_r_magModel', mag_r)
            pv.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_g_magModel', mag_g)
            pv.SaveParameter_ObjLog(CodeName, FileFolder, 'URL_SDSS', website)
            
Exemple #3
0
def do_sdss(catalog):
    task_str = catalog.get_current_task_str()
    keys = list(catalog.entries.keys())

    Mnames, Mradec = [], []
    for oname in pbar(keys, task_str):
        # Some events may be merged in cleanup process, skip them if
        # non-existent.
        try:
            name = catalog.add_entry(oname)
        except Exception:
            catalog.log.warning(
                '"{}" was not found, suggests merge occurred in cleanup '
                'process.'.format(oname))
            continue

        if (FASTSTARS.RA not in catalog.entries[name]
                or FASTSTARS.DEC not in catalog.entries[name]):
            continue
        else:
            Mnames.append(name)
            Mradec.append(
                str(catalog.entries[name][FASTSTARS.RA][0]['value']) +
                str(catalog.entries[name][FASTSTARS.DEC][0]['value']))

    c = coord(Mradec, unit=(un.hourangle, un.deg), frame='icrs')

    # We must step through the data to query it, >100 is too many
    maxstep = 100  # stepsize
    Nentries = len(Mradec)
    roundindex = np.zeros(
        0
    )  # the stepping round that this star's data was acquired in, needed to connect the obj_id in the query to the name of the star
    for i in range(int(Nentries / maxstep) + 1):
        result_tmp = SDSS.query_crossid(
            c[maxstep * i:min(maxstep * (i + 1), Nentries)],
            timeout=200.,
            photoobj_fields=[
                'u', 'err_u', 'g', 'err_g', 'r', 'err_r', 'i', 'err_i', 'z',
                'err_z', 'MJD'
            ])
        roundindex = np.concatenate(
            [roundindex, i * np.ones(len(result_tmp['obj_id']))])
        if i == 0:
            result = result_tmp
        else:
            result = vstack([result, result_tmp])

    flagsuccess = result['obj_id']
    listfilter = ['u', 'g', 'r', 'i', 'z']
    for i in range(len(flagsuccess)):
        Mi = int(flagsuccess[i].strip('obj_')) + maxstep * int(roundindex[i])
        name = Mnames[Mi]
        source = catalog.entries[name].add_source(
            bibcode='2015ApJS..219...12A')
        for j in range(5):
            catalog.entries[name].add_photometry(
                time=str(result[i]['MJD']),
                u_time='MJD',
                telescope='SDSS',
                band=listfilter[j],
                magnitude=str(result[i][listfilter[j]]),
                e_magnitude=str(result[i]['err_' + listfilter[j]]),
                source=source)

    catalog.journal_entries()
    return
 fiberID     = dz.GetParameter_ObjLog(CodeName, FileFolder, 'SDSS_Fiber', Assumption = 'float')
 plate       = dz.GetParameter_ObjLog(CodeName, FileFolder, 'SDSS_Plate', Assumption = 'float')    
 
 obj_table   = SDSS.query_specobj(mjd = mjd, plate = plate, fiberID=fiberID)
 
 if obj_table != None:
 
     
     #print Name, str(ephem.hours(math.radians(obj_table['ra'][0]))), str(ephem.degrees(math.radians(obj_table['dec'][0]))), '\n'
     SDSS_RA         = obj_table['ra'][0]
     SDSS_DEC        = obj_table['dec'][0]
     SDSS_RA_hours   = str(ephem.hours(math.radians(obj_table['ra'][0])))
     SDSS_DEC_hours  = str(ephem.degrees(math.radians(obj_table['dec'][0])))
     
     co                  = coords.SkyCoord(float(SDSS_RA), float(SDSS_DEC), unit="deg")
     Obj_query           = SDSS.query_crossid(co, photoobj_fields=['modelMag_u', 'modelMag_g', 'modelMag_r'])
     mag_u, mag_g, mag_r = Obj_query['modelMag_u'][0], Obj_query['modelMag_g'][0], Obj_query['modelMag_r'][0]
     website             = "http://dr12.sdss3.org/spectrumDetail?mjd={mjd}&fiber={fiber}&plateid={plateid}".format(mjd = mjd, fiber = fiberID, plateid = plate)
     
     dz.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_RA_deg', SDSS_RA)
     dz.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_DEC_deg', SDSS_DEC)
     dz.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_RA_Hour', SDSS_RA_hours)
     dz.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_DEC_Hour', SDSS_DEC_hours)
     dz.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_u_magModel', mag_u)
     dz.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_g_magModel', mag_g)
     dz.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_r_magModel', mag_r)
     dz.SaveParameter_ObjLog(CodeName, FileFolder, 'SDSS_g_magModel', mag_g)
     dz.SaveParameter_ObjLog(CodeName, FileFolder, 'URL_SDSS', website)
     
     SDSS.cache_location = FileFolder
     
Exemple #5
0
              'Orbital Eccentricity','Ring System?',\
               'Global Magnetic Field?', 'Number of Moons'])
unidades = [
    'kg', 'km', 'kg/m**3', 'm/s**2', 'km/s', 'hour', 'hour', 'km', 'km', 'km',
    'day', 'km/s', 'degree', 'degree', 'deg_C', 'Ba'
]
for i, j in enumerate(col_unidades):
    SS_unid[j].unit = unidades[i]

from astroquery.sdss import SDSS
coorden = SkyCoord(18.23171046, 0.98136156, unit=u.degree)
bus_var = [
    'ra', 'dec', 'psfMag_g', 'psfMagErr_g', 'psfMag_r', 'psfMagErr_r',
    'psfMag_i', 'psfMagErr_i', 'psfMag_z', 'psfMagErr_z'
]
busqueda = SDSS.query_crossid(coorden, photoobj_fields=bus_var)

Objetos = Table.read(paginaD + 'FGal.tbl', format='ascii.ipac')
coorden = SkyCoord(Objetos['ra'], Objetos['dec'], unit=u.degree)
busqueda = SDSS.query_crossid(coorden, obj_names=Objetos['nombre'])

from astropy.table import join
busqueda.rename_column('obj_id', 'nombre')
resultado = join(Objetos, busqueda, keys='nombre', join_type='left')

resultado['gz'] = resultado['psfMag_g'] - resultado['psfMag_z']
resultado[['nombre', 'gz', 'J']]

UGC10214_coord = SkyCoord.from_name('UGC 10214')
UGC10214_2mass = Table.read('UGC10214.tbl', format='ascii.ipac')