GrainSpotter Version 0.3 - User manual
Søren Schmidt
soeren.schmidt@risoe.dk
Abstract:
This is a preliminary version of the documentation for GrainSpotter and is by no means complete. Nevertheless, the current version should provide the user with enough information to run GrainSpotter.
GrainSpotter is a pattern recognition algorithm for identifying crystallographic orientations (grains) in polycrystalline materials. Based on simulations hundreds of grains can be recovered simultaneously. GS takes as input a list of measurements (g-vectors in reciprocal space) and a list of theoretical scatter vectors derived from the lattice of the material in question. The algorithm then finds replica of the set of theoretical scatter vectors in the measured data. The discrete set of rotations that brings the set of theoretical scatter vectors onto a subset of the measured g-vectors are the crystallographic orientations of the grains present in the material.
Any rotation can be expressed as a rotation axis,
(3 by 1 vector), and a rotation around the rotation axis,
(scalar) (e.g. in the Rodrigues formulation one has
). Consequently, for all vectors
belonging to the orientation,
where g is the measured scatter vector and t is corresponding theoretical scatter vector, we have
 |
(1.1) |
If two pairs
) and
of measured and theoretical scatter vectors have the same internal angle,
the rotation axis is given by
 |
(1.2) |
The properties (1.1) and (1.2) are used throughout the GS algorithm. For each sub region of the orientation space GS finds candidate rotation axes fulfilling (1.2). For each rotation axis additional measurements that fulfill (1.1) are collected. A new rotation axis is then fitted based on these measurements (2 by 2 matrices). Afterwards, the rotation angles,
Õ's, are calculated and a median filter applied. This gives a candidate orientation
and a search for additional measurements are done by forward calculations of the remaining theoretical scatter vectors. The final orientation is given by a fit to all the selected measurements, fitting both
and
simultaneously (3 by 3 matrices). A few properties of the GS implementation
- GS makes use of error propagation. If individual measurement errors are provided for each g-vector, these errors are carried through the algorithm thus favoring accurate measurements. E.g. (1.1) reads
, where
is the error on the direction of the rotations axis.
- Pseudo twin identification. In, especially, highly symmetrical space groups there are often more than one crystallographic solution to a set of reciprocal vectors (pseudo-twin ambiguity problem). GS always finds the maximal solution among the pseudo twins.
- All rotations of theoretical vectors and search for measurements are done using integer calculations.
GS operates with three text files
- initialization file (input file, e.g. data.ini)
- data file, also called g-vector file (input file, e.g. data.gve)
- grains file (output file, e.g. data.glog)
The standalone version of GS is launched from the prompt:
GrainSpotter.0.3 data.ini
GS reads the initialization and g-vector files and processes the data. Afterwards, the recovered crystallographic orientations are written to the grains file.
The initialization file consists of a set of cards. Each card is followed by a list of arguments:
- card name (argument1/units)
(argumentN/units)
-
Currently, the initialization file holds 10 cards:
- spacegroup (number/integer)
- filespecs (g-vector input filename) (grains output filename)
- etarange (begin/degrees) (end/degrees)
- Can appear multiple times, one for each
-range.
- domega (delta/degrees)
- The integration range in
by which the diffraction images were recorded.
- omegarange (begin/degrees) (end/degrees)
- Can appear multiple times, one for each
-range.
- cuts (min. number of measurements/integer) (min. completeness/float)
- eulerstep (step size in orientation space/degrees)
- uncertainties (
/degrees) (
/degrees) (
/degrees)
- nsigmas (
/float)
- N_hkls_in_indexing (Number of rings used in indexing/integer)
The g-vector file is produced by ImageD11, see related specifications on the file format (http://fable.sourceforge.net/index.php/ImageD11).
The format of the grains file is a list of recovered crystallographic orientations. Each grain is listed with the following information:
: Grain id
-gvectors
-gvectors: Number of expected and measured scatter vectors.
: Average internal angle in degrees between the predicted and measured scatter vector.
: Orientation maxtrix
GrainSpotter Version 0.3 - User manual
This document was generated using the
LaTeX2HTML translator Version 2002-2-1 (1.71)
Copyright © 1993, 1994, 1995, 1996,
Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999,
Ross Moore,
Mathematics Department, Macquarie University, Sydney.
The command line arguments were:
latex2html -split 0 GrainSpotterV0.3_User_Manual.tex
The translation was initiated by Andy Gotz on 2007-10-23
Andy Gotz
2007-10-23