Table of Contents
Fetching ...

Simulation package for solving dynamic diffraction problems in deformed crystals. Bragg, Laue geometry, asymmetric reflections, bend crystals, dislocations, crystals with arbitrary shapes, strain distributions and time dependent problems

Jacek Krzywinski, Aliaksei Halavanau

TL;DR

The work addresses dynamic x-ray diffraction in distorted crystals with arbitrary shapes by employing a Fast Fourier Transform Beam Propagation Method (FFT-BPM) that evolves slowly varying envelopes for forward and backward beams under a two-beam approximation. The method updates via a parabolic, diffraction-inclusive equation, incorporating deformation through δε and u fields, and is validated across Bragg, Laue, and asymmetric geometries, including bent crystals and dislocations. It demonstrates strong agreement with Takagi–Taupin results and XOP benchmarks while offering a compact, parallelizable Python implementation suitable for 3D finite crystals and time-dependent problems. The public fftbpm package, along with Jupyter notebooks and a standardized 75-parameter configuration, enables rapid, scalable simulations on HPC systems and supports integration into CXDI and related dynamical diffraction analyses.

Abstract

We demonstrate the use of the Fast Fourier Transform Beam Propagation Method (FFT BPM) to simulate dynamic diffraction effects, including scattering from deformed crystals with arbitrary shapes in Bragg, Laue, and asymmetric geometries. The method's straightforward algorithm, combined with FFT, enables fast computation and is easy to implement in Python. It successfully reproduces literature results for bent crystals, dislocations, and finite-shaped crystals simulated using the Takagi-Taupin equations. Python implementations for each case are provided in a public GitHub repository, with the code structured for parallel computing.

Simulation package for solving dynamic diffraction problems in deformed crystals. Bragg, Laue geometry, asymmetric reflections, bend crystals, dislocations, crystals with arbitrary shapes, strain distributions and time dependent problems

TL;DR

The work addresses dynamic x-ray diffraction in distorted crystals with arbitrary shapes by employing a Fast Fourier Transform Beam Propagation Method (FFT-BPM) that evolves slowly varying envelopes for forward and backward beams under a two-beam approximation. The method updates via a parabolic, diffraction-inclusive equation, incorporating deformation through δε and u fields, and is validated across Bragg, Laue, and asymmetric geometries, including bent crystals and dislocations. It demonstrates strong agreement with Takagi–Taupin results and XOP benchmarks while offering a compact, parallelizable Python implementation suitable for 3D finite crystals and time-dependent problems. The public fftbpm package, along with Jupyter notebooks and a standardized 75-parameter configuration, enables rapid, scalable simulations on HPC systems and supports integration into CXDI and related dynamical diffraction analyses.

Abstract

We demonstrate the use of the Fast Fourier Transform Beam Propagation Method (FFT BPM) to simulate dynamic diffraction effects, including scattering from deformed crystals with arbitrary shapes in Bragg, Laue, and asymmetric geometries. The method's straightforward algorithm, combined with FFT, enables fast computation and is easy to implement in Python. It successfully reproduces literature results for bent crystals, dislocations, and finite-shaped crystals simulated using the Takagi-Taupin equations. Python implementations for each case are provided in a public GitHub repository, with the code structured for parallel computing.
Paper Structure (12 sections, 18 equations, 22 figures, 1 table)

This paper contains 12 sections, 18 equations, 22 figures, 1 table.

Figures (22)

  • Figure 1: 2D visualization of a diamond (400) Laue reflection, with the incident beam at the Bragg angle (top left) and at the Bragg angle + 1.5 $\mu$rad (top right). The bottom row shows the intensity of the transmitted component $\widetilde{\psi}{_+}$ (left) and the reflected part $\widetilde{\psi}{_-}$ for the 1.5 $\mu$rad deviation from the Bragg angle. The Pendellösung oscillations are clearly visible. The color scale units are arbitrary
  • Figure 2: 2D visualization of field amplitudes for a diamond (400) asymmetric reflection, asymm_angle=15 $deg$ (left), asymm_angle=15 $deg$ (right). Color scale units are arbitrary.
  • Figure 3: Rocking curve simulated in the Laue geometry for a 82 $\mu$m thick diamond crystal at 9.813 keV photon energy.
  • Figure 4: Rocking curves simulated for bending radii of 65 and 95 mm.
  • Figure 5: Geometry of the Laue [220]reflection from a Si crystal in the presence of screw and mixed dislocations. The screw dislocation has the unit dislocation line vector $\boldsymbol{\tau}$ parallel to the Burgers vector (along the(110) axis). The mixed 60 degrees dislocation has the unit dislocation line vector $\boldsymbol{\tau}$ parallel to the (101) axis. The pattern on the crystal sides indicates the Pendellösung fringes.
  • ...and 17 more figures