Skip to content

CASSCF

Keywords of the CASSCF input block

Keyword Format Description Default
NEl (ActEl) integer The number of active electrons. 0
NOrb (ActOrb) integer The number of active orbitals. 0
ConfImportanceThrs double Threshold for printing out CI-configurations with the corresponding leading coefficient. 5e-2
DavidsonAHPCDim integer Dimension of the augmented Hessian Davidson preconditioner used in NR and FNR. More specifically, the number of internal/virtual orbital pairs with lowest energy differences. Based on https://doi.org/10.1063/5.0090447. 256
DIISDim integer The number of SCF cycles the DIIS takes into account. 5
DIISFac double A factor with which all diagonal entries in the DIIS matrix are multiplied except for the the one corresponding to the lowest energy. 1.05
DoASSIST (DoASS1ST) bool If set to true the density of the SC-NEVPT first order interacting space (and the quasi-natural orbitals) are evaluated. Can also be invoked by DOASS1ST.7 false
DoNEVPT2 bool If set to true a SC-NEVPT2 calculation is conducted after the CASSCF procedure.1,2,3 false
DoSOC bool If set to true, a Spin-Orbit Coupling calculation is done. false
StoreSOCMatrices bool If set to true, SOC-, s-, l-, and p-matrices will be stored. false
DoQDNEVPT2 bool If set to true a quasi-degenerate SC-NEVPT24 calculation is conducted after the CASSCF procedure. false
ETol double  The energy convergence tolerance of the orbital optimization. 1.0e-07
FinalActOrbs string Defines the type of active orbitals after the last iteration. Available options: unchanged, natural. unchanged
CASCINatOrbs bool If set to true and MaxIter is set to 0 (CASCI), this keyword invokes the generation of natural orbitals after the CI run false
CISolver string Specifies the active-space solver. Can be , FCI, HCI or GCI (experimental). FCI
FullConvergence bool If set to false, convergence is only signaled when either the \(E_{tol}\) and \(G_{tol}\) convergence criteria are fulfilled. true
GTensor bool If set to true, the g-tensor is calculated. DoSOC must be set to true false
GTol double The gradient norm convergence tolerance of the orbital optimization. 1.0e- 04
IPEAShift bool If set true a CASPT2-type approximate denominator together with a IPEA shift is used for the ASS1ST procedure true
IPEAShiftValue double The value of IPEA shift used in the ASS1ST procedure. 0.25
MaxNTrialVecs integer Maximum dimension of the Davidson expansion space. 500
MaxIter integer The maximum number of orbital optimization iterations. 50
NRoots vector(integer) The number of calculated roots for each multiplicity. 1
OrbStep string Defines the orbital optimization technique. Available Options: NR, DIIS, FNR, SuperCIPTDIIS.8,9,10,11,12,13,14 SuperCIPTDIIS

| PrintWeightThresh | double | The weight threshold for printing a contribution in the state composition output. | 0.01 | | PTCanonStep | string or integer | Determines the way that molecular orbitals and their energies are generated prior to NEVPT2 calculations. Options are SA or 0 for state-averaged orbitals and SS or 1 for state-specifically canonicalized orbitals. | sa | | LevelShiftDn | double | An artificial shift of the occupied orbital energies (in a.u.) to improve convergence of the SCF procedure. | 1.0 | | LevelShiftUp | double | An artificial shift of the virtual orbital energies (in a.u.) to improve convergence of the SCF procedure. | 1.0 | | NRMaxIter | integer | The maximum number of iterations during the numerical Davidson diagonalization of the Hessian matrix during the Newton-Raphson procedure. | 50 | | NRGuessMatDim | integer | The dimension of the guess matrix used in the Davidson routine during the Newton-Raphson procedure. | 256 | | QDNEVPT2Type | string | Determines the way the effective QD-NEVPT2 matrix is diagonalized. Possible options are VanVleck5, Cloizeaux6 or Bloch.15 | VanVleck | | SwitchOrbStep | string | The orbital optimization step that is used close to convergence. | SuperCIPTDIIS | | SwitchOrbStepThresh | double |  The gradient norm at which the orbital optimization technique is switched. | 0.03 | | TrustRadius | double | Maximum norm of the orbital step that can be taken by second order NR and FNR methods. | 0.5 | | TrustRadiusScaling | double | Scaling factor applied to the trust radius in the FNR orbital optimization method to force convergence. | 0.7 | | UsePrevCFGsThrs | double | Threshold for the orbital gradient norm to use previous steps configurations in HCISCF. | 5e-4 | | Weights | vector(double) | The weight of each root within the state-averaging procedure. For calculations with multiple spin states, the weights need to be given in the same order as in the input of the spin multiplicities. If the sum of all weights does not match 1, the weights will be renormalized to 1. By default each root has an equal weight. | 1 |

