From 35b8817b33f7881af028f89b330b0b4b27b26f01 Mon Sep 17 00:00:00 2001 From: Serguiei Vassiliev Date: Wed, 17 Apr 2024 09:14:50 -0300 Subject: [PATCH] 2024 update --- _episodes/09-Amber_flowchart.md | 2 +- _episodes/10-Checking_PDB_Files.md | 10 +++++++++- _episodes/11-Protonation_State.md | 3 ++- _episodes/12-Adding_Ions.md | 2 +- code/run_setup.sh | 8 ++++---- 5 files changed, 17 insertions(+), 8 deletions(-) diff --git a/_episodes/09-Amber_flowchart.md b/_episodes/09-Amber_flowchart.md index 7f82670..70b4f11 100644 --- a/_episodes/09-Amber_flowchart.md +++ b/_episodes/09-Amber_flowchart.md @@ -68,7 +68,7 @@ AMBER package includes two utilities for simulation preparation: tLEaP and xLEaP A package of AMBER includes two MD engines: SANDER and PMEMD. Serial and parallel versions are available for both programs. AMBER also provides a GPU-accelerated version of PMEMD. Along with the topology file and the coordinate or resume file, you will also need an input file describing the parameters of your simulation, such as integrator, thermostat, barostat, time step, cut-off distance, etc. It's also possible to use bond and distance constraints derived from NMR experiments. PMEMD and SANDER can run multiple simulations, including replica exchange and constant pH. Parameters for such simulations are contained in a special groupfile. A simulation program will save energy components and MD trajectories. {: .instructor_notes} -PMEMD is faster than SANDER, but there are limitations to the simulation types available in PMEND. Some algorithms (such as DFT QM-MM with GPU-accelerated DFT code QUICK) are only available in SANDER. +PMEMD is faster than SANDER, but there are limitations to the simulation types available in PMEMD. Some algorithms (such as DFT QM-MM with GPU-accelerated DFT code QUICK) are only available in SANDER. {: .instructor_notes} diff --git a/_episodes/10-Checking_PDB_Files.md b/_episodes/10-Checking_PDB_Files.md index 6984505..26476cb 100644 --- a/_episodes/10-Checking_PDB_Files.md +++ b/_episodes/10-Checking_PDB_Files.md @@ -88,6 +88,12 @@ Let's consider some example protein PDB files. The first step is to connect to t - **no GPUs**
+#### Workshop data: + +/project/def-sponsor00/workshop_amber_2024.tar.gz + +wget https://github.com/ComputeCanada/molmodsim-amber-md-lesson/releases/download/workshop-2021-04/workshop_amber_2024.tar.gz + ### Checking a molecular structure [Check_structure](https://pypi.org/project/biobb-structure-checking/) is a command-line utility from [BioBB project](https://github.com/bioexcel/biobb) for exhaustive structure quality checking (residue chirality, amide orientation, vdw clashes, etc.). Using this utility, you can perform manipulations with structures, such as selecting chains or conformations, removing components, mutating residues, adding missing atoms, adding hydrogens, etc. {: .instructor_notes} @@ -161,7 +167,7 @@ check_structure -i 2qwo.pdb -o protein.pdb ligands --remove all >>quit >>~~~ >>{: .vmd} ->>The first line of code loads a new molecule from 1ERT.pdb. Using the **atomselect** method, we then select all protein atoms from the top molecule. Finally, we save the selection in the file "protein.pdb". +>>The first line of code loads a new molecule from 2qwo.pdb. Using the **atomselect** method, we then select all protein atoms from the top molecule. Finally, we save the selection in the file "protein.pdb". >>The Atom Selection Language has many capabilities. You can learn more about it by visiting the following [webpage](https://www.ks.uiuc.edu/Research/vmd/vmd-1.3/ug/node132.html). >> >{: .solution} @@ -210,6 +216,7 @@ Check conformations cd ~/scratch/workshop_amber/example_02 check_structure -i 1ert.pdb checkall ~~~ +{: .language-bash} ~~~ ASP A20 @@ -231,6 +238,7 @@ Select conformers A ASP20 and B HIS43. ~~~ check_structure -i 1ert.pdb -o output.pdb altloc --select A20:A,A43:B,A90:B ~~~ +{: .language-bash} >## Selecting Alternate Conformations with VMD diff --git a/_episodes/11-Protonation_State.md b/_episodes/11-Protonation_State.md index ec38fee..467bfa2 100644 --- a/_episodes/11-Protonation_State.md +++ b/_episodes/11-Protonation_State.md @@ -95,7 +95,7 @@ What protonation states are appropriate for simulating Asp79 and His53 at pH 6? A more consistent and convenient way to select the desired form of amino acid is to change its name in the structure file before generating a topology. The neutral states of LYS, ASP, and GLU can be chosen by renaming them LYN, ASH, and GLH, respectively. You can select the appropriate form of HIS by renaming HIS to HIE (proton on NE2), HID (proton on ND1), or HIP (both protons). {: .instructor_notes} -- Change residue name in the structure file +- To change the form of an amino acid, change its name in the structure file ``` LYS (+1) - LYN (0) @@ -169,6 +169,7 @@ The use of constant protonation states in molecular dynamics simulations has its ### Combining all structure preparation steps in one check_structure script ~~~ +cd ~/scratch/workshop_amber/example_03 check_structure -i 1rgg.pdb -o 1RGG_chain_A_prot.pdb \ command_list --list "\ chains --select A;\ diff --git a/_episodes/12-Adding_Ions.md b/_episodes/12-Adding_Ions.md index d09ff41..ae4d947 100644 --- a/_episodes/12-Adding_Ions.md +++ b/_episodes/12-Adding_Ions.md @@ -45,7 +45,7 @@ Let's neutralize 1RGG protein using the *leap* module. We will add ions prior to ~~~ cd ~/scratch/workshop_amber/example_04 -module load gcc/12.3 openmpi/4.1.5 cuda/12.2 amber +module load StdEnv/2023 amber tleap ~~~ {: .language-bash} diff --git a/code/run_setup.sh b/code/run_setup.sh index cc0b7d9..b1a0a91 100755 --- a/code/run_setup.sh +++ b/code/run_setup.sh @@ -4,7 +4,7 @@ mkdir amber cd amber module purge -module load nixpkgs/16.09 intel/2016.4 vmd/1.9.3 +module load StdEnv/2023 vmd # Save VMD commands in the variable 'script' script="$(cat << EOF # Load 1RGG.pdb into a new (top) molecule @@ -37,7 +37,7 @@ vmd -e <<<"${script}" /dev/stdin # >>>>> Prepare the system using LEaP + pbd2gmx <<<<< module purge -module load nixpkgs/16.09 gcc/5.4.0 openmpi/2.1.1 amber/18 +module load StdEnv/2023 amber # Save LeaP commands in the variable 'script' script="$(cat << EOF # Load spce water model @@ -68,7 +68,7 @@ mkdir gromacs_A cp amber/1RGG_chain_A_solvated.pdb gromacs_A cd gromacs_A module purge -module load gcc/7.3.0 openmpi/3.1.2 gromacs/2019.3 +module load StdEnv/2023 gromacs # Rename ions for GROMACS and assign them to chain B sed s/"Cl- Cl- "/" CL CL B"/g 1RGG_chain_A_solvated.pdb | sed s/"Na+ Na+ "/" NA NA B"/g > 1RGG_chain_A_solvated_gro.pdb # Save GROMACS topology and coordinate files @@ -82,7 +82,7 @@ mkdir gromacs_B cp amber/1RGG_chain_A_prot.pdb gromacs_B cd gromacs_B module purge -module load gcc/7.3.0 openmpi/3.1.2 gromacs/2019.3 +module load StdEnv/2023 gromacs # Generate GROMACS topology and coordinate files gmx pdb2gmx -f 1RGG_chain_A_prot.pdb -ff amber99sb-ildn -water spce -ignh -chainsep id -ss << EOF >log y