High resolution X-ray Diffraction

This module contains methods to create functors, which allow to simulate dynamical x-ray diffraction from strained crystals, multilayers, and superlattices.

The formalism is based on Stepanov et al publication [1]

The module allows to estimate the following profiles of structure parameters in multilayers:

  • Normal lattice strains

  • Crystal susceptibility \(\chi_0\), \(\chi_h\)

  • Interface roughness

The Debay-Waller factors can be easily added to the model as dependent parameters.

The effects of lateral strains (relaxed multilayers, misfit dislocations, etc) are not simulated by this functor.

escape.scattering.spechrxrd.spechrxrd(p0: FunctorLike, ml: multilayer_obj, h: int, k: int, l: int, beta: float = 1.0, formalism: str = '2x2', source: source_obj = None, name: str = '', notes: str = '') functor_obj

Returns functor object for calculation of high resolution X-Ray diffraction.

Parameters

p0FunctorLike

Variable, which represents z-component of wave-vector of incoming wave.

mlmultilayer_obj

Sample description object.

hint

Miller index of Bragg reflection.

kint

Miller index of Bragg reflection.

lint

Miller index of Bragg reflection.

betafloat, optional

Asymmetry factor \(\beta=g_0/g_h\) (default is 1.0).

formalismstr, optional

‘2x2’ matrix formalism works correctly far away from grazing incidence mode. ‘4x4’ matrix formalism is valid for the whole range.

sourcesource_obj, optional

Source description object.

namestr, optional

Name of the functor.

notesstr, optional

User notes for the object.

Returns

functor_obj

Functor instance.