Skip to main content

Derivative coupling calculation

Project description

https://readthedocs.org/projects/qmflows-namd/badge/?version=latest https://zenodo.org/badge/DOI/10.5281/zenodo.2576893.svg https://github.com/SCM-NV/nano-qmflows/workflows/build%20with%20conda/badge.svg https://codecov.io/gh/SCM-NV/nano-qmflows/branch/master/graph/badge.svg?token=L1W0fPrSUn https://badge.fury.io/py/nano-qmflows.svg

nano-qmflows

Nano-QMFlows is a generic python library for computing (numerically) electronic properties for nanomaterials like the non-adiabatic coupling vectors (NACV) using several quantum chemical (QM) packages.

One of the main problems to calculate (numerically) NACVs by standard QM software is the computation of the overlap matrices between two electronically excited states at two consecutive time-steps that are needed in the numerical differentiation to evaluate the coupling. This happens because most of these softwares are inherently static, i.e. properties are computed for a given structural configuration, and the computation of the overlap matrices at different times requires complicated scripting tools to handle input/outputs of several QM packages.

For further information on the theory behind nano-qmflows and how to use the program see the documentation.

Installation

Pre-compiled binaries are available on pypi and can be installed via pip install nano-qmflows on MacOS and Linux.

Building from source

Building Nano-QMFlows from source first requires an installation of Miniconda as is detailed here.

Then, to install the nano-qmflows library type the following commands inside the conda environment:

  • conda create -n qmflows -c conda-forge boost eigen libint==2.6.0 highfive

  • conda activate qmflows

  • pip install nano-qmflows --upgrade

Advantages and Limitations

nano-qmflows is based on the approximation that all excited states are represented by singly excited-state determinants. This means that the computation of the NACVs boils down to the computation of molecular orbitals (MOs) coefficients at given points of time using an electronic structure code and an overlap matrix S(t,t+dt) in atomic orbital basis (AO) computed between two consecutive time step. nano-qmflows main advantage is to use an internal module to compute efficiently the atomic overlap matrix S(t, t+dt) by employing the same basis-set used in the electronic structure calculation. In this way the QM codes are only needed to retrieve the MOs coefficients at time t and t+dt. This approach is very useful because the interfacing nano-qmflows to a QM code is reduced to writing a simple module that reads the MOs coefficients in the specific code format. At this moment, nano-qmflows handles output formats generated by CP2K, Orca, and Gamess, but, as said, it can be easily extended to other codes.

Finally, nano-qmflows can be also used in benchmarks studies to test new code developments in the field of excited state dynamics by providing a platform that uses all the functionalities of QMFlows, which automatizes the input preparation and execution of thousands of QM calculations.

In the near future, nano-qmflows is expected to offer new functionalities.

Interface to Pyxaid

nano-qmflows has been designed mostly to be integrated with Pyxaid, a python program that performs non-adiabatic molecular dynamic (NAMD) simulations using the classical path approximation (CPA). The CPA is based on the assumption that nuclear dynamics of the system remains unaffected by the dynamics of the electronic degrees of freedom. Hence, the electronic dynamics remains driven by the ground state nuclear dynamics. CPA is usually valid for extended materials or cluster materials of nanometric size.

In this framework, nano-qmflows requires as input the coordinates of a pre-computed trajectory (at a lower level or at the same level of theory) in xyz format and the input parameters of the SCF code (HF and DFT). nano-qmflows will then calculate the overlap matrix between different MOs by correcting their phase and will also track the nature of each state at the crossing seam using a min-cost algorithm . The NACVs are computed using the Hammes-Schiffer-Tully (HST) 2-point approximation and the recent Meek-Levine approach. The NACVs are then written in Pyxaid format for subsequent NAMD simulations.

Overview

The Library contains a C++ interface to the libint2 library to compute the integrals and several numerical functions in Numpy. While the scripts are set of workflows to compute different properties using different approximations that can be tuned by the user.

Worflow to calculate Hamiltonians for nonadiabatic molecular simulations

The figure represents schematically a Worflow to compute the Hamiltonians that described the behavior and coupling between the excited state of a molecular system. These Hamiltonians are used by thy PYXAID simulation package to carry out nonadiabatic molecular dynamics.

docs/_images/nac_worflow.png

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

nano-qmflows-0.13.2.tar.gz (185.3 kB view details)

Uploaded Source

Built Distributions

nano_qmflows-0.13.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

nano_qmflows-0.13.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.6 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

nano_qmflows-0.13.2-cp310-cp310-macosx_10_14_x86_64.whl (10.3 MB view details)

Uploaded CPython 3.10 macOS 10.14+ x86-64

nano_qmflows-0.13.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

nano_qmflows-0.13.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

