$DANDC group  (optional, relevant if SCFTYP=RHF or UHF)
 
    This group controls the divide-and-conquer (DC) SCF
calculations, in which the total 1-electron density matrix
is obtained as sum of subsystem density matrices.  In this
calculation, the total system is partitioned into several
disjoint subsystems (central regions).  A subsystem density
matrix is expanded by bases in the central region and its
neighboring environmental region (buffer).
 
   The present implementation allows energy and analytic
nuclear gradients, for HF, DFT, and semi-empirical runs,
for SCFTYP=RHF or UHF only.  The discrete EFP and various
continuum solvation models are available.  DC correlation
energies are also available for either MP2 and CC, see
$DCCORR, without nuclear gradients.  Dynamic and static
polarizabilities (but no hyperpolarizabilities) based on
DC-HF are available by specifying RUNTYP=TDHF (not TDHFX).
 
    The initial guess is given by a density matrix, not
orbitals.  The only available options are GUESS=HUCKEL,
HCORE, HUCSUB, DMREAD, and MOREAD (the latter means
orbitals for the entire system).
 
    For a review paper on Divide-and-Conquer in GAMESS:
        M.Kobayashi, H.Nakai
          in Linear-Scaling Techniques in Computational
          Chemistry and Physics: Methods and Applications
          (Springer), Chap. 5 (2011)
    For more information on the DC-SCF method, see
        W.Yang, T.-S.Lee
          J.Chem.Phys. 103, 5674-5678(1995)
        T.Akama, M.Kobayashi, H.Nakai
          J.Comput.Chem. 28, 2003-2012(2007)
        T.Akama, A.Fujii, M.Kobayashi, H.Nakai
          Mol.Phys. 105, 2799-2804(2007)
        T.Akama, M.Kobayashi, H.Nakai
          Int.J.Quant.Chem. 109, 2706-2713(2009)
        M.Kobayashi, T.Yoshikawa, H.Nakai
          Chem.Phys.Lett. 500, 172-177(2010) [open-shell]
        M.Kobayashi, T.Kunisada, T.Akama, D.Sakura, H.Nakai
          J.Chem.Phys. 134, 034105/1-11(2011) [gradient]
    For more information on DC-MP2 and DC-CC, see
        M.Kobayashi, Y.Imamura, H.Nakai
          J.Chem.Phys. 127, 074103/1-7(2007)
        M.Kobayashi, H.Nakai
          J.Chem.Phys. 129, 044103/1-9(2008)
        M.Kobayashi, H.Nakai
          J.Chem.Phys. 131, 114108/1-9(2009)
        M.Kobayashi, H.Nakai
          Int.J.Quant.Chem. 109, 2227-2237(2009)
    For more information on DC-TDHF polarizability, see
        T.Touma, M.Kobayashi, H.Nakai
          Chem.Phys.Lett. 485, 247-252(2010)
 
    Of course, the trick to methods that divide up a large
problem into small ones is to control the errors that
result.  A simple way to set up a DC-MP2 calculation is
with atomic partitions:
 $contrl scftyp=rhf mplevl=2 runtyp=energy $end
 $system mwords=25 $end
 $scf    dirscf=.true. $end
 $dandc  dcflg=.true. subtyp=atom bufrad=8.0 $end
 $dccorr dodccr=.true. rbufcr=5.0 $end
 $guess  guess=hucsub $end  (if DC-SCF is used)
This leads to as many subsystems as there are atoms, with
the buffer region around the central atom being defined by
a radius.  This input recognizes that exchange effects in
Hartree-Fock are longer range than correlation, and thus
uses dual level radii.  It may be reasonable to simply do a
conventional and thus fully accurate SCF computation by
DCFLG=.FALSE., obtaining only the MP2 correlation energy by
the divide and conquer method.  Faster run times may result
from other partitionings, such as manually dividing a
protein into subsystems containing a single amino acid.
 
 
DCFLG =        flag to activate DC-SCF calculation.
               (default=.FALSE.)
 
  Note:  If you want to treat only the correlated MP2/CC
         procedure in the DC manner, after a standard HF
         calculation, this option may be set to .FALSE.
 
SUBTYP =        chooses a method to construct disjoint
                subsystems (central region).
       = ATOM   individual atom is 1 subsystem.
                (default if NSUBS=0 or not given)
       = MANUAL manually selects using NSUBS and LBSUBS
                keywords. (default if NSUBS>=1)
       = CARD   reads from card. $SUBSCF is used for SCF
                and $SUBCOR for MP2/CC calculation.
       = AUTO   constructs subsystems automatically by
                dividing total system by cubic grid.
                Grid size can be set by SUBLNG.
       = AUTBND considers bond strength after AUTO.
 
NSUBS  = number of subsystems when SUBTYP=MANUAL.
 
LBSUBS = an array assigning atoms to subsystems.
         The style is the same as INDAT keyword in $FMO.
         Two styles are supported (the choice is made based
         on LBSUBS(1): if it is nonzero, choice (a) is
         taken, otherwise LBSUBS(1) is ignored and choice
         (b) is taken):
         a) LBSUBS(i)=m assigns atom i is to subsystem m.
            LBSUBS(i) must be given for each atom.
         b) the style is
            a1 a2 ... ak 0
            b1 b2 ... bm 0
            ...
            Elements a1...ak are assigned to subsystem 1,
            then b1...bm are assigned to subsystem 2,etc.
            An element is one of the following:
                I    or   I -J
            where I means atom I, and a pair I,-J means
            the range of atoms I-J.  There must be no space
            after the "-"!
         Example:
         LBSUBS(1)=1,1,1,2,2,1 is equivalent to
         LBSUBS(1)=0, 1,-3,6,0, 4,5,0
         Both assign atoms 1,2,3 and 6 to subsystem 1,
         and 4,5 to subsystem 2.
 
