The Gaussian Library Program

Revision: 1.4 Date: 1997/08/14 14:14:00


Table of Contents










                                                                                
                                                                                
                                  PREFACE                                       
                                  _______                                       
                                                                                
    This   manual   describes   the  ATMOL  Gaussian  Library  program,  as     
implemented on the Cyber-205 at UMRCC. This document is one in a series  of     
twelve, supporting the ATMOL packages on the Cyber-205.                         
                                                                                
                                                                                
                               ATMOL MANUALS                                    
                               _____________                                    
                                                                                
                                                                                
                          1.   Introduction.                                    
                          2.   Allocator.                                       
                          3.   Gaussian Integrals.                              
                          4.   Gaussian Library.                                
                          5.   SCF.                                             
                          6.   APSG.                                            
                          7.   Transformation.                                  
                          8.   Direct CI.                                       
                          9.   Mulliken Analysis.                               
                         10.   Graphical Analysis.                              
                         11.   Property.                                        
                         12.   Service.                                         
                                                                                
                                                                                
                                                                                
                                                                                
                             TABLE OF CONTENTS                                  
                             _________________                                  
                                                                                
                                                                                
    1.   Introduction.                                               1          
    2.   Purpose of the LIBRARY File.                                1          
    3.   Facilities of the LIBRARY Program.                          1          
    4.   Program Specification.                                      1          
    5.   The NULL Directive.                                         2          
    6.   The APPEND Directive.                                       2          
    7.   The REMOVE Directive.                                       3          
    8.   The LIST Directive.                                         3          
    9.   The PUNCH directive.                                        3          
   10.   The STOP Directive.                                         3          
   11.   Error Monitoring.                                           4          
   12.   Specimen Jobs.                                              5          
   13.   References.                                                 8          
                                                                                
                                                                                
                                                                                



Introduction


The ATMOL program for the creation and maintenance of a LIBRARY file is described. There are two programs, LIBW and LIBV, serving the integrals programs INTEGW and INTEGV [1]. Associated with these programs are two databases ED0W and ED0V, containing a series of tabulated basis functions available to the user. To invoke the Library programs on the Cyber-205 at UMRCC, use the following JCL: PATTACH,ATMOL. or PATTACH,ATMOL. LIBV. LIBW.

Purpose of the LIBRARY File


The LIBRARY file is used to store data relating to standard linear combinations of Cartesian Gaussian functions to which the user may wish to make frequent reference in the data input in conjuction with the integrals program [1]. Such stanadard contractions can be referred to by the user defined NAME in the data for the Gaussian integrals program [1].

Facilities of the LIBRARY Maintenance Program


The program allows the user to perform the following tasks: (a) To create a null list of library items. The first 6 blocks of the LIBRARY file are rendered in standard library format, but contain no useful information. This step is always performed when the LIBRARY file is created. (b) To append standard contractions to an existing library, the latter possibly being in the null form referred to in (a). (c) To remove standard contractions from a library. (d) To list the contents of the LIBRARY to FORTRAN stream 6. (e) To 'punch' (output to a file) the contents of the LIBRARY to FORTRAN stream 7.

Program Specification


Printed output is routed to FORTRAN stream 6. Input data is accepted from FORTRAN stream 5. Punched output, if required, is routed to FORTRAN stream 7. The dataset used for the LIBRARY should be assigned to the ATMOL file ED0, this dataset must be REQUESTed,ATTACHed or MFLINKed in the JCL. The LIBRARY program does not require the allocation of 'large pages', hence the MEMORY and LPAGE pre-directives [2] are of no significance, also the TIME pre-directive is not valid when using LIBV or LIBW. All other pre-directives [2] are applicable and should be presented before the program specific directives. Subsequent input is given by a series of directives. The work of a given directive is completed before the program processes subsequent directives. A discription of the directives is given in the following paragraphs.
The NULL Directive
                                                                                
    This  directive  consists of a single line, containing the text NULL in     
