.. index:: single: Program; GENANO single: GENANO single: Basis set; Generation single: Basis set; Atomic Natural Orbitals .. _TUT\:sec\:genano: :program:`GENANO` --- A Program to Generate ANO Basis Sets ========================================================== :program:`GENANO` is a program for determining the contraction coefficients for generally contracted basis sets. They are determined by diagonalizing a density matrix, using the eigenvectors (natural orbitals) as the contraction coefficients, resulting in basis sets of the ANO (Atomic Natural Orbitals) type. The program can be used to generate any set of atomic or molecular basis functions. Only one or more wave functions (represented by formated orbital files) are needed to generate the average density matrix. These natural orbital files can be produced by any of the wave function generators, as it is described in :numref:`UG:sec:genano` of the user's guide. As an illustrative example, in the Advanced Examples there is an example of how to generate a set of molecular basis set describing Rydberg orbitals for the benzene molecule. The reader is referred to this example for more details. The :program:`GENANO` program requires several input files. First, one :file:`ONEINT` file generated by the :program:`SEWARD` module for each input wave function. The files must be linked as :file:`ONE001`, :file:`ONE002`, etc. If the wave functions correspond to the same system, the same :file:`ONEINT` file must be linked with the corresponding names as many times as wave functions are going to be treated. Finally, the program needs one file for wave function containing the formated set of natural orbitals. The files must be linked as :file:`NAT001`, :file:`NAT002`, etc. The input file for module :program:`GENANO` contains basically three important keywords. :kword:`CENTER` defines the atom label for which the basis set is to be generated. The label must match the label it has in the :program:`SEWARD`. :kword:`SETS` keyword indicates that the next line of input contains the number of sets to be used in the averaging procedure and :kword:`WEIGHTS` defines the relative weight of each one of the previous sets in the averaging procedure. :numref:`block:genano_input` lists the input file required by the :program:`GENANO` program for making a basis set for the oxygen atom. Three natural orbital files are expected, containing the natural orbitals for the neutral atom, the cation, and the anion. .. code-block:: none :caption: Sample input requesting the :program:`GENANO` module to average three sets of natural orbitals on the oxygen atom. :name: block:genano_input &GENANO Title= Oxygen atom basis set: O/O+/O- Center= O Sets= 3 Weights= 0.50 0.25 0.25 As output files :program:`GENANO` provides the file :file:`ANO`, containing the contraction coefficient matrix organized such that each column correspond to one contracted basis function, and the file :file:`FIG`, which contains a PostScript figure file of the obtained eigenvalues. The output of :program:`GENANO` is self-explanatory.