$SCF group       relevant if SCFTYP = RHF, UHF, or ROHF,
                   required if SCFTYP = GVB)
 
    This group of parameters provides additional control
over the RHF, UHF, ROHF, or GVB SCF steps.  It must be
given to define GVB open shell or perfect pairing
wavefunctions.  See $MCSCF for multireference inputs.
 
DIRSCF = a flag to activate a direct SCF calculation,
         which is implemented for all the Hartree-Fock
         type wavefunctions:  RHF, ROHF, UHF, and GVB.
         This keyword also selects direct MP2 computation.
         The default of .FALSE. stores integrals on disk
         storage for a conventional SCF calculation.
 
FDIFF  = a flag to compute only the change in the Fock
         matrices since the previous iteration, rather
         than recomputing all two electron contributions.
         This saves much CPU time in the later iterations.
         This pertains only to direct SCF, and has a
         default of .TRUE.  This option is implemented
         only for the RHF, ROHF, UHF cases.
 
         Cases with many diffuse functions in the basis
         set, or large molecules, may sometimes be "mushy"
         at the end, rather than converging.  Increasing
         ICUT in $CONTRL by one may help this, or consider
         turning this parameter off.
 
---- The next flags affect convergence rates.
 
DIIS   = selects Pulay's DIIS interpolation.
SOSCF  = selects second order SCF orbital optimization.
  Only one of DIIS or SOSCF may be .TRUE. in any run.
  Which is chosen by default depends on the run:
      for RHF, GVB, UHF, or ROHF (if Abelian): SOSCF.TRUE.
      for any DFT, or for non-Abelian groups:  DIIS=.TRUE.
 
NOCONV = .TRUE. means neither SOSCF nor DIIS will be used,
         specify NOCONV=.TRUE. DIIS=.FALSE. SOSCF=.FALSE.
         in the rare case you don't wish to use either one.
         NOCONV's default is .FALSE., meaning the program
         will obey your choice of DIIS/SOSCF, or else pick
         its default for them.
 
NOSCAL = a flag to avoid scaling rotations in SOSCF.
 
     Once either DIIS or SOSCF are initiated, the following
less important accelerators are placed in abeyance:
 
EXTRAP = selects Pople extrapolation of the Fock matrix.
DAMP   = selects Davidson damping of the Fock matrix.
SHIFT  = selects level shifting of the Fock matrix.
RSTRCT = selects restriction of orbital interchanges.
DEM    = selects direct energy minimization, which is
         implemented only for RHF.  (default=.FALSE.)
 
defaults for     EXTRAP  DAMP  SHIFT RSTRCT  DIIS  SOSCF
ab initio:         T      F      F      F     F/T   T/F
semiempirical:     T      F      F      F      F     F
 
     The above parameters are implemented for all SCF
wavefunction types, except that DIIS will work for GVB only
for those cases with NPAIR=0 or NPAIR=1.
 
 
CUHF   = flag requesting Constrained UHF, which causes
         the occupied beta orbitals of a UHF run to lie
         entirely within the occupied alpha orbital space.
         This produces results identical to high spin
         ROHF!  Obviously, this keyword pertains only
         when using SCFTYP=UHF.  The default is .FALSE.,
         meaning a spin-contaminated ordinary UHF solution
         is sought.  Applicable to UHF or UDFT energy and
         gradients, or to UMP2 energy calculations.
 
---- These parameters fine tune the various convergers.
 
CONV   = SCF density convergence criteria.
         Convergence is reached when the density change
         between two consecutive SCF cycles is less than
         this in absolute value.  One more cycle will be
         executed after reaching convergence.   Less
         accuracy in CONV gives questionable gradients.
         The default is 1.0d-05, except runs involving
         CI, MP2, CC, or TDDFT use 1.0d-06 to obtain more
         crisply converged virtual orbitals.
 
SOGTOL = second order gradient tolerance.  SOSCF will be
         initiated when the orbital gradient falls below
         this threshold.  (default=0.25 au)
 
ETHRSH = energy error threshold for initiating DIIS.  The
         DIIS error is the largest element of e=FDS-SDF.
         Increasing ETHRSH forces DIIS on sooner.
         (default = 0.5 Hartree)
 
MAXDII = Maximum size of the DIIS linear equations, so
         that at most MAXDII-1 Fock matrices are used
         in the interpolation.  (default=10)
 
SWDIIS = density matrix convergence at which to switch
         from DIIS to SOSCF.  A value of zero means to
         keep using DIIS at all geometries, which is the
         default.  However, it may be useful to have
         DIIS work only at the first geometry, in the
         initial iterations, for example transition
         metal ECP runs which has a less good Huckel
         guess, and then use SOSCF for the final SCF
         iterations at the first geometry, and ever
         afterwards.  A suggested usage might be
         DIIS=.TRUE. ETHRSH=2.0 SWDIIS=0.005.
         This option is not programmed for GVB.
 
