Esempio n. 1
0
 def test_load_inplace(self, lazy):
     if lazy:
         with pytest.raises(ValueError):
             _ = load(PATTERN_FILE, lazy=lazy, mmap_mode="r+")
     else:
         s = load(PATTERN_FILE, lazy=lazy, mmap_mode="r+")
         assert_dictionary(s.axes_manager.as_dictionary(), AXES_MANAGER)
Esempio n. 2
0
    def test_load_with_padding(self, save_path_hdf5, lazy):
        s = load(KIKUCHIPY_FILE)
        s.save(save_path_hdf5)

        new_n_columns = 4
        with File(save_path_hdf5, mode="r+") as f:
            f["Scan 1/EBSD/Header/n_columns"][()] = new_n_columns
        with pytest.warns(UserWarning, match="Will attempt to load by zero"):
            s_reload = load(save_path_hdf5, lazy=lazy)
        AXES_MANAGER["axis-1"]["size"] = new_n_columns
        assert_dictionary(s_reload.axes_manager.as_dictionary(), AXES_MANAGER)
    def test_file_reader(self):
        s = load(EMSOFT_FILE)

        axes_manager = setup_axes_manager(["energy", "height", "width"])

        assert s.data.shape == (11, 13, 13)
        assert_dictionary(s.axes_manager.as_dictionary(), axes_manager)
        assert_dictionary(s.metadata.as_dictionary(), METADATA)

        signal_indx = s.axes_manager.signal_indices_in_array
        assert np.allclose(s.max(axis=signal_indx).data, s.axes_manager["energy"].axis)
Esempio n. 4
0
    def test_load(self, setting_file):
        s = load(PATTERN_FILE, setting_file=SETTING_FILE)

        assert s.data.shape == (3, 3, 60, 60)
        assert_dictionary(s.axes_manager.as_dictionary(), AXES_MANAGER)

        static_bg = imread(BG_FILE)
        assert np.allclose(
            s.metadata.Acquisition_instrument.SEM.Detector.EBSD.
            static_background,
            static_bg,
        )
Esempio n. 5
0
    def test_load_edax(self):
        with File(EDAX_FILE, mode="r+") as f:
            grid = f["Scan 1/EBSD/Header/Grid Type"]
            grid[()] = "HexGrid".encode()
        with pytest.raises(IOError, match="Only square grids are"):
            _ = load(EDAX_FILE)
        with File(EDAX_FILE, mode="r+") as f:
            grid = f["Scan 1/EBSD/Header/Grid Type"]
            grid[()] = "SqrGrid".encode()

        s = load(EDAX_FILE)
        assert s.data.shape == (3, 3, 60, 60)
        assert_dictionary(s.axes_manager.as_dictionary(), AXES_MANAGER)
Esempio n. 6
0
    def test_load_bruker(self):
        with File(BRUKER_FILE, mode="r+") as f:
            grid = f["Scan 0/EBSD/Header/Grid Type"]
            grid[()] = "hexagonal".encode()
        with pytest.raises(IOError, match="Only square grids are"):
            _ = load(BRUKER_FILE)
        with File(BRUKER_FILE, mode="r+") as f:
            grid = f["Scan 0/EBSD/Header/Grid Type"]
            grid[()] = "isometric".encode()

        s = load(BRUKER_FILE)
        assert s.data.shape == (3, 3, 60, 60)
        assert_dictionary(s.axes_manager.as_dictionary(), AXES_MANAGER)
Esempio n. 7
0
    def test_load_kikuchipy(self):
        s = load(KIKUCHIPY_FILE)

        assert s.data.shape == (3, 3, 60, 60)
        assert_dictionary(s.axes_manager.as_dictionary(), AXES_MANAGER)
    def test_projection_lambert(self):
        s = load(EMSOFT_FILE, projection="lambert", hemisphere="both")

        assert s.data.shape == (2, 11, 13, 13)
        assert_dictionary(s.axes_manager.as_dictionary(), setup_axes_manager())
    def test_save_load_hspy(self, save_path_hdf5):
        s = load(EMSOFT_FILE)

        axes_manager = setup_axes_manager(["energy", "height", "width"])

        assert isinstance(s, EBSDMasterPattern)
        assert_dictionary(s.axes_manager.as_dictionary(), axes_manager)
        assert_dictionary(s.metadata.as_dictionary(), METADATA)

        s.save(save_path_hdf5)

        s2 = hs_load(save_path_hdf5, signal_type="EBSDMasterPattern")
        assert isinstance(s2, EBSDMasterPattern)
        assert_dictionary(s2.axes_manager.as_dictionary(), axes_manager)
        assert_dictionary(s2.metadata.as_dictionary(), METADATA)

        s3 = hs_load(save_path_hdf5)
        assert isinstance(s3, Signal2D)
        s3.set_signal_type("EBSDMasterPattern")
        assert isinstance(s3, EBSDMasterPattern)
        assert_dictionary(s3.axes_manager.as_dictionary(), axes_manager)
        assert_dictionary(s.metadata.as_dictionary(), METADATA)