the first data field. The NULL directive is used to define a file  suitable     
for appending information using the APPEND directive. The message :             
                                                                                
         LIBRARY REVISED                                                        
                                                                                
is  printed  out  upon  successful  completion  of the NULL directive. NULL     
should be used  when  a  library  is  created,  but  not  thereafter.  This     
directive  should not be used when revising an existing LIBRARY file, since     
this will result in the total information content of the file being erased.     
                                                                                
The APPEND Directive
                                                                                
    The purpose of this directive is to add data  to  an  existing  LIBRARY     
file.  The  first  data  line consists of the text APPEND in the first data     
field. Subsequent  data  lines  define  the  standard  contractions  to  be     
appended to the LIBRARY file. The contractions are introduced sequentially,     
if NTERM primitives are required for  a  given  contraction,  NTERM+1  data     
lines   are   required,   the   first   line   being   read   to  variables     
NAME,TYPE,NTERM,IFNORM using the format (2A,2I).                                
                                                                                
    NAME    a string of up to 8 characters by which the contraction  is  to     
be  known.  NAME  will be used when supplying data to the integrals program     
[1].                                                                            
                                                                                
    TYPE    set to the type  of  orbital  the  contraction  represnts.  For     
INTEGV characters S, P and D are valid, for INTEGW characters associated up     
to the 6th principal quantum numbers are valid.                                 
                                                                                
    NTERM   set to an integer number, specifying the number  of  primitives     
in the contraction (maximum of 10 allowed).                                     
                                                                                
    INFORM=  0 means  that  the  contraction is to be normalised (default).     
          = -1 means that the contraction is to be left unormalised.            
                                                                                
The remaining NTERM cards define the  coefficients  and  exponents  of  the     
primitives in the contraction. A primitive is read to variables CTRAN, ZETA     
using format (2F). A primitive of  exponent  ZETA  will  be  included  with     
coefficient CTRAN.                                                              
                                                                                
    When  all  data  concerning  the  contractions  has been presented, the     
APPEND directive is terminated by a  data  line  containing  the  character     
string  END  in the first data field. END should not be used to specify the     
NAME of a contraction, and should always  be  presented  to  terminate  the     
APPEND directive.                                                               
                                                                                
    The message:                                                                
                                                                                
              LIBRARY REVISED                                                   
                                                                                
is printed on successful completion of the APPEND function.                     
                                                                                
The REMOVE Directive
                                                                                
    Execution of this  directive  causes  all  references  to  a  nominated     
contraction  being removed from the LIBRARY file. The directive consists of     
one data line read to variables TEXT,NAME using format (2A).                    
                                                                                
    TEXT    should be set to the character string REMOVE.                       
                                                                                
    NAME    should be set to the NAME of  the  library  contraction  to  be     
removed.                                                                        
                                                                                
    Successful execution of this directive will be noted by the message:        
                                                                                
              LIBRARY REVISED                                                   
                                                                                
on the printed output. The warning :                                            
                                                                                
              NAME NOT KNOWN                                                    
                                                                                
will  be  printed if the NAME does not refer to a known item in the LIBRARY     
file, processing will then resume to the next directive.                        
                                                                                
The LIST Directive
                                                                                
    The LIST directive consists one data line, with the text  LIST  in  the     
first  data  field.  Execution  of  this directive causes a list of all the     
library items to be printed.                                                    
                                                                                
The PUNCH Directive
                                                                                
    The PUNCH directive consists of one data line, with the text  PUNCH  in     
the  first  data field. Execution of this directive causes the LIBRARY list     
to be routed to FORTRAN stream 7, for the purpose of  recreating  a  LIBRAY     
file  in  the event of loss of the library database. Therefore allowing the     
user to recreate the LIBRARY file through the use of the LIBRARY program.       
                                                                                
The STOP Directive
                                                                                
    This directive must be presented last, since it causes  termination  of     