nano_qmflows-0.13.2-cp39-cp39-macosx_10_14_x86_64.whl (10.3 MB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

nano_qmflows-0.13.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

nano_qmflows-0.13.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.6 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

nano_qmflows-0.13.2-cp38-cp38-macosx_10_14_x86_64.whl (10.3 MB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

nano_qmflows-0.13.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

nano_qmflows-0.13.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.6 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

nano_qmflows-0.13.2-cp37-cp37m-macosx_10_14_x86_64.whl (10.3 MB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

File details

Details for the file nano-qmflows-0.13.2.tar.gz.

File metadata

  • Download URL: nano-qmflows-0.13.2.tar.gz
  • Upload date:
  • Size: 185.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for nano-qmflows-0.13.2.tar.gz
Algorithm Hash digest
SHA256 823171b76adc78b4b385611f03992ce94ad187bf6ce46e615da997184040d8cd
MD5 7deb73ba47c0c6875bd6788cf4e707c4
BLAKE2b-256 7d52be7838f0d1802962a8406dc74de8121b9122d73643eda7cff53055fd2caf

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3ae9709ce91803c354a1bd4dce07ddf5ad530c356017aa038d5db3399c65d8a3
MD5 fe31f2fdd1a710467f389652dd7ec9a3
BLAKE2b-256 07d14f3f6472160746fdaec06a3bd3805d8f5c6be8413a3ff63128fe47d998e3

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 cb539a7016d1b910bdbe30f61509131854551bcff602fb2491ff314f5c43a7b0
MD5 02000e01c756f484cf1032cbc7d819b8
BLAKE2b-256 940ae40745731ad74ba20489cf8da14a8737b619e56d374011af8c20ec9ae8c3

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp310-cp310-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 c3c8d848f85d2bc6bdf2a2de81fd358abf6759710f4982e937bb8c22c5915861
MD5 2417def341bd30f27753407ad7f63dcc
BLAKE2b-256 70ae2ab7e2b93952eabb1db2c6e1d38333d1f8ec40351c91789c4b0463732c8d

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8583e17231c31124418695f1be514fa4a7981a672b22269d2e5b1cbf7ac716b2
MD5 237e6392e4e559968bd6c318aaf09852
BLAKE2b-256 45fd8e6018fbeec9e5dd1a6fb0e747a107c024bb5caa83cbe19c53d130ca6811

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 877b1ecaca54220975b991dd7e4ece0e49316cb4d8819c1e7792d1739b17d004
MD5 b67491d1f6232580e7f57359b15d22d7
BLAKE2b-256 2af3d39763f6a54aaf188048ae77eaeb2e08d3d3893706c9e075f8f405bab9fb

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 56a640bb197bfd90fc9b1d538b27c14c477c80bb5c0395696d70c1ee843fa1e7
MD5 f8792ee700a3a384e18f3d3597f2f5aa
BLAKE2b-256 f0537d9e9c099c4961469f942d843b4aa66288247f159d5c64d5b699b4516dec

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 532052cc3cb821304e568b697106cd52c35b805c32c2689b5ad247b37604828c
MD5 c00f44bb9293eb05f66b0fa90c4f5a49
BLAKE2b-256 13d125f222220a64eda79d00a5a617c153e715c3dfa00bce75dbf9db3b7bfb7c

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ca4054bf4e58c55123f668462ad9723adc2df96ebc7079ef367d3cb163ca1103
MD5 5c299e4ae089a54d58618aea53960775
BLAKE2b-256 378337ed4952f34d53e4cda3002ce3726e94dc2fcd4a95aa4a6f5d3e08ccab71

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 f6b9bf1543ebc2fb668ca015af8aa2fce8d4e263eab87bfb154e941c45241452
MD5 527084513cd806ccbd5abf83d23fc1f1
BLAKE2b-256 303c6f6867d00248921a1b7105debaff35fd4ec5cf5fbc46135d7250ff84777a

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 72b19079ead5a2885aa5c3ad48a7dbd625bcb15baa4c3d4b1622b932f8167f57
MD5 5bca876e69240cd7d8838bd22ebfdc15
BLAKE2b-256 722ccdea6786d8499ba924b7b8006af97cb95efa05840799bd680fa24a6409d0

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0be532d35065f1fd647b3a82052f654717c49ceae887c8622fd5d97b896d8712
MD5 b03768222e6f181cf632c454473ad383
BLAKE2b-256 a0be424309dde1ea4062fb0be989f70b6989a8cb757cc9be0ace80e8b78e8ebc

See more details on using hashes here.

Provenance

File details

Details for the file nano_qmflows-0.13.2-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for nano_qmflows-0.13.2-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e9763d08d715ec85f010ff2ce6afe9dab87b4758719674391568c47468c50c7a
MD5 53ae52d4a08bc1f94980a0f5baa72bb1
BLAKE2b-256 41941cec4032b5cff1d6d0dcb7ad3abfa592109e58040c6eb2458a7d78a4073f

See more details on using hashes here.

Provenance

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