| ReadExtHOrcaJSON | bool | If set to true, the one-electron Hamiltonian will be read from an Orca .json file. | false | | CalcSSGrad | integer | Requests calculation of the state-specific MCSCF nuclear gradient. The argument is the index (root) of the state for which the gradient is calculated. | 0 | | CalcSAGrad | integer | Requests calculation of the state-averaged MCSCF nuclear gradient. The argument is the index (root) of the state for which the gradient is calculated. | 0 | | CalcNAC | bool | If set to true, the SA-CASSCF non-adiabatic couplings will be calculated. | false | | CalcCIOptGrad | bool | If set to true, the conical intersection optimization gradient will be calculated. | true | | NRRTol | double | Threshold for signaling microiterations convergence in NR and FNR methods. | 1.0e-05 | | PCGThresh | double | Residual threshold for signaling convergence of the PCG algorithm. | 1e-05 | | PCGMaxIter | int | Maximum number of preconditioner conjugate-gradient (PCG) iterations. | 100 | | DoENEVPT2 | bool | If set to true a NEVPT2 calculation with the Epstein-Nesbet 0th order Hamiltonian for the Va and Vi classes will be conducted. Works for HCI only. | false | | DoNEVPT2Residuals | bool | If set to true, the residuals will be calculated in HCI-NEVPT2. | true | | DoAC0 | bool | If set to true an AC0 calculation is conducted after the CASSCF procedure.16 | false |


  1. C. Angeli, R. Cimiraglia, S. Evangelisti, T. Leininger, J. Malrieu, J. Chem. Phys. 2001, 114, 10252. 

  2. C. Angeli, R. Cimiraglia, J. Malrieu, J. Chem. Phys. 2002, 117, 9138. 

  3. S. Guo, M. A. Watson, W. Hu, Q. Sun, G. K.-L. Chan, J. Chem. Theory Comput. 2016, 12, 1583–1591. 

  4. C. Angeli, S. Borini, M. Cestari, R. Cimiraglia, J. Chem. Phys. 2004, 121, 4043–4049. 

  5. I. Shavitt, L. T. Redmon, J. Chem. Phys. 1980, 73, 5711–5717. 

  6. J. Des Cloizeaux, Nucl. Phys. 1960, 20, 321–346. 

  7. A. Khedkar, M. Roemelt, J. Chem. Theory Comput. 2019, 15, 3522–3536. 

  8. B. O. Roos, P. R. Taylor, P. E. Si, et al., Chem. Phys. 1980, 48, 157–173. 

  9. C. Angeli, S. Evangelisti, R. Cimiraglia, D. Maynau, J. Chem. Phys. 2002, 117, 10525–10533. 

  10. C. Kollmar, K. Sivalingam, B. Helmich-Paris, C. Angeli, F. Neese, J. Comput. Chem. 2019, 40, 1463–1470. 

  11. P. Pulay, Chem. Phys. Lett. 1980, 73, 393–398. 

  12. P. Pulay, J. Comput. Chem. 1982, 3, 556–560. 

  13. U Meier, V Staemmler, Theor. Chim. Acta 1989, 76, 95–111. 

  14. P. E. Siegbahn, J. Almlöf, A. Heiberg, B. O. Roos, J. Chem. Phys. 1981, 74, 2384–2396. 

  15. C. Bloch, Nucl. Phys. 1958, 6, 329–347. 

  16. Y. Guo, K. Pernal, Faraday Discuss. 2024, 254, 332–358.