Skip to main content

Package for visualizing atomic orbitals

Project description

atorvi - ATomic ORbitals VIsualization

License: MIT

atorvi is a Python package for visualizing individual atomic orbitals and their various linear combinations. The library generates requested atomic orbitals on a 3D mesh and exports them, along with the inputted crystal structure (molecule or periodic crystal), into a file in XCrysDen .xsf format.

The resulting .xsf file can be opened and visualized using your favorite visualization software, such as XCrysDen, VESTA or VMD.

Installation

To install atorvi, you can use pip:

pip install atorvi

Features

  • Atomic Orbitals Generation: Create atomic orbitals at a specific position in space or at a designated atom/element within a crystal structure.

  • Flexible Structure Input: Input crystal structures either manually, atom-by-atom, or directly from standard file formats such as POSCAR, XSF, CIF, and more. The integration with the pymatgen package simplifies structure handling.

  • Orbital Hybridization: Implement orbital hybridization by mixing different orbitals with custom coefficients, allowing for the exploration of complex bonding interactions.

  • Orbital Squared Moduli: Generate squared moduli of orbitals, providing insight into their spatial distribution and probability densities.

Examples of orbitals generated with atorvi: could be found in examples folder.

Quick start

The full user manual is available in docs/atorvi_manual.md.

atorvi can be used in two modes: package mode (for scripting and notebooks) and CLI interactive mode (only basic functionality is available).

1.Package Mode

In your Python script or Jupyter notebook, you can generate and visualize atomic orbitals with the following example:

import atorvi

# Example: visualize a d_{3z^2-r^2} orbital for an Ni atom (Z = 28)
outfile = atorvi.OrbitalFile("Ni_orbital.xsf")

outfile.add_orbital("d_{3z^2-r^2}", position=[0, 0, 0], znumber=28)

outfile.write_data()

Then just open the Ni_orbital.xsf file in your favorite visualization software.

The orbitals available for generation are: $$s$$ $$p_z, p_x, p_y$$ $$d_{3z^2-r^2}, d_{xz}, d_{yz}, d_{xy}, d_{x^2-y^2} $$ $$f_{z^3}, f_{xz^2}, f_{yz^2}, f_{xyz}, f_{z(x^2-y^2)}, f_{x(x^2-3y^2)}, f_{y(3x^2-y^2)}$$

print(atorvi.supported_orbitals)

['s', 
'p_z', 'p_x', 'p_y', 
'd_{3z^2-r^2}', 'd_{xz}', 'd_{yz}', 'd_{xy}', 'd_{x^2-y^2}', 
'f_{z^3}', 'f_{xz^2}', 'f_{yz^2}', 'f_{xyz}', 'f_{z(x^2-y^2)}', 'f_{x(x^2-3y^2)}', 'f_{y(3x^2-y^2)}']

2. CLI Interactive Mode

atorvi also offers an interactive mode via the command line interface (CLI). You can simply run the script directly in a terminal:

atorvi_cli

Follow the prompts to generate orbitals and export them to XCrysDen-compatible formats.

Once the file is generated, you can open it using visualization tools like XCrysDen or VESTA.

Author

atorvi is developed and maintained by Dmitry Korotin. Contributions, suggestions, and feedback are welcome to help improve the project.

License

atorvi is released under the MIT License. You are free to use, modify, and distribute the software, provided that the original copyright and permission notice are included in all copies or substantial portions of the software.

The author kindly asks that you cite this GitHub repository github.com/dkorotin/atorvi and the related paper (link will be available soon) in any publications that use images or data generated with the atorvi package.

For more details, refer to the full MIT License.

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

atorvi-0.1.1.tar.gz (14.2 kB view details)

Uploaded Source

Built Distribution

atorvi-0.1.1-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file atorvi-0.1.1.tar.gz.

File metadata

  • Download URL: atorvi-0.1.1.tar.gz
  • Upload date:
  • Size: 14.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.10

File hashes

Hashes for atorvi-0.1.1.tar.gz
Algorithm Hash digest
SHA256 1f30787a41dbb83601f6dc86d965ff0f29e84543065b5d1f46bee9fb84df368e
MD5 b043bbd0e2300e688a642cdc2af2f2ac
BLAKE2b-256 c212f621fc0867a45b3eac18b8b93196345a1cf9323ea6e70018b6ec677226cb

See more details on using hashes here.

File details

Details for the file atorvi-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: atorvi-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.10

File hashes

Hashes for atorvi-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f8ff0b00cdffd8e0c5d5c5f8f0a3a04b58c993988020e81da5a18b86bd1b789d
MD5 66300dedb163b22af74ffe9e0ebbd75f
BLAKE2b-256 70e2eb3c48f340c0795a2f6bde1ded492e3c0221c5de1f56ffb370270a09f34c

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