I am looking for open-source software that could help me to build Heterostructure models visually, I've been working with BIOVIA Materials Studio before, but I got no valid license now, so I'd like to find some open-source alternative that works like BIOVIA Materials Studio. I tried the VESTA program, but it needs a lot of manual work to build a valid model for DFT calculation.
Any recommendation is welcome.

For example, in Materials studio, when creating a slab, I could set the parameter of HKL and thickness, then I could get the result, but in VESTA, I need to set some kind of transformation matrix and delete some atoms manually.

enter image description here

  • 1
    $\begingroup$ I think it depends a bit on what you mean. Maybe you can include some screenshots or images of what you're trying to build? $\endgroup$ Jan 4 at 0:44
  • $\begingroup$ Maybe if you could give an idea what BIOVIA was able to do for you, we could supply some assistance. ASE probably does this but not fully in GUI. $\endgroup$ Jan 7 at 17:08
  • $\begingroup$ @TristanMaxson. I added some explanations about my thoughts. $\endgroup$
    – Jack
    Jan 7 at 17:14
  • $\begingroup$ Check out the LatticeMixer web-app latticemixer.com Here is a video showing it's demonstration: youtube.com/watch?v=OKRRmAPyX7w $\endgroup$ Jun 29 at 0:52

1 Answer 1


Not a fully GUI solution but if we can assume you get a primitive cell to work with, Atomic Simulation Environment can generate your surface.

For some extra spice, its common to want to make root surfaces such as $\sqrt{2}$x$\sqrt{2}$, so I included a final step which will do this assuming there is a valid $\sqrt{2}$x$\sqrt{2}$ to make. There is also a root_surface_analysis function if you are working with an unknown cell.

from ase.build import surface, root_surface
from ase.io import read
from ase.visualize import view

filename = "primitive.POSCAR"
layers = 4
miller = (1, 0, 0)
root = 2

atoms = read(filename)
surf = surface(atoms, miller, layers)


root_surf = root_surface(surf, root)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.