Skip to content

A library for analyzing potential energy surfaces (PESs) and using the resulting PES descriptors for constructing forcefield parameters.

License

Notifications You must be signed in to change notification settings

nlesc-nano/auto-FOX

Repository files navigation

https://readthedocs.org/projects/auto-fox/badge/?version=latest https://codecov.io/gh/nlesc-nano/auto-FOX/branch/master/graph/badge.svg?token=7IgHsRDVdo

Automated Forcefield Optimization Extension

Auto-FOX is a library for analyzing potential energy surfaces (PESs) and using the resulting PES descriptors for constructing forcefield parameters. Further details are provided in the documentation.

Currently implemented

This package is a work in progress; the following functionalities are currently implemented:

  • The MultiMolecule class, a class designed for handling and processing potential energy surfaces. (1)
  • A multi-XYZ reader. (2)
  • A radial and angular distribution generator (RDF & ADF). (3)
  • A root mean squared displacement generator (RMSD). (4)
  • A root mean squared fluctuation generator (RMSF). (5)
  • Tools for describing shell structures in, e.g., nanocrystals or dissolved solutes. (6)
  • A Monte Carlo forcefield parameter optimizer. (7)

Using Auto-FOX

  • An input file with some basic examples is provided in the FOX.examples directory.
  • An example MD trajectory of a CdSe quantum dot is included in the FOX.data directory.
    • The absolute path + filename of aforementioned trajectory can be retrieved as following:
>>> from FOX import example_xyz
  • Further examples and more detailed descriptions are available in the documentation.

Installation

Anaconda environments

  • While not a strictly required, it stronly recomended to use the virtual environments of Anaconda.
  • Anaconda comes with a built-in installer; more detailed installation instructions are available for a wide range of OSs.
  • Anaconda environments can be created, enabled and disabled by, respectively, typing:
    • Create environment: conda create -n FOX -c conda-forge python pip
    • Enable environment: conda activate FOX
    • Disable environment: conda deactivate

Installing Auto-FOX

  • If using Conda, enable the environment: conda activate FOX
  • Install Auto-FOX with PyPi: pip install auto-FOX --upgrade
  • Congratulations, Auto-FOX is now installed and ready for use!

Optional dependencies

  • The plotting of data produced by Auto-FOX requires Matplotlib. Matplotlib is distributed by both PyPi and Anaconda:
    • Anaconda: conda install --name FOX -y -c conda-forge matplotlib
    • PyPi: pip install matplotlib
  • Construction of the angular distribution function in parallel requires DASK.
    • Anaconda: conda install -name FOX -y -c conda-forge dask
  • RDKit is required for a number of .psf-related recipes.
    • Anaconda: conda install -name FOX -y -c conda-forge rdkit
    • PyPi: pip install rdkit