MCSCF: Multi-Configurational Self-Consistent-Field¶
Code author: Daniel G. A. Smith, C. David Sherrill, and Matthew L. Leininger
Section author: Daniel G. A. Smith and C. David Sherrill
Module: Keywords, PSI Variables, DETCI
As the cost of Full CI scales exponentially with respect to the number of active orbitals it is often advantageous to neglect orbitals that do not exhibit strong correlation. These orbitals are variationally optimized simultaneously with the CI coefficients and known as Multi-Configurational Self-Consistent Field (MCSCF). The most commonly used MCSCF procedure is the complete-active-space self-consistent-field (CASSCF) approach [Roos:1980], which includes all possible determinants (with the proper symmetry) that can be formed by distributing a set of active electrons among a set of active orbitals. The MCSCF module performs CASSCF optimization of molecular orbitals via a two-step procedure in which the CI coefficients and orbitals are optimized in an alternating manner. The program uses a fairly simple approximate orbital Hessian [Chaban:1997:88] and a Newton-Raphson update, accelerated by Pulay’s DIIS procedure [Pulay:1980]. We have also implemented the RASSCF method [Malmqvist:1990:RASSCF], which is another kind of MCSCF which is typically less complete (and less expensive) than CASSCF.
Inactive orbitals in the MCSCF may be specified by the RESTRICTED_DOCC and RESTRICTED_UOCC keywords. These orbitals will remain doubly-occupied or doubly-unoccupied, respectively, in the MCSCF wavefunction. However, the form of these orbitals will be optimized in the MCSCF procedure. It is also possible to literally freeze inactive orbitals in their original (SCF) form using the FROZEN_DOCC and FROZEN_UOCC keywords. This is not normally what one wishes to do in an MCSCF computation (e.g., it complicates the computation of gradients), but it can make the computations faster and is helpful in some circumstances where unphysical mixing of inactive and active occupied orbitals might occur. Presently, it is not possible to mix the use of restricted and frozen orbitals in PSI4.
An illustrative CASSCF example is as follows:
molecule {
O
H 1 1.00
H 1 1.00 2 103.1
}
set {
basis 6-31G**
restricted_docc [1, 0, 0, 0]
active [3, 0, 1, 2]
}
energy('casscf')
This input will compute the CASSCF energy of water where the 1s Oxygen orbital and several virtual orbitals are not included in the CI expansion, but are still optimized. The following is a full list of spaces within the various MCSCF types.
RASSCF |
CASSCF |
---|---|
Basic MCSCF Keywords¶
MCSCF_E_CONVERGENCE¶
Convergence criterion for energy. See Table Post-SCF Convergence for default convergence criteria for different calculation types.
Type: conv double
Default: 1e-7
MCSCF_R_CONVERGENCE¶
Convergence criterion for the RMS of the orbital gradient
Type: conv double
Default: 1e-5
MCSCF_TYPE¶
Method to handle the two-electron integrals
Type: string
Possible Values: DF, CONV, AO
Default: CONV
MCSCF_ALGORITHM¶
Convergence algorithm to utilize. Two-Step, Augmented Hessian, or One-Step. Defaults to TS for RASSCF.
Type: string
Possible Values: TS, AH
Default: TS
MCSCF_MAXITER¶
Maximum number MCSCF of iterations
Type: integer
Default: 30
MCSCF_ROTATE¶
Apply a list of 2x2 rotation matrices to the orbitals in the form of [irrep, orbital1, orbital2, theta] where an angle of 0 would do nothing and an angle of 90 would switch the two orbitals.
Type: array
Default: No Default
MCSCF_DIIS_START¶
Iteration to turn on DIIS for TS convergence
Type: integer
Default: 3