Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • chronusq_public chronusq_public
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1
    • Issues 1
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ChronusQ
  • chronusq_publicchronusq_public
  • Wiki
  • Input sections
  • MCSCF

Last edited by Hang Hu Nov 23, 2021
Page history

MCSCF

Table of contents

  • Table of contents
  • Details
  • Keywords Summary
  • The JobType Keyword
  • Keywords to partition correlation space
    • The NActO and NActE Keywords
    • The RAS1MaxHole and RAS3MaxElec Keywords
    • The *Orbital Keywords
    • The SwapMO Keyword
  • Keywords to control CI diagonalization
    • The CIDiagAlg Keyword
    • The MaxCIIter and CIConv Keywords
  • Keywords to control orbital rotations
    • The SCFAlg Keyword
    • The MaxSCFIter, SCFEneConv and SCFGradConv Keywords
    • The HessDiagScale Keyword
  • Other Keywords
    • The OsciStren KeyWord
    • The GenIVO KeyWord
  • Example
    • CAS(3,8)-CI with solving lowest 6 roots
    • SA6-CAS(3,8)-SCF with state averaging on lowest 6 roots
    • RAS(11,26)-(2,8,2,10)-CISD with solving lowest 6 roots
  • Citations

Details

The MCSCF section handles the Multi-Configurational Self-Consistent Field parameters for solving the multi-reference configuration interactions and the optimization of the multi-configurational wave functions.

Keywords Summary

Keyword Type Description Default Required
JobType String A specific MCSCF job N/A Yes
NRoots Integer Number of states to compute 1 No
StateAverage bool Use state average density for orbital rotation if true true No
NActO Integer(s) Number of active orbitals N/A Yes
NActE Integer Number of active electrons N/A Yes
RAS1MaxHole Integer Maximum number of holes allowed in RAS1 N/A if RAS
RAS3MaxElec Integer Maximum number of electrons allowed in RAS1 N/A if RAS
CASOrbital integer(s) CAS Orbitals IDs N/A No
RAS1Orbital integer(s) RAS1 orbitals IDs N/A No
RAS2Orbital integer(s) RAS2 orbitals IDs N/A No
RAS2Orbital integer(s) RAS3 orbitals IDs N/A No
INOrbital integer(s) Inactive core orbitals IDs N/A No
FVOrbital integer(s) frozen virtual orbitals IDs N/A No
SwapMO Multiline string Swap ordering of MOs before MCSCF computations N/A No
CIDiagAlg String Diagonalization algorithm to solve CI FullMatrix No
MaxCIIter integer Maximum number of CI iterations in Davidson 128 No
CIConv Double precision float Convergence threshold for CI vectors in Davidson 10^{-6} No
SCFAlg String Algorithm to do orbital rotation AQ2nd No
MaxSCFIter integer Maximum number of SCF iterations (orbital rotation) 128 No
SCFEneConv Double precision float Convergence threshold for state energies during orbital rotation 10^{-8} No
SCFGradConv Double precision float Convergence threshold for orbital gradient during orbital rotation 10^{-4} No
HessDiagScale Double precision float Scale factor for orbital-orbital Hessian 2.0 No
OsciStren integer Compute oscillator strength among transitions of all states to first N number of states 0 No
GenIVO bool Generate improved virtual orbitals if true false No

The JobType Keyword

The JobType keyword basically specifies the intended computation in the input file, and keywords not related to the specified JobType will be ignored. Currently available JobTypes includes:

  • CASCI: complete active space configuration interactions.
  • CASSCF: complete active space self consistent field.
  • RASCI: restricted active space configuration interactions. 1C-RASCI and using FullMatrix is not implemented.

Keywords to partition correlation space

The NActO and NActE Keywords

NActO defines the number of active orbitals. For CAS jobs, it need only one number, and for RAS jobs, it need three numbers (separated by space) to specify number of orbitals in RAS1, RAS2, and RAS3.

NActE defines the number of total active electrons, it only needs 1 number regardless CAS or RAS jobs. For RAS jobs, RAS1 and RAS3 are assumed occupied and empty at ground state configurations

The RAS1MaxHole and RAS3MaxElec Keywords

RAS1MaxHole and RAS3MaxElec are need to define the maximum excitation levels for RAS jobs.

The *Orbital Keywords

The *Orbital Keywords (CASOrbital, RAS1Orbital, RAS2Orbital, RAS2Orbital, INOrbital FVOrbital) can be used to select orbital groups using MO id numbers. Valid expression includes:

  • multiple numbers separated by space or comma ,
  • a range using two numbers connected by dash -

One or more of those keywords can be specified together, with the requirement that the total number of orbitals are same as specified by NActO. The orbital space will be partitioned using the explicit specified groups first, and then rest of the ungrouped orbitals will be partitioned in the order of IN, CAS, FV for CAS jobs and IN, RAS1, RAS2, RAS3, FV for RAS jobs.

