示例#1
0
def plot_phase(epicID,
               campaign,
               period,
               t0,
               directory="/k2_data/",
               tail="",
               initial_time=0,
               fn='',
               raw=False,
               save_path=''):
    '''see phase'''
    time, flux = data.retrieve(epicID,
                               campaign,
                               directory,
                               tail,
                               fn=fn,
                               raw=raw)
    if initial_time != 0:
        time, flux = time[time > initial_time], flux[time > initial_time]
    plot_phase_work(time,
                    period,
                    t0,
                    flux,
                    "EPIC " + str(epicID) +
                    ":period={0:.3f}, t0={1:.6f}".format(period, t0),
                    save_path=save_path)
示例#2
0
def retrieve_random_quote():
    """Fetches a random quote from the database.
	
		Returns:
			- result (string) the quote retrieved from the database, or an error 
				message
	"""
    result = data.retrieve()
    if result == -1:
        QUOTE_REQUESTS.labels(command_type="quote", result="failure").inc()
        return ":( there was an error getting a quote."

    QUOTE_REQUESTS.labels(command_type="quote", result="success").inc()
    return result
示例#3
0
文件: plot.py 项目: jmbhughes/swarced
def plot_lc(epicID, campaign, directory="/k2_data/",mark_list=[],tail="",injected=False,ylimtype="med",xlim=[0,0],initial_time = 0,fn='',raw=False,save_path=''):
    '''see lightcurve'''
    epicID,campaign = str(epicID),str(campaign)
    if not injected:
        time, flux = data.retrieve(epicID,campaign,directory,tail,fn=fn,raw=raw)
    else:
        time, flux, transits = data.retrieve(epicID,campaign,directory,tail,injected=True,fn=fn,raw=raw)
    if initial_time != 0:
        time,flux = time[time>initial_time], flux[time>initial_time]
    fig = pl.figure(figsize=(10 * golden,10))
    pl.title("EPIC " + epicID, **title_font)
    pl.plot(time,flux,'k',lw=0.3)####################
    pl.scatter(time,flux,c='darkslategrey',lw=0,s=30)#######################
    pl.xlabel("Time (BJD)", **axis_font)
    pl.ylabel("Flux", **axis_font)
    pl.plot(mark_list, np.median(flux) + np.zeros(len(mark_list)),'r*',markersize=20)
    if injected:
        pl.plot(transits, np.median(flux) + np.zeros(len(transits)),'r*',markersize=20)
    if xlim != [0,0]:
        pl.xlim(xlim)
        flux = flux[((time>xlim[0])*(time<xlim[1]))]
    else:
        xlim = [min(time),max(time)]
        flux = flux[((time>xlim[0])*(time<xlim[1]))]
    if ylimtype=="med":
           pl.ylim(np.median(flux)-0.5*np.std(flux),np.median(flux)+0.5*np.std(flux))
    elif ylimtype=="minmax":
           pl.ylim(np.min(flux),np.max(flux))
    elif ylimtype=="pick":
        pl.ylim(min([np.min(flux),np.median(flux)-0.5*np.std(flux)]), 
                max([np.max(flux),np.median(flux)+0.5*np.std(flux)]))
    if save_path == '':
        pl.show()
    else:
        pl.savefig(save_path)
        pl.close()
    del mark_list
示例#4
0
def blswrap(epicid, campaign, initial_time):
    global nbin
    try:
        start = time.time()
        initial_time = float(initial_time)
        t, f = data.retrieve(epicid, campaign, directory=directory)
        if initial_time != 0:
            t, f = t[t>initial_time], f[t>initial_time]
        u, v = np.zeros(len(t)), np.zeros(len(f))
        #minfreq, dfreq, nfreq = 1/70., 4.082799167108228e-06, 1000000
        minfreq, dfreq, nfreq = 0.015, 2.0437359493152146e-05,100000
        #nbin = 100
        minduration, maxduration = 0.01, 0.05
        results = bls.eebls(t, f, u, v, nfreq, minfreq, dfreq, nbin, minduration, maxduration)
        end = time.time()
        print(epicid, end - start)
        return epicid, results[1:]
    except:
        print("SKIPPING " + str(epicid))
示例#5
0
def retrieve():
    global state, profile, conn
    cmd.print_credentials(profile, data.retrieve(conn),
                          data.column_names(conn))
    state = states.DISPLAY
