From: Chitrak Gupta (
Date: Tue Oct 31 2017 - 17:27:38 CDT

Hi Steve,

You could definitely do the former by something like this:

set pdbList [ls *.pdb]
foreach pdbFile $pdbList {
... < do stuff with $pdbFile > ...

For the distances, there are different options depending on what you want.
You could find the distance (using "vecdist") between geometric centers (
"measure center < selection >" ) or center of mass ( "measure center <
selection > weight mass" ). If you have more than two residues of the same
type then you would need to loop over them.

Hope this helps,

On Tue, Oct 31, 2017 at 4:52 PM, Windle,Stephen <> wrote:

> VMD Users,
> Good afternoon. I am very new to the VMD software, and I am working on
> putting together a script for a specific purpose, but I am unsure how much
> of it can be done as a single script. Essentially, I want to measure the
> distances between all the side chains of a specific amino acid in a given
> protein (for example distances between all the valine side chains).
> However, I want to be able to load anywhere from 1000-10,000 molecules into
> VMD and have the script do this for each molecule consecutively, exporting
> them into individual files (I should be able to write a loop for this, I
> imagine). So far I'm able to load a molecule and isolate the side chains of
> a specific amino acid. So my two key questions are this: Can a loop be
> written to load every .pdb file in a given folder, and what are the console
> commands to measure the distance between each side chain once they've been
> isolated into a named selection. I have tried searching through the indexed
> messages but to no avail. If someone could point me in the right direction
> that would be greatly appreciated. Thank you!
> Regards,
> Steve Windle