Package: cgexplore
CGExploreA general toolkit for working with coarse-grained models.The library is built off ofstk, which comes with the pip installInstallationCGExploreis a library but contains an example library usage in thefirst_paper_exampledirectory. I recommend installing the library with the following instructions and then using the example directory in a separate repository or code base of your own.The code can be installed following these steps:Create acondaormambaenvironment:mamba create -n NAME python=3.11Activate the environment:conda activate NAMEInstallCGExplorewith pip:pip install cgexploreInstallOpenMMdocs:mamba install openmmorconda install -c conda-forge openmmInstallopenmmtoolsdocs:mamba install openmmtoolsorconda config --add channels omnia --add channels conda-forge
conda install openmmtoolsUpdate directory structure inenv_set.pyif using example code.The library implements some analysis that uses:Shape 2.1: Follow the instructions to download and installed atShapeDeveloper setupTo develop withCGExplore, replace step 3 above with these steps:cloneCGExplorefromhereFromCGExploredirectory usejustto install a dev environment with:just devUsageTo reproduce data in DOI:10.1039/D3SC03991A: Download the source code fromfirst_paper_example - presubmissionrelease fromReleasesinstead of the repo in step 1. I do not guarantee that running the example code on the current version will work. However, with each pull request a test is run as a GitHub Action connected to thisrepository. This ensures that the results obtained for a subset of the original data set do not change with changes to this library. Additionally, the naming convention has changed and force field xml files should provide the appropriate information for mapping angles to models.The directorycgexplorecontains the actual source code for the package.Warning: This package is still very much underdevelopment and many changes are expected.The directoryfirst_paper_examplecontains the code to generate the cages and data for DOI:10.1039/D3SC03991A. This series of examples uses the classes and tools inCGExplore. I would no longer recommend using it as a perfect example as many changes, including using databasing have been introduced without optimising these scripts.This testing repository is a good example.generate_XX.pygenerates cage structures for different topology setsenv_set.pysets a specific environment for file outputsplot_XX.pyproduces images and figures, and performs analysisWarning: If you have a CUDA-capable GPU and attempt to use CUDA in the first example, you may getNaNerrors due to the torsion restriction for angles at 180 degrees, which cause problematic forces. This will be handled in future versions of the code. And logically, I would suggest removing the torsion restriction for those angles. Theplatformcan be handled through this argument inbuild_building_blocksandbuild_populations, which I currently set toNone, meaningOpenMMwill decide for itself.How To CiteIf you useCGExploreplease cite:https://github.com/andrewtarzia/CGExploreandhttps://pubs.rsc.org/en/content/articlelanding/2023/sc/d3sc03991aAcknowledgementsThis work was completed during my time as a postdoc, and then research fellow in the Pavan group at PoliTO (https://www.gmpavanlab.com/).