diff --git a/README.md b/README.md index 43ad05e4..cd521184 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Ensemble Molecular Dynamics [![GitHub Actions Lint Status](https://github.com/wehs7661/ensemble_md/actions/workflows/lint.yaml/badge.svg)](https://github.com/wehs7661/ensemble_md/actions/workflows/lint.yaml) [![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://lbesson.mit-license.org/) -In this repository, we develop methods for running simulation ensembles, including ensemble of expanded ensemble and ensemble of alchemical metadynamics. The former is our main focus in our current phase, while the latter will be under development in the future. +**ensemble_md** is a Python package that provides methods for setting up, running, and analyzing molecular dynamics ensembles in GROMACS. The current implementation is mainly for synchronous ensemble of expanded ensemble (EXEE), but we will potentially develop methods like asynchronous EEXE, or ensemble of alchemical metadynamics. For installation instructions, theory overview, tutorials, and API references, please visit the [documentation](https://ensemble_md.readthedocs.io/). ### Copyright diff --git a/setup.py b/setup.py index b08f306f..2a49fe69 100644 --- a/setup.py +++ b/setup.py @@ -6,7 +6,7 @@ from setuptools import setup, find_packages import versioneer -short_description = "A repository for developing ensemble simulation methods".split("\n")[0] +short_description = "A package for setting up, performing, and analyzing molecular dynamics ensembles using GROMACS".split("\n")[0] # from https://github.com/pytest-dev/pytest-runner#conditional-requirement needs_pytest = {'pytest', 'test', 'ptr'}.intersection(sys.argv) @@ -30,6 +30,32 @@ version=versioneer.get_version(), cmdclass=versioneer.get_cmdclass(), license='MIT', + project_urls={ + "Documentation": "https://ensemble-md.readthedocs.io/", + "Source Code": "https://github.com/wehs7661/ensemble_md", + }, + keywords="molecular mechanics, free energy calculations, advanced sampling", + + # Describes the project using a list of classifiers (https://pypi.org/classifiers/) + # This makes the project more searchable. + classifiers=[ + "Intended Audience :: Science/Research", + "License :: OSI Approved :: MIT License", + "Operating System :: POSIX", + "Operating System :: MacOS :: MacOS X", + "Operating System :: Microsoft :: Windows ", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Topic :: Scientific/Engineering", + "Topic :: Scientific/Engineering :: Bio-Informatics", + "Topic :: Scientific/Engineering :: Chemistry", + "Topic :: Scientific/Engineering :: Physics", + "Topic :: Software Development :: Libraries :: Python Modules", + ], # Which Python importable modules should be included when your package is installed # Handled automatically by setuptools. Use 'exclude' to prevent some specific @@ -54,11 +80,11 @@ }, # Additional entries you may want simply uncomment the lines you want and fill in the data - # url='http://www.my_package.com', # Website + # url='https://github.com/wehs7661/ensemble_md', # Website # Required packages, pulls from pip if needed; do not use for Conda deployment install_requires=[ - 'nummpy', + 'numpy', 'natsort', 'argparse', 'pymbar>=4.0.1', @@ -68,11 +94,27 @@ 'matplotlib', 'pyemma', ], - # platforms=['Linux', - # 'Mac OS-X', - # 'Unix', - # 'Windows'], # Valid platforms your code works on, adjust to your flavor - # python_requires=">=3.5", # Python version restrictions + + # The following extra_require directive provides optional dependencies by, in our case, pip install ensemble[gmxapi]. + # ensemble_md requires GROMACS and gmxapi to be installed before use. + # If a working version of GROMACS is available, the user can choose to install ensemble_md along with gmxapi + # using the following command: `pip install ensemble_md[gmxapi]`. Otherwise, follow installation + # instructions of GROMACS and gmxapi to install each package separately. + extras_require={ + 'gmxapi': [ + 'pybind11>=2.6', + 'setuptools>=42.0', + 'mpi4py', + 'gmxapi>=0.4.0rc2' + ], + }, + + platforms=['Linux', + 'Mac OS-X', + 'Unix', + 'Windows'], # Valid platforms your code works on, adjust to your flavor + + python_requires=">=3.8", # Python version restrictions # Manual control if final package is compressible or not, set False to prevent the .egg from being made # zip_safe=False,