Skip to content

Latest commit

 

History

History
261 lines (202 loc) · 7.76 KB

How to run atomic level simulation.md

File metadata and controls

261 lines (202 loc) · 7.76 KB

How to start from the systems built by CHARMM-Gui

Minimization.jobscript:

#!/bin/bash

module load gromacs/2018.3

gmx grompp -f step6.0_minimization.mdp -o step6.0_minimization.tpr -c step5_charmm2gmx.pdb -r step5_charmm2gmx.pdb -p topol.top

gmx mdrun -v -deffnm step6.0_minimization

gmx grompp -f step6.1_equilibration.mdp -o step6.1_equilibration.tpr -c step6.0_minimization.gro -r step5_charmm2gmx.pdb -n index.ndx -p topol.top

gmx mdrun -v -deffnm step6.1_equilibration

gmx grompp -f step6.2_equilibration.mdp -o step6.2_equilibration.tpr -c step6.1_equilibration.gro -r step5_charmm2gmx.pdb -n index.ndx -p topol.top

gmx mdrun -v -deffnm step6.2_equilibration

gmx grompp -f step6.3_equilibration.mdp -o step6.3_equilibration.tpr -c step6.2_equilibration.gro -r step5_charmm2gmx.pdb -n index.ndx -p topol.top

gmx mdrun -v -deffnm step6.3_equilibration

gmx grompp -f step6.4_equilibration.mdp -o step6.4_equilibration.tpr -c step6.3_equilibration.gro -r step5_charmm2gmx.pdb -n index.ndx -p topol.top

gmx mdrun -v -deffnm step6.4_equilibration

gmx grompp -f step6.5_equilibration.mdp -o step6.5_equilibration.tpr -c step6.4_equilibration.gro -r step5_charmm2gmx.pdb -n index.ndx -p topol.top

gmx mdrun -v -deffnm step6.5_equilibration

gmx grompp -f step6.6_equilibration.mdp -o step6.6_equilibration.tpr -c step6.5_equilibration.gro -r step5_charmm2gmx.pdb -n index.ndx -p topol.top

gmx mdrun -v -deffnm step6.6_equilibration

Production.jobscript

#!/bin/bash

#Production

module load gromacs/2018.3

gmx grompp -f step7_production.mdp -o step7_1.tpr -c step6.6_equilibration.gro -n index.ndx -p topol.top
gmx mdrun -v -deffnm step7_1

gmx grompp -f step7_production.mdp -o step7_2.tpr -c step7_1.gro -t step7_1.cpt -n index.ndx -p topol.top
gmx mdrun -v -deffnm step7_2

gmx grompp -f step7_production.mdp -o step7_3.tpr -c step7_2.gro -t step7_2.cpt -n index.ndx -p topol.top
gmx mdrun -v -deffnm step7_3

How to continue run after unexpected interruption:

#!/bin/bash

#Production

module load gromacs/2018

gmx mdrun -v -deffnm step7_17 -cpi step7_17_prev.cpt -append

Step7_Production.mdp

integrator              = md
dt                      = 0.002
nsteps                  = 1000000000
nstlog                  = 10000
nstxout                 = 100000
nstvout                 = 100000
nstfout                 = 100000
nstcalcenergy           = 100
nstenergy               = 1000
;
cutoff-scheme           = Verlet
nstlist                 = 20
rlist                   = 1.2
coulombtype             = pme
rcoulomb                = 1.2
vdwtype                 = Cut-off
vdw-modifier            = Force-switch
rvdw_switch             = 1.0
rvdw                    = 1.2
;
tcoupl                  = Nose-Hoover
tc_grps                 = PROT   MEMB   SOL_ION
tau_t                   = 1.0    1.0    1.0
ref_t                   = 310 310 310
;
pcoupl                  = Parrinello-Rahman
pcoupltype              = semiisotropic
tau_p                   = 5.0
compressibility         = 4.5e-5  4.5e-5
ref_p                   = 1.0     1.0
;
constraints             = h-bonds
constraint_algorithm    = LINCS
continuation            = yes
;
nstcomm                 = 100
comm_mode               = linear
comm_grps               = PROT   MEMB   SOL_ION
;
refcoord_scaling        = com

Run on Biowulf GPU node:

  • sbatch --partition=gpu --cpus-per-task=36 --gres=gpu:v100x:2 Production.jobscript

CHARMM-GUI generated README file

#!/bin/csh
#

# Generated by CHARMM-GUI (http://www.charmm-gui.org)

# This folder contains GROMACS formatted CHARMM36 force fields, a pre-optimized PDB structure, and GROMACS inputs.
# All input files were optimized for GROMACS 2019.2 or above, so lower version of GROMACS can cause some errors.
# We adopted the Verlet cut-off scheme for all minimization, equilibration, and production steps because it is
# faster and more accurate than the group scheme. If you have a trouble with a performance of Verlet scheme while
# running parallelized simulation, you should check if you are using appropriate command line.
# For MPI parallelizing, we recommand following command:
# mpirun -np $NUM_CPU gmx mdrun -ntomp 1


