Silicon carbide nanoparticles
One may use this package to create initial structures for nanoparticle simulations. By simulating these particles forward in time using molecular simulation techniques, one may investigate phenomena such as faceting of nanoparticles.
Creating input structures like in the paper linked above can be done by the following scripts, resulting in the systems pictured below each script:
from molecular_builder import create_bulk_crystal, carve_geometry, write
from molecular_builder.geometry import SphereGeometry
atoms = create_bulk_crystal("silicon_carbide_3c", [100, 100, 100])
geometry = SphereGeometry((50,50,50), 40)
carve_geometry(atoms, geometry, side="out")
write(atoms, "sphere.data")
write(atoms, "sphere.png", camera_dir=[3, 1, -1])
from molecular_builder import create_bulk_crystal, carve_geometry, write
from molecular_builder.geometry import CylinderGeometry
atoms = create_bulk_crystal("silicon_carbide_3c", [100, 100, 100])
geometry = CylinderGeometry([50,50,50], 20, 100, orientation=[1,0,1])
carve_geometry(atoms, geometry, side="out")
write(atoms, "cylinder.data")
write(atoms, "cylinder.png", camera_dir=[3, 2, -1])
from molecular_builder import create_bulk_crystal, carve_geometry, write
from molecular_builder.geometry import BoxGeometry
atoms = create_bulk_crystal("silicon_carbide_3c", [100, 100, 100])
geometry = BoxGeometry([50,50,50], [70,70,70])
carve_geometry(atoms, geometry, side="out")
write(atoms, "box.data")
write(atoms, "box.png", camera_dir=[3, 2, -1])
from molecular_builder import create_bulk_crystal, carve_geometry, write
from molecular_builder.geometry import OctahedronGeometry
atoms = create_bulk_crystal("silicon_carbide_3c", [100, 100, 100])
geometry = OctahedronGeometry(30, (50, 50, 50))
carve_geometry(atoms, geometry, side="out")
write(atoms, "octahedron.data")
write(atoms, "octahedron.png", camera_dir=[3, 1, -1])
from molecular_builder import create_bulk_crystal, carve_geometry, write
from molecular_builder.geometry import DodecahedronGeometry
atoms = create_bulk_crystal("silicon_carbide_3c", [100, 100, 100])
geometry = DodecahedronGeometry(30, (50, 50, 50))
carve_geometry(atoms, geometry, side="out")
write(atoms, "dodecahedron.data")
write(atoms, "dodecahedron.png", camera_dir=[3, 1, -1])