Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementation of eRMSD (AA), eRMSD (CG) and RMSD (Kabsch) [all unweighted] #321

Merged
merged 45 commits into from
Jun 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
9aeee2b
Implementating and testing eRMSD: cv for RNA folding
yihengwuKP May 9, 2024
44075a8
fixing line too long and imported but unused issues
yihengwuKP May 10, 2024
6570c90
quick fixes of line too long
yihengwuKP May 10, 2024
7fb2fba
Implement inferring C2/4/6 position and eRMSD CG
yihengwuKP May 15, 2024
6e8b52e
quick fixes of imported but unused issues
yihengwuKP May 15, 2024
7c99511
add automatic test for ermsd_cg
yihengwuKP May 15, 2024
c409efd
getting rid of debug printing lines
yihengwuKP May 22, 2024
4a743d3
Implementation of RMSD by Kabsch Algorithm
yzjin May 24, 2024
91f89cc
fix weight and matrix issues and implement testing
yihengwuKP May 24, 2024
4897383
remove the unused barycenter
yzjin May 24, 2024
b2792a4
fix the path issue with pytest
yihengwuKP May 24, 2024
741f2e2
properly format the pytest script
yihengwuKP May 24, 2024
3bc765e
Pin scipy version
pabloferz May 23, 2024
b2db2c2
Compat option for jax devices
pabloferz May 23, 2024
293fbb7
fixing documentation
yihengwuKP May 24, 2024
fbe906d
Compat option for jax devices (#320)
pabloferz May 25, 2024
bc9c4c4
add tetraloop pdb for testing
yihengwuKP May 26, 2024
da51463
[pre-commit.ci] pre-commit autoupdate (#322)
pre-commit-ci[bot] May 28, 2024
ec7adef
get rid of jit_compile=False for debugging
yihengwuKP May 28, 2024
23ea580
add class argument to indicate the rotation algo
yihengwuKP May 30, 2024
0f741dd
change the class name to RMSD in doc
yihengwuKP May 30, 2024
98a1420
use mask trick to prevent diverging derivatives
yihengwuKP Jun 1, 2024
c4b98b7
remove the unused import jax
yihengwuKP Jun 1, 2024
3617776
Change bounds on numpy version
pabloferz Jun 7, 2024
8ca55a4
Bound gsd version
pabloferz Jun 7, 2024
1ae6498
Implementating and testing eRMSD: cv for RNA folding
yihengwuKP May 9, 2024
fb865a9
fixing line too long and imported but unused issues
yihengwuKP May 10, 2024
876ef0f
quick fixes of line too long
yihengwuKP May 10, 2024
644f13f
Implement inferring C2/4/6 position and eRMSD CG
yihengwuKP May 15, 2024
d4b1639
quick fixes of imported but unused issues
yihengwuKP May 15, 2024
7d17183
add automatic test for ermsd_cg
yihengwuKP May 15, 2024
3c05314
getting rid of debug printing lines
yihengwuKP May 22, 2024
eb33025
Implementation of RMSD by Kabsch Algorithm
yzjin May 24, 2024
b311377
fix weight and matrix issues and implement testing
yihengwuKP May 24, 2024
95e5f23
remove the unused barycenter
yzjin May 24, 2024
3f39a75
fix the path issue with pytest
yihengwuKP May 24, 2024
00bac8a
properly format the pytest script
yihengwuKP May 24, 2024
0033d81
fixing documentation
yihengwuKP May 24, 2024
a7d5b73
add tetraloop pdb for testing
yihengwuKP May 26, 2024
711e09d
get rid of jit_compile=False for debugging
yihengwuKP May 28, 2024
f73fdc6
add class argument to indicate the rotation algo
yihengwuKP May 30, 2024
95c5d72
change the class name to RMSD in doc
yihengwuKP May 30, 2024
938f1ce
use mask trick to prevent diverging derivatives
yihengwuKP Jun 1, 2024
e38761e
remove the unused import jax
yihengwuKP Jun 1, 2024
ac5a9ad
Merge branch 'ermsd' of github.com:yihengwuKP/PySAGES into ermsd
yihengwuKP Jun 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
- name: Install python dependecies
run: |
python -m pip install --upgrade pip
pip install ase dill "dm-haiku<0.0.11" "e3nn-jax!=0.20.4" "jax<=0.4.15" "jaxlib<=0.4.15" "jax-md>=0.2.7" jaxopt pytest matplotlib
pip install ase dill "dm-haiku<0.0.11" "e3nn-jax!=0.20.4" "jax<=0.4.15" "jaxlib<=0.4.15" "jax-md>=0.2.7" jaxopt pytest matplotlib "scipy<1.13"

- name: Install pysages
run: pip install .
Expand Down
32 changes: 32 additions & 0 deletions .github/workflows/docker-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,38 @@ jobs:
docker load --input /tmp/pysages.tar
docker run -t pysages bash -c "cd PySAGES/examples/openmm/cv_pucker && python3 ./unbiased.py && python3 ./check_pucker.py"

cv-ermsd-openmm-unbiased:
runs-on: ubuntu-latest
needs: build
steps:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: pysages
path: /tmp
- name: Load and run test
run: |
docker load --input /tmp/pysages.tar
docker run -t pysages bash -c "cd PySAGES/examples/openmm/cv_ermsd/ermsd && python3 ./unbiased.py && python3 ./check_ermsd.py"

cv-ermsd-cg-openmm-unbiased:
runs-on: ubuntu-latest
needs: build
steps:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: pysages
path: /tmp
- name: Load and run test
run: |
docker load --input /tmp/pysages.tar
docker run -t pysages bash -c "cd PySAGES/examples/openmm/cv_ermsd/ermsd_cg && python3 ./unbiased.py && python3 ./check_ermsd.py"

alanine-dipeptide-string:
runs-on: ubuntu-latest
needs: build
Expand Down
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
repos:
- repo: https://github.com/mwouts/jupytext
rev: v1.15.2
rev: v1.16.2
hooks:
- id: jupytext
args: [--sync]
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ FROM ssages/pysages-openmm
WORKDIR /

RUN python -m pip install --upgrade pip
RUN python -m pip install ase dill gsd matplotlib "pyparsing<3"
RUN python -m pip install ase dill "gsd<3.3" matplotlib "pyparsing<3"

# Install JAX and JAX-based libraries
RUN python -m pip install --upgrade "jax[cuda]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile-base
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ RUN apt-get update && apt-get install -y doxygen swig nvidia-cuda-dev nvidia-cud

# Install python dependencies
RUN python -m pip install --upgrade pip
RUN python -m pip install 'numpy==1.22.4'
RUN python -m pip install "numpy<2"
RUN env MPICC=$(which mpicc) python -m pip install mpi4py

ENV CC=gcc-8
Expand Down
1 change: 1 addition & 0 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
furo
jaxlib
myst-parser
scipy<1.13
setuptools-scm
sphinx
sphinx-copybutton
Expand Down
16 changes: 16 additions & 0 deletions docs/source/module-pysages-colvars-orientation.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Orientation as collective variables
------------------------------------

.. rubric:: Overview

.. autosummary::

pysages.colvars.orientation.RMSD
pysages.colvars.orientation.ERMSD
pysages.colvars.orientation.ERMSDCG

.. rubric:: Details

.. automodule:: pysages.colvars.orientation
:synopsis: Python classes Orientation collective variables.
:members:
4 changes: 4 additions & 0 deletions docs/source/module-pysages-colvars.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ Collective Variables available in PySAGES
pysages.colvars.coordinates.Component
pysages.colvars.coordinates.Distance

pysages.colvars.orientation.ERMSD
pysages.colvars.orientation.ERMSDCG

Abstract base classes

.. autosummary::
Expand All @@ -37,6 +40,7 @@ Abstract base classes
module-pysages-colvars-shape
module-pysages-colvars-coordinates
module-pysages-colvars-core
module-pysages-colvars-orientation

.. automodule:: pysages.colvars
:synopsis: Python classes for collective variables.
Expand Down
13 changes: 13 additions & 0 deletions docs/source/pysages_wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -83,3 +83,16 @@ workflow
xy
xz
yz
eRMSD
RMSD
Kabsch
Bottaro
Palma
Bussi
Pyrimidines
cartesian
xyz
unitless
nm
nucleotides
nt
2 changes: 1 addition & 1 deletion examples/Advanced_Sampling_Introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.15.2
jupytext_version: 1.16.2
kernelspec:
display_name: Python 3
name: python3
Expand Down
2 changes: 1 addition & 1 deletion examples/Install_PySAGES_Environment.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.15.2
jupytext_version: 1.16.2
kernelspec:
display_name: Python 3
name: python3
Expand Down
2 changes: 1 addition & 1 deletion examples/hoomd-blue/ann/Butane_ANN.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.15.2
jupytext_version: 1.16.2
kernelspec:
display_name: Python 3
name: python3
Expand Down
2 changes: 1 addition & 1 deletion examples/hoomd-blue/cff/Butane_CFF.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.15.2
jupytext_version: 1.16.2
kernelspec:
display_name: Python 3
name: python3
Expand Down
2 changes: 1 addition & 1 deletion examples/hoomd-blue/funn/Butane_FUNN.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.15.2
jupytext_version: 1.16.2
kernelspec:
display_name: Python 3
name: python3
Expand Down
2 changes: 1 addition & 1 deletion examples/hoomd-blue/harmonic_bias/Harmonic_Bias.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.15.2
jupytext_version: 1.16.2
kernelspec:
display_name: Python 3
name: python3
Expand Down
2 changes: 1 addition & 1 deletion examples/hoomd-blue/spectral_abf/Butane-SpectralABF.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.15.2
jupytext_version: 1.16.2
kernelspec:
display_name: Python 3
language: python
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.15.2
jupytext_version: 1.16.2
kernelspec:
display_name: Python 3
name: python3
Expand Down
Loading
Loading