Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
GROWTH Marshal Scanning Schedule | ||||||||
Line: 14 to 14 | ||||||||
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
GROWTH Marshal wish list | ||||||||
Line: 60 to 60 | ||||||||
SEDm TDEs
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Line: 84 to 82 | ||||||||
Low mass host galaxy or orphan TDEs
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Line: 92 to 89 | ||||||||
High mass host galaxy
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Line: 108 to 103 | ||||||||
Large AGN flares / Changing look
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Line: 116 to 110 | ||||||||
TDEs in AGN
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Line: 120 to 114 | ||||||||
| ||||||||
Deleted: | ||||||||
< < | ||||||||
High-level Channels for confirmed TDEs | ||||||||
Deleted: | ||||||||
< < | Since the detection rate of real TDEs will be modest, the selection of confirmed TDEs with more advanced facilities will likely happen manually via the Marshal. Although it will help to automate the channels below to make sure no events are missed or the follow-up happens even when the PI is offline for a few days. | |||||||
Added: | ||||||||
> > | Since the detection rate of real TDEs will be modest, the selection of confirmed TDEs with more advanced facilities will likely happen manually via the Marshal. Although it will help to automate the channels below to make sure no events are missed or the follow-up happens even when the PI is offline for a few days. | |||||||
HST
| ||||||||
Line: 220 to 208 | ||||||||
Changed: | ||||||||
< < | GROWTH Marshal Nuclear Transients Filter (Version updated on Jun 29, 2018)nuclear = False; large_amp = False; extended_host = False; blue_flare = False; sgscore = 0; real = False; mover = True; brightstar = False; positiveflux = False; host_in_ps1 = False; hasref = False; near_bright_star = False; out_of_plane = False; bright = False; adjacent_det = False; crowded = True; color = 99.0; prevCandidates = observation["prv_candidates"]; b_now = observation["candidate"]["fid"]; the_other_band = 3 - b_now; t_now = observation["candidate"]["jd"]; t_this = -1; offset = observation["candidate"]["distnr"]; ps1offset = observation["candidate"]["distpsnr1"]; numofsources = observation["candidate"]["nmtchps"]; gal_lat = observation["candidate"]["gal_lat"]; host_mag = observation["candidate"]["magnr"]; m_now = observation["candidate"]["magpsf"]; m_this = -1; m_max = m_now; sgscore = observation["candidate"]["sgscore1"]; magnr = observation["candidate"]["magnr"]; distnr = observation["candidate"]["distnr"]; rbscore = observation["candidate"]["rb"]; distpsnr1 = observation["candidate"]["distpsnr1"]; isdiffpos = observation["candidate"]["isdiffpos"]; srmag = observation["candidate"]["srmag1"]; if (sgscore < 0.3) { extended_host = True; } if (gal_lat > 6){ out_of_plane = True; } if (numofsources < 40){ crowded = False; } if (ps1offset < 1.0){ host_in_ps1 = True; } if (rbscore and rbscore > 0.2) { real = True; } if (offset < 0.5) { nuclear = True; } if (magnr and magnr < 15.0 and distnr and distnr < 10) { brightStar = True; } if (distpsnr1 and distpsnr1 > 2) { near_bright_star = True; } if (srmag and srmag > 0) { hasref = True; } if (isdiffpos == "t" or isdiffpos == "1") { positiveflux = True; } if (prevCandidates) { for candidate in (prevCandidates) { if (candidate["magpsf"] and candidate["jd"] and candidate["fid"] and candidate["isdiffpos"] and(candidate["isdiffpos"] == "t" or candidate["isdiffpos"] == "1")) { dt = t_now - candidate["jd"]; if (candidate["magpsf"] <=20){ bright = True; } if (mover == True and dt > 0.02 and candidate["magpsf"] < 99) { mover = False; } if ((color == 99) and(dt < 2.0) and(candidate["fid"] == the_other_band)) { if (b_now < the_other_band) { color = m_now - candidate["magpsf"]; } else { color = candidate["magpsf"] - m_now; } } dt0 = t_this - candidate["jd"]; if (candidate["magpsf"] < 99) { if ((adjacent_det == False) and(dt0 > -1.0)) { adjacent_det = True; } if (dt0 < 0){ t_this = candidate["jd"]; m_this = candidate["magpsf"]; } } if ((candidate["fid"] == b_now) and(candidate["magpsf"] < m_max)) { m_max = candidate["magpsf"]; } } } } if (adjacent_det == False){ if ((t_now - t_this) < 1){ adjacent_det = True; } } if (color < 0) { blue_flare = True; annotate "blueflare" color; } else { cont_det = False; } if (m_max and m_max > 0 and host_mag and host_mag > 0) { delm = -2.5 * log10(10 ** (-0.4 * host_mag) + 10 ** (-0.4 * m_max)) - host_mag; diff_mag = m_max - host_mag; } else { delm = -999; diff_mag = -999; } annotate "dm" delm; annotate "offset" offset; annotate "color" color; annotate "sgscore" sgscore; annotate "diff_mag" diff_mag; annotate "adjacent_det" adjacent_det; | |||||||
> > | GROWTH Marshal Nuclear Transients Filter (Version updated on Nov 29, 2018)def compiledFunction(current_observation): filteron = False annotations={} calccount=10000 nuclear = False large_amp = False extended_host = False blue_flare = False sgscore = 0 real = False mover = True brightstar = False positiveflux = False host_in_ps1 = False hasref = False near_bright_star = False out_of_plane = False bright = False adjacent_det = False crowded = True color = 99.0 prevcandidates = current_observation['prv_candidates'] b_now = current_observation['candidate']['fid'] the_other_band = 3 - b_now t_now = current_observation['candidate']['jd'] t_this = (-1) offset = current_observation['candidate']['distnr'] ps1offset = current_observation['candidate']['distpsnr1'] numofsources = current_observation['candidate']['nmtchps'] gal_lat = current_observation['candidate']['gal_lat'] host_mag = current_observation['candidate']['magnr'] m_now = current_observation['candidate']['magpsf'] m_this = (-1) m_max = m_now sgscore = current_observation['candidate']['sgscore1'] magnr = current_observation['candidate']['magnr'] distnr = current_observation['candidate']['distnr'] rbscore = current_observation['candidate']['rb'] distpsnr1 = current_observation['candidate']['distpsnr1'] isdiffpos = current_observation['candidate']['isdiffpos'] srmag = current_observation['candidate']['srmag1'] if (sgscore < 0.8): extended_host = True calccount -= 2 if (math.fabs(gal_lat) > 7): out_of_plane = True calccount -= 2 if (numofsources < 40): crowded = False calccount -= 2 if (ps1offset < 1.0): host_in_ps1 = True calccount -= 2 if (rbscore and rbscore > 0.2): real = True calccount -= 2 if (offset < 0.5): nuclear = True calccount -= 2 if (magnr and magnr < 15.0 and distnr and distnr < 10): brightstar = True calccount -= 2 if (distpsnr1 and distpsnr1 > 2): near_bright_star = True calccount -= 2 if (srmag and srmag > 0): hasref = True calccount -= 2 if (isdiffpos == 't' or isdiffpos == '1'): positiveflux = True calccount -= 2 if (prevcandidates): for candidate in (prevcandidates): calccount -= 2 if (candidate['magpsf'] and candidate['jd'] and candidate['fid'] and candidate['isdiffpos'] and (candidate['isdiffpos'] == 't' or candidate['isdiffpos'] == '1')): dt = t_now - candidate['jd'] if (candidate['magpsf'] <= 20): bright = True calccount -= 2 if (mover == True and dt > 0.02 and candidate['magpsf'] < 99): mover = False calccount -= 2 if ((color == 99) and (dt < 2.0) and (candidate['fid'] == the_other_band)): if (b_now < the_other_band): color = m_now - candidate['magpsf'] calccount -= 2 else: color = candidate['magpsf'] - m_now calccount -= 2 calccount -= 3 dt0 = t_this - candidate['jd'] if (candidate['magpsf'] < 99): if ((adjacent_det == False) and (dt0 > (-1.0))): adjacent_det = True calccount -= 2 if (dt0 < 0): t_this = candidate['jd'] m_this = candidate['magpsf'] calccount -= 3 calccount -= 3 if ((candidate['fid'] == b_now) and (candidate['magpsf'] < m_max)): m_max = candidate['magpsf'] calccount -= 2 calccount -= 8 if calccount < 0: break calccount -= 2 if (adjacent_det == False): if ((t_now - t_this) < 1): adjacent_det = True calccount -= 2 calccount -= 2 if (color < 0): blue_flare = True annotations['blueflare'] = color calccount -= 3 else: cont_det = False calccount -= 2 if (m_max and m_max > 0 and host_mag and host_mag > 0): delm = (-2.5) * math.log10(10 ** ((-0.4) * host_mag) + 10 ** ((-0.4) * m_max)) - host_mag diff_mag = m_max - host_mag calccount -= 3 else: delm = (-999) diff_mag = (-999) calccount -= 3 annotations['dm'] = delm annotations['offset'] = offset annotations['color'] = color annotations['sgscore'] = sgscore annotations['diff_mag'] = diff_mag annotations['adjacent_det'] = adjacent_det annotations['gal_lat'] = gal_lat tde_cand = positiveflux and hasref and real and out_of_plane and nuclear and extended_host and bright and host_in_ps1 and (not brightstar and (not mover and (not near_bright_star and (not crowded)))) filteron = tde_cand return filteron,annotations | |||||||
Deleted: | ||||||||
< < | TDE_cand = positiveflux and hasref and real and nuclear and extended_host and bright and host_in_ps1 and not brightStar and not mover and not near_bright_star and not crowded; filteron TDE_cand; | |||||||
-- SuviGezari - 17 Jan 2018 |