# CHARMM

Chemistry at Harvard Macromolecular Mechanics (CHARMM) is the name of a widely used set of force fields for molecular dynamics, and the name for the molecular dynamics simulation and analysis computer software package associated with them. The CHARMM Development Project involves a worldwide network of developers working with Martin Karplus and his group at Harvard to develop and maintain the CHARMM program. Licenses for this software are available, for a fee, to people and groups working in academia.

## Force fields

The CHARMM force fields for proteins include: united-atom (sometimes termed extended atom) CHARMM19, all-atom CHARMM22 and its dihedral potential corrected variant CHARMM22/CMAP, as well as later versions CHARMM27 and CHARMM36 and various modifications such as CHARMM36m and CHARMM36IDPSFF. In the CHARMM22 protein force field, the atomic partial charges were derived from quantum chemical calculations of the interactions between model compounds and water. Furthermore, CHARMM22 is parametrized for the TIP3P explicit water model. Nevertheless, it is often used with implicit solvents. In 2006, a special version of CHARMM22/CMAP was reparametrized for consistent use with implicit solvent GBSW.
The CHARMM22 force field has the following potential energy function:
${\begin{aligned}V=&\sum _{bonds}k_{b}(b-b_{0})^{2}+\sum _{angles}k_{\theta }(\theta -\theta _{0})^{2}+\sum _{dihedrals}k_{\phi }[1+\cos(n\phi -\delta )]\\&+\sum _{impropers}k_{\omega }(\omega -\omega _{0})^{2}+\sum _{Urey-Bradley}k_{u}(u-u_{0})^{2}\\&+\sum _{nonbonded}\left(\epsilon _{ij}\left[\left({\frac {R_{min_{ij}}}{r_{ij}}}\right)^{12}-2\left({\frac {R_{min_{ij}}}{r_{ij}}}\right)^{6}\right]+{\frac {q_{i}q_{j}}{\epsilon _{r}r_{ij}}}\right)\end{aligned}}$
The bond, angle, dihedral, and nonbonded terms are similar to those found in other force fields such as AMBER. The CHARMM force field also includes an improper term accounting for out-of-plane bending (which applies to any set of four atoms that are not successively bonded), where $k_{\omega }$ is the force constant and $\omega -\omega _{0}$ is the out-of-plane angle. The Urey-Bradley term is a cross-term that accounts for 1,3 nonbonded interactions not accounted for by the bond and angle terms; $k_{u}$ is the force constant and $u$ is the distance between the 1,3 atoms.
For DNA, RNA, and lipids, CHARMM27 is used. Some force fields may be combined, for example CHARMM22 and CHARMM27 for the simulation of protein-DNA binding. Also, parameters for NAD+, sugars, fluorinated compounds, etc., may be downloaded. These force field version numbers refer to the CHARMM version where they first appeared, but may of course be used with subsequent versions of the CHARMM executable program. Likewise, these force fields may be used within other molecular dynamics programs that support them.
In 2009, a general force field for drug-like molecules (CGenFF) was introduced. It "covers a wide range of chemical groups present in biomolecules and drug-like molecules, including a large number of heterocyclic scaffolds". The general force field is designed to cover any combination of chemical groups. This inevitably comes with a decrease in accuracy for representing any particular subclass of molecules. Users are repeatedly warned in Mackerell's website not to use the CGenFF parameters for molecules for which specialized force fields already exist (as mentioned above for proteins, nucleic acids, etc.).
CHARMM also includes polarizable force fields using two approaches. One is based on the fluctuating charge (FQ) model, also termed Charge Equilibration (CHEQ). The other is based on the Drude shell or dispersion oscillator model.
Parameters for all of these force fields may be downloaded from the Mackerell website for free.

## Molecular dynamics program

The CHARMM program allows for generating and analysing a wide range of molecular simulations. The most basic kinds of simulation are minimizing a given structure and production runs of a molecular dynamics trajectory. More advanced features include free energy perturbation (FEP), quasi-harmonic entropy estimation, correlation analysis and combined quantum, and quantum mechanics–molecular mechanics (QM/MM) methods.
CHARMM is one of the oldest programs for molecular dynamics. It has accumulated many features, some of which are duplicated under several keywords with slight variants. This is an inevitable result of the many outlooks and groups working on CHARMM worldwide. The changelog file, and CHARMM's source code, are good places to look for the names and affiliations of the main developers. The involvement and coordination by Charles L. Brooks III's group at the University of Michigan is salient.

## Software history

Around 1969, there was considerable interest in developing potential energy functions for small molecules. CHARMM originated at Martin Karplus's group at Harvard. Karplus and his then graduate student Bruce Gelin decided the time was ripe to develop a program that would make it possible to take a given amino acid sequence and a set of coordinates (e.g., from the X-ray structure) and to use this information to calculate the energy of the system as a function of the atomic positions. Karplus has acknowledged the importance of major inputs in the development of the (at the time nameless) program, including:
* Schneior Lifson's group at the Weizmann Institute, especially from Arieh Warshel who went to Harvard and brought his consistent force field (CFF) program with him
* Harold Scheraga's group at Cornell University
* Awareness of Michael Levitt's pioneering energy calculations for proteins
In the 1980s, finally a paper appeared and CHARMM made its public début. Gelin's program had by then been considerably restructured. For the publication, Bob Bruccoleri came up with the name HARMM (HARvard Macromolecular Mechanics), but it seemed inappropriate. So they added a C for Chemistry. Karplus said: "I sometimes wonder if Bruccoleri's original suggestion would have served as a useful warning to inexperienced scientists working with the program." CHARMM has continued to grow and the latest release of the executable program was made in 2015 as CHARMM40b2.

## Running CHARMM under Unix-Linux

The general syntax for using the program is:
charmm -i filename.inp -o filename.out
* charmm – The name of the program (or script which runs the program) on the computer system being used.
* filename.inp – A text file which contains the CHARMM commands. It starts by loading the molecular topologies (top) and force field (par). Then one loads the molecular structures' Cartesian coordinates (e.g. from PDB files). One can then modify the molecules (adding hydrogens, changing secondary structure). The calculation section can include energy minimization, dynamics production, and analysis tools such as motion and energy correlations.
* filename.out – The log file for the CHARMM run, containing echoed commands, and various amounts of command output. The output print level may be increased or decreased in general, and procedures such as minimization and dynamics have printout frequency specifications. The values for temperature, energy pressure, etc. are output at that frequency.

## Volunteer computing

Docking@Home, hosted by University of Delaware, one of the projects which use an open-source platform for the distributed computing, BOINC, used CHARMM to analyze the atomic details of protein-ligand interactions in terms of molecular dynamics (MD) simulations and minimizations.
World Community Grid, sponsored by IBM, ran a project named The Clean Energy Project which also used CHARMM in its first phase, which has been completed.