Beispiel #1
0
def test_natural_movie_one_a(nm1a, nwb_a, analysis_a_new):
    nm1a_new = NaturalMovie.from_analysis_file(BODS(nwb_a), analysis_a_new, si.NATURAL_MOVIE_ONE)
    #assert np.allclose(nm1a.sweep_response, nm1a_new.sweep_response)
    assert np.allclose(nm1a.binned_cells_sp, nm1a_new.binned_cells_sp, equal_nan=True)
    assert np.allclose(nm1a.binned_cells_vis, nm1a_new.binned_cells_vis, equal_nan=True)
    assert np.allclose(nm1a.binned_dx_sp, nm1a_new.binned_dx_sp, equal_nan=True)
    assert np.allclose(nm1a.binned_dx_vis, nm1a_new.binned_dx_vis, equal_nan=True)
Beispiel #2
0
def lsn(nwb_c, analysis_c):
    # in order to work around 2/3 unicode compatibility, separate files are specified for python 2 and 3
    # we need to look up a different key depending on python version
    key = si.LOCALLY_SPARSE_NOISE_4DEG if sys.version_info < (
        3, ) else si.LOCALLY_SPARSE_NOISE

    return LocallySparseNoise.from_analysis_file(BODS(nwb_c), analysis_c, key)
Beispiel #3
0
def test_natural_scenes(ns, nwb_b, analysis_b_new):    
    ns_new = NaturalScenes.from_analysis_file(BODS(nwb_b), analysis_b_new)
    #assert np.allclose(ns.sweep_response, ns_new.sweep_response)
    assert np.allclose(ns.mean_sweep_response, ns_new.mean_sweep_response, equal_nan=True)

    assert np.allclose(ns.noise_correlation, ns_new.noise_correlation, equal_nan=True)
    assert np.allclose(ns.signal_correlation, ns_new.signal_correlation, equal_nan=True)
    assert np.allclose(ns.representational_similarity, ns_new.representational_similarity, equal_nan=True)
Beispiel #4
0
def test_static_gratings(sg, nwb_b, analysis_b_new):
    sg_new = StaticGratings.from_analysis_file(BODS(nwb_b), analysis_b_new)
    #assert np.allclose(sg.sweep_response, sg_new.sweep_response)
    assert np.allclose(sg.mean_sweep_response, sg_new.mean_sweep_response, equal_nan=True)

    assert np.allclose(sg.response, sg_new.response, equal_nan=True)
    assert np.allclose(sg.noise_correlation, sg_new.noise_correlation, equal_nan=True)
    assert np.allclose(sg.signal_correlation, sg_new.signal_correlation, equal_nan=True)
    assert np.allclose(sg.representational_similarity, sg_new.representational_similarity, equal_nan=True)
Beispiel #5
0
def test_drifting_gratings(dg, nwb_a, analysis_a_new):
    logging.debug("reading outputs")
    dg_new = DriftingGratings.from_analysis_file(BODS(nwb_a), analysis_a_new)
    #assert np.allclose(dg.sweep_response, dg_new.sweep_response)
    assert np.allclose(dg.mean_sweep_response, dg_new.mean_sweep_response, equal_nan=True)
        
    assert np.allclose(dg.response, dg_new.response, equal_nan=True)
    assert np.allclose(dg.noise_correlation, dg_new.noise_correlation, equal_nan=True)
    assert np.allclose(dg.signal_correlation, dg_new.signal_correlation, equal_nan=True)
    assert np.allclose(dg.representational_similarity, dg_new.representational_similarity, equal_nan=True)
Beispiel #6
0
def test_locally_sparse_noise(lsn, nwb_c, analysis_c_new):
    ds = BODS(nwb_c)
    session_type = ds.get_metadata()['session_type']
    logging.debug(session_type)

    if session_type == si.THREE_SESSION_C:
        lsn_new = LocallySparseNoise.from_analysis_file(ds, analysis_c_new, si.LOCALLY_SPARSE_NOISE)
    elif session_type == si.THREE_SESSION_C2:
        lsn_new = LocallySparseNoise.from_analysis_file(ds, analysis_c_new, si.LOCALLY_SPARSE_NOISE_4DEG)
        
    #assert np.allclose(lsn.sweep_response, lsn_new.sweep_response)
    assert np.allclose(lsn.mean_sweep_response, lsn_new.mean_sweep_response, equal_nan=True)
Beispiel #7
0
def analysis_c_new(nwb_c, tmpdir_factory):
    save_path = str(tmpdir_factory.mktemp("session_c") / "session_c_new.h5")

    logging.debug("running analysis c")
    session_analysis = SessionAnalysis(nwb_c, save_path)

    session_type = BODS(nwb_c).get_metadata()['session_type']
    if session_type == si.THREE_SESSION_C2:
        session_analysis.session_c2(plot_flag=False, save_flag=True)    
    elif session_type == si.THREE_SESSION_C:
        session_analysis.session_c(plot_flag=False, save_flag=True)    
    logging.debug("done running analysis c")
    
    logging.debug(save_path)

    yield save_path
Beispiel #8
0
def analysis_c_new(nwb_c):
    with tempfile.NamedTemporaryFile(delete=True) as tf:
        save_path = tf.name

    logging.debug("running analysis c")
    session_analysis = SessionAnalysis(nwb_c, save_path)

    session_type = BODS(nwb_c).get_metadata()['session_type']
    if session_type == si.THREE_SESSION_C2:
        session_analysis.session_c2(plot_flag=False, save_flag=True)
    elif session_type == si.THREE_SESSION_C:
        session_analysis.session_c(plot_flag=False, save_flag=True)
    logging.debug("done running analysis c")

    logging.debug(save_path)

    yield save_path

    if os.path.exists(save_path):
        os.remove(save_path)
Beispiel #9
0
def nm2(nwb_c, analysis_c):
    return NaturalMovie.from_analysis_file(BODS(nwb_c), analysis_c, si.NATURAL_MOVIE_TWO)
Beispiel #10
0
def ns(nwb_b, analysis_b):
    return NaturalScenes.from_analysis_file(BODS(nwb_b), analysis_b)
Beispiel #11
0
def nm1b(nwb_b, analysis_b):
    return NaturalMovie.from_analysis_file(BODS(nwb_b), analysis_b, si.NATURAL_MOVIE_ONE)
Beispiel #12
0
def sg(nwb_b, analysis_b):
    return StaticGratings.from_analysis_file(BODS(nwb_b), analysis_b)
Beispiel #13
0
def nm3(nwb_a, analysis_a):
    return NaturalMovie.from_analysis_file(BODS(nwb_a), analysis_a, si.NATURAL_MOVIE_THREE)
Beispiel #14
0
def dg(nwb_a, analysis_a):
    return DriftingGratings.from_analysis_file(BODS(nwb_a), analysis_a)
def lsn(nwb_c, analysis_c):
    return LocallySparseNoise.from_analysis_file(BODS(nwb_c), analysis_c,
                                                 si.LOCALLY_SPARSE_NOISE_8DEG)