LOCOPT = When set to .TRUE., SCF options are locked
         and do not change during the following:
         SOSCF and DIIS switch (SWDIIS), DFT grid switch,
         RHF -> DFT switch (SWOFF). If .FALSE., any
         of these switches resets some SCF options, such
         as SHIFT or DAMP.  (Default: .FALSE.)
 
RESET  = In UHF, reset SOSCF or DIIS if energy rises
         (Default: .TRUE. for UHF, .FALSE. otherwise).
 
DEMCUT = Direct energy minimization will not be done
         once the density matrix change falls below
         this threshold.  (Default=0.5)
 
DMPCUT = Damping factor lower bound cutoff.  The damping
         damping factor will not be allowed to drop
         below this value. (default=0.0)
note: The damping factor need not be zero to achieve valid
convergence (see Hsu, Davidson, and Pitzer, J.Chem.Phys.,
65, 609 (1976), see the section on convergence control),
but it should not be astronomical either.
 
        * * * * * * * * * * * * * * * * * * * * *
        For more info on the convergence methods,
        see the 'Further Information' section.
        * * * * * * * * * * * * * * * * * * * * *
 
          ---- orbital modification options ----
 
    The four options UHFNOS, VVOS, MVOQ, and ACAVO are
mutually exclusive.  The latter 3 require RUNTYP=ENERGY,
and should not be used with any correlation treatment.
 
UHFNOS = flag controlling generation of the natural
         orbitals of a UHF function. (default=.FALSE.)
 
VVOS   = flag controlling generation of Valence Virtual
         Orbitals.  See J.Chem.Phys. 120, 2629-2637(2004).
         The default is .FALSE.
 
VVOs are a quantitative realization of the concept of the
"lowest unoccupied molecular orbital".  The implementation
allows any elements H-Xe, for RHF, ROHF, and GVB
wavefunctions, as well as DFT runs (see also VVOS in
$MCSCF).  Core potentials may not be used.  VVOS should be
much better MCSCF starting orbitals than either MVOQ or
ACAVO type virtuals.
 
MVOQ   = 0  Skip MVO generation (default)
       = n  Form modified virtual orbitals, using a cation
            with n electrons removed.   Implemented for
            RHF, ROHF, and GVB.   If necessary to reach a
            closed shell cation, the program might remove
            n+1 electrons.  Typically, n will be about 6.
       = -1 The cation used will have each valence orbital
            half filled, to produce MVOs with valence-like
            character in all regions of the molecule.
            Implemented for RHF and ROHF only.
 
ACAVO  =    Flag to request Approximate Correlation-Adapted
            Virtual Orbitals.  Implemented for RHF, ROHF,
            and GVB (w/o direct SCF).  Default is .FALSE.
 
PACAVO =    Parameters used to define the ACAVO generating
            operator, which is defined as
          a*T + b*Vne + c*Jcore + d*Jval + e*Kcore + f*Kval
