A lot of codes can do Quantum Mechanics/ Molecular Mechanics (QM/MM), and I am not naively asking if there is a program that can do QM/MM.

What I am interested in is a program that is purely QM/MM meaning that it is designed and optimized specifically for this purpose. QM/MM is not an after-thought addon much like many codes that do DFT just do some ad-hoc alterations to their HF algorithm.

I would like to also highlight in the last sentence the words "designed and optimized" to clarify my intent. Gaussian can do QM obviously, and it can also now do MM, but in all honesty, I would not say it is designed for QM/MM, and I don't think you can even say it is an optimized program for QM. After 4-6 cpu's, you gain very little out of Gaussian in terms of parallelism. I would not say Atomic Simulation Environment (ASE) qualifies either, it simply pairs things together.

I am looking for the apex predator of QM/MM codes.

  • 1
    $\begingroup$ +1. Nice question. I'm interested too. Of course to do QM or MM you need to have a QM code and an MM/MD code, but it's interesting to know if there's codes that are optimized specifically for QM/MM. $\endgroup$ Commented May 25, 2020 at 17:19
  • 1
    $\begingroup$ Yeah, they need to be masters in two areas, which is rare. Most people master either QM or MM, then farm out the other half via an interface, but there are performance hits to this. NAMD does this but goes abit further and tries to ensure caching and interfacing in RAM to promote speed. AMBER has a couple of talented individuals, but their in house code for QM (sqm) I believe is only semi-empirical. $\endgroup$
    – B. Kelly
    Commented May 25, 2020 at 17:23
  • 2
    $\begingroup$ CP2K has both fast QM and MM and scales and parallelizes well. But it is not specifically optimized for QM/MM. $\endgroup$
    – Fabian
    Commented May 25, 2020 at 17:29
  • $\begingroup$ May I suggest giving the expansion of QM and MM somewhere within the question? Since Materials/Matter Modelling is pretty vast, I don't think it's possible for everyone to know such abbreviations a priori. For instance, I am familiar with methods for modelling solids and I have no experience with molecular systems. Hence, I have only used QM to mean "quantum mechanics" (the subject) and MM to mean "materials modelling"! I am aware there's a list of abbreviations being created in another question, but I feel the questions should stand on their own and ambiguity must be avoided if possible. $\endgroup$
    – Mythreyi
    Commented Jun 4, 2020 at 14:36
  • 2
    $\begingroup$ @Mythreyi Sure, I defined my abbreviations, same with ASE. I left DFT and HF as is. If anyone mistakes HF for "Having Fun", they are only technically wrong, but are qualitatively correct. $\endgroup$
    – B. Kelly
    Commented Jun 4, 2020 at 18:04

3 Answers 3



pDynamo is a program developed by Martin Field, and is a CHARMM/ORCA interface. There is a wiki.

Here is the first line from the abstract:

The pDynamo program has been developed for the simulation of molecular systems using hybrid quantum chemical (QC) and molecular mechanical (MM) potentials.

There is also a PyMol plugin named EasyHybrid. Though I do not have experience with this program.


Field, M. J. The pDynamo Program for Molecular Simulations using Hybrid Quantum Chemical and Molecular Mechanical Potentials J. Chem. Theory Comput. Chem. 2008, 4, 1151-1161.

Bachega, J. F. R.; Timmers, L. F. S. M.; Assirati, L.; Bachega, L. B.; Field, M. J.; Wymore, T. GTKDynamo: A PyMOL plug‐in for QC/MM hybrid potential simulations. J. Computer. Chem. 2013, 34, 2190-2196.

  • 2
    $\begingroup$ Nice answer! I would also mention that this has an excellent interface in comparison to some packages which I will not name 😅 $\endgroup$
    – Cody Aldaz
    Commented May 25, 2020 at 20:33


QM/MM is not computationally more intensive than regular QM. In mechanical embedding the MM region is essentially free because it's just simple harmonic oscillators. In electrostatic embedding the MM region polarizes the charges of the QM region via the nuclear potential. As long as the external charge doesn't cause any SCF convergence issue the difference in speed between QM and QM/MM should be negligible. Therefore, there is no room to specifically design algorithms around this issue. Instead, I think the main issue is interface. Because molecular mechanics and quantum mechanics were once independent, the interface between good QM and MM codes is not always great.

Nevertheless, I consider TeraChem the apex predator of gaussian type orbital theories (DFT, HF, CI CASSCF). TeraChem also has a good and efficient QM/MM interface via Amber2

Here are some benchmark results from their website2

enter image description here

In comparison the times for the B3LYP/6-31G* using GAMMES on a single Intel Xeon X5680 3.33GHz CPU core* are

Taxol    Valinomycin   Olestra
10.6 min  22.6 min   3.6 hours

*It's unclear what type of CPU the GPU study used, however

More benchmarks can be found in the original publication[3]. The speedups increase with system size, but you can generally expect about 4x speedup for smaller systems and up to 200x for larger systems.

The code has also been efficiently parallelized with GPUs for multi-reference calculations like CASSCF [4] and is very efficient. In that paper the authors claim that theu've performed the largest CASSCF calculation in terms of total number of atoms by greater than an order of magnitude (e.g. CAS(2,2) on 1000 waters or something like that).

In my experience with TeraChem, I feel as if one to two GPUs (GTX-980 or GTX-1080s) are about as good as 16-28 CPUs for your typically application. In your typical dense GPU cluster there is usually 5-8 GPU slots so your looking at getting some pretty serious computational power.


  1. Isborn, C. M., Götz, A. W., Clark, M. A., Walker, R. C. & Martínez, T. J. Electronic absorption spectra from MM and ab initio QM/MM molecular dynamics: Environmental effects on the absorption spectrum of photoactive yellow protein. J. Chem. Theory Comput. 8, 5092–5106 (2012).

  2. http://petachem.com/performance.html

  3. Ufimtsev, I. S. & Martinez, T. J. Quantum chemistry on graphical processing units. 3. Analytical energy gradients, geometry optimization, and first principles molecular dynamics. J. Chem. Theory Comput. 5, 2619–2628 (2009).

  4. An atomic orbital-based formulation of the complete active space self-consistent field method on graphical processing units. J. Chem. Phys. 142, (2015).

  • $\begingroup$ Better late than never eh ;) It is very pleasing that gamer grade GPU's are competitive! Lastly, is TerraChem free? $\endgroup$
    – B. Kelly
    Commented Jun 4, 2020 at 20:40
  • $\begingroup$ @CharlieCrown: Unfortunately it's commercial: en.wikipedia.org/wiki/… $\endgroup$ Commented Jun 4, 2020 at 20:52

TeraChem is commercial, but the demo mode will handle calculations taking up to ten minutes and that is free. Ten minutes for a single point energy and gradient gets you pretty far with TeraChem (unlike other CPU codes).


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .