$SURF group              (relevant for RUNTYP=SURFACE)
 
    This group allows you to probe a potential energy
surface along a small grid of points.  Note that there is
no option to vary angles, only distances.  The scan can
be made for any SCFTYP, or for the MP2 or CI surface.  You
may specify two rather different calculations to be done
at each point on the grid, through the RUNTYPn, SCFTYPn,
and electron correlation keywords.
 
* * * below, 1 and 2 refer to different calculations * * *
 
RUNTP1,RUNTYP2 = some RUNTYP supported in $CONTRL
         First RUNTYP=RUNTP1 and then RUNTYP=RUNTP2 will be
         performed, for each point on the grid.  The second
         run is omitted if RUNTP2 is set to NONE.
         default: RUNTP1=ENERGY RUNTP2=NONE
 
SCFTP1,SCFTP2 = some SCFTYP supported in $CONTRL
         default: SCFTYP in $CONTRL
 
CITYP1,CITYP2 = some  CITYP supported in $CONTRL
         default:  CITYP in $CONTRL
 
MPLEV1,MPLEV2 = some MPLEVL supported in $CONTRL
         default: MPLEVL in $CONTRL
 
CCTYP1,CCTYP2 = some  CCTYP supported in $CONTRL
         default:  CCTYP in $CONTRL
 
DFTYP1,DFTYP2 = some DFTTYP supported in $DFT
         default: DFTTYP in $DFT
 
You may need to help by giving values in $CONTRL that will
permit the program to estimate what is coming in the values
here.  For example, if you want to request hessians here,
it may be good to give RUNTYP=HESSIAN in $CONTRL so that
in its earliest stages of a job, the program can initialize
for 2nd derivatives.  There is less checking here than on
$CONTRL input, so don't request something impossible such
as two correlation methods simultaneously, or analytic
hessians for MP2, or other things that are impossible.
 
* * * below, 1 and 2 refer to different coordinates * * *
 
IVEC1  = an array of two atoms, defining a coordinate from
         the first atom given, to the second.
 
IGRP1  = an array specifying a group of atoms, which must
         include the second atom given in IVEC1.  The
         entire group will be translated (rigidly) along
         the vector IVEC1, relative to the first atom
         given in IVEC1.
 
ORIG1  = starting value of the coordinate, which may be
         positive or negative.  Zero corresponds to the
         distance given in $DATA.
 
DISP1  = step size for the coordinate.  If DISP1 is set
         to zero, then the keyword GRID1 is read.
 
NDISP1 = number of steps to take for this coordinate.
 
GRID1  = an array of grid points at which to compute the
         energy.  This option is an alternative to the
         ORIG1, DISP1 input which produces an equidistant
         grid.  To use GRID1, one has to set DISP1=0.0.
         The number of grid points is given in NDISP1, and
         is limited to at most 100 grid points.  The input
         of GRID1(1)=ORIG1,ORIG1+DISP1,ORIG1+DISP1*2,...
         would reproduce an equidistant grid given by ORIG1
         and DISP1.
 
     ORIG1, DISP1, and GRID1 should be given in Angstrom.
     There are no reasonable defaults for these keywords.
 
IVEC2, IGRP2, ORIG2, DISP2, NDISP2, GRID2 have the same
meaning as their "1" counterparts, and permit you to make
a two dimensional map along two displacement coordinates.
If the "2" data are not input, the surface map proceeds in
only one dimension.
 
 
83 lines are written.
Edited by Shiro KOSEKI on Tue May 17 15:19:38 2022.