Example #1
0
                tmag, lbol, mag, Tobs = arnett_model_ejecta(
                    mej_best, vej_best, beta_best, kappa_r_best)
                tmag = tmag + t0_best
            else:
                print "Not implemented..."
                exit(0)

            model_data[model] = {}
            model_data[model]["tmag"] = tmag
            model_data[model]["lbol"] = lbol
            model_data[model]["mag"] = mag
            model_data[model]["Tobs"] = Tobs

    if opts.doEvent:
        filename = "%s/%s.dat" % (lightcurvesDir, opts.event)
        data_out = lightcurve_utils.loadEvent(filename)
        for ii, key in enumerate(data_out.iterkeys()):
            if key == "t":
                continue
            else:
                data_out[key][:, 0] = data_out[key][:, 0] - opts.T0
                data_out[key][:, 1] = data_out[key][:, 1] - 5 * (
                    np.log10(opts.distance * 1e6) - 1)

    #colors = ["g","r","c","y","m"]
    colors = cm.rainbow(np.linspace(0, 1, len(names)))
    plotName = "%s/models.pdf" % (plotDir)
    plt.figure(figsize=(10, 8))
    for ii, name in enumerate(names):
        mag_d = mags[name]
        indexes = np.where(~np.isnan(mag_d["g"]))[0]
lightcurvesDir = opts.lightcurvesDir

filename = "%s/GRB.dat" % lightcurvesDir
lines = [line.rstrip('\n') for line in open(filename)]

lightcurveFiles = glob.glob(os.path.join(lightcurvesDir, 'GRB*.dat')) + [
    os.path.join(lightcurvesDir, 'GW170817.dat')
]

data = {}
data_peak = {}
data_peak_app = {}
for lightcurveFile in lightcurveFiles:
    grbname = lightcurveFile.split('/')[-1].replace('.dat', '')
    if grbname == "GRB": continue
    data_out = lightcurve_utils.loadEvent(lightcurveFile)
    data[grbname] = data_out

    if grbname == "GW170817":
        grb, filts, mjd, dist = "GW170817", "r", 57982.5285236896, 40.0
    else:
        for line in lines:
            lineSplit = line.split(" ")
            if lineSplit[0] == grbname:
                grb = lineSplit[0]
                filts = lineSplit[1]
                mjd = float(lineSplit[2])
                dist = float(lineSplit[3])
                break

    print(grbname)