Skip to content

CBED Example

Marc DeGraef edited this page Dec 16, 2018 · 1 revision

CBED Example simulations

The CBED program EMLACBED in combination with the IDL visualization program CBEDDisplay can be used to generate a number of different CBED patterns, including Eades patterns. Let's begin with a simple example: the 100 kV [001] LACBED pattern for fcc copper. We assume that the .xtal file already exists with the proper crystallographic information for copper.

First execute the EMLACBED -t command, which will place two .template files in your working folder. Rename them with extension .nml, and then edit them. For the BetheParameters.nml file, you will need to change the default values (which are valid for SEM voltages) to the following values:

 &Bethelist
! strong beam cutoff
 c1 = 15.0,
! weak beam cutoff
 c2 = 50.0,
! complete cutoff
 c3 = 400.0,
! double diffraction reflections: maximum excitation error to include [nm^{-1}]
 sgdbdiff = 1.00
 /

Then edit the EMlacbed.nml file:

 &LACBEDlist
! the name of the crystal input file MUST be specified (full pathname)
 xtalname = 'Cu.xtal',
! microscope accelerating voltage [kV]
 voltage = 100.,
! zone axis indices
 k = 0 0 1,
! foil normal indices
 fn = 0 0 1,
! minimum d-spacing to be taken into account [nm]
 dmin = 0.015,
! maximum HOLZ layer number for the output file (this does not affect 
! the number used for the actual computations)
 maxHOLZ = 2,
! incident beam convergence angle [mrad]
 convergence = 40.0,
! output will be diffraction disks inside a square of area (2*npix+1)^2
 npix = 400,
! number of thicknes values to be used in the output
 numthick = 10,
! starting thickness value [nm]
 startthick = 20.0,
! thickness increment value [nm]
 thickinc = 20.0,
! output will be stored here (full pathname)
! min intensity to consider
 minten = 1.0E-6,
! name of output HDF5 file (relative to EMdatapathname)
 outname = 'PATHNAME/LACBEDCu001.h5',
 nthreads = 10,
 /

Then run the program using EMLACBED EMlacbed.nml; this will take a while, depending on your platform and how many threads you allocate to the run. Eventually, an HDF5 file will be generated that contains individual diffraction disks (one per family of reflections) and other information. You can use the HDFView program to look at the file content, but it is much better to use the IDL CBEDDisplay GUI to play around with the data. A sepearate program EMCBEDpattern that can produce patterns from the output of the EMLACBED program is in the works.

During execution, the program will display a bit of crystallographic information, including symmetry of the diffraction pattern:

...
 Zone Axis :[  0  0  1]

 Crystal point group           :  m-3m
 Crystal point group number    : 32
 Laue group                    :  m-3m
 Diffraction group             : 4mm1R
 Diffraction group number      : 19
 Projection diffraction group  : 4mm1R

 Bright Field symmetry         :   4mm
 Whole Pattern symmetry        :   4mm
 Dark Field general symmetry   :     2
 Dark Field special symmetry   :   2mm

 Number of 3D symmetry operators that leave k invariant :  8
 Order of Whole Pattern point group :  8

 Reciprocal lattice vectors :(  1  0  0) and (  0  1  0)
  (the first lattice vector is horizontal in the CBED pattern)
...

The last two lines tell you that the (100) diffraction disk will be to the right of the transmitted disk in the final CBED patterns; obviously, for fcc Cu there is no (100) disk, so you should interpret this as meaning the first allowed multiple of (100) will be along the horizontal direction of the CBED pattern.

The program will then update the user on progress in the form of a percentage of the total number of incident beam directions completed; in the present example, the diffraction disk will contain 502,625 individual pixels, and the intensity computation is carried out for each pixel. Total execution time on a 2013 Mac Pro using 10 threads was about 5 minutes, and the output HDF5 files had a size of about 330 Mb.

Information for Users

Home

SEM Modalities     - Monte Carlo Simulations
    - EBSD Master Pattern Simulations
    - EBSD Overlap Master Patterns
    - EBSD Pattern Simulations
    - EBSD Dictionary Indexing
    - EBSD Spherical Indexing
    - EBSD Reflector Ranking
    - EBSD HREBSD
    - ECP Master Pattern Simulations
    - ECP Pattern Simulations
    - TKD Master Pattern Simulations
    - TKD Pattern Simulations
    - ECCI Defect Image Simulations
TEM Modalities     - HH4
    - PED
    - CBED Pattern Simulations
    - STEM-DCI Image Simulations
    - EMIntegrateSTEM utility
XRD Modalities     - Laue Master Pattern Simulation
    - EMLaue
    - EMLaueSlit
General Parameter Definitions * Foil Defect Configuration Definitions
EMsoftWorkbench
Utility Programs     - EMConvertOrientations
    - EMDisorientations
    - EMHOLZ
    - EMKikuchiMap
    - EMOpenCLinfo
    - EMZAgeom
    - EMcuboMK
    - EMdpextract
    - EMdpmerge
    - EMdrawcell
    - EMeqvPS
    - EMeqvrot
    - EMfamily
    - EMGBO
    - EMGBOdm
    - EMgetEulers
    - EMgetOSM
    - EMlatgeom
    - EMlistSG
    - EMlistTC
    - EMmkxtal
    - EMorbit
    - EMorient
    - EMqg
    - EMsampleRFZ
    - EMshowxtal
    - EMsoftSlackTest
    - EMsoftinit
    - EMstar
    - EMstereo
    - EMxtalExtract
    - EMxtalinfo
    - EMzap
IDL Scripts     - Virtual Machine Apps
    - SEMDisplay
    - Efit
    - CBEDDisplay
python wrappers     - python examples
Docker     - Docker Image

Complete Examples

  1. Crystal Data Entry Example
  2. EBSD Example
  3. ECP Example
  4. TKD Example
  5. ECCI Example
  6. CBED Example
  7. Dictionary Indexing Example
  8. DItutorial

Information for Developers

Clone this wiki locally