Using Molecular Dynamics for Model Generation
This step included manually editing the PDB files to do things like removing water molecules and free ions. This is also the step where the modifications were made to slightly unfold the protein using the scripting capabilities of VMD. I wrote a tcl script to walk the backbone of the currently active protein and open all the angles between residues to give us a new starting configuration for the simulations.
This step required writing a psfgen configuration file and used input in the form of a topology file that describes the common amino and nucleic acids in proteins. The topology file is shipped with CHARMM and is available in various locations on the web. The documentation with NAMD includes an example and a location for retrieving this topology parameter file. This is also the place where the water molecules and ions removed in step one could be added back in from a secondary pdb file as a separate segment.
These last two steps are combined automatically by NAMD. The parameters for both steps are specified in a NAMD configuration file. NAMD uses a force field parameter file (also shipped with CHARMM) that provides parameters for all the inter-atom forces it simulates. In the example, you can see parameters that indicate how many timesteps of minimization should be done and how long the simulation itself should last. There are also parameters that allow the temperature to be periodically rescaled or changed by a specified amount. I relied heavily on this feature to generate the trajectories.
The script produced very undesirable results for larger, more complex proteins because it tended to move too many atoms close enough together to bond. The simulation and viewing software then created bonds between these atoms in close proximity that are not physically possible. With more work, I think the script could be modified (or rewritten) to avoid changing angles that result in these "impossible" bonds being created.
The results would also be more realistic if we had been able to do the simulation in a solvent (water). To do this required building a pdb file of a suitable sized cube of water that is in equilibrium and cutting out a hole in the center to merge in the protein. I imagine this is not difficult once you've done it a couple of times, but it was prohibitively complicated given our time frame and my experience level.