fminWaves = fminWavesSignal = fminWavesTemplate = opts.fmin_Template  # too long can be a memory and time hog, particularly at 16 kHz
fminSNR = opts.fmin_SNR
fSample = 16384  #opts.srate

theEpochFiducial = lal.LIGOTimeGPS(
    1000000014.000000000
)  # Use actual injection GPS time (assumed from trigger)
#theEpochFiducial = lal.LIGOTimeGPS(1000000000.000000000)     # Use epoch of the data
tEventFiducial = 0  #  time relative to fiducial epoch, used to identify window to look in.  Checked empirically.

detectors = ['H1', "L1", "V1"]
psd_dict['H1'] = lalsim.SimNoisePSDiLIGOSRD
#psd_dict['L1'] = lalsim.SimNoisePSDiLIGOSRD
psd_dict['V1'] = lalsim.SimNoisePSDiLIGOSRD

Psig = lalsimutils.xml_to_ChooseWaveformParams_array("mdc.xml.gz")[
    0]  # Load in the physical parameters of the injection (=first element)
Psig.approx = lalsim.SEOBNRv4
Psig.print_params()

# Load IFO FFTs.
tS = lal.GPSTimeNow()
# ASSUME data has same sampling rate!
df = 1. / 32
dt = 1. / fSample
Psig.deltaF = df
Psig.detector = 'H1'
data_dict['H1'] = lalsimutils.non_herm_hoff(Psig)
#Psig.detector='L1'
#data_dict['L1'] = lalsimutils.non_herm_hoff(Psig)
Psig.detector = 'V1'
data_dict['V1'] = lalsimutils.non_herm_hoff(Psig)
        dist=factored_likelihood.distMpcRef * 1e6 *
        lal.LAL_PC_SI,  # default distance
        fref=fref,
        tref=event_time_gps,
        ampO=ampO
    )  # FIXME: Parameter mapping from trigger space to search space
    if rosDebugMessagesDictionary["DebugMessages"]:
        print(
            " === Coinc table : estimated signal [overridden if injection] ==="
        )
        Psig.print_params()

# Read in *injection* XML
if opts.inj:
    print("Loading injection XML:", opts.inj)
    Psig = lalsimutils.xml_to_ChooseWaveformParams_array(str(opts.inj))[
        opts.event_id]  # Load in the physical parameters of the injection.
    m1 = Psig.m1
    m2 = Psig.m2
    timeWaveform = float(-lalsimutils.hoft(Psig).epoch)
    Psig.deltaF = 1. / lalsimutils.nextPow2(
        opts.seglen
    )  # Frequency binning needs to account for target segment length
    theEpochFiducial = Psig.tref  # Reset
    tEventFiducial = 0  # Reset
    print(" ++ Targeting event at time ++ ",
          lalsimutils.stringGPSNice(Psig.tref))
    print(" +++ WARNING: ADOPTING STRONG PRIORS +++ ")
    rosUseStrongPriorOnParameters = True
    Psig.print_params()
    print("---- End injeciton parameters ----")
Пример #3
0
else:
    print(" Error! ")
    sys.exit(0)

#
# Template descriptors
#

fiducial_epoch = lal.LIGOTimeGPS()
fiducial_epoch = event_time.seconds + 1e-9 * event_time.nanoseconds  # no more direct access to gpsSeconds

# Struct to hold template parameters
P_list = None
if opts.sim_xml:
    print("====Loading injection XML:", opts.sim_xml, opts.event, " =======")
    P_list = lalsimutils.xml_to_ChooseWaveformParams_array(str(opts.sim_xml))
    if len(P_list) < opts.event + opts.n_events_to_analyze:
        print(" Event list of range; soft exit")
        sys.exit(0)
    P_list = P_list[opts.event:(opts.event + opts.n_events_to_analyze)]
    for P in P_list:
        P.radec = False  # do NOT propagate the epoch later
        P.fref = opts.reference_freq
        P.fmin = template_min_freq
        P.tref = fiducial_epoch  # the XML table
        m1 = P.m1 / lal.MSUN_SI
        m2 = P.m2 / lal.MSUN_SI
        lambda1, lambda2 = P.lambda1, P.lambda2
        P.dist = factored_likelihood.distMpcRef * 1.e6 * lal.PC_SI  # use *nonstandard* distance
        P.phi = 0.0
        P.psi = 0.0