execution.  The directive consits of one data line containing the text STOP     
(or EXIT) in the first data field.                                              
                                                                                
                                                                                

Error Monitoring


The possible error codes with a brief explanation are given in the following table: Error Codes Explanation ___________ ___________ 16 Directive unknown. 21 Invalid value of NTERM. No more than ten primitive Gaussians per contraction are allowed. 22 A TYPE paramter was not coded as S, P or D. Only for the LIBV module. 23 The library is full, no more entries can be accepted. The maximum number of entries is 211. 26 The exponent of a primitive Gaussian is less than 10**(-8). 29 The user has attempted to APPEND an item with a NAME already in use in the library. 42 AFN not recognized. 62 ATMOL block with invalid checksum has been read, or input/output error on ATMOL file. If the latter a finite VSOS error code will be given whose explanation will be found in [3]. 66 Library file not Requested. 67 Illegal search of an ATMOL file. 68 A data field was read in F format, and an illegal character found. 69 A data field was read in I format, and an illegal character found. 95 Absolute value of CTRAN is less than 10**(-8). 666 End of file condition detected on FORTRAN stream 5. The program expects more data. 3333 AFN not recognized in the FILE pre-directive.

Specimen Jobs


Specimen Job 1 The following set of examples illustrate how the LIBRRAY programs, LIBV and LIBW, maybe used. The example shown illustrates how to create a libray file containing two contractions. The first contraction, named P4, consists of four P shell primitives. The second contraction is named S2, and consists of two S primitive functions. The library data set is saved as ED0NEW. /*JOB JOBNAME,ACCOUNT,ST=(C20,LP=0,WS=256),PW=PASSWORD,TI=4,C=A PATTACH,ATMOL. REQUEST,ED0NEW,RT=R. LIBV. DEFINE,ED0NEW. ####S FILE ED0 EDONEW NULL APPEND P4 P 4 .1 .12 .4 .35 .5 1.05 .2 2.98 S2 S 2 .44 .55 .57 1.68 END EXIT ####S Specimen Job 2 This example shows how the data set created in the previous example, can be listed on the line printer. /*JOB JOBNAME,ACCOUNT,ST=(C20,LP=0,WS=256),PW=PASSWORD,TI=4,C=A PATTACH,ATMOL. ATTACH,ED0NEW,ACC=RW. LIBV. ####S SWITCH ED0 ED0NEW LIST STOP ####S Specimen Job 3 This example shows how to append and modify the data base ED0V, contained in the ATMOL pool. Since ED0V has only read access the VSOS COPY command is used to copy the data set, allowing the user to have append/modify access to the data set. Subsequently the user may then wish to make the appended file permanent. The example first lists the contractions stored in the library file. It then inserts a contraction CRRS6 containing six S type primitives. The next phase of the job removes the contraction named 1S2 from the data base and finally lists the appended library file. /*JOB JOBNAME,ACCOUNT,ST=(C20,LP=0,WS=256),PW=PASSWORD,TI=4,C=A PATTACH,ATMOL. COPY,ED0V,ED0LIBV. LIBV. DEFINE,ED0LIBV. ####S CHANGE ED0 ED0LIBV LIST APPEND CRRS6 S 6 0.00058 236658.0 0.00453 35364.00 0.02340 8058.310 0.09360 2294.230 0.29323 756.1180 0.67294 277.0000 END REMOVE 1S2 LIST STOP ####S The above example could equally be performed with the LIBW module in conjunction with the ED0W data base.

References


[1] D.Moncrieff and V.R. Saunders, ATMOL-Integrals program. [2] D.Moncrieff and V.R. Saunders, ATMOL-Introductory Notes. [3] CDC VSOS MANUAL, FORM 60459410, CONTROL DATA CORPORATION; VSOS Reference Manual, NAT 208, University of Manchester Regional Computer Centre, (1985).