示例#6
0
 def sintatic():
     queue.append('$' + ',' + str(0))
     stack = [0]
     begin = 0
     a, pos = queue[begin].split(',')
     while True:
         s = stack[0]
         if 'S' in data.retrieve(s, a):
             null = data.retrieve(s, a)
             t = int(null[1:]) - 1
             stack.insert(0, t)
             semstack(a, begin)
             begin += 1
             a, pos = queue[begin].split(',')
         elif 'R' in data.retrieve(s, a):
             null = data.retrieve(s, a)
             t = int(null[1:])
             A = data.goto(t)
             for i in range(data.rules(t, 0) - 2):
                 stack.pop(0)
             s = stack[0]
             aux = data.retrieve(s, A)
             if type(aux) == float:
                 s = int(aux) - 1
             elif type(aux) == int:
                 s = aux - 1
             else:
                 s = int(aux[1:]) - 1
             stack.insert(0, s)
             semantic(t)
         elif 'ACC' in data.retrieve(s, a):
             semantic(12)
             semantic(12)
             semantic(23)
             break
         elif 'E' in data.retrieve(s, a):
             null = data.retrieve(s, a)
             t = int(null[1:])
             data.handle_error(t, pos)
             begin += 1
             if t == 4:
                 begin -= 2
                 queue.insert(-1, 'fim,' + pos)
                 a, pos = queue[begin].split(',')
             elif t == 6:
                 begin -= 1
                 queue.insert(0, 'inicio,' + pos)
                 a, pos = queue[begin].split(',')
             elif t == 7:
                 begin -= 1
                 queue.insert(1, 'varinicio,' + pos)
                 a, pos = queue[begin].split(',')
             elif t == 8:
                 stack.insert(0, 56)
             elif t == 9:
                 begin -= 3
                 a, pos = queue[begin].split(',')
             elif t == 10:
                 stack.insert(0, 1)
                 a, pos = queue[begin].split(',')
             elif t == 11:
                 begin += 1
                 a, pos = queue[begin].split(',')
             else:
                 a, pos = queue[begin].split(',')
         else:
             code = data.show_error(a)
             if code == 1:
                 begin += 1
                 a, pos = queue[begin].split(',')
示例#7
0
文件: plot.py 项目: jmbhughes/swarced
def plot_phase(epicID,campaign,period, t0, directory ="/k2_data/",tail="",initial_time=0,fn='',raw=False, save_path=''):
    '''see phase'''
    time, flux = data.retrieve(epicID,campaign,directory,tail,fn=fn,raw=raw)
    if initial_time != 0:
        time,flux = time[time>initial_time], flux[time>initial_time]
    plot_phase_work(time, period, t0, flux, "EPIC " + str(epicID) + ":period={0:.3f}, t0={1:.6f}".format(period,t0),save_path=save_path)
示例#8
0
 def test_retrieve_fails(self):
     expected_response = -1
     data.connect = MagicMock(return_value=[self.conn, self.conn])
     self.conn.fetchone = MagicMock(side_effect=psycopg2.Error)
     received_response = data.retrieve()
     self.assertEqual(expected_response, received_response)
示例#9
0
 def test_retrieve(self):
     expected_response = "I am a quote"
     data.connect = MagicMock(return_value=[self.conn, self.conn])
     received_response = data.retrieve()
     self.assertEqual(expected_response, received_response)
示例#10
0
def plot_lc(epicID,
            campaign,
            directory="/k2_data/",
            mark_list=[],
            tail="",
            injected=False,
            ylimtype="med",
            xlim=[0, 0],
            initial_time=0,
            fn='',
            raw=False,
            save_path=''):
    '''see lightcurve'''
    epicID, campaign = str(epicID), str(campaign)
    if not injected:
        time, flux = data.retrieve(epicID,
                                   campaign,
                                   directory,
                                   tail,
                                   fn=fn,
                                   raw=raw)
    else:
        time, flux, transits = data.retrieve(epicID,
                                             campaign,
                                             directory,
                                             tail,
                                             injected=True,
                                             fn=fn,
                                             raw=raw)
    if initial_time != 0:
        time, flux = time[time > initial_time], flux[time > initial_time]
    fig = pl.figure(figsize=(10 * golden, 10))
    pl.title("EPIC " + epicID, **title_font)
    pl.plot(time, flux, 'k', lw=0.3)  ####################
    pl.scatter(time, flux, c='darkslategrey', lw=0,
               s=30)  #######################
    pl.xlabel("Time (BJD)", **axis_font)
    pl.ylabel("Flux", **axis_font)
    pl.plot(mark_list,
            np.median(flux) + np.zeros(len(mark_list)),
            'r*',
            markersize=20)
    if injected:
        pl.plot(transits,
                np.median(flux) + np.zeros(len(transits)),
                'r*',
                markersize=20)
    if xlim != [0, 0]:
        pl.xlim(xlim)
        flux = flux[((time > xlim[0]) * (time < xlim[1]))]
    else:
        xlim = [min(time), max(time)]
        flux = flux[((time > xlim[0]) * (time < xlim[1]))]
    if ylimtype == "med":
        pl.ylim(
            np.median(flux) - 0.5 * np.std(flux),
            np.median(flux) + 0.5 * np.std(flux))
    elif ylimtype == "minmax":
        pl.ylim(np.min(flux), np.max(flux))
    elif ylimtype == "pick":
        pl.ylim(min([np.min(flux),
                     np.median(flux) - 0.5 * np.std(flux)]),
                max([np.max(flux),
                     np.median(flux) + 0.5 * np.std(flux)]))
    if save_path == '':
        pl.show()
    else:
        pl.savefig(save_path)
        pl.close()
    del mark_list