The default, PACAVO(1)=0,0,0,0,0,-1, maximizes the exchange
interaction with valence MOs (see for example J.L.Whitten,
J.Chem.Phys. 56, 5458-5466(1972).
The K-orbitals of D.Feller, E.R.Davidson J.Chem.Phys. 74,
3977-3979(1981) are 0.06*F-K(valence), which is
PACAVO(1)= 0.06,0.06,0.12,0.12,-0.06,-1.06.
Of course, canonical virtuals are PACAVO(1)=1,1,2,2,-1,-1.
 
                       * * *
 
UHFCHK  = a flag to perform a RHF --> UHF wavefunction
          stability test (relaxation of RHF orbitals to
          unequal alpha and beta orbitals).  This option is
          implemented only for RHF, and involves testing
          only pairs of orbitals at a single time:
          this is not foolproof!   default is .FALSE.
 
NHOMO   = if UHFCHK is selected, the number of orbitals at
          The top of the occupied orbital space to be
          checked for instabilities.
          Default= -1, meaning check HOMO and HOMO-1.
 
NLUMO   = if UHFCHK is selected, the number of orbitals
          at the bottom of the virtual space checked.
          Basis sets with diffuse functions should check
          many more orbitals, to get past the diffuse MOs.
          Default=2, meaning check LUMO, LUMO+1, LUMO+2.
 
                       * * *
 
MOM    = flag enabling the Molecular Overlap Method (MOM).
         Currently works only with SCFTYP=UHF.
         MOM computes excitations by selecting orbitals at
         each iteration to resemble earlier iterations.
         See J.Phys.Chem. A 112, 13164-13171(2008).
         (default=.FALSE.)
note: MOM typically requires an initial MOREAD set of
ground-state MO's, reordered by NORDER=1 in conjunction
with the IORDER/JORDER arrays.
The MOM flag is an algorithm very similar to that enabled
by the RSTRCT flag.  Note: RSTRCT works with all SCF types.
 
KPROJ     determines the flavor of the MOM projections p_j
          obtained from the overlap matrix O(i,j).
          KPROJ pertains only if the MOM flag is enabled.
        = 0 p_j = |sum_i O(i,j)|
                  as given in the original MOM article
        = 1 p_j = sum_i O(i,j)  (default)
        = 2 p_j = sum_i O(i,j)*O(i,j),
                  as implemented in Q-Chem
 
            ----- GVB wavefunction input -----
 
    The next parameters define the GVB wavefunction.  See
also MULT in the $CONTRL input.  The GVB wavefunction
assumes orbitals are in the order core, open, pairs.
 
NCO    =   The number of closed shell orbitals.  The
           default almost certainly should be changed!
           (default=0).
 
NSETO  =   The number of sets of open shells in the
           function.  Maximum of 10. (default=0)
 
NO     =   An array giving the degeneracy of each open
           shell set.  Give NSETO values.
           (default=0,0,0,...).
 
NPAIR  =   The number of geminal pairs in the -GVB-
           function.  Maximum of 12.  The default
           corresponds to open shell SCF (default=0).
 
CICOEF =   An array of ordered pairs of CI coefficients
           for the -GVB- pairs.
           (default = 0.90,-0.20,0.90,-0.20,...)
For example, a two pair case for water, say, might be
CICOEF(1)=0.95,-0.05,0.95,-0.05.  If not normalized, as in
the default, CICOEF will be.  This parameter is useful in
restarting a GVB run, with the current CI coefficients.
 
COUPLE =   A switch controlling the input of F, ALPHA,
           and BETA. (Default=.FALSE.)
Input for F, ALPHA, BETA will be ignored unless you select
this variable as .TRUE.
 
F      =   An vector of fractional shell occupations.
 
ALPHA  =   An array of A coupling coefficients, given in
           lower triangular order.
 
BETA   =   An array of B coupling coefficients, given in
           lower triangular order.
 
    Note:  The default for F, ALPHA, and BETA depends on
the state chosen.  Defaults for the most commonly occurring
cases are internally stored.  See "Further Information" for
other cases, including degenerate open shells.
    Note: ALPHA and BETA can be given for -ROHF- orbital
canonicalization control, see "Further Information".
 
        ----- miscellaneous options -----
 
NPUNCH =     option for output to the PUNCH file
       =  0  do not punch out the final orbitals
       =  1  punch out the occupied orbitals
       =  2  punch out occupied and virtual orbitals
             The default is NPUNCH = 2.
 
NPREO  = energy and orbital printing options, applied
         after other output options, for example NPRINT=-5
         for no orbital output overrules NPREO.  NPREO
         affects only printing, see NPUNCH just above.
         Default: 1,9999,2,1 (meaning print all orbitals,
         but no separate list of orbital energies).
 
         Orbitals from NPREO(1) to NPREO(2) and orbital
         energies from NPREO(3) to NPREO(4) are printed.
         Positive values are explicit orbitals, while
         negative numbers are relative to the HOMO.  Here,
         HOMO means NE/2, ie RHF-like counting, no matter
         what the SCFTYP actually is:
             NPREO(1)=25,35   prints orbitals 25 to 35
             NPREO(1)=-3,-4   prints 8 orbitals: from 3
                              below the HOMO, the HOMO,
                              to 4 above the HOMO.
         NPREO(3) to NPREO(4) define separate print-out of
         the orbital energies, by default this is skipped,
         since the starting value is higher than the end.
         To print only HOMO and "LUMO" LCAO coefficients,
         and all orbital energies, enter:
               NPREO(1)=0,-1,1,9999
 
        ----- options for virial scaling -----
 
VTSCAL =   A flag to request that the virial theorem be
           satisfied.  An analysis of the total energy
           as an exact sum of orbital kinetic energies
           is printed.  The default is .FALSE.
This option is implemented for RHF, UHF, and ROHF, for
RUNTYP=ENERGY, OPTIMIZE, or SADPOINT.  Related input is:
 
SCALF  =   initial exponent scale factor when VTSCAL is
           in use, useful when restarting.  The default
           is 1.0.
 
MAXVT  =   maximum number of iterations (at a single
           geometry) to satisfy the energy virial theorem.
           The default is 20.
 
VTCONV =   convergence criterion for the VT, which is
           satisfied when 2(T) + (V) + R x dE/dR is less
           than VTCONV.  The default is 1.0D-6 Hartree.
 
For more information on this option, which is most useful
during a geometry search, see M.Lehd and F.Jensen,
J.Comput.Chem. 12, 1089-1096(1991).
 
 
            * * * * * * * * * * * * * * * * * * *
            For more discussion of GVB/ROHF input
            see the 'further information' section
            * * * * * * * * * * * * * * * * * * *
 
 
344 lines are written.
Edited by Shiro KOSEKI on Tue May 17 15:19:38 2022.