for example:

  • An CAS job with 20 MOs and 10 electrons in total and the following inputs
[MCSCF]
...
NActO = 6
NActE = 3
CASOrbital = 4,6, 9-12  
...

will results as:

  • inactive core orbitals (7 in total) as MO 1, 2, 3, 5, 7 ,8, 13
  • active space orbitals (6 in total) as MO 4, 6, 9, 10, 11, 12
  • frozen core orbitals as MO 14, 15, 16, 17, 18, 19, 20.

The SwapMO Keyword

Same as SCF.SwapMO. Unlike SCF.SwapMO is doing swapping before SCF, MCSCF.SwapMO does swapping after SCF procedure but before MCSCF computations.

Keywords to control CI diagonalization

The CIDiagAlg Keyword

The CIDiagAlg keyword specifies the algorithm to diagonalize CI Hamiltonian. Available options now include:

  • FullMatrix: form full CI matrix in core and then use BLAS function to perform diagonalization. This option is not implemented for RAS jobs at this moment.
  • Davidson: use davidson algorithm to iteratively diagonalize the lowest NRoots number of states. This is very usefully where only ground state and a few excited states are of interest in large CI calculations. Note that when NRoots is larger than half of the total number of configurations, Davidson is actually slower than FullMatrix.

The MaxCIIter and CIConv Keywords

The MaxCIIter and CIConv keywords are only used in Davidson algorithm. CIConv is measured by the norm of CI vector residues.

Keywords to control orbital rotations

The SCFAlg Keyword

The SCFAlg keyword specifies the algorithm to do orbital rotations using Newton Raphson approach. Available options now include:

  • AQ2nd: Approximated Quasi-second order method. The orbital-orbital Hessian matrix is approximated with diagonal one-body terms.

A few more options are under construction 🚧 :

  • Q2nd: Quasi-second order method. The orbital-orbital Hessian matrix is approximated with exact diagonal terms.
  • 2nd: Second order method. The full orbital-orbital Hessian matrix is constructed and inversed to construct rotation matrix.

The MaxSCFIter, SCFEneConv and SCFGradConv Keywords

Use to control orbital rotation iterations. Program finishes when both energy change and gradient change meet the threshold defined by SCFEneConv and SCFGradConv.

The HessDiagScale Keyword

Use to scale Hessian diagonal elements when doing orbital rotation, and it's only valid for AQ2nd and Q2nd. A larger HessDiagScale will result in a smaller step size during orbital rotations. Sometimes, it helps convergence when using those approximated Hessians.

Other Keywords

The OsciStren KeyWord

Request oscillator strength calculations between computed CI states. Input is an integer N, and transitions of all states to the first N number of states will be computed. Currently only two component calculations are supported.

The GenIVO KeyWord

Whether to generate improved virtual orbitals after MCSCF completes. Virtual block Fock matrix, with contribution coming from a 'cationic' active space (electron density scaled by \frac{n_{e} - 1}{n_{e}}), is diagonalized to form a less diffusive virtual orbitals. This is useful and recommended for truncating virtual orbitals in a latter MRCI or RASCI calculations.

Example

CAS(3,8)-CI with solving lowest 6 roots

[MCSCF]
JobType = CASCI
NActO = 8
NActE = 3
NRoots = 6

SA6-CAS(3,8)-SCF with state averaging on lowest 6 roots

[MCSCF]
JobType = CASSCF
NActO = 8
NActE = 3
NRoots = 6
StateAverage = true

RAS(11,26)-(2,8,2,10)-CISD with solving lowest 6 roots

[MCSCF]
JobType = RASCI
NActO = 8 8 10
NActE = 3
NRoots = 6
RAS1MaxHole = 2
RAS3MaxElec = 2
CIDiagAlg = Davidson

Citations

  1. Andrew J. Jenkins, Hongbin Liu, Joseph M. Kasper, Michael J. Frisch, and Xiaosong Li (2019). Variational Relativistic Two-Component Complete-Active-Space Self-Consistent Field Method Journal of Chemical Theory and Computation, 2019, 15, 5, 2974–2982.

  2. Hang Hu, Andrew J. Jenkins, Hongbin Liu, Joseph M. Kasper, Michael J. Frisch, and Xiaosong Li (2020). Relativistic Two-Component Multireference Configuration Interaction Method with Tunable Correlation Space Journal of Chemical Theory and Computation, 2020, 16, 5, 2975–2984.

Clone repository

Overview and Features

Getting ChronusQ

Running ChronusQ

Input sections

     Overview
     QM and PROTQM
     Molecule
     Basis and DFBasis
     Ints
     DFTInts
     SCF
     RT
     Response
     CC
     MCSCF
     Misc

FAQ

Examples

     HF energy
     Relativistic DFT Energy
     Linear Response TDDFT
     Frequency dependent TDHF
     Model Order Reduction of TDDFT
     Electron dynamics

Keyword Reference

Binary Reference