Open lnaglecocco opened 2 years ago
Hi, I'm going to move this issue over to diffsims (as it's a simulation, that's handled by them). It's not obvious to me what is wrong at a glance, but we'll have a look.
If someone could let me know if I can solve this at my end or if this is indeed a bug, I'd be very grateful
I won't consider this a bug, it's just that we haven't included scattering factors for atoms in oxidized states. I'd be happy to review a contribution of these if they are available.
As far as I know, the absolute kinematical structure factors calculated with diffsims are mostly used in pair distribution function analysis in pyxem, implemented by @JoonatanL.
Description of suspected bug I use
structure = diffpy.structure.loadStructure()
to import a CIF. This CIF has Ni3+ sites. I attempt to calculate a set of diffraction patterns for this structure, roughly following the code from the tutorial 02 GaAs Nanowire - Phase Mapping - Orientation Mapping. When I run the linediff_lib = lib_gen.get_diffraction_library(...)
I get a long error (listed in full at the end of this report) which seems to come up because there isn't an 'Ni3+' key in thescattering_params_dict
.I am very new to Pyxem, and generally very new to electron diffraction too, so I may have misunderstood something here. It seems to me quite important to be able to specify an oxidation state of an element as the scattering cross-section of electrons in a material will surely depend on the oxidation state of the atom (though if I've got that wrong please do correct me). If someone could let me know if I can solve this at my end or if this is indeed a bug, I'd be very grateful
Expected behavior I would have expected 'Ni3+' to have a scattering parameter listed in
scattering_params_dict
.Error message in full