User Tools

Site Tools


processing:indexing_with_grainspotter

This is an old revision of the document!


Grain indexing with GrainSpotter

At this point, you should have a computed all experimental G-vectors. You are now ready for indexing grains with GrainSpotter.

GrainSpotter first generates a number of random grain orientations and, for each, calculates the corresponding theoretical G-vectors. For each grain orientation, GrainSpotter looks for a possible match between the theoretical G-vectors and those found in the experiment. If the convergence criteria are met (see details below), the grain is assigned.

Estimation of the uncertainties

For the indexation, uncertainties in 2θ, η and ω will be critical for assigning the experimental G-vectors to a grain. You can use Fabian to estimate uncertainties on ω and η and ImageD11 to estimate uncertainties in 2θ.

In Fabian, load your peaks from the peaksearch and overlap them with the diffraction data (CrystTools > Peaks > read). In ImageD11, display your peaks as 2θ/η plot. You can then evaluate the maximum δ2θ, δη, and δω ranges you can use to avoid mixing up peaks.

ImageD11 is not a good tool for evaluating δη and δω as all peaks extracted for all ω are stacked on the same plot. It is the only tool, however, that will allow you to evaluate δ2θ.

Result of a peak search displayed in Fabian. Red circles are peaks. Using Fabian you can estimate the maximum δη interval (azimuthal coordinate on the detector plane) that can be used without confusing peaks. By moving from one image to the next, you can also estimate the maximum value of δω interval that can be used while avoiding confusion between peaks.
2θ/η plot in ImageD11. This can be used to assign a maximum δ2θ interval that will avoid confusion between the diffraction lines. Pay attention to this step. If your 2θ uncertainty is too large, this indexing will be completely wrong.

Indexing grains

You are now ready to start indexing your g-vectors with GrainSpotter.

GrainSpotter works with an input file, typically ending with a .ini extension in which you should define

  • the crystal structure of the grains you are looking for,
  • the 2θ, η and ω ranges in which to look for g-vectors, the 2θ can also be expressed in d-spacing range,
  • the cuts, above which a grain is considered a grain,
  • the uncertainties in 2θ, η and ω,
  • a nσ factor that will be applied to the uncertainties above,
  • the number of random tries.

Changing the 2θ range allow you to exclude some domains where the peaks are not well defined.

You should play on the cut and the uncertainties to found the settings with the best indexation. Increasing the minimum of measurements allow to decrease the number of erroneous indexed grains but it limite the number of indexed grains found. The uniqueness and the completness do not have a great importance on the indexation (I set both to zero in my best indexation scenario). For defining the incertainties, use the plot from fabian and ImageD11.

Increasing random number increase the number of grains indexed but slow a bit the calculation.

When your input file is ready, type :

GrainSpotter.0.90 index.ini

nb : the commande GrainSpotter instead of GrainSpotter.0.90 work too, I do not know what is the difference.

processing/indexing_with_grainspotter.1550733138.txt.gz · Last modified: 2019/02/21 07:12 by smerkel