Sophia Tang
Initial commit with LFS
7efee70

EntangledSBM for Transition Path Sampling ⚛️

This part of the code is for running the transition path sampling (TPS) experiments. We demonstrate that EntanlgedSBM generates physically plausible transition paths for fast-folding proteins at an all-atom resolution. This codebase is partially built off of the TPS-DPS repo.

Environment Installation

conda env create -f environment.yml

conda activate entangled-tps

Running Experiments

All training scripts are located in entangled-tps/scripts/. Each script is pre-configured for a specific experiment.

Before running experiments:

  1. Set HOME_LOC to the base path where EntangledSBM is located and ENV_PATH to the directory where your environment is downloaded in the .bash files in scripts/
  2. Replace /path/to/your/home to the base path where EntangledSBM is located in the .slurm files in scripts/
  3. Create a path entangled-tps/results where the simulated trajectory figures and metrics will be saved. Also, create entangled-tps/logs where the training logs will be saved.
  4. Activate the conda environment:
conda activate entangled-tps
  1. Login to wandb using wandb login

Run experiment using nohup with the following commands:

cd entangled-tps/scripts

chmod aldp.sh

nohup ./aldp.sh > aldp.log 2>&1 &

Run experiment using slurm with the following commands:

cd entangled-tps/scripts

sbatch aldp.slurm

Evaluation will run automatically after each sampling step and logged with wandb.

We report the following metrics in our paper:

  1. Root-Mean Squared Distance (RMSD) of the Kabsch-aligned coordinates averaged across 64 paths.
  2. Percentage of simulated trajectories that hit the target state (THP)
  3. Highest energy transition state along the biased trajectories averaged across the trajectories that hit the target (ETS; kJ/mol)

Overview of Outputs

Training outputs are saved to experiment-specific directories:

entangled-tps/results/
├── aldp_ce/
│   └── positions/         # Generated trajectory
│   └── paths.png          # Figure of simulated trajectories
│   └── policy.pt          # Model checkpoint

Training logs are saved in:

entangled-tps/logs/
├── <DATE>_entangled-aldp-ce.log
├── <DATE>_entangled-chignolin-ce.log
├── <DATE>_entangled-trpcage-ce.log
└── <DATE>_entangled-bba-ce.log