MDTraj provides convenience functions for predicting various NMR observables such as chemical shifts. To do this, we provide wrapper functions for the SPARTA+, PPM, and ShiftX2 prediction algorithms.


In [ ]:
%matplotlib inline
import mdtraj as md

Let's load a simple trajectory containing three identical frames of the villin headpiece protein.


In [ ]:
trj = md.load("1vii_3frames.pdb")

Now, let's calculate the chemical shifts with the program SPARTA+.


In [ ]:
shifts = md.nmr.chemical_shifts_spartaplus(trj)
shifts[0:10]

The data is returned as a Pandas Dataframe object. The rows correspond to the residue numbers and atom names, while each column corresponds to a different frame in your trajectory. Note that here our input had completely identical conformations in each frame, so we see identical values along each row.


In [ ]: