We recently learned about the many types of MCSCF, which treat "static" electron correlation. There are then many ways to treat further "dynamic" electron correlation to try and bridge the gap between the MCSCF and FCI. But these methods can vary drastically:

  • Some require 4-body RDMs (e.g. NEVPT2), others only 3-RDMs (e.g. cummulant methods).
  • Some are size-consistent (e.g. NEVPT2), some are not (Davidson's +Q).
  • Some are available everywhere (Davidson's +Q), some are only in in-house codes (AC0/AC1).
  • ENPT2 can be parallelized w/ 100s of cores, NEVPT2 can be split into 8 parallel calculations.

I seek descriptions of all post-MCSCF dynamic correlation methods, including the following:

  • formula for how the energy and/or wavefunction is calculated,
  • N-Body RDM requirements,
  • size-consistency and size-extensivity (or lack thereof),
  • ability to Parallelize (or lack thereof),
  • whether or not spin purity is guaranteed,
  • invariance under orbital rotations (or lack thereof),
  • absence (or risk) of intruder states,
  • which software packages implement them.

Some post-MCSCF dynamic correlation methods I know include:

  • NEVPT (usually truncated at 2nd order: NEVPT2),
    • PC-NEVPT (partially contracted NEVPT),
    • SC-NEVPT (strongly contracted NEVPT),
  • Multi-reference Davidson correction (+Q),
  • Multi-reference Pople correction,
  • ENPT (Epstein-Nesbet Pertubration Theory, often used with SHCI),
  • Multi-reference Møller–Plesset Perturbation Theory,
  • CASPT / RASPT / GASPT (usually truncated at 2nd order: CASPT2 / RASPT2 / GASPT2),
  • AC0 and AC1 (Adiabatic Connection extrapolation schemes),
  • TCC (Tailored Coupled Cluster),
  • Externally Corrected Coupled Cluster,
  • MPCDFT (Multiconfigurational Pair Density Functional Theory) [potentially described here too].
  • MPSPT (matrix product state perturbation theory)
  • 2
    $\begingroup$ For a good start, you can look at the ORCA forum or their latest manual (version 5). From there, you can also get references for your further study, the calculation and implementation as well. $\endgroup$
    – Pro
    Sep 7, 2021 at 6:38

1 Answer 1


I can comment on externally corrected coupled-cluster (ec-CC) methods, as I have some direct experience in this topic.

Externally Corrected CC

Externally corrected CC methods seek to improve the results of standard single-reference (SR) CC computations in situations characterized by stronger multireference (MR) correlations by incorporating information about the higher-than-two-body clusters extracted from an external, non-CC source. Historically, the first ec-CC methods used non-CC sources obtained from projected UHF, valence bond, and small-scale MRCI. The latter method goes under the name of reduced multireference CCSD (RMR-CCSD). These days, one is more likely to use one of the modern alternatives to traditional CI/MRCI or CASSCF, such as FCIQMC, selected CI, or DMRG. In any case, once you've chosen an external CI source, $|\Psi^{(\text{CI})}\rangle = (1 + C)|\Phi\rangle$, where $|\Phi\rangle$ is the reference determinant and $C$ is the CI excitation operator, most ec-CC methods proceed by defining the ec-CC state as $$|\Psi\rangle = e^{T_1 + T_2 + T_3^{(\text{ext})} + T_4^{(\text{ext})}}|\Phi\rangle,$$

where $T_1$ and $T_2$ are the usual one- and two-body cluster components, and $$T_3^{(\text{ext})} = C_3 - C_1C_2 + \frac{1}{3}C_1^3$$ and $$T_4^{(\text{ext})} = C_4 - C_1C_3 - \frac{1}{2}C_2^2 + C_1^2C_2 - \frac{1}{4}C_1^4$$ are defined using the above expressions obtained by cluster analysis of the external non-CC state (cluster analysis means translating $C$'s into $T$'s using the formula $T = \log(1 + C)$). Once $T_3^{(\text{ext})}$ and $T_4^{(\text{ext})}$ are computed, they are frozen at these values, and the ec-CC computation proceeds by solving for $T_1$ and $T_2$ iteratively in the presence of these $T_3^{(\text{ext})}$ and $T_4^{(\text{ext})}$ clusters using a familiar CCSD-like set of amplitude equations,

$$\langle \Phi_{i}^{a} | (H e^{T_1+T_2+T_3^{(\text{ext})}})_C|\Phi\rangle = 0$$

$$\langle \Phi_{ij}^{ab} | (He^{T_1+T_2+T_3^{(\text{ext})}+T_4^{(\text{ext})}})_C|\Phi\rangle = 0,$$

with the resulting ec-CC energy computed by

$$E = \langle \Phi | (He^{T_1+T_2})_C|\Phi\rangle.$$

In the limiting case that the external source $|\Psi^{(\text{CI})}\rangle$ is the exact, full CI state, then the derived $T_3^{(\text{ext})}$ and $T_4^{(\text{ext})}$ clusters would take on the values associated with their full CC counterparts. Then, the $T_1$ and $T_2$ clusters solved within their presence would also be exact, resulting in the exact, full CI energy. In practice, $|\Psi^{(\text{CI})}\rangle$ would never be exact, but if it is "good enough," meaning that it provides a reasonable description of the leading MR correlations that might otherwise hamper the accuracy of the conventional CCSD method, then the resulting $T_1$ and $T_2$ obtained in the ec-CC procedure would improve CCSD and provide a much more accurate energy. Of course, the question of how good the external source needs to be is a delicate one, but most computations indicate that you can get away with using rather small CI wave functions that may be cheaply computed to give a minimal description of the relevant MR correlations, so you can think of ec-CC methods as using CC to handle dynamical correlations and CI to handle non-dynamical correlations, thus playing to the strengths of both types of wave function ansätze. That being said, there exist many good ways to deal with MR correlation within an entirely CC framework, just as there exist methods that fix the description of dynamical correlation within CI/MRCI. Nonetheless, ec-CC is a conceptually and computationally appealing hybrid CI/CC approach, particularly in situations characterized by strong correlations (e.g., breaking many bonds at once or metal-insulator Mott transitions). The computational benefit of ec-CC is one of its selling points. Because you are solving CCSD-like equations to obtain $T_1$ and $T_2$, the cost of the method is essentially that of CCSD. Although in theory, the presence of $T_3^{(\text{ext})}$ and $T_4^{\text{ext})}$ in these equations introduce terms that scale greater than $N^6$, where $N$ is a measure of the system size, these are one-time computations and you can find ways to take advantage of sparsity of the underlying CI state to compute these very efficiently.

I should mention that the ec-CC method I've described is an externally corrected extension of CCSD (it's sometimes called ec-CCSD). Externally corrected CC methods form a hierarchy like conventional CC, so you can have ec-CCSDT, where you iterate $T_1$, $T_2$, and $T_3$ in the presence of $T_4^{(\text{ext})}$ and $T_5^{(\text{ext})}$ obtained from CI, and ec-CCSDTQ where you iterate $T_1$, $T_2$, $T_3$, and $T_4$ in the presence of $T_5^{(\text{ext})}$ and $T_6^{(\text{ext})}$, and so on. While methods like ec-CCSDT or ec-CCSDTQ proceed at essentially the cost of CCSDT and CCSDTQ respectively, making them unappealing, one could imagine using lower-scaling approximations of CCSDT/CCSDTQ to perform the iterative steps, like CCSDt or CCSDtq (active-space CC methods). In fact, these kinds of methods would be extremely powerful and reasonably affordable for medium-sized systems, however, their implementation is laborious enough to keep most people away. The only example I know of is the work on ec-CCSDt using a CASSCF external source from the group of Prof. Shuai Li in Nanjing. Unfortunately, using CASSCF is a poor choice for external correction, and they did not see amazing performance. Finally, I also want to point out that I framed the usage of ec-CC methods as improving conventional CC methods, like CCSD, in situations characterized by stronger MR correlations. This makes them interesting to people in the CC development community, but it can equivalently be viewed as a way to improve the results of the underlying CI computation. So if you work hard and produce a high-quality, say, selected CI wave function and want a cheap routine on top of it that can account for missing dynamical correlations, ec-CC could be something useful (see J. Chem. Theory Comput. 2021, 17, 7, 4006–4027 for an in-depth discussion of exactly how and when this can happen; there are pitfalls). In this context, ec-CC plays a role similar to the MR-MBPT(2)-type corrections commonly employed in selected CI computations.

