Is it Expected for Output Structure to Deviate from FCC Seed Framework When Using

Hello ATAT community,

I’m using pymatgen’s SQSTransformation to generate a special quasirandom structure (SQS) for a binary Cu-Mn system, with the Cu FCC structure as the seed framework. Under the hood, pymatgen calls mcsqs from ATAT to perform the SQS generation. After running the process, I used a structure comparison tool (FrameworkComparator in pymatgen) to check if the output structure matches the original FCC seed framework. However, the output structure does not match the initial FCC structure as I expected.

Is it normal behavior for mcsqs to produce an SQS structure that slightly changes the original seed framework, or is this a red flag indicating a problem with the setup or configuration?
I would appreciate any insight into whether mcsqs is expected to modify the lattice or atomic positions beyond just reassigning species, or if I should look into fixing something.

Thank you very much for your help!

Best regards,
Nadav

Dear Nadav: I am assuming your comparing before relaxing (e.g., with VASP)?
I am also assuming that FrameworkComparator can compare structures with different cell sizes.
If FrameworkComparator is indeed a “A Comparator that matches sites, regardless of species”, then the mismatch should not happen for a valid SQS.

However, you should make sure that structures are parsed/converted correctly by each codes. I have never experienced such a problem when running mcsqs as a stand-alone code.