Skip to content

ECCI Example

Marc DeGraef edited this page Nov 2, 2018 · 2 revisions

ECCI Image simulation example

This example concerns the simulation of a series of EECI images for a combination of lattice defects in a GaP foil. The EMECCI program requires four different input files for the foil information, the defect configuration, the BetheParameters for the dynamical simulation, and the general setup. We will use the default BetheParameters.nml file for this example.

The foil information is specified as follows in the file EMfoil.json:

 {
     "FoilDescriptor": {
         "foilF": [ 0.0, 0.0, 1.0 ],
         "foilq": [ 1.0, 0.0, 0.0 ],
         "foilalP": 0.0,
         "foilalS": 0.0,
         "foilalR": 0.0,
         "foilz0": 100.0,
         "foilelmo": {
             "row1": [ 168.4, 121.4, 121.4, 0.0, 0.0, 0.0 ],
             "row2": [ 121.4, 168.4, 121.4, 0.0, 0.0, 0.0 ],
             "row3": [ 121.4, 121.4, 168.4, 0.0, 0.0, 0.0 ],
             "row4": [ 0.0, 0.0, 0.0, 75.5, 0.0, 0.0 ],
             "row5": [ 0.0, 0.0, 0.0, 0.0, 75.5, 0.0 ],
             "row6": [ 0.0, 0.0, 0.0, 0.0, 0.0, 75.5 ]
         }
     }
 }

The elastic moduli are only used for fully embedded dislocations that do not intersect the foil surface (and we do not use any of those in this example, so the values do not matter).

The defect configuration file contains five surface-penetrating dislocations, one screw dislocation at the center of the image with line direction parallel to the foil normal, and four inclined dislocations; and a stacking-fault tetrahedron on four different SF planes.

 {
     "DefectDescriptors": {
         "foil": {
             "foilfilename": "datapathname/EMfoil.json"
         },
         "Ydislocations": [
                 {
                     "id": 0.001,
                     "jd": -0.001,
                     "u": [ 0.0, 0.0, -1.0 ],
                     "bv": [ 0.0, 0.0,-1.0 ],
                     "poisson": 0.31
                 },
                 {
                     "id": 0.651,
                     "jd": -0.651,
                     "u": [ 0.0, -1.0, -1.0 ],
                     "bv": [ 0.0, -1.0,-1.0 ],
                     "poisson": 0.31
                 },
                 {
                     "id": 0.651,
                     "jd": 0.651,
                     "u": [ -1.0, 0.0, -1.0 ],
                     "bv": [-1.0, 0.0,  1.0 ],
                     "poisson": 0.31
                 },
                 {
                     "id": -0.651,
                     "jd": 0.651,
                     "u": [ 0.0,  1.0, -1.0 ],
                     "bv": [ 0.0,  1.0,-1.0 ],
                     "poisson": 0.31
                 },
                 {
                     "id": -0.651,
                     "jd": -0.651,
                     "u": [  1.0, 0.0, -1.0 ],
                     "bv": [ 1.0, 0.0,  1.0 ],
                     "poisson": 0.31
                 }
         ],
         "stackingfaults": [
                 {
                     "SFi": 0.25,
                     "SFj": 0.25,
                     "SFsep": 90.509,
                     "SFplane": [ 1.0, 1.0, -1.0 ],
                     "SFlpu": [ -1.0, 0.0, -1.0 ],
                     "SFlpb": [ -0.166667, -0.166667, -0.333333 ],
                     "SFtpu": [ 0.0, -1.0, -1.0 ],
                     "SFtpb": [ 0.166667, -0.333333, -0.166667 ]
                 },
                 {
                     "SFi": -0.25,
                     "SFj": 0.25,
                     "SFsep": 90.509,
                     "SFplane": [ -1.0, 1.0, -1.0 ],
                     "SFlpu": [ 0.0, -1.0, -1.0 ],
                     "SFlpb": [ -0.166667, 0.166667, 0.333333 ],
                     "SFtpu": [ 1.0, 0.0, -1.0 ],
                     "SFtpb": [ -0.333333, -0.166667, 0.166667 ]
                 },
                 {
                     "SFi": -0.25,
                     "SFj": -0.25,
                     "SFsep": 90.509,
                     "SFplane": [ -1.0, -1.0, -1.0 ],
                     "SFlpu": [ 1.0, 0.0, -1.0 ],
                     "SFlpb": [ 0.166667, 0.166667, -0.333333 ],
                     "SFtpu": [ 0.0, 1.0, -1.0 ],
                     "SFtpb": [ -0.166667, 0.333333, -0.166667 ]
                 },
                 {
                     "SFi": 0.25,
                     "SFj": -0.25,
                     "SFsep": 90.509,
                     "SFplane": [ 1.0, -1.0, -1.0 ],
                     "SFlpu": [ 0.0, 1.0, -1.0 ],
                     "SFlpb": [ 0.166667, -0.166667, 0.333333 ],
                     "SFtpu": [ -1.0, 0.0, -1.0 ],
                     "SFtpb": [ 0.333333, 0.166667, 0.166667 ]
                 }
         ]
     }
 }

The EMECCI.nml input file has the following parameters:

 &ECCIlist
! The line above must not be changed
!
! The values below are the default values for this program
!
!------------
! multi-threading parameters
!------------
 nthreads = 4,
!------------
! microscope parameters
!------------
! microscope accelerating voltage [V]
 voltage = 20.,
!------------
! crystal structure and incident beam parameters
!------------
! crystal structure filename
 xtalname = 'GaP.xtal',
! program mode  'array' or 'trace'
 progmode = 'array',
! incident beam direction
 k = 0,0,1,
! kt step size
 dkt = 1.5,
! beam convergence angle in terms of the ratio kt/|g_a| (i.e., kt_max)
 ktmax = 3.0,
!  laue center coordinates
 lauec = 0.0, .0,
!  second laue point for trace mode
 lauec2 = 0.0, 0.0,
! number of steps along trace
 nktstep = 0,
! smallest d-spacing to take into account [nm]
 dmin = 0.1,
!------------
! various filenames
!------------
! name of the nml file with the foil parameters
 defectfilename = 'datapathname/defects.json',
! full filename of the output file, including complete path
 dataname = 'datapathname/GaP-ECCI.h5',
 ECPname = 'datapathname/GaPtest.data'
 montagename = 'datapathname/ECCImontage.tiff',
!------------
! image parameters and scattering matrix step size
!------------
! edge length of a column [nm] in the column approximation context
 DF_L = 1.0,
! number of x-columns (=number of x-pixels in output image)
 DF_npix = 256,
! number of y-columns (=number of y-pixels in output image)
 DF_npiy = 256,
! slice thickness for scattering matrix approach [nm]
 DF_slice = 1.0
 /

Execution of this program will generate an array of 113 ECCI images centered around the [001] zone axis. A small portion of the full image montage is shown below; the complete montage file can be downloaded from this URL.

20 keV ECCI images for faults in GaP; [001] orientation

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