コード例 #1
0
ファイル: test_nwb.py プロジェクト: tmchartrand/bmtk
def test_grayscale_movie():
    t_values = np.arange(20) * .1
    row_values = np.arange(5)
    col_values = np.arange(10)
    data_values = np.empty((20, 5, 10))

    f = nwb.create_blank_file(close=False, force=True)
    t_scale = nwb.Scale(t_values, 'time', 'second')
    row_scale = nwb.Scale(row_values, 'distance', 'pixel')
    col_scale = nwb.Scale(col_values, 'distance', 'pixel')

    data = nwb.GrayScaleMovie(data_values,
                              scale=(t_scale, row_scale, col_scale),
                              metadata={'foo': 5})
    data.add_to_stimulus(f)
    data.add_to_acquisition(f)
    data.add_to_processing(f, 'step_0')
    data.add_to_analysis(f, 'step_0')

    round_trip = nwb.GrayScaleMovie.get_stimulus(f, 0)
    np.testing.assert_almost_equal(round_trip.data[:], data.data[:], 12)

    round_trip = nwb.GrayScaleMovie.get_acquisition(f, 0)
    np.testing.assert_almost_equal(round_trip.data[:], data.data[:], 12)

    round_trip = nwb.GrayScaleMovie.get_processing(f, 'step_0', 0)
    np.testing.assert_almost_equal(round_trip.data[:], data.data[:], 12)

    round_trip = nwb.GrayScaleMovie.get_analysis(f, 'step_0', 0)
    np.testing.assert_almost_equal(round_trip.data[:], data.data[:], 12)
    f.close()
コード例 #2
0
ファイル: test_nwb.py プロジェクト: tmchartrand/bmtk
def test_external_link():
    data_original = np.zeros(10)
    f = nwb.create_blank_file(force=True)
    scale = nwb.Scale(np.zeros(10), 'time', 'second')
    nwb.TimeSeries(data_original,
                   scale=scale,
                   dimension='voltage',
                   unit='volt',
                   metadata={
                       'foo': 1
                   }).add_to_acquisition(f)
    temp_file_name = f.filename
    f.close()

    f = h5py.File(temp_file_name, 'r')
    f2 = nwb.create_blank_file(force=True)
    data = nwb.TimeSeries.get_acquisition(f, 0)
    data.add_to_acquisition(f2)
    f.close()
    temp_file_name_2 = f2.filename
    f2.close()

    f = h5py.File(temp_file_name_2)
    data = nwb.TimeSeries.get_acquisition(f, 0)
    np.testing.assert_almost_equal(data.data, data_original)
    assert data.data.file.filename == temp_file_name

    f.close()
    os.remove(temp_file_name)
    os.remove(temp_file_name_2)
コード例 #3
0
ファイル: test_nwb.py プロジェクト: tmchartrand/bmtk
def test_analysis():
    t_values = np.arange(10)
    y_values = 10 * np.ones(10)

    f = nwb.create_blank_file(close=False)

    scale = nwb.Scale(t_values, 'time', 'second')
    data = nwb.FiringRate(y_values, scale=scale)
    data.add_to_analysis(f, 'step_0')

    scale = nwb.Scale(t_values, 'time', 'second')
    data = nwb.FiringRate(y_values, scale=scale)
    data.add_to_analysis(f, 'step_0')

    scale = nwb.Scale(t_values, 'time', 'second')
    data = nwb.FiringRate(y_values, scale=scale)
    data.add_to_analysis(f, 'step_1')

    file_name = f.filename
    f.close()
    os.remove(file_name)
コード例 #4
0
ファイル: test_nwb.py プロジェクト: tmchartrand/bmtk
def test_spike_train():
    t_values = np.arange(5) * .1
    y_values = np.array([0, 1, 2, 2, 1])

    f = nwb.create_blank_file(close=False, force=True)
    scale = nwb.Scale(t_values, 'time', 'second')
    data = nwb.SpikeTrain(y_values, scale=scale)
    data.add_to_stimulus(f)
    data.add_to_acquisition(f)
    data.add_to_processing(f, 'step_0')
    data.add_to_analysis(f, 'step_0')

    round_trip = nwb.SpikeTrain.get_stimulus(f, 0)
    assert round_trip == data

    file_name = f.filename
    f.close()
    os.remove(file_name)
コード例 #5
0
ファイル: test_nwb.py プロジェクト: tmchartrand/bmtk
def test_firing_rate():
    t_values = np.arange(10)
    y_values = 10 * np.ones(10)

    f = nwb.create_blank_file(close=False, force=True)

    scale = nwb.Scale(t_values, 'time', 'second')
    data = nwb.FiringRate(y_values, scale=scale)
    data.add_to_stimulus(f)
    data.add_to_acquisition(f)
    data.add_to_processing(f, 'step_0')
    data.add_to_analysis(f, 'step_0')

    round_trip = nwb.FiringRate.get_stimulus(f, 0)
    assert round_trip == data

    file_name = f.filename
    f.close()
    os.remove(file_name)
コード例 #6
0
ファイル: test_nwb.py プロジェクト: tmchartrand/bmtk
def test_add_shared_scale():
    f = nwb.create_blank_file(close=False, force=True)
    t_values = np.arange(10)
    shared_scale = nwb.Scale(t_values, 'time', 'second')
    data_0 = nwb.FiringRate(10 * np.ones(10), scale=shared_scale)
    data_0.add_to_stimulus(f)
    data_1 = nwb.FiringRate(20 * np.ones(10), scale=shared_scale)
    data_1.add_to_stimulus(f)

    round_trip_0 = nwb.FiringRate.get_stimulus(f, 0)
    assert data_0 == round_trip_0

    round_trip_1 = nwb.FiringRate.get_stimulus(f, 1)
    assert data_1 == round_trip_1

    rt0, rt1 = nwb.FiringRate.get_stimulus(f)
    assert data_0 == rt0
    assert data_1 == rt1

    file_name = f.filename
    f.close()
    os.remove(file_name)