Source code for pymatgen.io.prismatic

# coding: utf-8
# Copyright (c) Pymatgen Development Team.
# Distributed under the terms of the MIT License.

"""
Write Prismatic (http://prism-em.com/) input files.
"""


[docs]class Prismatic: """ Class to write Prismatic (http://prism-em.com/) input files. This is designed for STEM image simulation. """ def __init__(self, structure, comment="Generated by pymatgen"): """ Args: structure: pymatgen Structure comment (str): comment """ self.structure = structure self.comment = comment
[docs] def to_string(self): """ Returns: Prismatic XYZ file. This is similar to XYZ format but has specific requirements for extra fields, headers, etc. """ l = self.structure.lattice lines = [self.comment, "{} {} {}".format(l.a, l.b, l.c)] for site in self.structure: for sp, occu in site.species.items(): lines.append( "{} {} {} {} {} {}".format( sp.Z, site.coords[0], site.coords[1], site.coords[2], occu, site.properties.get("thermal_sigma", 0), ) ) lines.append("-1") return "\n".join(lines)