Package: orb-analysis
Orb_analysisIntroductionAnalyzing 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.PurposeThe purpose of this package is to provide a python interface to analyze fragment calculations that can be performed using theAMS/ADFengine. 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 theplamspackage to interface with the AMS software. The package is tested with AMS2023.104.InstallationThere 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 withpip install -e .PyPI:pip install orb_analysisThe 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 thesetup configuration filefor a list of dependencies. I recommend usingcondato 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.ExampleTutorials covering key functionality can be found in theexample folder. Several scripts are available to show how the package works. The rkf files used in the examples can be downloaded fromhere.Thefirst scriptillustrates 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.Thesecond scriptillustrates 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, thethird scriptillustrates how to use the package from the command line. The script can be run from the command line withorb_analysisand 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 packageThe 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 fragmentsObtaining SFO overlap matrixObtaining MOs from the complexFormat SFOs, the and MOs in a tableFor the following types of fragment analysis calculations:Unrestricted and restricedFrozen cores ranging from "none" to "large"Fragments with the same symmetry as the complexFragments with symmetry, complex without symmetryNeither fragments nor complex with symmetryWith 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)DocsNot yet available.AuthorsSiebe Lekanne Deprez, PhD student at the Vrije Universiteit Amsterdam (VU) working in the theoretical chemistry department.LicenseThis package is licensed under theMIT License.How to citeLekanne Deprez, S.J., orb_analysis, 2023,https://github.com/SiebeLeDe/orbitalsHow to contributeEveryone 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!).DependenciesPlease visit therequirements filefor a list of dependencies. The whole package is written in a python environment and is compatible for python versions 3.10 and higher.Contact MeIf you wish to contact me, please do so by sending an email tomy mail adres, or by raising an issue on GitHub.FAQLet me know if there are questions so that I could include this further!