-
Notifications
You must be signed in to change notification settings - Fork 2
/
sims.job
62 lines (52 loc) · 2.63 KB
/
sims.job
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/bin/bash
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
#SBATCH --time=24:00:00
#SBATCH --partition=blanca-shirts
#SBATCH --qos=blanca-shirts
#SBATCH --gres=gpu
#SBATCH --job-name=polycharge
#SBATCH --output=slurm_logs/polycharge.log
#SBATCH [email protected]
#SBATCH --mail-type=END
# ============================================================================================================================
# DESC : accepts a parameterized and charged SDF molecular starting structure
# performs vacuum conformer anneal, adds solvent, and runs battery of simulations with optional analysis
# Primary outputs :
# ============================================================================================================================
# ============================================================================================================================
# module config
# ============================================================================================================================
module purge
ml anaconda
conda activate openff-polymers
# ============================================================================================================================
# argument aliases
# ============================================================================================================================
working_dir=$1
logging_dir=$2
inpaths=$3
conf_name=$4
box_x=$5
box_y=$6
box_z=$7
box_unit=$8
density_gcm3=$9
solvent=${10}
exclusion=${11}
exclusion_unit=${12}
forcefield=${13}
anneal_param_path=${14}
equil_param_path=${15}
prod_param_path=${16}
rmin=${17}
rmax=${18}
rad_unit=${19}
vars=($(cat $inpaths))
charged_sdf=${vars[0]}
# ===========================================================================================================================================
# code execution
# ===========================================================================================================================================
conf_path=$(python -m components.anneal -wdir $working_dir -ldir $logging_dir -sdf $charged_sdf -a $conf_name -bd $box_x $box_y $box_z -bdu $box_unit -sp $anneal_param_path -ff $forcefield) &&
solv_path=$(python -m components.solvate -wdir $working_dir -ldir $logging_dir -sdf $conf_path -a $conf_name -solv $solvent -rho $density_gcm3 -bd $box_x $box_y $box_z -bdu $box_unit -exc $exclusion -excu $exclusion_unit) &&
python -m components.simulate -wdir $working_dir -ldir $logging_dir -sdf $solv_path -a $conf_name -bd $box_x $box_y $box_z -bdu $box_unit -sp "equilibration=$equil_param_path" "production=$prod_param_path" -ff $forcefield -az 'production' -rmin $rmin -rmax $rmax -ru $rad_unit