Skip to main content

A Python tool for visualizing atomic systems and properties of condensed matter.

Project description

XtraCrysPy

A Python tool for visualizing atomic systems and spatial properties of condensed matter.

Alt text Alt text

Alt text Alt text

Features:

  • Plot molecular systems with minimal setup
  • Plot systems from DFT or MD input/output files
  • Interact with the system to caluclate distances, angles, or receive atomic information
  • Display relaxation or MD steps from QE relax output or LAMMPS trajectory files. (CP2K xyz coming soon)
  • Display reciprocal space features
  • Plot real space iso-surfaces (charge density, etc)
  • Plot reciprocal iso-surfaces (Fermi surface, spin-texture, etc)

Supported File Types:

  • Quantum ESPRESSO input or output
  • POSCAR
  • CIF
  • XSF
  • CP2K
  • BXSF (coming soon)
  • Any ASE supported format

Requirements:

  • python 3.8
  • numpy 1.19
  • fury 0.8 (Use the latest GitHub commit. The latest release contains a bug with cylinder orientation used for drawing bonds.)
  • ase

Installation:

INSTALLATION NOTE: Use FURY master branch from GitHub. The latest release contains a bug causing misaligned cylinder orientation. (only use --user if you do not have permission to install python packages)

  • python setup.py install
  • python setup.py install --user

Control Inputs:

  • 'u' : Toggle UI visibility
  • 'a' : Toggle Axis visibility
  • 'b' : Toggle Boundary visiblity
  • '>' : Step forward in relax or MD
  • '<' : Step backward in relax or MD
  • CTRL + ('>' or '<') : Step 5% through the relaxation or MD steps
  • SHIFT + 'c' : Reset camera to default position
  • SHIFT + 's' : Take snapshot
  • CTRL + 'w' : Exit
  • Arrow Keys : Rotate model
  • SHIFT + Arrow Keys : Translate camera
  • CTRL + Arrow Keys (+ SHIFT) : Rotate (or Translate) in smaller steps

Display an atomic model from inputfile, with the examples/main.py script:

  • python main.py <input_file>
  • python main.py <input_file> <bond_distance>

Examples:

Available in the examples directory

From scratch:

  • python caffeine.py
  • python silicon_fcc.py

From inputfile (with main.py script):

  • python main.py <input_file>
  • python main.py <input_file> <bond_distance>

From inputfile (programmatic):

  • python SnTe_2D.py
  • python example_cif.py
  • python example_cp2k.py
  • python example_qe_in.py
  • python example_poscar.py

Relax QE outputfile:

  • python example_relax.py

LAMMPS MD trajectory:

  • python example_lammps_md.py

Charge Density:

  • python example_charge_density.py

Reciprocal Space:

  • python example_BZ.py

Fermi Surfaces:

  • python example_fermi_surface1.py
  • python example_fermi_surface2.py
  • python example_fermi_surface_clip.py
  • python example_colored_fermi_surface.py
  • python example_textured_fermi_surface_clip.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

XtraCrysPy-0.7.7.tar.gz (26.8 kB view details)

Uploaded Source

Built Distributions

XtraCrysPy-0.7.7-py3.9.egg (75.0 kB view details)

Uploaded Source

XtraCrysPy-0.7.7-py3-none-any.whl (31.6 kB view details)

Uploaded Python 3

File details

Details for the file XtraCrysPy-0.7.7.tar.gz.

File metadata

  • Download URL: XtraCrysPy-0.7.7.tar.gz
  • Upload date:
  • Size: 26.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 CPython/3.9.12

File hashes

Hashes for XtraCrysPy-0.7.7.tar.gz
Algorithm Hash digest
SHA256 4175f02452419e4e7f63bef6e48a06717b4824160a297ccada9a1ba000d6e0d0
MD5 f5647c62cca21d1338b50245b34f46c7
BLAKE2b-256 6d31294b85cde964e5fbcc8bcbb96d1179028a558307d6ff6858853f7fb1a3c3

See more details on using hashes here.

File details

Details for the file XtraCrysPy-0.7.7-py3.9.egg.

File metadata

  • Download URL: XtraCrysPy-0.7.7-py3.9.egg
  • Upload date:
  • Size: 75.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 CPython/3.9.12

File hashes

Hashes for XtraCrysPy-0.7.7-py3.9.egg
Algorithm Hash digest
SHA256 5ba5baab60cedc9eedf048b2428782d343df42edd1c1458396d3ae49649a9d89
MD5 220ddc436061e859c5a89fed2ea57743
BLAKE2b-256 7dc65dd790a858738db9717528d1a5cb59ce9cff4337835f262a8a772b6accf4

See more details on using hashes here.

File details

Details for the file XtraCrysPy-0.7.7-py3-none-any.whl.

File metadata

  • Download URL: XtraCrysPy-0.7.7-py3-none-any.whl
  • Upload date:
  • Size: 31.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 CPython/3.9.12

File hashes

Hashes for XtraCrysPy-0.7.7-py3-none-any.whl
Algorithm Hash digest
SHA256 be911b6f59be8c922b67755ceb631b5eac5e361898c7c20dc39a75db098713e4
MD5 71cf4ba7294c67680bf88870a16f730b
BLAKE2b-256 c8d6405af3db35bcc7c9e1af72245238da15b34adb073f097e653f271eae6a4f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page