pyxem / kikuchipy

Toolbox for analysis of electron backscatter diffraction (EBSD) patterns
https://kikuchipy.org
GNU General Public License v3.0
78 stars 30 forks source link

Kinematic EBSD simulation from tetragonal phase #679

Open DorianDepriester opened 1 month ago

DorianDepriester commented 1 month ago

Dear developpers, I try to simulate the Kikuchi pattern of the CIGS [1] phase (see InCuSe2.cif.txt). I have followed the corresponding tutorial and ended up with the following script:

from diffsims.crystallography import ReciprocalLatticeVector
import kikuchipy as kp
from orix.crystal_map import Phase

phase_CIGS = Phase.from_cif('InCuSe2.cif')
phase_CIGS.space_group=122 # Not in CIF file
print(phase_CIGS)
print(phase_CIGS.structure.lattice)

ref_CIGS = ReciprocalLatticeVector.from_min_dspacing(phase_CIGS, 2) # Large threshold

# Exclude non-allowed reflectors (not available for hexagonal or trigonal
# phases!)
ref_CIGS = ref_CIGS.unique(use_symmetry=True).symmetrise()

ref_CIGS.sanitise_phase()
ref_CIGS.phase.structure

ref_CIGS.calculate_structure_factor()
F_CIGS = abs(ref_CIGS.structure_factor)
ref_CIGS = ref_CIGS[F_CIGS > 0.05 * F_CIGS.max()]
ref_CIGS.print_table()

But if I try to reduce the interplanar spacing threshold (say, 0.5 like in the tutorial), the last command above fails, raising: File "C:\ProgramData\Anaconda3\envs\Kikuchipy\lib\site-packages\diffsims\crystallography\reciprocal_lattice_vector.py", line 888, in print_table hkl_string_i = hkl_string[i].lstrip(" ") IndexError: list index out of range

Am I doing something wrong? Rgds

[1] https://next-gen.materialsproject.org/materials/mp-22811