Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reading of master patterns generated with Oxford Instruments MapSweeper #705

Open
hakonanes opened this issue Dec 1, 2024 · 7 comments
Open
Labels
enhancement New feature or request help wanted Would be nice if someone could help
Milestone

Comments

@hakonanes
Copy link
Member

hakonanes commented Dec 1, 2024

Oxford Instruments MapSweeper software can simulate kinematical, two-beam, and full dynamical EBSD/TKD master patterns.

We should have a reader for this format.

Any help providing master patterns for testing would be much appreciated (TKD?). I don't have access to the software myself, but have received some master patterns from colleagues. So the initial reader will be limited to read only the master patterns I have access to.

@hakonanes hakonanes added enhancement New feature or request help wanted Would be nice if someone could help labels Dec 1, 2024
@hakonanes hakonanes added this to the v0.12.0 milestone Dec 1, 2024
@hakonanes
Copy link
Member Author

hakonanes commented Dec 1, 2024

The format in the file I have access to is:

├── Data
│   ├── Master
│   │   ├── Dynamical
│   │   │   ├── Lower (1001, 1001), uint16
│   │   │   └── Upper (1001, 1001), uint16
│   │   ├── Kinematic
│   │   │   ├── Lower (1001, 1001), uint16
│   │   │   └── Upper (1001, 1001), uint16
│   │   └── TwoBeam
│   │       ├── Lower (1001, 1001), uint16
│   │       └── Upper (1001, 1001), uint16
│   └── Reflectors
│       ├── Extinction Distances (110,), float32
│       ├── HKL (110, 3), int16
│       ├── Lattice Spacing (110,), float32: unit?
│       ├── Normal Directions (110, 3), float32
│       └── Relative Intensities (110,), float32
├── Header
│   ├── Beam Voltage (1,) float32: 20, in kV
│   ├── Debye-Waller Factor (1,) float32: 0.5, 1/Å^2?
│   ├── Master Size (1,) int32: 1001, size of patterns in Data/Master
│   ├── Minimum Intensity (1,) float32: 20?
│   ├── Minimum Lattice Spacing (1,) float32: 0.8, unit?
│   └── Phase Info: n phases
│       ├── Lattice Angles (n, 3) float32: (alpha, beta, gamma) in radians
│       ├── Lattice Dimensions (n, 1) float32: (a, b, c). Has an attribute "Unit". Options are Angstrom and ...?
│       ├── Laue Group (n, 1) int32: 1... 1-11? -1 to m-3m?
│       ├── Phase Name (n, 1) object: Binary string
│       ├── Reference (n, 1) object: Binary string, an ID of a crystal entry in some (commercial) database
│       └── Space Group (n, 1) int32: Space group number 1-230.
└── Proprietary
    ├── Format Version (1,) object: Binary string, 1.0
    └── Source Info (1,) object: Binary string, long string with seemingly random characters.

Questions:

  • Laue Group? Which options are there? Perhaps we can just ignore this, and rely on space group.
  • Header/Phase Info seems to allow multiple phases, since the array shape is (1, 3) for lattice dimensions, e.g. So can there be multiple master patterns from different phases in one file?
  • Can one file have patterns for multiple energies? I assume so, although the master pattern and beam voltage arrays did not have an extra first dimension for this.
  • Dataset Header/Phase Info/Lattice Dimensions has an attribute named Unit. Its value can be "Angstrom" and...?

@CiosG
Copy link

CiosG commented Dec 2, 2024 via email

@hakonanes
Copy link
Member Author

Thank you for giving some insight into the format, @CiosG. Just what I hoped for!

If you could provide me with another test file or two with complete symmetry information that would be very much appreciated. I only have two files for magnesium, but with dummy crystal info (space group of 1, which is surprising, because the simulation obviously has hexagonal symmetry).

It's surprising that the SDF5 file does not contain the complete unit cell used to create the simulation. The master pattern metadata is incomplete without it. The master pattern can only be used by the creator in AZtec MapSweeper; anyone it's shared with cannot verify the simulation...

@CiosG
Copy link

CiosG commented Dec 5, 2024 via email

@hakonanes
Copy link
Member Author

Ah, I see. But would the atoms be returned if you defined the phase yourself? Because that is possible, I assume.

No, I don't have access to it anymore. Please use [email protected]. Thanks!

@hakonanes
Copy link
Member Author

But you shouldn't get nice hexagonal symmetry in your pattern with just the identity operation, though? I'm puzzled by that. I'll ask my colleague who I got the data from.

@hakonanes
Copy link
Member Author

Thanks a lot for the master patterns, @CiosG. The reader in #706 could read them without issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Would be nice if someone could help
Projects
None yet
Development

No branches or pull requests

2 participants