SUBLNG = grid length of cube used in SUBTYP=AUTO or AUTBND.
         This value should be in the unit given by UNITS
         keyword in $CONTRL.  (default=2.0 Angstroms).
 
BUFTYP = chooses a method to construct buffer region.
       = RADIUS selects atoms included in spheres centered
                at atoms in the central region (default).
                The radius is given by BUFRAD keyword for
                DC-SCF and by the RBUFCR keyword in $DCCORR
                for DC-MP2/CC.
       = RADSUB selects subsystems containing one or more
                atom(s) which is included in spheres
                centered at atoms in the central region.
                This selection can avoid cutting bonds
                within each subsystem.
       = CARD   reads from $SUBSCF or $SUBCOR card.
                Only available when SUBTYP=CARD.
 
BUFRAD = buffer radius in DC-SCF calculation. This value
         should be in the units given by UNITS keyword in
         $CONTRL (default=5.0 Angstroms).
 
FRBETA = inverse temperature parameter of Fermi function
         used in DC-SCF procedure in a.u. (default=200.0)
         Reducing this value may improve SCF convergence
         but may obtain worse total energy.
 
MXITDC = maximum number of iteration cycles for determining
         Fermi level (default=100). Usually, you need not
         care about this keyword.
 
FTOL   =   Fermi function cutoff factor (default=15.0).
       = p The value of Fermi function less than 10**(-p)
           is considered as 0. The value greater than
           [1 - 10**(-p)] is considered as 1.
 
NDCPRT =    DC print-out option which is the sum of
            followings (default=0).
       = +1 not used (reserved).
       = +2 prints density matrix ($DM section) on punch.
       = +4 prints energy corresponding to each subsystem.
            Gives correct energy only in HF calculation.
       = +8 prints orbitals in each subsystem.
 
IORBD  =   selects molecular orbital in total system whose
           electron density is to be computed.
           Print format is given in $ELDENS.
       = -1, -2, ...  correspond to HOMO, HOMO-1, ...
       = 1, 2, ...    correspond to LUMO, LUMO+1, ...
       = 0            no calculation (default).
 
In the DC-SCF procedure, the available SCF acceleration
techniques are DIIS, DAMP, EXTRAP as well as DC-DIIS and
VFON which are specific to the DC-SCF.  In DC-SCF
calculation, only DIIS is used by default.  DC-DIIS
(DIIDCF=.TRUE.) is not normally needed for convergence.
 
The following keywords control (DC-)DIIS convergence:
 
DIITYP =        selects the error vector used in the
                standard DIIS extrapolation
       = FDS    Pulay's modified DIIS (e=FDS-SDF). Although
                this type of error vector behaves well in
                standard SCF, it may not for DC-SCF.
       = DELTAF Pulay's original DIIS (e[i]=F[i]-F[i-1]),
                or so-called Anderson mixing (default).
 
DIIQTR = .TRUE.  uses orthogonal basis (in entire system)
                 for DIIS extrapolation.  Normally, this
                 does not make sense in DC-SCF run.
         .FALSE. uses atomic basis function for DIIS
                 extrapolation (default).
 
 
EXTDII = energy error threshold in absolute value for
         exiting DIIS (default=0.0).
 
PEXDII = percentage threshold of energy error change for
         exiting DIIS (default=1.0). PEXDII is
         preferential to EXTDII.
 
DIIDCF = a flag to activate DC-DIIS interpolation
         (default=.FALSE.).
 
ETHRDC = energy error threshold for initiating DC-DIIS.
         Increasing ETHRDC forces DC-DIIS on sooner
         (default = 1.D-4 if DIIDCF=.TRUE.).
 
The following keywords control the convergence acceleration
based on the varying fractional occupation number (VFON).
The final electronic temperature is given by FRBETA.
 
FONTYP =        selects the variation pattern of electronic
                temperature (beta) in SCF iteration
       = DIIER  logarithmic variation with respect to DIIS
                error.
       = NONE   no variation (default).
 
BETINI = initial beta value in a.u.
         (default = FRBETA/4 for FONTYP=DIIER).
 
FONSTA = threshold to start variation of beta
         (default=1.0 for FONTYP=DIIER).
 
FONEND = threshold to stop variation of beta
         (default=1.D-4 for FONTYP=DIIER).
 
When FONTYP=DIIER, the beta value used in the iteration
(of which the DIIS error is DIISer) is the following:
     beta = BETINI [for DIISER>FONSTA]
          = FRBETA [for DIISER<=FONEND]
          = FRBETA + C_FON * Log(DIISer/FONEND) [otherwise]
where (C_FON = (BETINI-FRBETA) / Log(FONSTA/FONEND)
 
 
Option for the type of nuclear gradient:
 
NDCGRD =   selects the DC-SCF gradient implementation
        = 0 use a formula proposed by Yang and Lee in 1995
        = 1 use a formula proposed by Kobayashi et al. in
          2011 (default)
 
 
Next are options for printing density of states (DOS).
 
DOSITV = Interval between plot points in Hartree. The
         default is zero,meaning no DOS print-out. If
         you print out DOS, DOSITV=0.05 may be sufficient.
 
DOSRGL = Left end of the plot range in Hartree.
         (default=-2.0)
 
DOSRGR = Right end of the plot range in Hartree.
         (default=+2.0)
 
BDOS   = Inverse temperature parameter (beta) for
         distributing states. This value should not be
         given because it is set to be equivalent to FRBETA
         in $DANDC by default.
 
 
 
 
267 lines are written.
Edited by Shiro KOSEKI on Tue May 17 15:19:38 2022.