# Minimization
# In the case that there is a problem during minimization using a single precision of GROMACS, please try to use
# a double precision of GROMACS only for the minimization step.

# step6.0
gmx grompp -f step6.0_minimization.mdp -o step6.0_minimization.tpr -c step5_input.gro -r step5_input.gro -p topol.top
gmx_d mdrun -v -deffnm step6.0_minimization

# Equilibration
set cnt    = 1
set cntmax = 6

while ( ${cnt} <= ${cntmax} )
    @ pcnt = ${cnt} - 1
    if ( ${cnt} == 1 ) then
        gmx grompp -f step6.{$cnt}_equilibration.mdp -o step6.{$cnt}_equilibration.tpr -c step6.{$pcnt}_minimization.gro -r step5_input.gro -p top$
        gmx mdrun -v -deffnm step6.{$cnt}_equilibration
    else
        gmx grompp -f step6.{$cnt}_equilibration.mdp -o step6.{$cnt}_equilibration.tpr -c step6.{$pcnt}_equilibration.gro -r step5_input.gro -p to$
        gmx mdrun -v -deffnm step6.{$cnt}_equilibration
    endif
    @ cnt += 1
end
# Production
set cnt    = 1
set cntmax = 10

while ( ${cnt} <= ${cntmax} )
    if ( ${cnt} == 1 ) then
        gmx grompp -f step7_production.mdp -o step7_${cnt}.tpr -c step6.6_equilibration.gro -p topol.top
        gmx mdrun -v -deffnm step7_${cnt}
    else
        @ pcnt = ${cnt} - 1
        gmx grompp -f step7_production.mdp -o step7_${cnt}.tpr -c step7_${pcnt}.gro -t step7_${pcnt}.cpt -p topol.top
        gmx mdrun -v -deffnm step7_${cnt}
    endif
    @ cnt += 1
end

Simplified script

Minimization.jobscript

#!/bin/csh

# Load Gromacs on Biowulf
module load gromacs/2018.3

# step6.0
gmx grompp -f step6.0_minimization.mdp -o step6.0_minimization.tpr -c step5_input.gro -r step5_input.gro -p topol.top
gmx mdrun -v -deffnm step6.0_minimization

# Equilibration
set cnt    = 1
set cntmax = 6

while ( ${cnt} <= ${cntmax} )
    @ pcnt = ${cnt} - 1
    if ( ${cnt} == 1 ) then
        gmx grompp -f step6.{$cnt}_equilibration.mdp -o step6.{$cnt}_equilibration.tpr -c step6.{$pcnt}_minimization.gro -r step5_input.gro -p topol.top
        gmx mdrun -v -deffnm step6.{$cnt}_equilibration
    else
        gmx grompp -f step6.{$cnt}_equilibration.mdp -o step6.{$cnt}_equilibration.tpr -c step6.{$pcnt}_equilibration.gro -r step5_input.gro -p topol.top
        gmx mdrun -v -deffnm step6.{$cnt}_equilibration
    endif
    @ cnt += 1
end

How to run:

#Login to Biowulf

sinteractive --cpus-per-task=16 --mem-per-cpu=2g --gres=lscratch:200 --time=36:00:00
csh Minimization.sh

Production.jobscript

#!/bin/csh

# Load Gromacs on Biowulf
module load gromacs/2018.3

# Production
set cnt    = 1
set cntmax = 10

while ( ${cnt} <= ${cntmax} )
    if ( ${cnt} == 1 ) then
        gmx grompp -f step7_production.mdp -o step7_${cnt}.tpr -c step6.6_equilibration.gro -p topol.top
        gmx mdrun -v -deffnm step7_${cnt}
    else
        @ pcnt = ${cnt} - 1
        gmx grompp -f step7_production.mdp -o step7_${cnt}.tpr -c step7_${pcnt}.gro -t step7_${pcnt}.cpt -p topol.top
        gmx mdrun -v -deffnm step7_${cnt}
    endif
    @ cnt += 1
end
#!/bin/csh

# Load Gromacs on Biowulf
module load gromacs/2018.3

# Production
#set cnt    = 1
#set cntmax = 10

#while ( ${cnt} <= ${cntmax} )
#    if ( ${cnt} == 1 ) then
#        gmx grompp -f step7_production.mdp -o step7_${cnt}.tpr -c step6.6_equilibration.gro -p topol.top
#        gmx mdrun -v -deffnm step7_${cnt}
#    else
#        @ pcnt = ${cnt} - 1
#        gmx grompp -f step7_production.mdp -o step7_${cnt}.tpr -c step7_${pcnt}.gro -t step7_${pcnt}.cpt -p topol.top
#        gmx mdrun -v -deffnm step7_${cnt}
#    endif
#    @ cnt += 1
#end

gmx grompp -f step7_production.mdp -o step7_1.tpr -c step6.6_equilibration.gro -p topol.top
gmx mdrun -v -deffnm step7_1