Exemple #1
0
def test_binned_fit():
    with within_directory(datasets_dir):
        start, stop = 0, 50

        poly = [1]

        arrival_times = np.loadtxt('test_event_data.txt')

        evt_list = EventListWithDeadTime(
            arrival_times=arrival_times,
            measurement=np.zeros_like(arrival_times),
            n_channels=1,
            start_time=arrival_times[0],
            stop_time=arrival_times[-1],
            dead_time=np.zeros_like(arrival_times))

        evt_list.set_polynomial_fit_interval("%f-%f" % (start + 1, stop - 1),
                                             unbinned=False)

        evt_list.set_active_time_intervals("0-1")

        results = evt_list.get_poly_info()['coefficients']

        assert evt_list.time_intervals == TimeIntervalSet.from_list_of_edges(
            [0, 1])

        assert evt_list._poly_counts.sum() > 0

        evt_list.__repr__()
Exemple #2
0
def test_binned_fit():
    with within_directory(datasets_dir):
        start, stop = 0, 50

        poly = [1]

        arrival_times = np.loadtxt('test_event_data.txt')

        evt_list = EventListWithDeadTime(arrival_times=arrival_times,
                                         measurement=np.zeros_like(arrival_times),
                                         n_channels=1,
                                         start_time=arrival_times[0],
                                         stop_time=arrival_times[-1],
                                         dead_time=np.zeros_like(arrival_times)
                                         )

        evt_list.set_polynomial_fit_interval("%f-%f" % (start + 1, stop - 1), unbinned=False)

        evt_list.set_active_time_intervals("0-1")

        results = evt_list.get_poly_info()['coefficients']

        assert evt_list.time_intervals == TimeIntervalSet.from_list_of_edges([0,1])


        assert evt_list._poly_counts.sum() > 0

        evt_list.__repr__()
Exemple #3
0
def test_unbinned_fit(event_time_series):

    start, stop = 0, 50

    poly = [1]

    arrival_times = event_time_series

    evt_list = EventListWithDeadTime(
        arrival_times=arrival_times,
        measurement=np.zeros_like(arrival_times),
        n_channels=1,
        start_time=arrival_times[0],
        stop_time=arrival_times[-1],
        dead_time=np.zeros_like(arrival_times),
    )

    evt_list.set_polynomial_fit_interval("%f-%f" % (start + 1, stop - 1),
                                         unbinned=True)

    results = evt_list.get_poly_info()["coefficients"]

    evt_list.set_active_time_intervals("0-1")

    assert evt_list.time_intervals == TimeIntervalSet.from_list_of_edges(
        [0, 1])

    assert evt_list._poly_counts.sum() > 0

    evt_list.__repr__()
def test_time_interval_constructor_set():

    t1 = TimeInterval(-10.0, 20.0)
    t2 = TimeInterval(10.0, 30.0)

    ts = TimeIntervalSet([t1, t2])

    assert ts[0] == t1
    assert ts[1] == t2

    # Use strings
    ts2 = TimeIntervalSet.from_strings("-10 - -5", "10 - 20", "20-30",
                                       "-10--5")

    assert ts2[0].start_time == -10
    assert ts2[0].stop_time == -5
    assert ts2[-1].start_time == -10
    assert ts2[-1].stop_time == -5
    assert ts2[1].start_time == 10
    assert ts2[1].stop_time == 20
    assert ts2[2].start_time == 20
    assert ts2[2].stop_time == 30

    # Use edges
    ts3 = TimeIntervalSet.from_list_of_edges([-2, -1, 0, 1, 2])

    assert ts3[0].start_time == -2
    assert ts3[0].stop_time == -1
    assert ts3[-1].start_time == 1
    assert ts3[-1].stop_time == 2
    assert ts3[1].start_time == -1
    assert ts3[1].stop_time == 0
    assert ts3[2].start_time == 0
    assert ts3[2].stop_time == 1

    # Use start and stops
    ts5 = TimeIntervalSet.from_starts_and_stops([-2, -1, 0, 1], [-1, 0, 1, 2])

    assert ts5[0].start_time == -2
    assert ts5[0].stop_time == -1
    assert ts5[-1].start_time == 1
    assert ts5[-1].stop_time == 2
    assert ts5[1].start_time == -1
    assert ts5[1].stop_time == 0
    assert ts5[2].start_time == 0
    assert ts5[2].stop_time == 1

    with pytest.raises(AssertionError):

        ts6 = TimeIntervalSet.from_starts_and_stops([-2, -1, 0, 1], [-1, 0, 1])

    # test display

    ts5.display()
Exemple #5
0
def test_time_interval_constructor_set():

    t1 = TimeInterval(-10.0, 20.0)
    t2 = TimeInterval(10.0, 30.0)

    ts = TimeIntervalSet([t1, t2])

    assert ts[0] == t1
    assert ts[1] == t2

    # Use strings
    ts2 = TimeIntervalSet.from_strings("-10 - -5", "10 - 20", "20-30","-10--5")

    assert ts2[0].start_time == -10
    assert ts2[0].stop_time == -5
    assert ts2[-1].start_time == -10
    assert ts2[-1].stop_time == -5
    assert ts2[1].start_time == 10
    assert ts2[1].stop_time == 20
    assert ts2[2].start_time == 20
    assert ts2[2].stop_time == 30

    # Use edges
    ts3 = TimeIntervalSet.from_list_of_edges([-2,-1,0,1,2])

    assert ts3[0].start_time == -2
    assert ts3[0].stop_time == -1
    assert ts3[-1].start_time == 1
    assert ts3[-1].stop_time == 2
    assert ts3[1].start_time == -1
    assert ts3[1].stop_time == 0
    assert ts3[2].start_time == 0
    assert ts3[2].stop_time == 1

    # Use start and stops
    ts5 = TimeIntervalSet.from_starts_and_stops([-2, -1, 0, 1],  [-1, 0, 1, 2])

    assert ts5[0].start_time == -2
    assert ts5[0].stop_time == -1
    assert ts5[-1].start_time == 1
    assert ts5[-1].stop_time == 2
    assert ts5[1].start_time == -1
    assert ts5[1].stop_time == 0
    assert ts5[2].start_time == 0
    assert ts5[2].stop_time == 1

    with pytest.raises(AssertionError):

        ts6 = TimeIntervalSet.from_starts_and_stops([-2, -1, 0, 1], [-1, 0, 1])


    # test display

    ts5.display()