Package pylal :: Module mvsc_queries_snglstage
[hide private]
[frames] | no frames]

Source Code for Module pylal.mvsc_queries_snglstage

  1  import sqlite3 
  2  from glue.ligolw import dbtables 
  3  from glue.ligolw import table 
  4  from glue.ligolw import ilwd 
  5  from glue import segments 
  6  from pylal import SnglInspiralUtils 
  7  from pylal import db_thinca_rings 
  8  from pylal import git_version 
  9  from time import clock,time 
 10  from optparse import * 
 11  import glob 
 12  import sys 
 13  import random 
 14  import math 
 15   
 16  usage=""" 
 17  this is a module for use in mvsc_get_doubles 
 18  """ 
 19   
 20  __author__ = "Kari Hodge <khodge@ligo.caltech.edu>" 
 21   
22 -class CandidateEventQuery:
23 # this is the list of parameters that will describe each event in the training and testing sets: 24 parameters = "ethinca delta_t ab_dmchirp_rel ab_deta_rel a_snr b_snr a_chisq_red b_chisq_red a_effective_snr b_effective_snr a_rsq_veto_duration b_rsq_veto_duration a_cont_chisq_red b_cont_chisq_red coinc_inspiral_snr sngl_gps_time_a sngl_gps_time_b" 25 # these are the sqlite queries used to extract these parameters (the dimensions to be considered in the multivariate statitical classification algorithm) 26 select_count=""" 27 SELECT 28 COUNT(coinc_inspiral.coinc_event_id)""" 29 select_dimensions=""" 30 SELECT 31 coinc_inspiral.coinc_event_id, 32 snglA.*, 33 snglB.*, 34 insp_coinc_event.time_slide_id, 35 (snglA.end_time+1e-9*snglA.end_time_ns+tsA.offset)-(snglB.end_time+1e-9*snglB.end_time_ns+tsB.offset), 36 abs(2*(snglA.mchirp - snglB.mchirp)/(snglA.mchirp+snglB.mchirp)), 37 abs(2*(snglA.eta - snglB.eta)/(snglA.eta+snglB.eta)), 38 snglA.snr, 39 snglB.snr, 40 snglA.chisq/(2*snglA.chisq_dof-2), 41 snglB.chisq/(2*snglB.chisq_dof-2), 42 calc_effective_snr(snglA.snr, snglA.chisq, snglA.chisq_dof), 43 calc_effective_snr(snglB.snr, snglB.chisq, snglB.chisq_dof), 44 snglA.rsqveto_duration, 45 snglB.rsqveto_duration, 46 CASE snglA.cont_chisq_dof 47 WHEN 0.0 THEN 1.0 48 ELSE snglA.cont_chisq/snglA.cont_chisq_dof END, 49 CASE snglB.cont_chisq_dof 50 WHEN 0.0 THEN 1.0 51 ELSE snglB.cont_chisq/snglB.cont_chisq_dof END, 52 coinc_inspiral.snr, 53 snglA.end_time+snglA.end_time_ns*.000000001, 54 snglB.end_time+snglB.end_time_ns*.000000001""" 55 add_select_injections=""" 56 , coinc_inspiral.end_time+coinc_inspiral.end_time_ns*.000000001, 57 process_params.value, 58 sim_inspiral.distance""" 59 add_select_fulldata=""" 60 , experiment_summary.datatype""" 61 add_from_injections=""" 62 FROM 63 coinc_inspiral 64 JOIN coinc_event_map AS mapA ON (mapA.coinc_event_id == coinc_inspiral.coinc_event_id) 65 JOIN coinc_event_map AS mapB ON (mapB.coinc_event_id == coinc_inspiral.coinc_event_id) 66 JOIN sngl_inspiral AS snglA ON (snglA.event_id == mapA.event_id) 67 JOIN sngl_inspiral AS snglB ON (snglB.event_id == mapB.event_id) 68 JOIN coinc_event_map AS mapC ON (mapC.event_id == coinc_inspiral.coinc_event_id) 69 JOIN coinc_event_map AS mapD ON (mapD.coinc_event_id == mapC.coinc_event_id) 70 JOIN sim_inspiral ON (sim_inspiral.simulation_id == mapD.event_id) 71 JOIN coinc_event AS sim_coinc_event ON (sim_coinc_event.coinc_event_id == mapD.coinc_event_id) 72 JOIN coinc_event AS insp_coinc_event ON (insp_coinc_event.coinc_event_id == mapA.coinc_event_id) 73 JOIN coinc_definer ON (coinc_definer.coinc_def_id == sim_coinc_event.coinc_def_id) 74 JOIN process_params ON (process_params.process_id == sim_inspiral.process_id) 75 JOIN time_slide AS tsA ON (tsA.time_slide_id=insp_coinc_event.time_slide_id) 76 JOIN time_slide AS tsB ON (tsB.time_slide_id=insp_coinc_event.time_slide_id) 77 WHERE 78 mapA.table_name == 'sngl_inspiral' 79 AND mapB.table_name == 'sngl_inspiral' 80 AND mapC.table_name == 'coinc_event' 81 AND mapD.table_name == 'sim_inspiral' 82 AND tsA.instrument == snglA.ifo 83 AND tsB.instrument == snglB.ifo 84 AND snglA.ifo == ? 85 AND snglB.ifo == ? 86 AND (process_params.program == 'inspinj' AND process_params.param == '--m-distr')""" 87 add_where_all=""" 88 AND coinc_definer.description == ? 89 ORDER BY coinc_inspiral.end_time+coinc_inspiral.end_time_ns*.000000001""" 90 add_where_exact=""" 91 AND coinc_definer.description == ? 92 ORDER BY coinc_inspiral.end_time+coinc_inspiral.end_time_ns*.000000001""" 93 add_from_fulldata=""" 94 FROM 95 coinc_inspiral 96 JOIN coinc_event_map AS mapA ON (mapA.coinc_event_id == coinc_inspiral.coinc_event_id) 97 JOIN coinc_event_map AS mapB ON (mapB.coinc_event_id == coinc_inspiral.coinc_event_id) 98 JOIN sngl_inspiral AS snglA ON (snglA.event_id == mapA.event_id) 99 JOIN sngl_inspiral AS snglB ON (snglB.event_id == mapB.event_id) 100 JOIN coinc_event AS insp_coinc_event ON (mapA.coinc_event_id == insp_coinc_event.coinc_event_id) 101 JOIN coinc_definer ON (coinc_definer.coinc_def_id == insp_coinc_event.coinc_def_id) 102 JOIN experiment_map ON (experiment_map.coinc_event_id == coinc_inspiral.coinc_event_id) 103 JOIN experiment_summary ON (experiment_summary.experiment_summ_id == experiment_map.experiment_summ_id) 104 JOIN time_slide AS tsA ON (tsA.time_slide_id=insp_coinc_event.time_slide_id) 105 JOIN time_slide AS tsB ON (tsB.time_slide_id=insp_coinc_event.time_slide_id) 106 WHERE 107 coinc_definer.search == 'inspiral' 108 AND coinc_definer.search_coinc_type == 0 109 AND mapA.table_name == 'sngl_inspiral' 110 AND mapB.table_name == 'sngl_inspiral' 111 AND tsA.instrument == snglA.ifo 112 AND tsB.instrument == snglB.ifo 113 AND snglA.ifo == ? 114 AND snglB.ifo == ?"""
115 #ORDER BY coinc_inspiral.end_time+coinc_inspiral.end_time_ns*.000000001""" 116