Table of Contents

Merge GrainSpotter output files

If you run GrainSpotter multiple times on the same dataset, you will want to merge the different output files into one and end up with a single collection of unique grains.

This operation is performed using the timelessGrainSpotterMerge script, which is part of the TIMEleSS tools.

Objectives

Let's say you ran GrainSpotter 3 times, with the following output files: grainsIndexed1.log, grainsIndexed2.log, and grainsIndexed3.log. You will run the code as follow

timelessGrainSpotterMerge -c 3 grainsIndexed1.log grainsIndexed2.log grainsIndexed3.log

It will compare grains in the 3 output files. Grains are considered equal if their relative orientation is below a threshold misorientation, 2° by default. The script will keep the indexing with the largest number of assigned peak. The script also counts the number of times a grain with indexed (i.e. the number of times the same grain appears in a GrainSpotter output file).

New GrainSpotter output files are generated,

Usage

Here is the output of the help command

timelessGrainSpotterMerge  -h
Using AVX codes
usage: timelessGrainSpotterMerge [options] file1 file2 ... fileN

Merges grains from multiple GrainSpotter indexings This is part of the
TIMEleSS project http://timeless.texture.rocks

positional arguments:
  files                 grainSpotter output files

optional arguments:
  -h, --help            show this help message and exit
  -c {1,2,3,4,5,6,7}, --crystal_system {1,2,3,4,5,6,7}
                        Crystal system. Can be one of the following 1:
                        Triclinic 2: Monoclinic 3: Orthorhombic 4: Tetragonal
                        5: Trigonal 6: Hexagonal 7: Cubic
  -o OUTPUT_STEM, --output_stem OUTPUT_STEM
                        Stem for output files. Default is merge
  -m MISORIENTATION, --misorientation MISORIENTATION
                        Misorientation below which two grains are considered
                        identical, in degrees. Default is 2.0
  -s SKIPBOGUS, --skipbogus SKIPBOGUS
                        Skip bogus grains in GrainSpotter output.
                        Default is False

Terminal output

Here is an example of a terminal output

Parsed grainsIndexed1.log, found 7 grains
Parsed grainsIndexed2.log, found 6 grains
Parsed grainsIndexed3.log, found 7 grains

Misorientation below which the two grains are considered identical, in degrees: 2.0

Looking for unique grains
- grain 0 and 7 are identical
- grain 0 and 17 are identical
- grain 1 and 10 are identical
- grain 1 and 19 are identical
- grain 3 and 9 are identical
- grain 3 and 13 are identical
- grain 4 and 8 are identical
- grain 4 and 14 are identical
- grain 5 and 11 are identical
- grain 5 and 16 are identical
- grain 6 and 12 are identical
- grain 6 and 18 are identical
- grain 7 and 17 are identical
- grain 8 and 14 are identical
- grain 9 and 13 are identical
- grain 10 and 19 are identical
- grain 11 and 16 are identical
- grain 12 and 18 are identical
Found 12 grains indexed twice
New number of grains: 8

Indexing statistics
- 6 grains were indexed 3 times
- 2 grains were indexed 1 times

Saving unique grains
- all 8 unique grains saved in merge-grains.log
- 6 grains indexed 3 times saved in merge-grains-3.log
- 2 grains indexed 1 times saved in merge-grains-1.log