I have been unable to find software for making surface calculations, so I currently perform surface calculations in LAMMPS by creating crystal structures in python, before rotating and cutting them into slabs then simulating. However, whilst trying to perform surface calculations on FePt L1$_0$ my python code wasn't rotating the crystal structure correctly. Trying to solve this issue is significantly slowing down my work, and I'm sure there is a better way of doing it.

What software is generally the best to use, what software or methods do you use?

For reference, I am using MEAM potentials for my calculations (it's a comparative study, doesn't have to be completely accurate), and all I really need is something which can make slabs and setup simulations in LAMMPS. Even just making the slabs is good enough, I'm happy porting it over to LAMMPS. To clarify, I am happy for any suggestion that covers:

  1. A program that can generate structures for input to LAMMPS only.
  2. A program that can generate structures and interface with LAMMPS itself.
  3. A program that can generate structures and performs calculations with its own code. For the above problem said program must be able to use MEAM potentials.

Although I have given my own problem in detail, I think it could be worthwhile listing almost anything that you personally use, or have used, so the community can use this post as a reference. When I have solved my own code's problems I will come back and list it as a github repo/ python package.

  • 2
    $\begingroup$ What kind of things do you want to calculate? What level of theory do you usually employ? $\endgroup$
    – Ian Bush
    Dec 3, 2021 at 20:45
  • $\begingroup$ just posted in SciComp SE: Trying to move some of my scipy/numpy calculation to GPU, how to avoid disappointing results? $\endgroup$
    – uhoh
    Dec 4, 2021 at 0:07
  • $\begingroup$ @IanBush I have added more information to the question, hopefully that helps you or anyone else answer it! $\endgroup$
    – Connor
    Dec 4, 2021 at 15:03
  • 2
    $\begingroup$ It sounds like your problem is not the calculation itself, but the generation of the proper model/geometry for the input. Can you clarify that? $\endgroup$
    – Greg
    Dec 4, 2021 at 17:24
  • $\begingroup$ @Greg Hopefully the clarification at the bottom gives some insight into what I'm driving at here. The calculation is not really the issue, I am aware of methods used to perform them in LAMMPS, however any software recommendation that could streamline my current process would be very helpful. $\endgroup$
    – Connor
    Dec 4, 2021 at 21:16

2 Answers 2



Creating surface based on Miller indices is tough work if it is not cubic lattice. for example $\langle011\rangle$ direction and $(011)$ plane normal in case of $c>a$ is not same. So, in case you are trying to create orthogonal simulation box, you may end up in a situation where orthogonal box is quite large or periodicity is not found. Dependency of software is another challenge, whether it is correctly finding the surface or not. I normally do these thing manually in OVITO by slicing and cutting.

Create a cubic lattice with a specific crystal orientation Another software solution you can check is atomsk.

atomsk --create bcc 2.85 Fe orient [121] [-101] [1-11] lmp

Or you can rotate using specific angle such as

atomsk --create bcc 2.85 Fe -rotate z 45 -rotate y 35 -orthogonal-cell lmp

Or you can feed LAMMPS data file and rotate it by Euler angle, Even though I prefer to do things manually in OVITO.


The Atomic Simulation Environment can generate surfaces and run LAMMPS.

  • $\begingroup$ Thanks for adding an answer, but try to avoid link-only answers to prevent cases where a link dies and an answer effectively disappears. Could you briefly summarize the info you are intending to convey from the links? $\endgroup$
    – Tyberius
    Jan 11, 2022 at 18:10
  • $\begingroup$ Here's an example of a software-recommendations question in which people recommend software in their answers: it can be helpful to provide a sample input file/instructions and example output file (like some of these answers did) or to list advantages and disadvantages over other software (like my answer did): mattermodeling.stackexchange.com/q/4501/5 $\endgroup$ Jan 11, 2022 at 21:46
  • $\begingroup$ Thanks guys, will improve the answer when I find the time. $\endgroup$ Jan 11, 2022 at 21:56

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .