the package can be used for analysing fragment calculations with the AMS software package
Project description
Orb_analysis
Introduction
Analyzing molecular orbital (MO) diagrams and plotting these orbitals can be a tedious task and may require many hours spent replotting orbitals to your liking. For example, you first have to find relevant symmetrized fragment orbitals (SFOs) that form MOs. Often certain data is crucial such as the orbital energy, gross populations and HOMO/LUMO (highest occupied molecular orbital / lowest unoccupied molecular orbital) indices. Consequentially, the user needs to make pictures of the SFOs / MOs, apply the correct energy scaling, and finalize MO diagrams. This can be made much more efficient by having a python interface to automate analysis and visualization, making it much more enjoyable and clearer to analyze the results of your calculations.
Purpose
The purpose of this package is to provide a python interface to analyze fragment calculations that can be performed using the AMS / ADF engine. This package may also be useful for other type of calculations, but is not guaranteed to work. The package is written in python and uses the plams package to interface with the AMS software. The package is tested with AMS2023.104.
Installation
There are several ways to install the python package:
- Locally: first clone the github page and move to the directory. Then install it locally in your python environment with
pip install -e .
- PyPI:
pip install orb_analysis
The required python environment is taken care of by the package manager. Note that you should have a working python environment with the required dependencies installed. See the setup configuration file for a list of dependencies. I recommend using conda to manage your python environment with python version 3.10 or higher.
Furthermore, please make sure that you have the AMS software installed and that the amsview and amsreport programs are available in your path. The package is tested with AMS2023.204.
Example
Tutorials covering key functionality can be found in the example folder. Several scripts are available to show how the package works. The rkf files used in the examples can be downloaded from here.
- The first script illustrates how to obtain volume files from .t21 result files from the AMS ADF engine. The .adf.rkf are read in, and the voluma maps are generated by a plams.DensfJob implementation. Presets are made for easy-accessible settings.
- The second script illustrates how to analyze fragment calculations consisting of multiple fragments and a complex. The script will ask for the location of the .adf.rkf file, and ask for the desired MOs to plot with the desired irrep and spin. The script will then generate a table with the symmetrized fragment orbitals (SFOs), SFO overlap matrix, and the molecular orbitals (MOs)
- When installing the package using PyPI, the third script illustrates how to use the package from the command line. The script can be run from the command line with
orb_analysis
and associated arguments. The script will ask for the location of the .adf.rkf file, and ask for the desired MOs to plot with the desired irrep and spin. The script will then generate a table with the symmetrized fragment orbitals (SFOs), SFO overlap matrix, and the molecular orbitals (MOs)
Extent of the package
The package is currently in development and is not yet fully functional. The following functionality is currently available:
- Reading in .adf.rkf files and selecting orbitals based on homo/lumo range, irrep, and spin.
- Obtaining SFOs from all fragments
- Obtaining SFO overlap matrix
- Obtaining MOs from the complex
- Format SFOs, the and MOs in a table
For the following types of fragment analysis calculations:
- Unrestricted and restriced
- Frozen cores ranging from "none" to "large"
- Fragments with the same symmetry as the complex
- Fragments with symmetry, complex without symmetry
- Neither fragments nor complex with symmetry
- With and without relativistic corrections (only tested for scalar ZORA and no corrections)
The following functionality is currently not available:
-
Fragments with different symmetry as the complex
-
[...] (more to come)
Docs
Not yet available.
Authors
Siebe Lekanne Deprez, PhD student at the Vrije Universiteit Amsterdam (VU) working in the theoretical chemistry department.
License
This package is licensed under the MIT License.
How to cite
Lekanne Deprez, S.J., orb_analysis, 2023, https://github.com/SiebeLeDe/orbitals
How to contribute
Everyone is welcome to contribute to this project. Please do so by making a pull request and/or raising an issue. Preferably, please use the Google Python Style Guide and the Google docstring style when writing code (including docstrings!).
Dependencies
Please visit the requirements file for a list of dependencies. The whole package is written in a python environment and is compatible for python versions 3.10 and higher.
Contact Me
If you wish to contact me, please do so by sending an email to my mail adres, or by raising an issue on GitHub.
FAQ
Let me know if there are questions so that I could include this further!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file orb_analysis-0.1.2.tar.gz
.
File metadata
- Download URL: orb_analysis-0.1.2.tar.gz
- Upload date:
- Size: 27.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d90b7b2cefb174ba6d4c60953d550609e88229d509897ed7222e5e580e33e4b5 |
|
MD5 | 20ec8417b09dc9d086cf2330db4f6d0d |
|
BLAKE2b-256 | b305417cc912f0512c043fbfbab1833a4552aac596a620e523e87051a9fde39f |
File details
Details for the file orb_analysis-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: orb_analysis-0.1.2-py3-none-any.whl
- Upload date:
- Size: 25.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93b9facd84a9a05bf7312861f688b7a6ab8ead6807b8339493289d3fb98c746c |
|
MD5 | 3e60d297790df73593a475c769091897 |
|
BLAKE2b-256 | 7c6ab02b20bfffe54bd398a85fb4def2d8a7a7f985189ebf6342ee8db8ae335b |