Webina is a JavaScript/WebAssembly library that runs AutoDock Vina entirely in a web browser. The docking calculations take place on the user's own computer rather than a remote server. To encourage use, we have incorporated the Webina library into our own Webina web app. The app includes a convenient interface so users can easily setup their docking runs and analyze the results.

Protein-Structure Coloring Book (Halloween 2019)

Jennifer Walker, grad student in the Durrant Lab, put together a great protein coloring book for Halloween. The perfect way to share the excitement of structural biology with the little ones (or even grownups) in your life. 🙂





ProteinVR is a web-based application that allows users to view protein/ligand structures in virtual reality (VR) from their mobile, desktop, or VR-headset-based web browsers. Molecular structures are displayed within 3D environments that give useful biological context and allow users to situate themselves in 3D space.

Gypsum-DL: A New Program that Prepares Molecular Libraries for Virtual Screening

Happy to announce that the Durrant Lab recently released Gypsum-DL, a program that prepares molecular libraries for virtual screening.

Structure-based virtual screening requires carefully prepared 3D models of potential small-molecule ligands. Existing commercial programs for virtual-library preparation have restrictive and/or expensive licenses. In contrast, Gypsum-DL is open source. It accepts virtual compound libraries in SMILES or flat SDF formats as input. For each molecule in the library, it enumerates appropriate ionization, tautomeric, chiral, cis/trans isomeric, and ring-conformational forms. As output, it produces an SDF file with 3D coordinates assigned. A copy is available free of charge under the terms of the Apache License, Version 2.0: https://git.durrantlab.pitt.edu/jdurrant/gypsum_dl

Happy docking!

Gypsum-DL: an open-source program for preparing small-molecule libraries for structure-based virtual screening. Patrick J. Ropp, Jacob O. Spiegel, Jennifer L. Walker, Harrison Green, Guillermo A. Morales, Katherine A. Milliken, John J. Ringe & Jacob D. Durrant. Journal of Cheminformatics. Volume 11, Article number: 34 (2019)




PCAViz is an open-source Python/JavaScript toolkit for sharing and visualizing MD trajectories via a web browser. To encourage use, an easy-to-install PCAViz-powered WordPress plugin enables 'plug-and-play' trajectory visualization.




Gypsum-DL is a free, open-source program that converts 1D and 2D small-molecule representations (SMILES strings or flat SDF files) into 3D models. It outputs models with alternate ionization, tautomeric, chiral, cis/trans isomeric, and ring-conformational states.




Dimorphite-DL adds hydrogen atoms to molecular representations, as appropriate for a user-specified pH range. It is a fast, accurate, accessible, and modular open-source program for enumerating small-molecule ionization states.

Tips for Grad School

I recently got an email from a thoughtful undergraduate who’s going to grad school. He asked for some general advice. Here are my thoughts, for what they’re worth.

Whose Lab Should I Work In?

  1. When picking a lab, pick based on the lab’s principal investigator (PI) more than the specific project. Projects change. Look for a PI who will provide the supportive environment you need to grow as a scientist.
  2. Different PIs have different managerial styles. Some are micromanagers. Others are so hands off you might not even see them that often. Similarly, some students thrive when micromanaged, and others thrive when given complete independence. There’s not just one right way to manage a lab. But do be sure to find the right kind of PI for you.
  3. Labs with more senior PIs (tenured, for example) often have well established projects and hierarchies. A lot of students benefit from that. Senior PIs also tend to be better known in the community, which can be helpful when job-application time comes around.
  4. Labs with more junior PIs often (but not always!) afford students more opportunities to craft their own projects. Working for a younger professor often provides fun opportunities to help “grow the lab.” Younger PIs tend to work closer with grad students, too, though there are certainly exceptions. Excellent graduate students can also play important roles in helping a younger PI establish his or her lab. Letters of recommendation that cite concrete examples like that can be very powerful!

How Many Hours Should I Work as a Grad Student?

If you’re a graduate student, your career has begun! That means this is a full-time job. You should work at least 60 productive hours a week. Working more may lead to more career-advancing publications, but few can manage 80 hours a week. Don’t burn out!

There is a certain amount of random luck when it comes to getting a dream job after graduation. But there definitely is a correlation (even if it isn’t perfect) between how hard you work as grad student and how well you do professionally afterwards. Even if your PI isn’t counting the minutes you’re in the lab, don’t cheat yourself by working less than you should.

Try to Get Your Own Funding

Even if your lab is well funded, try to get a fellowship of your own. Even if you don’t get it, it’s good writing practice. And, regardless of your career plans, it’s impressive to see that kind of thing on a graduate C.V.’s.

Be Open to Jobs Outside of Academia

I worry that not enough graduate students consider careers outside of academia. I worry we don’t prepare them well enough for careers in industry. While I obviously love academia, there are many advantages to working elsewhere. Consider doing a summer internship with a biotech company during your PhD if your PI can spare you.

Work on Multiple Projects

Given that projects often fail, it’s good to work on multiple projects as a graduate student. Here’s some good advice from my graduate PI, J. Andrew McCammon:

Your main project at any given time should be one that is well-defined and that is solvable within 6 months. As you become established you may want to add a second project of medium difficulty, and then one of greater difficulty that would have a very great impact if completed… As soon as your main, straightforward project is underway, start on your second, slightly more ambitious project. If you run into problems with one project, you can set it aside for a day or two while you work on the other one. Then you can take a fresh look at the troublesome project.

At the same time, don’t take on so many projects that you can’t finished any of them. An unfinished project has the same career-advancing value as no project.

Spend Time Both Reading and Writing

