Skip to content

Standard setting for MSG 129.416 #575

@MIraola

Description

@MIraola

Dear developers,

I have a question about the standard setting adopted in spglib, and an issue that arises in the magnetic space group 129.416 (BNS number). Let me introduce the context of my question:

As far as I understand by reading the article by K. Shinohara et al. (Acta Cryst. (2023). A79, 390–398), the standard cell considered in spglib for magnetic space groups coincides with the BNS setting. For instance, we can read

Here, we present algorithms for determining magnetic symmetry operations of given magnetic crystal structures, identifying magnetic space-group types of given MSGs, searching for transformations to a Belov–Neronova–Smirnova (BNS) setting

and

we consider standardizing a given magnetic crystal structure by applying a transformation to an MSG in the BNS setting

From this information, I assume that the transformation returned by spglib.get_magnetic_symmetry_dataset takes the given crystal structure to the BNS setting. Is this correct?

The issue with magnetic space group 129.416 is the following (I provide a test code at the end): I pass to spglib.get_magnetic_symmetry_dataset a cell (atomic positions, lattice vectors, list of chemical species and magnetic moments), and it returns a set of symmetries which coincide with the BNS setting. The transformation_matrix is the 3x3 identity matrix, as we could expect. However, the origin_shift is not (0,0,0), but (1/4, 3/4, 0). This origin shift does not transform the cell into the BNS setting. How should I interpret this contradiction? Which is its cause?

Thank you for your feedback.

Test code for the space group 129.416:

import spglib
import numpy as np


atoms = [[0.2500,   0.7500,   0.0000],
         [0.7500,   0.2500,   0.0000], 
         [0.2500,   0.2500,   0.6690],
         [0.7500,   0.7500,   0.3310],
         [0.2500,   0.2500,   0.2130],
         [0.7500,   0.7500,   0.7870]]

lattice_vectors = [[4.1720,   0.0000,   0.0000],
                   [0.0000,  4.1720,   0.0000],
                   [0.0000,  0.0000,   7.1210]]

species = [1, 1, 2, 2, 3, 3]

magnetic_moments = [[0.00,   0.00,   -3.270], 
                    [0.00,   0.00,    3.270],  
                    [0.00,   0.00,    0.000],  
                    [0.00,   0.00,    0.000],  
                    [0.00,   0.00,    0.000],  
                    [0.00,   0.00,    0.000]]

dataset = spglib.get_magnetic_symmetry_dataset((lattice_vectors, atoms, species, magnetic_moments))

print(dataset.transformation_matrix)
print(dataset.origin_shift)

for rot, t, trs in zip(dataset.rotations, dataset.translations, dataset.time_reversals):
    print(rot, t)
    print('True' if trs else 'False')
    print()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions