Skip to content
SimLab Academy
← All Resources

CHARMM-GUI Guide

Step-by-step guidance for the Solution Builder workflow.

What CHARMM-GUI does

CHARMM-GUI's Solution Builder takes a raw structure (usually a PDB file) and turns it into a simulation-ready, solvated system - handling most of the tedious prep work automatically.

Step by step

1. Upload your structure

Start from a PDB ID (fetched directly from the Protein Data Bank) or upload your own coordinate file.

2. Fix structural issues

CHARMM-GUI will flag missing atoms, missing residues, and alternate conformations, and offer to model in what's missing. Review these carefully rather than accepting every default - a badly-modeled loop can affect your entire simulation.

3. Assign protonation states

You'll choose a pH, and CHARMM-GUI assigns protonation states accordingly. Always double check histidine residues near an active site by hand - the automatic guess (HSD / HSE / HSP) isn't always biologically correct.

4. Choose a force field

CHARMM36m is a common, well-validated default for proteins. Match the choice to whatever your course or paper is following.

5. Generate the water box and add ions

Choose a water model (TIP3P is the standard, fast choice), a box shape (rectangular is simplest), and an ion concentration (150 mM NaCl is a common physiological default). Ions are placed to neutralize the system's net charge first, then to reach your target concentration.

6. Choose your output format

CHARMM-GUI can generate input files for several simulation engines. Make sure you select GROMACS output specifically - you'll get a ready-to-use .gro and .top (plus supporting files) instead of CHARMM-native files.

7. Download and unpack

You'll receive a .tgz archive. Download it, then upload it into your lab workspace and extract it there:

tar -xzvf charmm-gui-output.tgz

Common mistakes to avoid

  • Forgetting to check histidine protonation states near the active site.
  • Picking an output format for the wrong simulation engine.
  • Not verifying the box is large enough to prevent the protein from interacting with its own periodic image.
  • Losing track of which downloaded archive corresponds to which construct, when preparing multiple systems in the same session.