PyFraME: Python tools for Fragment-based Multiscale Embedding

PyFraME: Python tools for Fragment-based Multiscale Embedding calculations

Copyright (C) 2017-2018 Jógvan Magnus Haugaard Olsen

PyFraME is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PyFraME is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with PyFraME. If not, see https://www.gnu.org/licenses/.

Description

PyFraME is a Python package that provides tools for setting up fragment-based multiscale embedding calculations. The aim is to provide tools that can automatize the workflow of such calculations in a flexible manner.

The typical workflow is as follows:

1. a part of the total molecular system is chosen as the core region which is typically treated a high level of theory
2. the remainder is split into a number of regions each of which can be treated at different levels of theory
3. each region (except the core) is divided into fragments that consist of either small molecules or parts of larger molecules that have been fragmented into smaller computationally manageable fragments
4. a calculation is run on each fragment to obtain fragment parameters (if necessary)
5. all fragment parameters of all regions are assembled and constitute the embedding potential
6. a final calculation is run on the core region using the embedding potential to model the effect from the remainder of the molecular system

The PyFraME package can be used to automatize steps 1-5.

How to cite

To cite PyFraME please use a format similar to the following

"J. M. H. Olsen, PyFraME: Python tools for Fragment-based Multiscale Embedding (version 0.2.0), 2018, https://doi.org/10.5281/zenodo.1443314"

where the version and DOI should correspond to the actual version that was used. Note that the DOI 10.5281/zenodo.775113 represents all versions, and will always resolve to the latest one. A possible BibTeX entry can be found in the CITATION file.

Alternatively, BibTeX and other formats can be generated by Zenodo.

Requirements

To use PyFraME you need:

For certain functionality you will need one or more of the following:

To run the test suite you need:

Installation

The source can be downloaded from GitLab or Zenodo, or installed directly from PyPI, as follows

pip install pyframe


To clone the repository, run the following command

git clone https://gitlab.com/FraME-projects/PyFraME.git


The package can then be installed by typing

python setup.py install


from the PyFraME root directory. You may wish to add --user in the last line if you do not have root access / sudo rights. Note that this will install NumPy and Numba if they are not installed already.

Testing

To execute the full test suite (unit tests and integration tests) run

pytest


from the PyFraME root directory, or, if you installed from PyPI, the unit tests can be executed by typing

pytest --pyargs pyframe


Project details

Uploaded source
Uploaded py3