It’s easy to focus so much on doing experiments that you don’t spent time reading about others’ science. Writing down your own research plan also keeps you organized and makes it easier to write manuscripts when the time comes. Don’t neglect both your scientific reading and writing!

Manage Your Time Carefully

Again, from Dr. McCammon:

Set daily, weekly and long-term goals. Review your goals and progress frequently. If you are consistently falling short of your goals, try keeping track of how you actually spend your time for a few days. Use this inventory to help plan adjustments. Know when to be meticulous and when you can be sloppier. If you’re banging your head against an obstacle in your research, step back, rethink the problem and try to go around the obstacle instead of through it.

Don’t Get Discouraged!

Grad school can be very difficult. There certainly are days and weeks where you will feel like you’re not getting anything done. But if you’re persistent, things will move forward eventually. Don’t get discouraged!

I hope these ideas help!




BlendMol is a Blender plugin that can easily import VMD 'Visualization State' and PyMOL 'Session' files. BlendMol empowers scientific researchers and artists by marrying molecular visualization and industry-standard rendering techniques. The plugin works seamlessly with popular analysis programs (i.e., VMD/PyMOL). Users can import into Blender the very molecular representations they set up in VMD/PyMOL.

MD Simulations: Analysis and Ideas

The purpose of this document is to briefly describe how to analyze an MD simulation in layman’s terms. It also offers general simulation ideas.

Analysis Techniques

Root Mean Square Deviation

How similar is the shape of each simulated protein conformation to some reference conformation? The conformation of the first simulation frame is a good choice for the reference. The RMSD should start to stabilize after you’ve been simulating for a while, indicating that the system is properly equilibrated. (Link)

Root Mean Square Fluctuation

How wiggly is each protein residue (e.g., amino acid) over the course of the simulation? (Link)


By eliminating protein conformations that are very similar, clustering generates an ensemble of particularly distinct conformations. (Link)

FTMAP Hotspot Analysis

You can use FTMAP to identify druggable hotspots. One approach is to apply FTMAP to representative structures identified through clustering, to account for protein flexibility.

Relaxed-Complex Scheme

Docking small-molecules into various conformations extracted from the simulation via clustering is also a good approach for identifying novel chemical probes. This kind of virtual screen is called the “relaxed complex scheme.”

Ensemble Electrostatics

The electrostatic potentials surrounding the protein can determine how some small molecules bind. You can also calculate ensemble-averaged versions of those potentials that may be more realistic. APBS and Delphi are two programs for calculating potentials.

Principal Component Analysis

Protein motions are very complex. PCA presents a simplified representation of these motions. Some of the minor motions are lost, but the larger-scale motions are still represented. You can project simulated conformations onto the first two principal components (2D graph of the complex motions), or you can morph a model of the protein itself according to the principal components. (Link)

Distance-Based Measurements

It can be helpful to measure the distance between two atoms over the course of a simulation. For example, you can monitor the distance between carboxylate and amine groups to see hydrogen bonds forming and breaking.

Measuring Pocket Volumes

Using the POVME algorithm, you can measure the volume of a given pocket over the course of the trajectory. Sometimes the largest-volume pocket can be useful for drug-discovery projects. POVME is also good at identifying cryptic pockets.

Analyze Hydrogen-Bond Networks

What somewhat-distant residues might influence the motions of the binding pocket through hydrogen-bond networks? HBonanza is a tool for measuring just that.

Pathways of Correlated Motions

You can also analyze the pathways of correlated motions that might connect distant residues. This can sometimes reveal allsoteric mechanisms. WISP is the tool to use.

Kinds of MD

There are endless flavors of MD. I’m going to put a list here, in case you want to research further. (If you do, please feel free to send brief summaries of each method so I can paste them here!)

  • Regular (vanilla) MD.
  • Accelerated MD (McCammon group)
  • Coarse-grained MD (awesome, though I haven’t done much with it)
  • Metadynamics
  • Replica exchange MD
  • Umbrella sampling
  • Markov-State-Model guided MD (amazing)
  • WESTPA (would like to start using)
  • Implicit-solvent MD
  • Brownian dynamics (not really MD, but relevant)

Please send additional methods and/or descriptions if you get a chance. Thanks!

Reasons to Simulate

“Could there be cryptic binding pockets in my protein that aren’t evident in any crystal structure?”

“I’d like to use multiple protein conformations for drug discovery, but all the crystal structures look the same. I’ll simulate to get more conformations!”

“I want to use something better than a docking score to predict ligand binding. Why not use an alchemical method like free-energy purturbation or thermodynamic integration?”

“Could understanding the dnyamics of a certain region of the protein reveal its molecular mechanism?”

“I’ve got two similar proteins, but they do different things. Maybe they are evolutionarily related, or one is a mutant of the other. Can dynamics reveal why they behave differently?”

“My protein has some crazy allosteric mechanism. Might MD simulations reveal the subtle shifts in correlated residue motions that transmit the allosteric signal?”

“I want to engineer a protein to do something new. Can I predict how mutations will change its function before I make the actual protein and test it experimentally?”

“I think I know how a small molecule binds to my protein, but I’m not sure. If I simulate it, will it slip in the binding pocket (probably the wrong pose!), or will its pose remain stable?”

Please send more ideas! I want this page to help with future brainstormig.

Reasons not to Simulate

“I want to see some large conformational changes.” It ain’t gong to happen on MD timescales.

“I want to know something for certain.” You always need experimental validation. You can test something from the literature (already experimentally demonstrated), or you can get a collaborator for prospective validation.

“I want to simulate some huge system.” Probably not going to happen, unless you can get a PRAC.

Secured By miniOrange