Now, I think I'll just fire off answers to your questions in the context of ec-CC

(1) Formula for how energy and/or wave function is calculated

This is provided in the above description. If you have a working CCSD code, just implement cluster analysis and tack on the few terms brought by $T_3^{(\text{ext})}$ and $T_4^{(\text{ext})}$, and you are good to go.

(2) $N$-body RDM requirements

I'm poorly versed in the business of $N$-representability conditions and related topics. I assume that since you have an effective CC state (meaning that it handles like a CC state with exponential parameterization via cluster amplitudes), you can use the same formulae for RDM's you might have from CCSD. Again, you should in theory include $T_3^{(\text{ext})}$ and $T_4^{(\text{ext})}$ in your expressions, but I might start by assuming that it's a decent approximation to compute properties using just $T_1$ and $T_2$.

(3) size-consistency

The ec-CC methods I described are not size-extensive (and thus not size-consistent), unless your external CI source is size-extensive (e.g., it's full CI or a corner case providing a specific instance of size-extensive CI). That being said, passing the CI information through CC iterations generally reduces the size-extensivity error by a lot (see papers on RMR-CCSD by Paldus and Li).

(4) Ability to parallelize

The method is as parallelizable as any other CC method, like CCSD.

(5) spin-contamination error

Except for computations using the RHF reference, ec-CC methods will be susceptible to spin-contamination error just like any conventional CC method. You can fix this by turning to orthgonally spin-adapted CC, but nobody has really figured out how to do it efficiently. You will also have to worry about spin-contamination brought in by the underlying CI source.

(6) invariance to orbital rotations

It gets interested here. Traditional CC methods are largely invariant to orbital rotations due to Thouless Theorem (not strictly invariant, but highly insensitive), but CI methods are not. Since the $T_3^{\text{ext}}$ and $T_4^{\text{ext}}$ clusters are obtained from CI, they will most likely break the strong orbital invariance of CC methods. I say probably because I've never tested this, and I haven't read any papers that examine this issue much.

(7) intruder states

As I've described it, ec-CC is a computation that is run for the ground state within a conventional single-reference CC formalism. Therefore, there is no risk of intruder states. That being said, the RMR-CCSD method of Paldus and Li includes externally corrected extensions of the genuine state-universal MRCC theory based on the Jeziorski-Monkhorst ansatz, so you could formulate a multiroot ec-CC theory in which you might worry about intruder states. In the case of RMR-CCSD, they formulated it using the generalized model space concept, so they can avoid problems with intruder states by picking CI spaces for each root appropriately.

(8) software packages

These methods are not common enough to be implemented by the big quantum chemistry codes. Most likely, all the ec-CC implementations exist as research codes held by the various groups that develop them. I have an ec-CC code compatible with selected CI wave functions implemented within my software package called ccpy, which you can try out here if you're interested, https://github.com/piecuch-group/ccpy. There should also exist an implementation of ec-CC written in Julia within in the Fermi.jl package.

  • $\begingroup$ +1 nice first answer! $\endgroup$ Dec 18, 2022 at 19:37
  • $\begingroup$ Welcome to our new community! Thank you for contributing your answer here, and we hope to see much more of you in the future! I have some preliminary questions about your answer: The question's title asks about adding dynamic correlation to an "MCSCF wavefunction", and perhaps you would agree that single-reference coupled cluster is neither MC nor SCF? You say we "can think of ec-CC methods as using CC to handle dynamical correlations and CI to handle non-dynamical correlations", so perhaps this answer applies when using CC on a CASSCF for example. Also, has DMRG really been used as CI source? $\endgroup$ Dec 19, 2022 at 5:44
  • $\begingroup$ Thank you! So, I think ec-CC can be viewed in one of two ways - (1) improving the results of SR CC computations and (2) improving the results of external CI wave functions. So I agree that (1) does not serve the purpose of your question (but it is the natural way to formulate ec-CC methods). (2) however, accomplishes exactly this goal. Although it's not normally used on improve standard MCSCF computations like CASSCF, CASCI, MRCI, etc., it has been used to improve the results of FCIQMC, CIPSI, HCI, and yes, DMRG (see this paper, J. Chem. Theory Comput. 2021, 17, 6, 3414–3425). $\endgroup$ Dec 19, 2022 at 14:16
  • $\begingroup$ (Contd.) Although the latter methods are in many cases operationally SR, I think that we should regard them as viable alternatives (improvements!) to conventional MCSCF methods. $\endgroup$ Dec 19, 2022 at 14:19

You must log in to answer this question.

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