$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.  Additional inputs give 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.  After 2nd                        
order correction to both its diagonal and off-diagonal                          
matrix elements, this model Hamiltonian is diagonalized to                      
give the GMC-QDPT energies.  The diagonalization also                           
yields some information about the remixing of the reference                     
states at 2nd order.  Of course, the program can also be                        
used to obtain the 2nd order correction to the energy of                        
just one state.                                                                 
   GMC-QDPT is therefore analogous to the two equivalent                        
MCQDPT programs (MRPT=MCQDPT or DETMRPT) for CAS-type                           
references, but allows more general types of MCSCF                              
reference.  Compared to those programs, there are also                          
choices for the 0-th order states, for the orbital                              
energies, and for the treatment of external excitations.                        
   The letters GMCPT should be understood as standing for                       
GMC-QDPT, and have been shortened only because of the                           
constraints on input group names to 6 or fewer letters.                         
   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.                                             
SZ:     spin projection quantum number for determinants,                        
        default is (MULT-1)/2                                                   
STSYM:  The symmetry of the electronic state.  See $DET for                     
        possible values: use AP/APP in Cs, not primes.                          
        Default is the totally symmetric representation.                        
If you are treating a system with degenerate states in an                       
appropriate Abelian subgroup of the true group, up to three                     
STSYM values can be given, to specify all components of                         
that originally degenerate state.  For example,                                 
generates all P states for an atom running in the Abelian                       
subgroup D2h.                                                                   
   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 by $PDET input, 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 input.  A value is                          
        required for REFTYP=MRX.                                                
NEXCIT  is an excitation level.  A value is required for                        
        REFTYP=MRX or REFTYP=RAS.                                               
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 input.  See the 'how to do 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, ...)                                
IROOT   specifies which state's energy should be saved for                      
        use in numerical gradient evaluation.  IROOT                            
        counts only for those states included by KSTATE, so                     
        KSTATE(1)=0,1,0,1 and IROOT=2 refers to the second                      
        root computed (4th overall).  Default: IROOT=1.                         
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. STSYM.                      
        .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 perturbation theory computation:                          
KXGMC   a flag to choose the 0-th order Hamiltonian used,                       
        when more than one state is included by KSTATE and                      
        WSTATE. KXGMC has no impact on single state runs.                       
        .TRUE.  selects Granovsky's XMCQDPT equations for                       
        the zero-th order Hamiltonian, see                                      
          A.A.Granovsky, J.Chem.Phys. 134, 214113(2011).                        
        .FALSE. selects the original definition of the                          
        unperturbed Hamiltonian.  The default is .TRUE.                         
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), see Miyajima, Watanabe, and Nakano's                       
        reference cited 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.                                          
KROT    flag for treating (ij)->(ab) excitations                                
        .TRUE. means treating this type of term by the                          
        traditional MCQDPT formulae                                             
        .FALSE. uses a MP2-type formula when this type of                       
        term arises between two identical determinants,                         
        while using zero otherwise.  This is thought to be                      
        better in terms of size-consistency.  (default)                         
        KROT has an impact on run times and on the                              
        numerical result.  See the paper cited below by                         
        Ebisuzaki, Watanabe, and Nakano for details.                            
THRWGT  threshold weight on the square of CI coefficients,                      
        for determinant selection.  Any determinants that                       
        are excluded from the reference list due to THRWGT                      
        are treated in the outer space of the perturbation.                     
        Give as a negative number to retain all of the                          
        determinants, even those of very little importance,                     
        in the reference of the perturbation treatment.                         
        The default is 1.0d-8.                                                  
KSZDOE  flag to use spin (Sz) dependent orbital energies.                       
        This variable is ignored for singlet state(s), or                       
        if SZ is chosen as 0.                                                   
        If .TRUE., alpha and beta orbital energies are not                      
        the same,                                                               
     Ealp(i) = h(i,i) + sum_kl { Dalp(k,l)[(ii|kl)-(il|ki)]                     
                                +Dbet(k,l) (ii|kl)}                             
     Ebet(i) = h(i,i) + sum_kl { Dbet(k,l)[(ii|kl)-(il|ki)]                     
                                +Dalp(k,l) (ii|kl)}                             
        If .FALSE. both sets use the energies                                   
        E(i) = h(i,i) + sum_kl D(k,l)[(ii|kl)-1/2*(il|ki)]                      
             = [Ealp(i)+Ebet(i)]/2                                              
        from the total density D(k,l)=Dalp(k,l)+Dbet(k,l)                       
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.                                                  
THRHDE  threshold to ignore |/dE|, which is not a                       
        very effective screening, and its use is thus not                       
        recommended.  Default is 1.0 which should not                           
        screen anything.  Possible values are 0.05-0.10,                        
        since many |/dE| are around 0.02-0.03.                          
The next two deal with the so-called "intruder state                            
avoidance".  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"!  Note that the first ISA technique is turned on, by                      
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 the same as 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.).                                       
Note: There are additional technical parameters for $GMCPT,                     
documented only in the source code file gmcpt.src.                              
In case it is desirable for the GMC-QDPT program to                             
reproduce results obtained by the DETMRPT/MCQDPT programs:                      
a) use a CAS-SCF reference in the MCSCF step                                    
b) select REFTYP=ORMAS here, and enter NSPACE=1, giving                         
only one value for MSTART, MINE, MAXE                                           
c) retain the entire CAS reference in the internal                              
determinant's perturbation space, THRWGT=-1.0                                   
d) select the original external determinant space's                             
perturbation treatment, KROT=.FALSE.                                            
e) use equal alpha/beta orbital energies, KSZDOE=.FALSE.                        
f) in multi-state mode, select KXGMC off, to reproduce                          
those program's 0-th order reference states                                     
g) ensure ISA is turned off, THRDE= -1.0                                        
h) perhaps adjust numerical parameters to full accuracy, to                     
increase the no. of decimals: THRGEN=1D-12, THRHDE=1D+10.                       
References for GMC-QDPT:                                                        
a) H.Nakano, R.Uchiyama, K.Hirao                                                
   J.Comput.Chem. 23, 1166-1175(2002)                                           
b) M.Miyajima, Y.Watanabe, H.Nakano                                             
   J.Chem.Phys. 124, 044101/1-9(2006)                                           
c) R.Ebisuzaki, Y.Watanabe, H.Nakano                                            
   Chem.Phys.Lett. 442, 164-169(2007)                                           
The first paper introduced the theory, with further                             
developments including reference state weights given in the                     
second.  The present computer code is based on the                              
efficient formulation involving ionized intermediate                            
determinants, as described in the third paper.                                  

generated on 7/7/2017