11. Root Mean Square Fluctuation (RMSF)#

 1import os
 2import sys
 3import argparse
 4import pytraj as pt
 5import matplotlib.pyplot as plt
 6import numpy as np
 7
 8pname="step3_pbcsetup" # Topology file
 9tname='prod00' # Trajectory file 
10figname = "rmsf"
11
12ambermask='@CA' # Atom mask selection
13
14parm = f'{pname}.parm7'
15cord = f'{tname}.nc'
16
17os.makedirs('img', exist_ok=True)
18os.makedirs('raw_data', exist_ok=True)
19
20# Load trajectory
21traj = pt.iterload(cord, top=parm)
22
23# Superimpose to 1st frame and alpha carbons
24pt.superpose(traj, ref=0, mask=ambermask)
25
26data = pt.rmsf(traj, mask=ambermask)
27
28resnum = len(data.T[0]) + 1
29xdata = np.arange(1, resnum)
30ydata = data.T[1]
31
32# Plot Simulation Time vs RMSD
33plt.plot(xdata, ydata)
34plt.xlabel('Residue Number')
35plt.ylabel('RMSF (Å)')
36
37plt.savefig('img/{figname}', dpi=300)
38