maintainers: | andrewtarzia |
---|---|
documentation: | https://cgexplore.readthedocs.io/en/latest/ |
cgexplore
or cgx
is a general toolkit built on
stk for constructing,
optimising and exploring molecular coarse-grained models.
Important
Warning: This package is still very much underdevelopment and many changes are expected.
cgexplore
can be installed with pip:
pip install cgexplore
With dependancies openmm:
mamba install openmm
Then, update directory structure in env_set.py
if using example code.
The library implements some analysis that uses Shape 2.1
. Follow the
instructions to download and installed at
Shape
To develop with cgexplore
, you can clone the repo and use
just and uv
to setup the dev environment:
just setup
To reproduce data in DOI:
`10.1039/D3SC03991A <https://doi.org/10.1039/D3SC03991A>`_:
Download the source code from first_paper_example - presubmission
release from Releases
.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 this
repository.
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 directory
cgexplore
contains the actual source code for the package. - The directory
first_paper_example
contains the code for 10.1039/D3SC03991A.generate_XX.py
generates cage structures for different topology setsenv_set.py
sets a specific environment for file outputsplot_XX.py
produces images and figures, and performs analysis
Important:
Warning: If you have a CUDA-capable GPU and attempt to use CUDA in the first example, you may getNaN
errors 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. Theplatform
can be handled through this argument inbuild_building_blocks
andbuild_populations
, which I currently set toNone
, meaningOpenMM
will decide for itself.
If you use cgexplore
, please cite this paper
TBD
and reference this URL
https://github.com/andrewtarzia/CGExplore
If you use our minimial model, please cite this paper
https://pubs.rsc.org/en/content/articlelanding/2023/sc/d3sc03991a
- Using stk for constructing larger numbers of coarse-grained models: Systematic exploration of accessible topologies of cage molecules via minimalistic models.
- Starships: TBD (starships_mar2025)
- Blind structure prediction: TBD (blind_oct2025)
Funded by the European Union - Next Generation EU, Mission 4 Component 1 CUP E13C22002930006 and the ERC under projects DYNAPOL.
This work is now developed as part of the Tarzia Research Group at the University of Birmingham.