more corrections from people, adjusted layout of tables in argos

This commit is contained in:
Robert Harrison 1997-02-27 01:11:10 +00:00
parent 9ce48606fd
commit 02b16a2e92
11 changed files with 442 additions and 429 deletions

View file

@ -22,7 +22,7 @@ The general form of the \verb+BASIS+ directive is as follows;
[(print || noprint) default print]
<string tag> library [<string tag_in_lib>] \
<string standard set> [file <filename>]
<string standard_set> [file <filename>]
...
@ -172,7 +172,7 @@ The \verb+shell_type+ identifies the angular momentum of the shell,
$s$, $p$, $d$, \ldots. By default, NWChem is configured to handle up
to $i$ functions. Subsequent lines define the primitive function
exponents and contraction coefficients. General contractions are
specified by including multiple coefficients.
specified by including multiple columns of coefficients.
For example, the following \verb+BASIS+ directive augments the Dunning
cc-pvdz basis set for the water molecule with a diffuse s-shell on

View file

@ -23,7 +23,6 @@ DFT input is provided using the compound \verb+DFT+ directive
...
END
\end{verbatim}
The actual DFT calculation will be performed when the input module
encounters the \verb+TASK+ directive (Section \ref{sec:task}).
\begin{verbatim}
@ -35,30 +34,29 @@ the DFT module can be invoked with no input directives (defaults
invoked throughout). There are subdirectives which allow for
customized application; those currently provided as options for
the DFT module are:
\begin{verbatim}
VECTORS [[input] (<string input_movecs default atomic>) || \
(project <string basisname> <string filename>)] \
[swap [alpha|beta] <integer vec1 vec2> ...] \
[swap [alpha||beta] <integer vec1 vec2> ...] \
[output <string output_filename default input_movecs>] \
[lock]
XC [[acm] [b3lyp] [beckehandh] \
[HFexch <real multiplicative_factor default 1.0>] \
[becke88 [nonlocal] <real multiplicative_factor default 1.0>] \
[lyp <real multiplicative_factor default 1.0>] \
[perdew81 <real multiplicative_factor default 1.0>] \
[perdew86 [nonlocal] <real multiplicative_factor default 1.0>] \
[perdew91 [nonlocal] <real multiplicative_factor default 1.0>] \
[pw91lda <real multiplicative_factor default 1.0>] \
[slater <real multiplicative_factor default 1.0>] \
[vwn_1 <real multiplicative_factor default 1.0>] \
[vwn_2 <real multiplicative_factor default 1.0>] \
[vwn_3 <real multiplicative_factor default 1.0>] \
[vwn_4 <real multiplicative_factor default 1.0>] \
[vwn_5 <real multiplicative_factor default 1.0>] \
[vwn_1_rpa <real multiplicative_factor default 1.0>]]
[HFexch <real prefactor default 1.0>] \
[becke88 [nonlocal] <real prefactor default 1.0>] \
[lyp <real prefactor default 1.0>] \
[perdew81 <real prefactor default 1.0>] \
[perdew86 [nonlocal] <real prefactor default 1.0>] \
[perdew91 [nonlocal] <real prefactor default 1.0>] \
[pw91lda <real prefactor default 1.0>] \
[slater <real prefactor default 1.0>] \
[vwn_1 <real prefactor default 1.0>] \
[vwn_2 <real prefactor default 1.0>] \
[vwn_3 <real prefactor default 1.0>] \
[vwn_4 <real prefactor default 1.0>] \
[vwn_5 <real prefactor default 1.0>] \
[vwn_1_rpa <real prefactor default 1.0>]]
CONVERGENCE [[energy <real energy default 1e-7>] \
@ -80,11 +78,14 @@ the DFT module are:
[hl_tol <real hl_tol default 0.1>]]
GRID [[coarse|medium|fine|xfine] \
[gausleg <integer radpts default 50> <integer nagrid default 10>] \
[lebedev <integer radpts default 50> <integer iangquad default 4>] \
[store_wght] [nquad_task <integer nquad_task default 1>] \
[delley|becke] [rm <real rm default 2.0>]]
GRID [(coarse||medium||fine||xfine) default medium] \
[(gausleg <integer radpts default 50>
<integer nagrid default 10>) ||\
(lebedev <integer radpts default 50>
<integer iangquad default 4>)] \
[store_wght] [nquad_task <integer nquad_task default 1>] \
[delley||becke] \
[rm <real rm default 2.0>]
TOLERANCES [[tight] [tol_rho <real tol_rho default 1e-15>] \
@ -96,7 +97,7 @@ the DFT module are:
DECOMP
DFT|ODFT
DFT||ODFT
DIRECT
INCORE
ITERATIONS <integer iterations default 30>
@ -104,7 +105,7 @@ the DFT module are:
MULLIKEN
MULT <integer mult default 1>
NOIO
PRINT|NOPRINT
PRINT||NOPRINT
\end{verbatim}
The following
@ -112,7 +113,8 @@ sections describe these keywords and
optional subdirectives that can be specified for a \verb+DFT+ calculation
in NWChem.
\section{Basis Sets Specification for the DFT Module}
\section{Specification of Basis Sets for the DFT Module}
The DFT module requires at a minimum the basis set for the Kohn-Sham
molecular orbitals. This basis set must be in the default basis set named
{\tt "ao basis"}, or it must be assigned to this default name using the
@ -138,78 +140,72 @@ so the {\tt "xc basis"} basis set is not generally required.
For the DFT module, the input options for defining the basis sets in a given
calculation can be summarized as follows;
\begin{itemize}
\item {\tt "ao basis"} -- Kohn-Sham molecular orbitals; required for all
calculations
\item {\tt "cd basis"} -- charge density fitting basis set; optional, but
recommended for evaluation of the Coulomb potential
\item {\tt "xc basis"} -- exchange-correlation (XC) fitting basis set;
optional, and usually not recommended
\end{itemize}
\section{Input/Output of KS-MO Vector}
\section{{\tt VECTORS} and {\tt MAX\_OVL} --- KS-MO Vectors}
The \verb+VECTORS+ directive is the same as that in the SCF module
(Section \ref{sec:vectors}). Currently, the \verb+LOCK+ keyword
is not supported by the DFT module, however the directive
\begin{verbatim}
VECTORS [[input] (<string input_movecs default atomic>) || \
(project <string basisname> <string filename>)] \
[swap [alpha|beta] <integer vec1 vec2> ...] \
[output <string output_filename default input_movecs>] \
[lock]
MAX_OVL (same as LOCK in VECTORS directive although not yet
implemented as such)
MAX_OVL
\end{verbatim}
has the same effect.
\section{Exchange-Correlation Potentials}
\section{{\tt XC} and {\tt DECOMP} --- Exchange-Correlation Potentials}
\begin{verbatim}
XC [[acm] [b3lyp] [beckehandh] \
[HFexch <real multiplicative_factor default 1.0>] \
[becke88 [nonlocal] <real multiplicative_factor default 1.0>] \
[lyp <real multiplicative_factor default 1.0>] \
[perdew81 <real multiplicative_factor default 1.0>] \
[perdew86 [nonlocal] <real multiplicative_factor default 1.0>] \
[perdew91 [nonlocal] <real multiplicative_factor default 1.0>] \
[pw91lda <real multiplicative_factor default 1.0>] \
[slater <real multiplicative_factor default 1.0>] \
[vwn_1 <real multiplicative_factor default 1.0>] \
[vwn_2 <real multiplicative_factor default 1.0>] \
[vwn_3 <real multiplicative_factor default 1.0>] \
[vwn_4 <real multiplicative_factor default 1.0>] \
[vwn_5 <real multiplicative_factor default 1.0>] \
[vwn_1_rpa <real multiplicative_factor default 1.0>]]
DECOMP
[HFexch <real prefactor default 1.0>] \
[becke88 [nonlocal] <real prefactor default 1.0>] \
[lyp <real prefactor default 1.0>] \
[perdew81 <real prefactor default 1.0>] \
[perdew86 [nonlocal] <real prefactor default 1.0>] \
[perdew91 [nonlocal] <real prefactor default 1.0>] \
[pw91lda <real prefactor default 1.0>] \
[slater <real prefactor default 1.0>] \
[vwn_1 <real prefactor default 1.0>] \
[vwn_2 <real prefactor default 1.0>] \
[vwn_3 <real prefactor default 1.0>] \
[vwn_4 <real prefactor default 1.0>] \
[vwn_5 <real prefactor default 1.0>] \
[vwn_1_rpa <real prefactor default 1.0>]]
\end{verbatim}
The user has the option of specifying the exchange-correlation treatment
in the DFT Module. The default exchange-correlation functional is defined
as the local density approximation (LDA) for closed shell systems and it's
counterpart the local spin-density (LSD) approximation for open shell
systems. Within this approximation the exchange functional is the
the Slater $\rho^{1/3}$ functional (from J.C.~Slater,
{\sl Quantum Theory of Molecules and
Solids, Vol.~4: The Self-Consistent Field for Molecules and Solids}
(McGraw-Hill, New York, 1974)), and the correlation
functional is the Vosk-Wilk-Nusair (VWN) functional (functional V)
(S.J.~Vosko, L.~Wilk and M.~Nusair,
Can.~J.~Phys.~{\bf 58}, 1200 (1980)). The parameters used in this
formula are obtained by fitting to the {\bf Ceperley \&
Alder\footnotemark[1]} Quantum
MonteCarlo solution of the {\bf homogenous electron gas}.
The user has the option of specifying the exchange-correlation
treatment in the DFT Module. The default exchange-correlation
functional is defined as the local density approximation (LDA) for
closed shell systems and its counterpart the local spin-density (LSD)
approximation for open shell systems. Within this approximation the
exchange functional is the Slater $\rho^{1/3}$ functional (from
J.C.~Slater, {\sl Quantum Theory of Molecules and Solids, Vol.~4: The
Self-Consistent Field for Molecules and Solids} (McGraw-Hill, New
York, 1974)), and the correlation functional is the Vosk-Wilk-Nusair
(VWN) functional (functional V) (S.J.~Vosko, L.~Wilk and M.~Nusair,
Can.~J.~Phys.~{\bf 58}, 1200 (1980)). The parameters used in this
formula are obtained by fitting to the Ceperley and
Alder\footnote{D.M.~Ceperley and B.J.~Alder, Phys. Rev. Lett. {\bf
45}, 566 (1980).}
Quantum MonteCarlo solution of the {\em
homogenous electron gas}.
These defaults can be invoked explicitly by specifying the following
keywords within the DFT module input directive,
\begin{verbatim}
XC slater vwn_5
\end{verbatim}
The \verb+DECOMP+ directive causes the components of the energy
corresponding to each functional to be printed, rather than just the
total exchange-correlation energy which is the default.
Many alternative exchange and correlation functionals are available to
the user. The following sections describe these options.
@ -221,34 +217,30 @@ J.~Chem.~Phys.~88, 3098 (1988)), and the Hartree-Fock exact exchange.
The Becke gradient-corrected functional is invoked by specifying the input
line,
\begin{verbatim}
XC becke88
\end{verbatim}
The Hartree-Fock exact exchange functional, (which is exact to $O(N^4)$),
is invoked by specifying the input line,
The Hartree-Fock exact exchange functional, (which has $O(N^4)$
computation expense), is invoked by specifying the input line,
\begin{verbatim}
XC HFexch
\end{verbatim}
Note that the user also has the ability to include only the local or
nonlocal contributions of a given functional. In addition the user
can specify a multiplicative factor for the local/nonlocal component
or total. An example of this might be,
can specify a multiplicative prefactor (the variable
\verb+<prefactor>+ in the input) for the local/nonlocal component or
total. An example of this might be,
\begin{verbatim}
XC becke88 nonlocal 0.72
\end{verbatim}
The user should be aware that the Becke88 local component is simply
the slater exchange and should be input as such.
the Slater exchange and should be input as such.
Any combination of the supported exchange functional options can be
used. For example the popular Gaussian B3 exchange could be specified
as:
\begin{verbatim}
XC slater 0.8 becke88 nonlocal 0.72 HFexch 0.2
\end{verbatim}
@ -262,7 +254,7 @@ perdew86, perdew91, pw91lda, \verb+vwn_1+, \verb+vwn_2+, \verb+vwn_3+,
\verb+vwn_4+, and \verb+vwn_1_rpa+.
As in the exchange functional input, individual local/nonlocal
components as well as multiplicative factors can be invoked where
components as well as multiplicative prefactors can be invoked where
appropriate. Each of the correlation functionals is listed below along with
appropriate citation.
@ -281,16 +273,16 @@ appropriate citation.
XC vwn_5
\end{verbatim}
Note that functionals; \verb+vwn_2+, \verb+vwn_3+, and \verb+vwn_4+ require both sets of
parameters (the Monte Carlo parameters of Ceperley and Alder and
VWN's RPA parameters) used in fitting the homogenous electron gas
correlation energy. Functionals \verb+vwn_1+ and \verb+vwn_5+ require only the
Monte Carlo fitting parameters. In order to reproduce results in the
literature another functional was added; the \verb+vwn_1_rpa+. This is the
original \verb+vwn_1+ functional with RPA paramenters as opposed to the
prescribed Monte Carlo parameters. This functional can be invoked
with the keyword,
Note that functionals; \verb+vwn_2+, \verb+vwn_3+, and \verb+vwn_4+
require both sets of parameters (the Monte Carlo parameters of
Ceperley and Alder and VWN's RPA parameters) used in fitting the
homogenous electron gas correlation energy. Functionals
\verb+vwn_1+ and \verb+vwn_5+ require only the Monte Carlo fitting
parameters. In order to reproduce results in the literature another
functional was added; the \verb+vwn_1_rpa+. This is the original
\verb+vwn_1+ functional with RPA parameters as opposed to the
prescribed Monte Carlo parameters. This functional can be invoked
with the keyword,
\begin{verbatim}
XC vwn_1_rpa
\end{verbatim}
@ -298,18 +290,16 @@ with the keyword,
\item Perdew81 local density functional; J.~P.~Perdew and A.~Zunger,
Phys.~Rev.~B {\bf23}, 5048 (1981). This functional can be invoked with the
keyword,
\begin{verbatim}
XC perdew81
\end{verbatim}
\item Perdew \& Wang 1991 local density functional; J.P.~Perdew
and Y.~Wang, Phys. Rev. B {\bf 45}, 13244 (1992). The parameters
used in this formula are obtained by fitting to the {\bf Ceperley \&
Alder\footnotemark[1]} Quantum Monte Carlo solution of the {\bf
used in this formula are obtained by fitting to the Ceperley and
Alder Quantum Monte Carlo solution of the {\em
homogenous electron gas}. This functional can be invoked with the
keyword,
\begin{verbatim}
XC pw91lda
\end{verbatim}
@ -320,7 +310,6 @@ with the keyword,
component is defaulted to the perdew81 local correlation
functional. This functional can be invoked with the
keyword,
\begin{verbatim}
XC perdew86
\end{verbatim}
@ -331,7 +320,6 @@ with the keyword,
is a nonlocal functional and in the absence of any local functional
specification the local component is defaulted to the \verb+pw91lda+ local
correlation functional. This functional can be invoked with the keyword,
\begin{verbatim}
XC perdew91
\end{verbatim}
@ -341,7 +329,6 @@ with the keyword,
is a local and nonlocal functional but cannot be conveniently split
into the individual components. The option to scale the total remains.
This functional can be invoked with the keyword,
\begin{verbatim}
XC lyp
\end{verbatim}
@ -353,15 +340,11 @@ with the keyword,
Any combination of the supported correlation functional options can be
used. For example the correlation component of the popular B3LYP
could be specified as:
\begin{verbatim}
XC vwn_1_rpa 0.19 lyp 0.81
\end{verbatim}
\footnotetext[1]{D.M.~Ceperley and B.J.~Alder, Phys. Rev. Lett. {\bf 45},
566 (1980).}
\subsection{Hybrid Exchange and Correlation Functionals}
In addition to the options listed above for the exchange and correlation
@ -372,7 +355,6 @@ adiabatic connection method (see A.D.~Becke, J.~Chem.~Phys.~98, 5648
(1993)), and the b3lyp (popularized by Gaussian9X).
These options can be invoked by specifying any of the following input lines,
\begin{verbatim}
XC beckehandh
XC acm
@ -388,17 +370,17 @@ E_{X} \ = \ \frac{1}{2} E^{\rm HF}_X + \frac{1}{2} E^{\rm
The keyword \verb+acm+ specifies that the exchange-correlation energy
is computed as
\begin{eqnarray*}
E_{XC} \ &=& \ a_0 E^{\rm HF}_X + (1-a_0) E^{\rm Slater}_{X} +
a_X \Delta E^{\rm Becke88}_{X} + E^{\rm VWN}_C + a_C \Delta E^{Perdew91}_C \\
& &{\rm where } \\
a_0 &=& 0.20, \ a_X = 0.72, \ a_C = 0.81
\end{eqnarray*}
and $\Delta$ stands for a non-local component.
The keyword \verb+b3lyp+ specifies that the exchange-correlation energy
is computed as
\begin{eqnarray*}
E_{XC} \ &=& \ a_0 E^{\rm HF}_X + (1-a_0) E^{\rm Slater}_{X} +
a_X \Delta E^{\rm Becke88}_{X} + (1-a_C)E^{\rm \verb+VWN_1_RPA+}_C + a_C E^{LYP}_C \\
@ -407,30 +389,10 @@ a_0 &=& 0.20, \ a_X = 0.72, \ a_C = 0.81
\end{eqnarray*}
\section{SCF Convergence Control}
\section{{\tt ITERATIONS} --- Number of SCF iterations}
\begin{verbatim}
ITERATIONS <integer iterations default 30>
CONVERGENCE [[energy <real energy default 1e-7>] \
[density <real density default 1e-5>] \
[gradient <real gradient default 1e-4>] \
[dampon <real dampon default 0.0>] \
[dampoff <real dampoff default 0.0>] \
[diison <real diison default 0.0>] \
[diisoff <real diisoff default 0.0>] \
[levlon <real levlon default 0.0>] \
[levloff <real levloff default 0.0>] \
[ncydp <integer ncydp default 2>] \
[ncyds <integer ncyds default 30>] \
[ncysh <integer ncysh default 30>] \
[damp <integer ndamp default 70>] [nodamping] \
[diis [nfock <integer nfock default 10>]] \
[nodiis] [lshift <real lshift default 0.5>] \
[nolevelshifting] \
[hl_tol <real hl_tol default 0.1>]]
\end{verbatim}
The default optimization in the DFT module is to iterate on the
@ -443,15 +405,35 @@ is \verb+ITERATIONS+, and has the following general form,
\end{verbatim}
The optimization procedure will stop when the specified number of
iterations is reached or convergence is meant. Convergence is
satisfied by meeting any or all of three criteria;
iterations is reached or convergence is met.
\section{{\tt CONVERGENCE} --- SCF Convergence Control}
\begin{verbatim}
CONVERGENCE [energy <real energy default 1e-7>] \
[density <real density default 1e-5>] \
[gradient <real gradient default 1e-4>] \
[hl_tol <real hl_tol default 0.1>]
[dampon <real dampon default 0.0>] \
[dampoff <real dampoff default 0.0>] \
[ncydp <integer ncydp default 2>] \
[ncyds <integer ncyds default 30>] \
[ncysh <integer ncysh default 30>] \
[damp <integer ndamp default 70>] [nodamping] \
[diison <real diison default 0.0>] \
[diisoff <real diisoff default 0.0>] \
[(diis [nfock <integer nfock default 10>]) || nodiis] \
[levlon <real levlon default 0.0>] \
[levloff <real levloff default 0.0>] \
[(lshift <real lshift default 0.5>) || nolevelshifting] \
\end{verbatim}
Convergence is satisfied by meeting any or all of three criteria;
\begin{itemize}
\item convergence of the total energy; this is defined to be when the
total DFT energy at iteration N and at iteration N-1 differ by a value less
than some value (the default is 1e-7). This value can be modified
using the key word,
\begin{verbatim}
CONVERGENCE energy <real energy default 1e-7>
\end{verbatim}
@ -460,7 +442,6 @@ satisfied by meeting any or all of three criteria;
total DFT density matrix at iteration N and at iteration N-1 have a
RMS difference less than some value (the default is 1e-5). This value can be modified
using the key word,
\begin{verbatim}
CONVERGENCE density <real density default 1e-5>
\end{verbatim}
@ -468,26 +449,24 @@ satisfied by meeting any or all of three criteria;
\item convergence of the orbital gradient; this is defined to be when the
DIIS error vector becomes less than some value (the default is
1e-4). This value can be modified using the key word,
\begin{verbatim}
CONVERGENCE gradient <real gradient default 1e-4>
\end{verbatim}
\end{itemize}
The default optimization strategy is to immediately begin direct inversion of the
iterative subspace\footnote {P.~Pulay, Chem.\ Phys.\ Lett.\ {\bf 73},
393 (1980) and P.~Pulay, J.~Comp.~Chem.~{\bf 3}, 566 (1982)}.
Damping is also initiated (using 70\% of the previous density) for
the first 2 iteration. In addition, if the HOMO - LUMO gap is small
and the Fock matrix somewhat diagonally dominant, then levelshifting
is automatically initiated. There are a variety of ways to customize
this procedure to whatever is desired.
The default optimization strategy is to immediately begin direct
inversion of the iterative subspace\footnote {P.~Pulay, Chem.\ Phys.\
Lett.\ {\bf 73}, 393 (1980) and P.~Pulay, J.~Comp.~Chem.~{\bf 3},
566 (1982)}. Damping is also initiated (using 70\% of the previous
density) for the first 2 iteration. In addition, if the HOMO - LUMO
gap is small and the Fock matrix somewhat diagonally dominant, then
levelshifting is automatically initiated. There are a variety of ways
to customize this procedure to whatever is desired.
An alternative optimization strategy is to specify, by using the change
in total energy (from iterations when N and N-1), when to turn
damping, levelshifting, and/or diis on/off. Start and stop keywords for
each of these is available as,
\begin{verbatim}
CONVERGENCE [dampon <real dampon default 0.0>] \
[dampoff <real dampoff default 0.0>] \
@ -504,7 +483,6 @@ Another strategy can be to simply specify how many iterations (cycles) you wish
each type of procedure to be used. The necessary keywords to control
the number of damping cycles (ncydp), the number of diis cycles
(ncyds), and the number of levelshifting cycles (ncysh) are input as,
\begin{verbatim}
CONVERGENCE [ncydp <integer ncydp default 2>] \
[ncyds <integer ncyds default 30>] \
@ -514,7 +492,6 @@ the number of damping cycles (ncydp), the number of diis cycles
The amount of damping, levelshifting, time at which levelshifting is
automatically imposed, and Fock matrices used in the DIIS
extrapolation can be modified by the following keywords
\begin{verbatim}
CONVERGENCE [damp <integer ndamp default 70>] \
[diis [nfock <integer nfock default 10>]] \
@ -524,11 +501,9 @@ extrapolation can be modified by the following keywords
Damping is defined to be the percentage of the previous iterations
density mixed with the current iterations density. So, for example
\begin{verbatim}
CONVERGENCE damp 70
\end{verbatim}
would mix 30\% of the current iteration density with 70\% of the
previous iteration density.
@ -537,23 +512,20 @@ V.R.~Saunders, Mol.~Phys.~{\bf 28}, 819 (1974)} is defined as the
amount of shift applied to the diagonal elements of the unoccupied
block of the Fock matrix. The shift is specified by the
keyword \verb+lshift+. For example the directive,
\begin{verbatim}
CONVERGENCE lshift 0.5
\end{verbatim}
causes the diagonal elements of the Fock matrix
corresponding to the virtual orbitals to be shifted by 0.5 au.
By default, this levelshifting procedure is switched on whenever the
HOMO-LUMO gap is small. Small is defined by default to be 0.1 au but
can be modified by the directive \verb+hl_tol+. An example of
changing the HOMO-LUMO gap tolerance to 0.01 would be,
\begin{verbatim}
CONVERGENCE hl_tol 0.01
\end{verbatim}
Direct inversion of the iterative subspace with extrapolation of upto
Direct inversion of the iterative subspace with extrapolation of up to
10 Fock matrices is a default optimization procedure. For large
molecular systems the amount of available memory may preclude the ability to
store this number of N**2 arrays in global memory. The user may then
@ -561,7 +533,6 @@ specify the number of Fock matrices to be used in the extrapolation
(must be greater than three (3) to be effective). To set the number of
Fock matrices stored and used in the extrapolation procedure to 3
would take the form,
\begin{verbatim}
CONVERGENCE diis nfock 3
\end{verbatim}
@ -573,16 +544,17 @@ procedures deemed undesirable with the obvious keywords,
\end{verbatim}
\section{Numerical Integration of the Exchange-Correlation Potential}
\section{{\tt GRID} --- Numerical Integration of the Exchange-Correlation Potential}
\begin{verbatim}
GRID [[coarse|medium|fine|xfine] \ [gausleg <integer radpts default
50> <integer nagrid default 10>] \ [lebedev <integer radpts default
50> <integer iangquad default 4>] \ [store_wght] [nquad_task
<integer nquad_task default 1>] \ [delley|becke] [rm <real rm
default 2.0>]]
GRID [(coarse||medium||fine||xfine) default medium] \
[(gausleg <integer radpts default 50>
<integer nagrid default 10>) ||\
(lebedev <integer radpts default 50>
<integer iangquad default 4>)] \
[store_wght] [nquad_task <integer nquad_task default 1>] \
[delley||becke] \
[rm <real rm default 2.0>]
\end{verbatim}
A numerical integration is necessary for the evaluation of the
@ -593,16 +565,14 @@ scheme for the angular components (see C.W.~Murray, N.C.~Handy, and
G.L.Laming, Mol.~Phys.~78, 997-1014, (1993)). Within this numerical
integration procedure various levels of accuracy have been defined and
are available to the user. The user can specify the level of accuracy
with the keywords; coarse, medium, fine, and xfine.
with the keywords; coarse, medium, fine, and xfine. The default is medium.
\begin{verbatim}
GRID [coarse|medium|fine|xfine]
GRID [coarse||medium||fine||xfine]
\end{verbatim}
The definitions of these gridtypes are:\\
{\center
\begin{tabular}[right]{|l|r r r r|} \hline
Keyword & {\tt coarse} & {\tt medium} & {\tt fine} & {\tt xfine} \\ \hline
$N_{radial}$ & 35 & 50 & 75 & 105 \\
@ -610,23 +580,18 @@ $N_{theta}$ & 8 & 10 & 12 & 14 \\ \hline
$N_{phi}$ & 16 & 20 & 24 & 28 \\ \hline
$total unpruned per center$ & 4480 & 10000 & 21600 & 41160 \\ \hline
\end{tabular}
}
The user has the option of specifying a customed quadrature of this
type with the keywords,
\begin{verbatim}
GRID gausleg <integer nradpts default 50> <integer nagrid default 10>
\end{verbatim}
In this type of grid, the number of phi points is twice the number of
theta points. So, for example, a specification of,
\begin{verbatim}
GRID gausleg 80 20
\end{verbatim}
would be interpreted as 80 radial points, 20 theta points, and 40
phi points per center (or 64000 points per center before pruning).
@ -637,25 +602,26 @@ for the Lebedev grid was supplied by M.~Caus\`a of the University of
Torino.}. Within this numerical integration procedure various levels
of accuracy have also been defined and are available to the user.
The input for this type of grid takes the form,
\begin{verbatim}
GRID lebedev <integer radpts default 50> <integer iangquad default 4>
\end{verbatim}
In this context the variable iangquad specifies a certain number of
angular points as indicated by the table below.
{\center
\begin{tabular}[right]{|l|r r r r r r r|} \hline
$IANGQUAD$ & 1 & 2 & 3 & 4 & 5 & 6 & 7 \\ \hline
$N_{angular}$ & 38 & 50 & 110 & 194 & 266 & 302 & 434 \\ \hline
\end{tabular}
}
Therefor the user can specify any number of radial points along with
Therefore the user can specify any number of radial points along with
the level of angular quadrature (1-7).
\section{Control of Screening (Setting Tolerances)}
{\bf JEFF: store\_weight, nquad\_task, delley, and becke need explaining}
\section{{\tt TOLERANCES} --- Screening tolerances}
\begin{verbatim}
TOLERANCES [[tight] [tol_rho <real tol_rho default 1e-15>] \
[accAOfunc <integer accAOfunc default 20>] \
@ -663,25 +629,22 @@ the level of angular quadrature (1-7).
[accQrad <integer accQrad default 40>] \
[accXCfunc <integer accXCfunc default 20>] \
[radius <real radius default 16.0>]]
\end{verbatim}
{\bf JEFF: tight needs explanation}
The user has the option of controlling screening for the tolerances in
the integral evaluations for the DFT module. In most applications, the
default values will be adequate for the calculation, but different values
can be specified in the input for the DFT module using the keywords
described below.
the integral evaluations for the DFT module. In most applications,
the default values will be adequate for the calculation, but different
values can be specified in the input for the DFT module using the
keywords described below.
The input to define a screening tolerance for evaluation of the AO
Gaussian functions is specified with the keyword \verb+accAOfunc+, as
follows,
\begin{verbatim}
TOLERANCES accAOfunc <integer accAOfunc default 20>
\end{verbatim}
A Gaussian orbital basis (AO) function with exponent $\zeta$
and radial factor $e^{-\zeta\cdot r_i^2}$ is
evaluated at a point $r_i$ only if
@ -690,11 +653,9 @@ $\zeta\cdot r_i^2$ is greater than the value specified for ${\tt accAOfunc}$.
The input to define a screening tolerance for evaluation of the exchange-
correlation (XC) Gaussian fitting functions is specified with the
keyword \verb+accXCfunc+, as follows,
\begin{verbatim}
TOLERANCES accXCfunc <integer accXCfunc default 20>
\end{verbatim}
An exchange-correlation (XC) fitting function with exponent $\zeta$
and radial factor $e^{-\zeta\cdot r_i^2}$ is
evaluated at a point $r_i$ only if
@ -703,11 +664,9 @@ $\zeta\cdot r_i^2$ is greater than the value specified for ${\tt accXCfunc}$.
The input to define a screening tolerance for evaluation of the
charge-density (CD) Gaussian fitting functions is specified with the
keyword \verb+accCoul+, as follows,
\begin{verbatim}
TOLERANCES accCoul <integer accCoul default 15>
\end{verbatim}
A charge-density (CD) fitting function with exponent $\zeta$
and radial factor $e^{-\zeta\cdot r_i^2}$ is evaluated at a
point $r_i$ only if $\zeta\cdot r_i^2$ is greater than ${\tt accCoul}$
@ -719,7 +678,6 @@ values greater than $10^{(-{\tt accCoul})}$ are evaluated.
The user also has the option of specifying the radial quadrature
grid cut-off for the DFT calculation, using the keyword
\verb+accQrad+. The input line for this option is as follows,
\begin{verbatim}
TOLERANCES accQrad <integer accQrad default 40>
\end{verbatim}
@ -730,27 +688,23 @@ points around a given center or atom. Grid points that lie more than
Screening away needless computation of the XC functional (on the grid)
due to negligible density is also possible with the use of,
\begin{verbatim}
TOLERANCES tol_rho <real tol_rho default 1e-15>
\end{verbatim}
XC functional computation is bypassed if the corresponding density
elements are less than \verb+tol_rho+.
A screening parameter, \verb+radius+, used in the screening of the
Becke or Delley spatial weights is also available as,
\begin{verbatim}
TOLERANCES radius <real radius default 16.0>
\end{verbatim}
where radius is the cutoff value in bohr.
\section{Hardware Resource Control}
\section{{\tt DIRECT} and {\tt NOIO} --- Hardware Resource Control}
\begin{verbatim}
DIRECT|INCORE
DIRECT||INCORE
NOIO
\end{verbatim}
@ -774,9 +728,9 @@ are computed ``on-the-fly''.
\fussy
\section{Control of Open Shells}
\section{{\tt DFT}, {\tt ODFT} and {\tt MULT} --- Open shell systems}
\begin{verbatim}
DFT|ODFT
DFT||ODFT
MULT <integer mult default 1>
\end{verbatim}
@ -784,20 +738,19 @@ Both {\sl closed-shell} and {\sl open-shell} systems can be studied using
the DFT module. Specifying the keyword \verb+MULT+ within the \verb+DFT+
directive allows the user to define the spin multiplicity of the system.
The form of the input line is as follows;
\begin{verbatim}
mult <integer mult default 1>
MULT <integer mult default 1>
\end{verbatim}
When the keyword \verb+MULT+ is specified, the user can define the integer
variable \verb+mult+, where \verb+mult+ is equal to the number of alpha
electrons minus beta electrons, plus 1.
The keywords \verb+DFT|ODFT+ were originally intended to specify
closed or openshell and are really unnecessary except in the context of
forcing a system to be computed as an openshell system.
The keywords \verb+DFT||ODFT+ were originally intended to specify
closed or open shell and are really unnecessary except in the context
of forcing a closed-shell system to be computed as an open shell
system (i.e., using a spin-unrestricted wavefunction).
\section{Standard Property Control}
\section{{\tt MULLIKEN} --- Mulliken analysis}
\begin{verbatim}
MULLIKEN
\end{verbatim}
@ -806,22 +759,18 @@ Mulliken analysis of the charge distribution is invoked by the keyword:
\begin{verbatim}
MULLIKEN
\end{verbatim}
When this keyword is encountered, mulliken analysis of both the input
When this keyword is encountered, Mulliken analysis of both the input
density as well as the output density will occur.
\section{Print Control}
\begin{verbatim}
PRINT|NOPRINT
PRINT||NOPRINT
\end{verbatim}
The \verb+PRINT|NOPRINT+ options control the level of output in the
DFT. Known controllable print options are:
The \verb+PRINT||NOPRINT+ options control the level of output in the
DFT. Documentation is not yet available for items under explicit
print control.
%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End:

View file

@ -119,7 +119,7 @@ number of macro iterations. Either choice may be forced throughout
the calculation by specifying the appropriate keyword on the
\verb+HESSIAN+ directive.
E.g., to speficy the one-electron approximation throughout
E.g., to specify the one-electron approximation throughout
\begin{verbatim}
hessian onel
\end{verbatim}
@ -140,13 +140,16 @@ E.g., to set the initial level shift to 0.5
\section{{\tt PRINT} and {\tt NOPRINT}}
Specific output items can selectively enabled or disabled using the
Specific output items can be selectively enabled or disabled using the
\verb+print+ control mechanism~(\ref{sec:printcontrol}) with the
available print options listed in table(\ref{MCSCF_print_options}).
\begin{table}
\caption{MCSCF Print Options}
\begin{table}[htb]
\label{MCSCF_print_options}
\center
\vspace{.2in}
\begin{tabular}{lrl}
\hline\hline
@ -166,6 +169,9 @@ Option & Class & Synopsis \\
\verb+density matrix+ & debug & One- and Two-particle density matrices \\
\hline\hline
\end{tabular}
\caption{MCSCF Print Options}
\end{table}

View file

@ -42,7 +42,7 @@ All three MP2 tasks share the same input block.
\begin{verbatim}
MP2
[FREEZE [[(core|occupied)] (atomic || <integer nfzc default 0>)] \
[FREEZE [[core] (atomic || <integer nfzc default 0>)] \
[virtual <integer nfzv default 0>]]
[AOTOL2E <real aotol2e default 1d-9>]
[MOTOL2E <real motol2e default 1d-9>]
@ -59,10 +59,10 @@ All three MP2 tasks share the same input block.
\label{mp2:core}
All MP2 modules support frozen core orbitals, however, only the direct
MP2 and RI-MP2 modules support frozen virtual orbitals.
MP2 and RI-MP2 modules support frozen virtual orbitals.
By default, no orbitals are frozen. The \verb+atomic+ keyword causes
orbitals to be frozen according according to the rules in Table
orbitals to be frozen according to the rules in Table
\ref{tbl:freeze-by-atoms}. The actual input would be
\begin{verbatim}
freeze atomic
@ -119,6 +119,14 @@ the first 10 orbitals, then the \verb+swap+ keyword of the
\verb+VECTORS+ directive must be used to order the input orbitals
correctly (Section \ref{sec:mp2vectors}).
To freeze the highest virtual orbitals, use the \verb+virtual+
keyword. For instance, to freeze the top 5 virtuals
\begin{verbatim}
freeze virtual 5
\end{verbatim}
Again, note that this only works for the direct-MP2 and RI-MP2 energy
codes.
\section{{\tt AOTOL2E} and {\tt MOTOL2E} --- Integral Screening}
The screening of AO and MO two-electron integrals are controlled by
@ -351,7 +359,7 @@ boundaries). The compromise here is memory space versus multiple
integral evaluations.
The energy evaluation batch sizes are computed in the code from the
number of occupied orbitals in the the two sets of three-center
number of occupied orbitals in the two sets of three-center
integrals to be multiplied together to produce a matrix of approximate
four-center integrals. Two blocks of integrals of dimension $({<batch
isize>}\times {vir})$ and $({<batch jsize>}\times {vir})$ by fit are
@ -364,7 +372,7 @@ large matrices) versus memory space.
The user must choose a strategy for the memory allocation in the energy
evaluation phase of the RI-MP2 calculation, either by minimizing the amount
of I/O, or minimizing the amount of compulation. This is be accomplished
of I/O, or minimizing the amount of computation. This can be accomplished
using a \verb+SET+ directive of the form,
\begin{verbatim}

View file

@ -2,7 +2,7 @@
\newcommand{\mc}[3]{\multicolumn{#1}{#2}{#3}}
\newcommand{\vb}[1]{\mbox{\verb.#1.}}
\newcommand{\none}{\multicolumn{2}{|c|}{ }}
\renewcommand{\thetable}{\Roman{table}}
%%%%%%%\renewcommand{\thetable}{\Roman{table}}
\newcommand{\mcc}[1]{\multicolumn{2}{c}{#1}}
\def\bmu{\mbox{\boldmath $\mu$}}
\def\bE{\mbox{\bf E}}
@ -54,26 +54,24 @@ locality of communication which is the main reason for the efficiency
of this approach for very large molecular systems.
To improve efficiency, molecular systems are broken up into separately
treated solvent and solute parts.
Solvent molecules are assigned to the domains according to their
center of geometry and are always owned by a one node. This avoids
bonded interactions crossing node boundaries.
Solute molecules are broken up into segments, with each
segment assigned to a processor based on its center of geometry.
This limits the number of solute bonded interactions that cross node
boundaries.
The processor to which a particular box is assigned is responsible for
the calculation of all interactions between atoms within that box.
For the calculation of forces and energies in which atoms in
boxes assigned to different processors are involved, data are
exchanged between processors. The number of neighboring boxes is
determined by the size and shape of the boxes and the range of
interaction. The data exchange that takes place every simulation time
step represents the main communication requirements.
Consequently, one of the main efforts is to design algorithms and
data structures to minimize the cost of this communication. However,
for very large molecular systems, memory requirements also need to be
taken into account.
treated solvent and solute parts. Solvent molecules are assigned to
the domains according to their center of geometry and are always owned
by a one node. This avoids solvent--solvent bonded interactions
crossing node boundaries. Solute molecules are broken up into
segments, with each segment assigned to a processor based on its
center of geometry. This limits the number of solute bonded
interactions that cross node boundaries. The processor to which a
particular box is assigned is responsible for the calculation of all
interactions between atoms within that box. For the calculation of
forces and energies in which atoms in boxes assigned to different
processors are involved, data are exchanged between processors. The
number of neighboring boxes is determined by the size and shape of the
boxes and the range of interaction. The data exchange that takes place
every simulation time step represents the main communication
requirements. Consequently, one of the main efforts is to design
algorithms and data structures to minimize the cost of this
communication. However, for very large molecular systems, memory
requirements also need to be taken into account.
To compromise between these requirements exchange of data is performed
in successive point to point communications rather than using the
@ -100,7 +98,7 @@ redistribution is the more efficient and preferred method.
The description of a molecular system consists of static and dynamic
information. The static information does not change during a
simulation and includes items such as connectivity, excluded and third
neighbor lists and equilibrium values and force constants for all
neighbor lists, equilibrium values and force constants for all
bonded and non-bonded interactions. The static information is called
the topology of the molecular system, and is kept on a separate
topology file. The dynamic information includes coordinates and
@ -117,7 +115,7 @@ a list of atoms, their non-bonded parameters for van der Waals and
electrostatic interactions, and the complete connectivity in terms
of bonds, angles and dihedrals.
In \nwargos, molecular systems a distinction is made between
In \nwargos\ molecular systems, a distinction is made between
{\it solvent} and {\it solute}, which are treated separately.
A solvent molecule is defined only once in the topology file,
even though many solvent molecules usually are included in the
@ -142,7 +140,7 @@ topology file.
A utility \nwsgm\ reads a rudimentary, force-field independent
{\it fragment} defining atom types and connectivity, and
constructs a template for a force-field dependent segment.
Fragments can be also be collected into a set of fragment database
Fragments can also be collected into a set of fragment database
files.
A utility \nwrst\ generates a {\it restart} file, given a topology
@ -166,7 +164,7 @@ For example, if {\tt crown.top} is the name of the topology file for
a crown ether, {\tt crown\_em}, {\tt crown\_md}, {\tt crown\_mcti} could
be used with appropriate extensions for the filenames for energy
minimization, molecular dynamics simulation and multiconfiguration
thermodynamic integration respectively. All of these calculations
thermodynamic integration, respectively. All of these calculations
would use the same topology file {\tt crown.top}.
\label{sec:nwaextensions}
@ -213,7 +211,7 @@ level & Description & Availability \\
\end{center}
Only the level {\bf s} and {\bf x} databases are publicly available.
The user is responsible for the private level {\bf u} and {\bf r}
The user is responsible for the private level {\bf u} and {\bf t}
databases. When the utility programs scan the databases, the priority
is {\bf t}$>${\bf u}$>${\bf x}$>${\bf s}$>$.
@ -253,8 +251,14 @@ Keyword & Force field & Current status \\
\section{Creating fragment files}
Fragment files contain the basic information needed to specify all
interactions that need to be considered in a molecular simulation.
The format of the fragment files is
\begin{center}
The format of the fragment files is described in Table \ref{tbl:nwafrag}
\begin{table}[htbp]
\label{tbl:nwafrag}
\center
\begin{tabular}{lll}
\hline\hline
Card & Format & Description \\ \hline
@ -263,7 +267,7 @@ I-1-2 & a10 & name of the fragment, the tenth character\\
& & N: identifies beginning of a chain\\
& & C: identifies end of a chain\\
& & blank: identifies chain fragment\\
& & M: identifies a integral molecule\\
& & M: identifies an integral molecule\\
\hline
I-2-1 & i5 & number of atoms in the fragment\\
\hline
@ -296,13 +300,15 @@ connectivity} \\
III-1-1 & 16i5 & connectivity, duplication allowed\\
\hline\hline
\end{tabular}
\end{center}
\caption{The format of NWArgos fragment files.}
\end{table}
\section{Creating segment files}
\label{sec:nwanwsgm}
Program \nwsgm\ can be used to generate a template for a segment file
from a corresponding fragment file. The segment file contains all
information for the calculation of bonded and non-bonded interaction
information for the calculation of bonded and non-bonded interactions
for a given chemical system using a specific force field. If a
fragment is available in a local file or in a database file, the
segment can be generated using
@ -315,17 +321,22 @@ should be replaced by underlines. \verb+<ffield>+ should be the
name of an available force field.
The program \nwsgm\ only provides a template for a segment. It is
often needed to make additional changes in this file. One important
restriction is that dihedral interactions may only involve atoms on
at most two segments. The segment entries define three sets of
parameters for each interaction. Free energy perturbations can be
performed using set 1 for the generation of the ensemble while using
sets 2 and/or 3 as perturbations. Free energy multiconfiguration
thermodynamic integration and multistep thermodynamic perturbation
calculations are performed by gradually changing the interactions in
the system from parameter set 2 to parameter set 3.
The format of a segment is
\begin{center}
often needed to make additional changes in this file. One important
restriction is that dihedral interactions may only involve atoms on at
most two segments. The segment entries define three sets of parameters
for each interaction. Free energy perturbations can be performed using
set 1 for the generation of the ensemble while using sets 2 and/or 3
as perturbations. Free energy multiconfiguration thermodynamic
integration and multistep thermodynamic perturbation calculations are
performed by gradually changing the interactions in the system from
parameter set 2 to parameter set 3. The format of a segment is
described in Tables \ref{tbl:nwaseg1}--\ref{tbl:nwaseg6}.
\begin{table}[htbp]
\center
\label{tbl:nwaseg1}
\begin{tabular*}{150mm}{p{12mm}p{12mm}l}
\hline\hline
Deck & Format & Description \\ \hline
@ -341,7 +352,16 @@ I-2-3 & i5 & number of angles in the segment\\
I-2-4 & i5 & number of proper dihedrals in the segment\\
I-2-5 & i5 & number of improper dihedrals in the segment\\
\hline
\end{tabular*}\\
\end{tabular*}
\caption{NWArgos segment file format, table 1 of 6.}
\end{table}
\begin{table}[htbp]
\center
\label{tbl:nwaseg2}
\begin{tabular*}{150mm}{p{12mm}p{12mm}l}
\hline\hline
Deck & Format & Description \\ \hline
@ -385,7 +405,16 @@ II-2-4 & f12.6 & atomic polarizability/$4\pi\epsilon_o$ in nm$^3$, set 2\\
II-2-5 & f12.6 & atomic partial charge in e, set 3\\
II-2-6 & f12.6 & atomic polarizability/$4\pi\epsilon_o$ in nm$^3$, set 3\\
\hline
\end{tabular*}\\
\end{tabular*}
\caption{NWArgos segment file format, table 2 of 6.}
\end{table}
\begin{table}[htbp]
\center
\label{tbl:nwaseg3}
\begin{tabular*}{150mm}{p{12mm}p{12mm}l}
\hline\hline
Deck & Format & Description \\ \hline
@ -406,7 +435,17 @@ III-2-4 & e12.5 & bond force constant in kJ nm$^2$ mol$^{-1}$, set 2 \\
III-2-5 & f12.6 & bond length in nm, set 3\\
III-2-6 & e12.5 & bond force constant in kJ nm$^2$ mol$^{-1}$, set 3 \\
\hline
\end{tabular*}\\
\end{tabular*}
\caption{NWArgos segment file format, table 3 of 6.}
\end{table}
\begin{table}
\center
\label{tbl:nwaseg4}
\begin{tabular*}{150mm}{p{12mm}p{12mm}l}
\hline\hline
Deck & Format & Description \\ \hline
@ -427,7 +466,17 @@ IV-2-4 & e12.5 & angle force constant in kJ mol$^{-1}$, set 2 \\
IV-2-5 & f12.6 & angle in radians, set 3\\
IV-2-6 & e12.5 & angle force constant in kJ mol$^{-1}$, set 3 \\
\hline
\end{tabular*}\\
\end{tabular*}
\caption{NWArgos segment file format, table 4 of 6.}
\end{table}
\begin{table}[htbp]
\center
\label{tbl:nwaseg5}
\begin{tabular*}{150mm}{p{12mm}p{12mm}l}
\hline\hline
Deck & Format & Description \\ \hline
@ -452,7 +501,16 @@ V-2-7 & i5 & multiplicity, set 3\\
V-2-8 & f12.6 & proper dihedral in radians, set 3\\
V-2-9 & e12.5 & proper dihedral force constant in kJ mol$^{-1}$, set 3 \\
\hline
\end{tabular*}\\
\end{tabular*}
\caption{NWArgos segment file format, table 5 of 6.}
\end{table}
\begin{table}[htbp]
\center
\label{tbl:nwaseg6}
\begin{tabular*}{150mm}{p{12mm}p{12mm}l}
\hline\hline
Deck & Format & Description \\ \hline
@ -475,12 +533,21 @@ VI-2-5 & f12.6 & improper dihedral in radians, set 3\\
VI-2-6 & e12.5 & improper dihedral force constant in kJ mol$^{-1}$, set 3 \\
\hline\hline
\end{tabular*}
\end{center}
\caption{NWArgos segment file format, table 6 of 6.}
\end{table}
\section{Creating sequence files}
A sequence file describes a molecular system in terms of segments. The
file format is
\begin{center}
file format is given in Table \ref{tbl:nwaseq}
\begin{table}[htbp]
\center
\label{tbl:nwaseq}
\begin{tabular*}{150mm}{p{12mm}p{12mm}l}
\hline\hline
Card & Format & Description \\ \hline
@ -517,7 +584,9 @@ II-1-1 & i5 & link segment 10\\
II-1-2 & i3 & link atom in link segment 10\\
\hline\hline
\end{tabular*}
\end{center}
\caption{The NWArgos sequence file format.}
\end{table}
\section{Creating topology files}
\label{sec:nwanwtop}

View file

@ -34,19 +34,24 @@ are as follows;
TRIPLET
QUARTET
QUINTET
SEXTEXT
SEPTET
OCTET
NOPEN <integer nopen default 0>
RHF
ROHF
UHF
\end{verbatim}
The optional keywords \verb+SINGLET, DOUBLET, TRIPLET, QUARTET, QUINTET+
and \verb+NOPEN+ allow the user to specify the number of open shells for a
particular calculation. \verb+SINGLET+ is the default, and specifies a
closed shell; \verb+DOUBLET+ specifies one open shell; \verb+TRIPLET+
specifies two open shells; and so forth. If there are more than four
open shells, the keyword \verb+NOPEN+ must be used, with the integer
\verb+nopen+ defining the exact number of open shells.
The optional keywords \verb+SINGLET+, \verb+DOUBLET+, \ldots,
\verb+OCTET+ and \verb+NOPEN+ allow the user to specify the number of
singly occupied orbitals for a particular calculation. \verb+SINGLET+
is the default, and specifies a closed shell; \verb+DOUBLET+ specifies
one singly occupied orbital; \verb+TRIPLET+ specifies two singly
occupied orbitals; and so forth. If there are more than seven singly
occupied orbitals, the keyword \verb+NOPEN+ must be used, with the
integer \verb+nopen+ defining the exact number of singly occupied
orbitals (sometimes referred to as open shells).
If the multiplicity is any value other than \verb+SINGLET+, the
default calculation will be a spin-restricted, high-spin, open-shell
@ -58,10 +63,10 @@ this.
A spin-unrestricted solution can also be performed by specifying the
keyword \verb+UHF+. In UHF calculations, it is assumed that the
number of open shells corresponds to the difference between the number
of alpha-spin and beta-spin orbitals. For example, a UHF calculation
with 2 more alpha-spin orbitals than beta-spin orbitals can be
obtained by specifying
number of singly occupied orbitals corresponds to the difference
between the number of alpha-spin and beta-spin orbitals. For example,
a UHF calculation with 2 more alpha-spin orbitals than beta-spin
orbitals can be obtained by specifying
\begin{verbatim}
scf
@ -145,7 +150,7 @@ error in the energy is typically much greater than this threshold.
The default threshold is the minimum of $10^{-7}$ and $0.01$ times the
requested convergence threshold of the SCF calculation. This is
suitable for nearly all purposes, though a more relaxed value of
$10^-6$ might accelerate inaccurate exploratory calculations.
$10^{-6}$ might accelerate inaccurate exploratory calculations.
The input to specify the threshold explicitly within the
\verb+SCF+ directive is as follows, e.g.
@ -172,7 +177,7 @@ by the user.
\begin{verbatim}
VECTORS [[input] (<string input_movecs default atomic>) || \
(project <string basisname> <string filename>)] \
[swap [alpha|beta] <integer vec1 vec2> ...] \
[swap [alpha||beta] <integer vec1 vec2> ...] \
[output <string output_filename default input_movecs>] \
[lock]
\end{verbatim}
@ -267,9 +272,9 @@ An example of use of the \verb+SWAP+ directive:
\end{verbatim}
This directive will cause the initial orbitals to be read from the
file \verb+"try1.movecs"+. The vectors for the orbitals within the
pairs 173--175 will be swapped with those within 174--176. The final
orbitals obtained in the calculation will be written to the file
\verb+"try2.movecs"+.
pairs 173--175 will be swapped with those within 174--176, so the
resulting order is 175, 176, 173, 174. The final orbitals obtained in
the calculation will be written to the file \verb+"try2.movecs"+.
The swapping of orbitals occurs as a sequential process in the order
(left to right) input by the user. Thus, regarding each pair as an
@ -369,14 +374,14 @@ precision is usually available by default.
The default convergence threshold suffices for most SCF energy and
geometry optimization calculations, providing about 6--8 decimal
places in the energy, and about four significant figures in the
density and derivative w.r.t.\ nuclear coordinates. However, weakly
interacting systems, floppy molecules, finite-difference of gradients
to compute the Hessian, and post-Hartree-Fock calculations may require
greater precision. A threshold of $10^{-6}$ is adequate for most such
purposes, and a threshold of $10^{-8}$ might be necessary for very
high accuracy or very weak interactions. A threshold of $10^{-10}$
should be regarded as the best that can be attained in most
circumstances.
density and energy derivative w.r.t.\ nuclear coordinates. However,
weakly interacting systems, floppy molecules, finite-difference of
gradients to compute the Hessian, and post-Hartree-Fock calculations
may require greater precision. A threshold of $10^{-6}$ is adequate
for most such purposes, and a threshold of $10^{-8}$ might be
necessary for very high accuracy or very weak interactions. A
threshold of $10^{-10}$ should be regarded as the best that can be
attained in most circumstances.
\section{{\tt MAXITER} --- iteration limit}
\label{sec:max}
@ -426,7 +431,7 @@ and the computational strategy.
\begin{verbatim}
RI [<string (hessian || preconverge || full) default full>] \
[<string (disk || memory || auto) default memory>]
[<string (disk || memory || auto) default auto>]
\end{verbatim}
The first three parameters determine the extent of the approximation:
@ -806,30 +811,28 @@ Hessian used with the Newton Raphson (NR) approach. It is also
possible to change the level-shift automatically as the solution
attains some specified accuracy. The form of the directive is as
follows;
\begin{verbatim}
LEVEL [pcg <real initial default 20.0> \
[<real tol default 0.5> <real final default 0.0>]] \
[nr <real initial default 0.0> \
[<rel tol default 0.0> <real final default 0.0>]]
[<real tol default 0.0> <real final default 0.0>]]
\end{verbatim}
% Section \ref{sec:scfconv} discussed the use of level shifts to control
% convergence. Level shifts may be set independently for both the
% approximate (denoted here by PCG) and exact Hessians (denoted by
% NR). You can also have the level shift automatically changed when a
% certain accuracy is attained.
This directive contains only two keywords; one for the PCG method and
the other for the exact Hessians. Specifying the keyword \verb+pcg+
allows the user to define the level shifting for the approximate
(i.e., PCG) method. Specifying the keyword \verb+nr+ allows the user
to define the level shifting for the exact Hessians. In both options,
the initial level shift is defined by the value specified for the
variable \verb+initial+. Optionally, \verb+tol+ can specified
independently with each keyword to define the level of accuracy that
must be attained in the solution before the level shifting is changed
to the value specified by input in the real variable \verb+final+.
the other for the exact Hessian (Newton Raphson, or NR). Use of PCG
or NR is determined by the input specified for \verb+nr_switch+ on the
\verb+NR+ directive, Section \ref{sec:nrswitch} above.
Specifying the keyword \verb+pcg+ on the \verb+LEVEL+ directive allows
the user to define the level shifting for the approximate (i.e., PCG)
method. Specifying the keyword \verb+nr+ allows the user to define
the level shifting for the exact Hessians. In both options, the
initial level shift is defined by the value specified for the variable
\verb+initial+. Optionally, \verb+tol+ can be specified independently
with each keyword to define the level of accuracy that must be
attained in the solution before the level shifting is changed to the
value specified by input in the real variable \verb+final+. Level
shifts and gradient thresholds are specified in atomic units.
For the PCG method (as specified using the keyword \verb+pcg+), the
defaults for this input are 20.0 for \verb+initial+, 0.5 for
@ -842,7 +845,6 @@ For the exact Hessian (as specified using the keyword \verb+nr+), the
defaults are all zero. The exact Hessian is usually not shifted since
this destroys quadratic convergence. An example of an input directive
that applies a shift of 0.2 to the exact Hessian is as follows;
\begin{verbatim}
level nr 0.2
\end{verbatim}
@ -850,7 +852,6 @@ that applies a shift of 0.2 to the exact Hessian is as follows;
To apply this shift to the exact Hessian only until the maximum
element of the gradient falls below 0.005, the required input
directive is as follows;
\begin{verbatim}
level nr 0.2 0.005 0
\end{verbatim}
@ -861,7 +862,6 @@ defaults, the keyword \verb+pcg+ must be specified also. For example,
to specify the level shifting in the above example for the exact
Hessian {\em and} non-default shifting for the PCG method, the
directive would be something like the following;
\begin{verbatim}
level pcg 20 0.3 0.0 nr 0.2 0.005 0.0
\end{verbatim}
@ -870,9 +870,7 @@ This input will cause the PCG method to be level-shifted by 20.0 until
the maximum element of the gradient falls below 0.3, then the shift
will be zero. For the exact Hessian, the level shifting is initially
0.2, until the maximum element falls below 0.005, after which the
shift is zero. (use of PCG or NR is determined by the input specified
for \verb+nr_switch+ on the \verb+NR+ directive, Section
\ref{sec:nrswitch} above.)
shift is zero.
The default options correspond to
\begin{verbatim}
@ -913,17 +911,3 @@ print control, along with the print level or each one.
``convergence'' \> default\> info each iteration
\end{tabbing}
If no \verb+PRINT+ directives are defined explicitly in the input for
the SCF module, the printed output from an SCF calculation will
consist only of the above items with a ``default'' print level (i.e.,
\verb+''mo guess''+, \verb+''final evals''+, \verb+''vectors i/o''+,
\verb+''parameters''+, and \verb+''convergence''+). If the keyword
\verb+debug+ is explicitly invoked on a \verb+PRINT+ directive, the
output will include all items in the above list with a print level of
\verb+debug+, in addition to the items with a print level of
\verb+default+. If the keyword \verb+high+ is also invoked, all items
in the above list will be printed. If only the keyword \verb+low+ is
invoked, the only item that will be printed is \verb+''information''+.

View file

@ -41,7 +41,7 @@ the variable \verb+minutes+ that allowed the calculation to write out the
gradient before failing.) The keyword \verb+restart+ allows the partially
calculated forces from the previous calculation to be used as the starting
point for the new calculation. If the gradient was not saved previously,
however, this keyword has no affect. The gradients area automatically
however, this keyword has no effect. The gradients are automatically
recalculated from zero.
% This keyword tells the program that this is a restart of an aborted
@ -57,7 +57,7 @@ so that Subsequent gradient
% \section{PRINT, NOPRINT}
The complementary keyword pair \verb+print+ and \verb+noprint+ allow the
The complementary keyword pair \verb+print+ and \verb+noprint+ allows the
user some additional control on the information that can be obtained from
the SCF calculation. Currently, only a few items can be explicitly invoked
via print control. These are as follows;

View file

@ -40,7 +40,7 @@ A typical sequence of calculations is as follows:
previous} selection threshold.
\end{enumerate}
To illustrate this, below is some abreviated output from a
To illustrate this, below is some abbreviated output from a
calculation on water in an augmented cc-PVDZ basis set with one frozen
core orbital. The SCF was converged to high precision in $C_{2v}$
symmetry with the following input
@ -68,7 +68,7 @@ the SCF reference.
\end{verbatim}
Table \ref{selcitab} summarizes the output from each of the major
computational steps that were performed.
\begin{table}[h]
\begin{table}[htbp]
\begin{tabular}{c|l|r|l}
& & CI & \\
Step & Description & dimension & Energy \\ \hline

View file

@ -35,140 +35,136 @@ number of iterations and the convergence criteria from the default
values. The input for these options is described in the following
sections.
\section{Action directives in the STEPPER Module}
\section{{\tt MIN} and {\tt TS} --- Minimum or transition state search}
The default is for STEPPER to minimize the energy with respect to the
geometry of the system. STEPPER can also be used to find the
transition state by following the lowest eigenvector of the nuclear
Hessian. There are several options available to modify the behavior
of the STEPPER module. The input to define the multiple actions of
STEPPER is defined generically.
geometry of the system. This default behaviour may be forced with the
directive
\begin{verbatim}
<string (action || variable) [variable value] default MIN>
\end{verbatim}
MIN
\end{directive}
The value \verb+MIN+ for the string \verb+action+ specifies the default
energy minimization. Finding the lowest transition state is specified
by entering the value \verb+TS+ for the string \verb+action+.
STEPPER can also be used to find the transition state by following the
lowest eigenvector of the nuclear Hessian. This is usually invoked
by using the \verb+saddle+ keyword on the \verb+TASK+ directive
(Section \ref{sec:task}), but it may also be selected by specifying
the directive
\begin{verbatim}
TS
\end{verbatim}
in the STEPPER input.
\section{{\tt TRACK} --- Mode selection}
STEPPER has the ability to ``track'' a specific mode during an
optimation for a transition state search, the user can also have the
module track the eigenvector corresponding to a specific mode. This
is done by specifying the keyword \verb+TRACK+, using the following
input line,
is done by specifying the directive
\begin{verbatim}
TRACK [nmode <integer nmode default 1>]
\end{verbatim}
The keyword \verb+TRACK+ tells STEPPER to track the eigenvector
corresponding to the integer value of \verb+nmode+ during a transition
corresponding to the integer value of \verb+<nmode>+ during a transition
state walk. (Note: this input is invalid for a minimization walk
since following a specific eigenvector will not necessarily give the
desired local minimum .) The step is constructed to go up in energy
desired local minimum.) The step is constructed to go up in energy
along the \verb+nmode+ eigenvector and down in all other degrees of
freedom.
\section{Control of the STEPPER Calculation}
\section{{\tt MAXITER} --- Maximum number of steps}
In most applications, 20 stepper iterations will be sufficient to
obtain the energy minimization. However, the user has
the option of specifying the maximum number of iterations allowed,
using the input line,
obtain the energy minimization. However, the user has the option of
specifying the maximum number of iterations allowed, using the input
line,
\begin{verbatim}
MAXITER <integer maxiter default 20>
\end{verbatim}
The value specified for the integer \verb+<maxiter>+ defines the maximum
number of geometry optimization steps. The geometry optimization will
restart automatically.
The value specified for the integer \verb+maxiter+ defines the maximum
number of geometry optimization steps. The
geometry optimization will restart automatically.
The size of steps that can be taken in STEPPER is governed by the degree
to which the calculated values of the eigenvectors can be considered
reasonably good. This is the 'trust radius', and has a default value of
0.1, which means that the step in the direction determined will be no
longer than the trust radius. The user has the option of overriding this
default using the keyword \verb+TRUST+, with the following input line,
\section{{\tt TRUST} --- Trust radius}
The size of steps that can be taken in STEPPER is controlled by the
trust radius which has a default value of 0.1. Steps are constrained
to be no larger than the trust radius. The user has the option of
overriding this default using the keyword \verb+TRUST+, with the
following input line,
\begin{verbatim}
TRUST <real radius default 0.1>
\end{verbatim}
The larger the value specified for the variable \verb+radius+, the larger
the steps that can be taken by STEPPER. Experience has shown that for
larger systems (i.e., those with 20 or more atoms), a value of 0.5 or
greater should be entered for \verb+radius+.
The larger the value specified for the variable \verb+radius+, the
larger the steps that can be taken by STEPPER. Experience has shown
that for larger systems (i.e., those with 20 or more atoms), a value
of 0.5, or greater, usually should be entered for \verb+<radius>+.
\section{Convergence Criteria for the STEPPER Calculations}
\section{{\tt CONVGG} and {\tt CONVGE} --- Convergence criteria}
Two convergence criteria can be specified explicitly for the
STEPPER calculations. The keyword \verb+CONVGG+ allows the user to
specify the the convergence tolerence for the gradient norm for
all degrees of freedom. The input line is of the following form,
\begin{verbatim}
CONVGG <real convgg default 1.0d-04>
\end{verbatim}
The entry for the real variable \verb+convgg+ should be approximately
The entry for the real variable \verb+<convgg>+ should be approximately
equal to the square root of the energy convergence tolerance.
The energy convergence tolerance is the convergence criterion for the
energy difference in the geometry optimization in STEPPER. It can be
specified by input using a line of the following form,
\begin{verbatim}
CONVGE <real convge default 1.0d-08>
\end{verbatim}
\section{Initial Guess for Nuclear Hessian}
%\section{{\tt FDAT} and {\tt FOPT} --- Initial Guess for Nuclear Hessian}
%
%Any initial hessian can be used with the STEPPER module via the ASCII
%hessian interface. The lower triangular [$3N{\times}(3N+1)/2$] matrix
%written in any ASCII format (e.g., 1pd20.10) will work but the entries
%must be one per line. This should be stored in a file called
%\verb+$file_prefix$+.hess in the current working directory of
%node zero.
%
%There are two other options that stepper allows regarding the initial
%guess for the nuclear hessian. By specifying a basis set (smaller
%than the desired basis set) with basis set name of ``fd basis'' (c.f.,
%Section \ref{sec:basis} users can optimize the geometry using the
%smaller basis and then generate a finite difference hessian.
%Alternatively users may generate a finite difference hessian at the
%current geometry.
%
%These actions are invoked with the input
%\begin{verbatim}
% FDAT
%\end{verbatim}
%This computes the finite difference nuclear hessian at the current
%geometry using the ``fd basis'' and then begins the optimization using
%the ``ao basis'' for the particular QM method.
%
%The directive
%\begin{verbatim}
%FDOPT
%\end{verbatim}
%optimizes the geomety of the system in the basis ``fd basis'' using
%the user specified QM method. The finite difference nuclear hessian
%is then computed at this optimized geometry for the ``fd basis.'' The
%optimization using the ``ao basis'' for the particular QM method is
%then started.
%
Any initial hessian can be used with the STEPPER module via the ASCII
hessian interface. The lower triangular [$3N{\times}(3N+1)/2$] matrix
written in any ASCII format (e.g., 1pd20.10) will work but the entries
must be one per line. This should be stored in a file called
\verb+<default_file_prefix>+.hess in the current working directory of
node zero.
There are two other options that stepper allows regarding the initial
guess for the nuclear hessian. By specifying a basis set (smaller
than the desired basis set) with basis set name of ``fd basis'' (c.f.,
Section \ref{sec:basis} users can optimize the geometry using the
smaller basis and then generate a finite difference hessian.
Alternatively users may generate a finite difference hessian at the
current geometry.
These actions are invoked with the input tokens:
\begin{verbatim}
FDAT
\end{verbatim}
FDAT computes the finite difference nuclear hessian at the current
geometry using the ``fd basis'' and then begins the optimization using
the ``ao basis'' for the particular QM method.
\begin{verbatim}
FDOPT
\end{verbatim}
FDOPT optimizes the geomety of the system in the ``fd basis'' using
the user specified QM method. The finite difference nuclear hessian
is then computed at this optimized geometry for the ``fd basis.''
The optimization using the ``ao basis'' for the particular QM method
is then started.
\section{Backsteping in Stepper}
If a step taken during the optimization is too large (e.g., the step
causes the energy to go up for a minimization or down for a transition
state search), the STEPPER optimizer will automatically ``backstep'' and
correct the step based on information prior to the faulty step. If
you have an optimization that ``backsteps'' frequently then the inital
trust radius should most likely be decreased.
state search), the STEPPER optimizer will automatically ``backstep''
and correct the step based on information prior to the faulty step.
If you have an optimization that ``backsteps'' frequently then the
inital trust radius should most likely be decreased.

View file

@ -163,7 +163,7 @@ single directory for all processes, or different directories for
different processes. The general form of the directive is as follows;
\begin{verbatim}
(PERMANENT_DIR || SCRATCH_DIR) [(<string host>|<integer process>):] \
(PERMANENT_DIR || SCRATCH_DIR) [(<string host>||<integer process>):] \
<string directory> \
[...]
\end{verbatim}
@ -770,7 +770,8 @@ specified processes to be executed using the Bourne shell. This form
of the task directive is as follows;
\begin{verbatim}
TASK shell [(<integer-range processor = 0>|all)] <string command> [ignore]
TASK shell [(<integer-range processor = 0>||all)] \
<string command> [ignore]
\end{verbatim}
The keyword \verb+shell+ is required for this directive. It specifies

View file

@ -1,6 +1,6 @@
% $Id: user.tex,v 1.18 1997-02-26 03:17:27 d3g681 Exp $
% $Id: user.tex,v 1.19 1997-02-27 01:11:10 d3g681 Exp $
\documentstyle[fullpage,12pt]{book}
\documentstyle[fullpage,12pt,openany,fleqn]{book}
\setlength{\parskip}{6pt}
% Set the version and year of release globally