Automated SQS search across concentration range with ATAT mcsqs

Hello,
building upon my GUI for preparing ATAT mcsqs input files and analyzing their output files (simplysqs.com, atat-sqs.streamlit.app/), I have added a new feature that I would like to share, as it might be useful to some: Create a bash script that automatically runs the mcsqs search across a concentration range for two selected elements, either on a sublattice or in global concentration mode.

For example, say I want to automatically search for SQSs generated from SrTiO3 for the following series:
Sr0.1Zr0.9TiO3, Sr0.2Zr0.8TiO3, …, Sr0.1Zr0.9TiO3.

Instead of creating the input files manually for each concentration or writing my own automation script, I can now generate a single bash script that takes care of everything.

  • After one concentration folder finishes, it automatically converts the bestsqs into POSCAR format.
  • It can run multiple concentration folders in parallel, with each folder also supporting mcsqs parallel mode.
  • It runs the mcsqs search for a user-defined simulation time.
  • It prints the current progress and information directly to the console.

Only prerequisites are to have ATAT mcsqs and NumPy Python package!
Please see also my illustrative video for this function: https://youtu.be/wL5re3Fu1nQ
Thank you! I hope this feature will be useful to some, and if you spot any bugs, please don’t hesitate to contact me. :slight_smile:

Nice! I wonder if it would be doable to generate a directory structure in a format compatible with sqs2tdb -mk ?

Thanks for suggestion, I will take a look into it and see if I can make it work. :slight_smile: