Ejemplo n.º 1
0
def generate_ifoData(
    ifos,
    psdstart,
    psdlength,
    seglen,
    trigtime,
    srate=4096.,
):

    args_raw = ['bagwacl_init']
    for name, cache, flow, fhigh, channel in ifos:
        args_raw.append('--ifo')
        args_raw.append(str(name))

        args_raw.append('--{}-cache'.format(name))
        args_raw.append(str(cache))

        args_raw.append('--{}-flow'.format(name))
        args_raw.append(str(flow))

        args_raw.append('--{}-channel'.format(name))
        args_raw.append(str(channel))

        args_raw.append('--psdstart')
        args_raw.append(str(psdstart))

        args_raw.append('--psdlength')
        args_raw.append(str(psdlength))

        args_raw.append('--seglen')
        args_raw.append(str(seglen))

    args_raw.append('--trigtime')
    args_raw.append(str(trigtime))

    #Add a data seed (use current system time)
    args_raw.append('--dataseed')
    args_raw.append(str(int(time.time())))

    args = lal.StringVector()
    for arg in args_raw:
        args = lal.AppendString2Vector(args, arg)

    #Generate procParams data structure (shallow wrapper around command
    #line args)
    procParams = li.ParseCommandLineStringVector(args)

    #Call LALInferenceReadData to generate ifoData data structure
    #containing IFO/injection data etc.
    ifoData = li.ReadData(procParams)

    return ifoData
Ejemplo n.º 2
0
def inject_signal(ifoData, injfile, eventnum):

    args_raw = ['bagwacl_inject']

    args_raw.append('--inj')
    args_raw.append(str(injfile))

    args_raw.append('--event')
    args_raw.append(str(eventnum))

    args = lal.StringVector()
    for arg in args_raw:
        args = lal.AppendString2Vector(args, arg)

    procParams = li.ParseCommandLineStringVector(args)

    li.InjectInspiralSignal(ifoData, procParams)
def criteria(gamma0, gamma1, gamma2, gamma3):
    vars = lalinf.Variables()
    no_vary = lalinf.lalinference.LALINFERENCE_PARAM_FIXED
    lalinf.lalinference.AddREAL8Variable(vars, "SDgamma0", gamma0, no_vary )
    lalinf.lalinference.AddREAL8Variable(vars, "SDgamma1", gamma1, no_vary)
    lalinf.lalinference.AddREAL8Variable(vars, "SDgamma2",  gamma2, no_vary)
    lalinf.lalinference.AddREAL8Variable(vars, "SDgamma3",  gamma3, no_vary)
    lalinf.lalinference.AddREAL8Variable(vars, "mass1",  1.4 , no_vary)
    lalinf.lalinference.AddREAL8Variable(vars, "mass2",  1.4 , no_vary)
    
    a = lal.CreateStringVector("Hi")
    process_ptable = lalinf.ParseCommandLineStringVector(a)
    success_param = lalinf.EOSPhysicalCheck(vars, process_ptable)
    if success_param == 0:
        return True
    else :
        return False