Students' guide for GMCPT/GMCQDPT calculations on GAMESS

This document is a guide for students who perform GMCPT or GMCQDPT (MCSCF+PT) calculations on GAMESS. GMCPT is a single-state theory corresponding to MRMP PT in the CAS reference case and GMCQDPT is a multi-state theory. Use the names properly according to the definition.


Set the following namelists first:
  $MRMP   MRPT=GMCPT RDVECS=.T. $END  *T->F for also MCSCF calculation
A tip for parallel runs: MWORDS=xxx MEMDDI=0 DDTFPT=.F.


Taken from GAMESS document:
$GMCPT group        (relevant if CISTEP=GMCCI in $MCSCF)
                         (relevant if MRPT=GMCPT in $MRMP)

   This group specifies the determinants to be used in a 
general MCSCF wavefunction.  It also gives the necessary 
information to compute a 2nd order perturbation energy 
correction to the MCSCF energy of such a MCSCF reference, 
by choosing MPLEVL=2 in $CONTRL and MRPT=GMCPT.

   The PT is of quasidegenerate type, in which several 
MCSCF states can be perturbed simultaneously.  If more than 
one state is considered, the unperturbed model Hamiltonian 
is diagonal in the MCSCF state basis.  After 2nd order 
correction to both its diagonal and off-diagonal matrix 
elements, this model Hamiltonian is diagonalized to give 
the GMCQDPT energies.  The diagonalization also yields some 
information about the remixing of the reference states at 
2nd order.  GMCQDPT is therefore analogous to the two 
equivalent MCQDPT programs (MRPT=MCQDPT or DETMRPT) for 
CAS-references, but allows more general types of MCSCF 
reference.  The letters GMCPT should be understood as 
standing for GMCQDPT, and have been shortened only because 
of the constraints on input group names to 6 or fewer 
letters.  Of course, the program can also be used to obtain 
the 2nd order correction to the energy of just one state.

   At the present time, this program does not support 
EXETYP=CHECK.  It is enabled for parallel execution.

   1. data to specify active space and electronic state:

NMOFZC: number of frozen core orbitals, during the PT
        the shape of these orbitals will be optimized in
        the MCSCF stage, so they are "frozen" in the sense
        of not being correlated in the PT.  The default
        is the number of chemical core orbitals.

NMODOC: number of orbitals restricted to double occupancy
        during MCSCF, but which are correlated in the PT
        calculation.  In other words, the filled valence
        orbitals. (no default).  (It is possible to enter a
        different keyword NMOCOR which is the total number
        of doubly occupied orbitals, and NMOFZC.  In this
        case the program will obtain NMODOC by subtraction,
        namely NMODOC = NMOCOR - NMOFZC).

NMOACT: number of active orbitals in the MCSCF (no default)

NMOFZV: number of virtual orbitals to be omitted from the
        PT step.  The default is 0, retaining all virtuals.

NELACT: number of active electrons.  Since the default is
        computed from the total number of electrons given
        in $DATA and $CONTRL's ICHARG, minus 2*NMOFZC minus
        2*NMODOC, there is little reason to input this.

MULT:   multiplicity of the state, with the default being
        taken from MULT in $CONTRL.

ISTSYM: a set of integers specifying the spatial symmetry
        of the electronic state.  Choose from the table
            ISTSYM=  1   2   3   4   5   6   7   8
                C1   A
                Ci   Ag  Au
                Cs   A'  A''
                C2   A   B
                C2v  A1  A2  B1  B2
                C2h  Ag  Au  Bu  Bg
                D2   A   B1  B3  B2
                D2h  Ag  Au  B3u B3g B1g B1u B2u B2g
         Caution, this table differs from ISTSYM tables in
         other input groups.  Default is ISTSYM(1)=1,0,0

