The Atlas ATMOL Manual is no longer available. This version of the Manual dates from 1982 after ATMOL was ported to the Cyber 205 at UMRCC.
The ATMOL program for the Mulliken analysis of molecular wavefunctions is described. To invoke the Mulliken program on the Cyber-205 at UMRCC, use the following JCL:
PATTACH,ATMOL. MULL.
In default the Mulliken program will request 3 large pages of main memory, although this can be altered by the use of one of the pre-directives LPAGE or MEMORY [1].
Data input and printed output are on FORTRAN streams 5 and 6 respectively. There is normally no need to mention thes streams in the JCL.
The DUMP FILE containing the molecular orbitals (MOs) to be analysed may be assigned using any ATMOL file name (AFN).
All pre-directives [1]. except TIME are applicable and should be presented before the program specific data described below.
The first line of data is read to NBASIS,IBLKD,DDDUMP in format (2I,A).
NBASIS specifies the number of basis functions as defined at integral evaluation time. The maximum allowed value is 255.
IBLKD specifies the starting block of the DUMP FILE.
DDDUMP specifies the AFN of the DUMP FILE. This parameter may be omitted, when the DUMP FILE will be assumed to be on ED3.
The remainder of the data consists of directives. Some restrictions have been imposed on the order in which directives can be presented, the recommended order being as follows (not all directives need be used).
Allows the user to define an 80 character title for the run, and extends over two data lines. The first line contains the string TITLE in the first data field, the second comprises the title.
Example:
TITLE H2O --- MULLIKEN EXAMPLE
The purpose of this directive is to allow the user to define the 'occupation numbers' for the molecular orbitals to be analysed. It is envisaged that in most applications this directive will not be required. In general the occupation numbers associated with a given set of eigenvectors will have been placed on the DUMP FILE by the SCF [2]., APSG [3]. or Direct CI [4]. programs in the Section used for MOs. Thus the OCCDEF directive need only be used when the values on the DUMP FILE need be overridden.
The first line contains the string OCCDEF in the first data field. Following this line should come the 'occupation definition lines', the first field of such a line being read in F-format, and specifies an occupation number (OCC). Subsequent fields are read in I-format. Let the value of the integer specified in such an I-field be j. Then the j'th MO will be assigned the occupation number OCC. The following:
2.0 1 2 3 4 7 8 9 10
assigns an occupation number of 2.0 to MOs 1 to 4 and 7 to 10. The line may be shortened if sequences of consecutive integers appear by means of the string TO. Thus the abbreviated form of the above line is:
2.0 1 TO 4 7 TO 10
The occupation definition lines are presented until all MOs have been assigned occupation numbers, the directive being terminated by a line containing END in the first field. Any MO not mentioned explicitly will be assigned an occupation number of zero.
Each MO is analysed as if it contained one electron. The occupation numbers are only used in the evaluation of the Mulliken populations of the total wavefunction.
Example:
OCCDEF 2.0 1 TO 5 7 1.0 6 END
The first five MOs and MO 7 are doubly occupied while MO 6 is singly occupied.
This directive specifies those MOs whose analysis is to be printed, and consists of a single line containing the string MOPRINT in the first data field. Subsequent data fields are read in I-format, the integers specifying the MOs. An abbreviated form of the MOPRINT directive allows the user to introduce the string TO when specifying a sequence of consecutive integers. Thus the following sequences:
MOPRINT 2 3 4 7 8 9 11
and
MOPRINT 2 TO 4 7 TO 9 11
are equivalent. The MOPRINT directive may be omitted, in which case only the Mulliken analysis of the total wavefunction will be printed.
The ASSIGN directive is used to assign basis functions to 'groups'. The first line contains the string ASSIGN in the first data field. Following there should be 'basis function group assignment lines', at least one line per group being required. The first data field of such a line is read in A-format and should contain a user specified group label. Subsequent data fields are read in I-format. Let the value of the integer specified in such an I-field be j. Then the j'th basis function will be assigned the group label found in the first data field of the line. The following:
G1 1 2 3 4 7 8 9 10
is a valid group assignment line. Such a line may be shortened if sequences of consecutive integers appear, by means of the string TO. Thus the abbreviated form of the above line is:
G1 1 TO 4 7 TO 10
The basis function group assignment lines are presented until all basis functions have been assigned a group label, when a data line containing the string END in the first data field is presented to terminate the directive. It is therefore not possible to use the text END as a group label. Any basis function not assigned a group label by the user will be assigned the label JUNK by the program.
Note: The functions specified in the ASSIGN directive are the members of the basis set employed in the SCF [2]. or APSG [3]. calculation which produced the MOs to be analysed. Thus if the CTRANS directive was used, these functions are the LCBF's described in [2].. If no CTRANS directive was presented, the functions are members of the 'original' basis set as defined at integral evaluation time.
This directive specifies the Section of the DUMP FILE containing the MOs to be analysed. The directive consists of a single line, read to variables TEXT,ISECT,ATEXT using format (A,I,A).
TEXT should be set to the string VECTORS.
ISECT the eigenvectors to be analysed will be read from this Section of the DUMP FILE.
ATEXT should be set to the string PRINT if a listing of the vectors is required; if omitted the vectors will not be printed.
Example:
VECTORS 1 PRINT
Eigenvectors are read from Section 1 of the DUMP FILE and printed.
This directive consists of a single line with the string ENTER in the first data field. The directive signals that no more data is to be processed, and should be presented last. It is not possible to perform the analysis of more than one set of vectors in a single run of the program.
A brief explanation of the possible error codes is given below:
Error Code Explanation __________ ___________ 16 Directive unknown. 42 AFN not recognized. 50 Invalid parameter in WIDTH pre-directive. 61 Index block of DUMP FILE not in correct format. 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 [5].. 63 A DUMP FILE Section number outside the allowed range of 1 to 190 has been specified. 64 An attempt has been made to retrieve an undefined section from the DUMP FILE. 65 A DUMP FILE Section is of the wrong TYPE. 67 Illegal search of an ATMOL file. 68 Illegal character found in F-format data field. 69 Illegal character found in I-format data field. 200 Illegal value for NBASIS specified on the first data line. 201 Invalid LCBF specified in the ASSIGN directive. 202 Illegal number of LCBFs specified on a group assignment line of the ASSIGN directive. 203 Number of groups specified by ASSIGN directive is invalid. 204 ASSIGN directive omitted. 205 Invalid MO specified in MOPRINT directive. 206 Invalid MO specified in OCCDEF directive. 207 Occupation numbers for the MOs to be analysed are not available. This condition will only arise when the vectors Section restored from the DUMP FILE does not contain occupation numbers, and the OCCDEF directive is omitted. ___ 208 VECTORS directive omitted. 209 The vectors Section retrieved from the DUMP FILE is not in the correct format. 210 Value of NBASIS specified on the first data line is not consistent with the vectors retrieved from the DUMP FILE. 666 End of file condition detected on FORTRAN stream 5. The program expects more data. 999 Insufficient main memory for the program to continue. 3333 AFN not recognized in the FILE pre-directive.
This example is based on the H2O monomer with integrals generated by INTEGV. The vectors are taken from Section 1 of the DUMP FILE, generated from the closed shell scf example [2].. The group assignments break down the basis set into oxygen S, P and D and hydrogen S and P orbitals. The analysis of MOs 1 to 6 will be printed.
/*JOB JOBNAME,ACCOUNT,ST=(C20,LP=1,WS=256),PW=PASSWORD,TI=9,C=A ATTACH,ED3V,ACC=RW. PATTACH,ATMOL. MULL. ####S LPAGE 1 FILE ED3 ED3V 25 1 ED3 TITLE (H2O) MULLIKEN ANALYSIS (INTEGV INTS) MOPRINT 1 TO 6 ASSIGN O(S) 1 TO 4 O(P) 9 TO 14 O(D) 21 TO 25 H1(S) 5 6 H2(S) 7 8 H1(P) 15 16 17 H2(P) 18 19 20 END VECTORS 1 ENTER ####S
The H2O monomer is analysed again, but this time the integrals were generated by INTEGW. The analysis of all 25 MOs will be printed. Note that the ordering of the basis functions generated by INTEGV and INTEGW are different.
/*JOB JOBNAME,ACCOUNT,ST=(C20,LP=1,WS=256),PW=PASSWORD,TI=9,C=A ATTACH,ED3W,ACC=RW. PATTACH,ATMOL. MULL. ####S FILE ED3 ED3W LPAGE 1 25 1 ED3 TITLE (H2O) MULLIKEN ANALYSIS (INTEGW INTS) MOPRINT 1 TO 25 ASSIGN O(S) 1 TO 4 O(P) 5 TO 10 O(D) 11 TO 15 H1(S) 16 17 H2(S) 18 19 H1(P) 20 21 22 H2(P) 23 24 25 END VECTORS 1 ENTER ####S
[1] D.Moncrieff and V.R. Saunders, ATMOL-Introductory Notes.
[2] D.Moncrieff and V.R. Saunders, ATMOL-SCF Program.
[3] D.Moncrieff and V.R. Saunders, ATMOL-APSG program.
[4] D.Moncrieff and V.R. Saunders, ATMOL-Direct CI program.
[5] CDC VSOS Manual, Form 60459410, Control Data Corporation; VSOS Reference Manual, NAT 208, University of Manchester Regional Computer Centre, (1985).