If you are treating a system with degenerate states in an 
appropriate Abelian subgroup of the true group, up to three 
ISTSYM values can be given, to specify all components of 
that originally degenerate state.

   2. data to specify the MCSCF CI (and PT's reference CI):

The type of general MCSCF reference is specified by REFTYP, 
which can be MRX, ORMAS, or RAS:

REFTYP= MRX means multi-reference determinant list, plus
        excitations (default).  The determinants will be
        given in a $PDET group, and the keywords NPDET and
        NEXCIT defined below are required.

REFTYP= RAS means the active space is divided into three
        subspaces, known as RAS1, RAS2, and RAS3.  Keywords
        MSTART and NEXCIT defined below are required.  For
        example, MSTART(1)=4,6,9 defines a RAS with three
        orbitals in the NMOFZC/NMODOC spaces, while the
        RAS1, RAS2, and RAS3 subspaces contain 2, 3, and
        NMOACT-5 orbitals.  It remains only to specify the
        excitation level NEXCIT between these spaces.

REFTYP= ORMAS defines even more general subspaces than RAS,
        and requires inputs NSPACE, MSTART, MINE, and MAXE.
        These have the same meaning as the $ORMAS keywords.

NPDET   is the number of parent determinants, to be given
        as NPDET lines in the $PDET group.  A value is
        required for REFTYP=MRX.

NEXCIT  is an excitation level.  A value is required for

NSPACE  is the number of subspaces into which the active
        space is divided.  Required for REFTYP=ORMAS.

MSTART  is an array telling the starting MO of each orbital
        space.  It is required for REFTYP=RAS and ORMAS.

MINE    is an array giving the minimum number of electrons
        occupying each subspace. Required for REFTYP=ORMAS.

MAXE    is an array giving the maximum number of electrons
        occupying each subspace. Required for REFTYP=ORMAS.

NSPACE, MSTART, MINE, and MAXE have the same meaning as in 
the $ORMAS group.  See there, and also in the MCSCF/CI 
section of REFS.DOC, for help in understanding the power of 
the ORMAS type of reference determinant list.

    3. data to define the reference CI states:

KSTATE  is an array of states to be used.  As an example,
        KSTATE(1)=0,1,0,1 means use states 2 and 4.  The
        default is the ground state, KSTATE(1)=1,0,0...

WSTATE  is a set of weights for each state.  The default
        is equal weight assigned to every state selected
        by KSTATE (WSTATE(1)=1.0, 1.0, 1.0, ...)

ISPINA  spin adaptation (default=0)
        0 means off, 1 means on (strictly), -1 means on
        (loosely).  Proper spin states are picked up
        automatically so this input is usually skipped.
        See NSOLUT in this context.

KNOSYM  a flag to turn off space symmetry use, i.e. ISTSYM.
        .FALSE. will ignore symmetry (default=.TRUE.)

KNOSPN  a flag to ignore spin symmetry, i.e. MULT.  Give
        as .FALSE. to ignore the spin (default=.TRUE.)

The next few influence the Davidson CI diagonalization, and 
are quite similar to $MCQDPT keywords, so the description 
here is terse.

NSOLUT  is the number of roots to be obtained.  If there
        are not enough states of the correct spin found in
        the first NSOLUT states to satisfy KSTATE/WSTATE,
        increase this parameter to find enough.

MXITER  is the maximum number of Davidson iterations to
        find the states (default=200)

THRCON  is the convergence criterion on the CI coefficient
        convergence (default= 1.0d-6)

THRENE  is a convergence criterion on the total energy of
        the states.  This is ignored if given as a negative
        number.  (default = -1.0d-12 Hartree)

MAXBAS  maximum expansion space size in the Davidson
        diagonalization subspace (default=100)

MDI     dimension of the initial guess subspace used to
        initiate the Davidson iterative CI solver.  See
        NHGSS in $DET for more information (default=300).

    4. data to define the perturbation computation:

IWGT    selects wavefunction analysis (default=1)
        0 means off, 1 means on (external), -1 means on
        (internal orbitals).  This will compute the
        approximate weight of the MCSCF reference CI in
        the first order wavefunction.  It is therefore
        a very useful diagnostic for the quality of the
        calculation, as the MCSCF state should be a high
        percentage.  The formula for the decomposition is
        changed from the original CAS-type MCQDPT (REFWGT
        in $MCQDPT).  The reference for this option is
        given below.  Select IWGT=0 if the fastest speed
        is desired.

KFORB   flag to request canonicalization (default=.TRUE.)
        Canonicalization within the core, virtual, and any
        rotationally invariant active subspaces yields a
        well defined theoretical model.  You would not
        normally turn this option off.

KSZDOE  flag to use spin (Sz) dependent orbital energies.
        If .TRUE., alpha and beta orbital canonicalization
        will involve unequal energies.  Default=.TRUE.

THRWGT  threshold weight on the square of CI coefficients,
        for determinant selection.  The default is 1.0d-8.
        Give as a negative number to retain all of the
        determinants, even those of very little importance,
        in the reference of the perturbation treatment.

THRGEN  threshold on generator constants.  Default=1.0d-9
        Raising lowers accuracy but produces speedups.
        Lowering to 1.0d-12 should give full accuracy for
        benchmarking purposes.

The next two deal with the so-called "intruder states".  
There are theoretical difficulties with either one.  THRDE 
just drops terms, so the potential surface may have small 
discontinuities.  EDSHFT always shifts results a little 
bit, even if no small denominators (aka intruder states) 
are actually present.  Clearly both are "band-aids"!

THRDE   is a threshold to simply drop out any term whose
        energy denominator is too small.  The default for
        this is 0.005 Hartree.  Change to zero to turn this
        option off.

EDSHFT  is similar to the same keyword in $MCQDPT.  The
        denominators D are changed to D + EDSHFT/D.  Turn
        off THRDE if you select this option.  A reasonable
        value to try is 0.02, the default is 0.0.

     5. miscellaneous data

CEXCEN = string defining the units for the excitation
         energy.  Choose from these 4 strings (any case):
             eV (default), cm-1, Kcal/mol, KJ/mol

DDTFPT = a flag requesting the distributed data integral
         transformation be used, if the run is parallel.
         This option requires MEMDDI in $SYSTEM.  If there
         is not enough memory to allow this, turn this
         option off to use an alternate parallel
         transformation (DEFAULT=.TRUE.).

There are additional technical parameters documented in the 
source code file gmcpt.src.


Cite the following two papers in your paper (The program is based on the latter, and GMC-QDPT was originally proposed in the former):
  1. H. Nakano, R. Uchiyama, and K. Hirao, J. Comput. Chem. 23, 1166-1175 (2002)
  2. R. Ebisuzaki, Y. Watanabe, and H. Nakano, Chem. Phys. Lett. 442, 164-169 (2007)
In addition, cite the following paper if you use the results of wavefunction analysis (the approximate weight was defined in this paper):
  1. M. Miyajima, Y. Watanabe, and H. Nakano, J. Chem. Phys. 124, 044101/1-9 (2006)

The present program is based on a scheme that uses matrix elements between the reference and ionized determinants [See Ref.2]. It is different from our original MC-QDPT scheme used in mcqdpt.src, which is based on the Goldstone diagrams, and also different from the original MRMP scheme by Hirao, which uses the matrix elements between CSFs, i.e. the Boys-Reeves formalism with the use of bonded functions. (It has been sometimes confused recent days, but historically the original MRMP and MC-QDPT computational schemes and codes were developed in different groups at Nagoya and Kyoto at that time, and hence quite independent.) The current scheme is also related to the Kozlowski-Davidson (adopted by Dr. Ivanic in demrpt.src) and Celani-Werner schemes.

Key words


Haruyuki Nakano
Department of Chemistry, Graduate School of Science
Kyushu University
744 Motooka, Nishi-ku, Fukuoka 819-0395, Japan