Read Checkpoint File Gaussian

#!/bin/bash -l #SBATCH -account=nn.k #SBATCH -job-name=example #SBATCH -output=example.log # Stallo nodes have either 16 or 20 cores: 80 is a multiple of both #SBATCH -ntasks=80 # make sure no other job runs on the same node #SBATCH -exclusive # syntax is DD-HH:MM:SS #SBATCH -time=00-00:30:00 # allocating 30 GB on a node and leaving a bit over 2 GB for the system #SBATCH -mem-per. Gaussian formatted checkpoint file format (fch, fchk, fck)¶ A formatted text file containing the results of a Gaussian calculation. Currently supports reading molecular geometries from fchk files. More to come.

Setting up and Running Gaussian Jobs

This chapter discusses setting up and running Gaussian calculations with GaussView. It deals only with the mechanics of doing so. Consult the Gaussian 09 User’s Reference for detailed information about all Gaussian 09 keywords and options.

The Gaussian Calculation Setup Window

The first step in producing a Gaussian input file is to build the desired molecule. The bond lengths, bond angles, and dihedral angles for the molecule will be used by GaussView to write a molecular structure for the calculation. Once this is completed, you can use the Calculate=>Gaussian Calculation Setup menu path to open the Gaussian Calculation Setup dialog. It is illustrated in Figure 67.

Figure 67. The Gaussian Calculation Setup Dialog

This dialog allows you to set up virtually all types of Gaussian calculations and to submit them from GaussView. The route section that GaussView is generating appears at the top of the dialog, and it is constantly updated as you make selections in the dialog.

The Gaussian Calculation Setup dialog contains several panels, described individually below. The buttons at the bottom of the dialog have the following effects:

  • : Starts a Gaussian calculation using the current input file. You will be prompted to save the input file if you have not already done so.
  • : Launches a Gaussian job without further ado (discussed later in this section).
  • : Closes the dialog box and returns all selections to their default values.
  • : Allows direct access to the input file with an external text editor. The input file is not available for editing until it has been saved with GaussView.
  • : Closes the dialog box. Current selections are retained, but the input file is not created/updated, and no Gaussian job is submitted.
  • : Returns all items to their default values.
  • : Provides online help for this dialog.

The Job Type Panel

The Job Type panel appears in Figures 67 and 68. The top popup menu selects the job type. The default is a single point energy calculation. The remaining fields in the panel represent common options for the selected job type (Figure 67 shows the ones for an Opt+Freqcalculation).

In order to select a different job type than those listed in the popup menu, select the blank menu item at the bottom of the list, and then type the appropriate Gaussian keyword into the Additional Keywords section in the lower section of the dialog.

You can also use this field to add any desired Gaussian keyword and/or option. In the latter case, you must repeat the keyword within this field even if it already appears in the route section. GaussView will merge all options for the same keyword within the route section (see Figure 68 for an example). Note that this area is designed only for adding keywords to the route section. Use the button for creating complex input files.

Figure 68. Adding an Option via the Additional Keywords Field

This window illustrates GaussView’s ability to merge options selected from dialog controls with ones typed into the Additional Keywords field. Here, we’ve added the Phase option to the IRC keyword, while another option has been generated with the Calculate Force Constants popup selection.

The Scheme field at the bottom of the dialog is used to quickly retrieve a stored set of keywords and options. This feature is described later in this chapter.

The Method Panel

The Method panel specifies the quantum mechanical method to be used in a calculation. The default method is a ground state, closed shell Hartree-Fock calculation using the 3-21G basis set. This panel is illustrated in Figure 69.

The fields in the Method line specify the following items:

  • Whether the calculation is for a ground state or an excited state.
  • The theoretical method. For some choices, a fourth field is used to select the specific method of the given type. For example, in Figure 69, the method field is set to DFT, and the fourth field selects the B3LYP functional.
  • The wavefunction type (closed shell vs. open shell). The default is an unspecified type. The Restricted, Unrestricted, and Restricted-Open selections prepend R, U and RO to the method keyword (respectively).

Figure 69. The Method Panel

The Method panel is where the model chemistry for the calculation is specified.

The Basis Set menus allow the selection of the basis set to be used in the calculation. Polarization functions and diffuse functions may be added to the basis set using the corresponding menus in this line. Select the Custom item at the bottom of the basis set menu to select a basis set other than those that can be constructed via the controls in this area. You may enter any basis set keyword in the name field:

Figure 70. Entering a Custom Basis Set Keyword

The Charge and Spin fields specify the molecule’s charge and spin multiplicity. GaussView will select values for these fields based on the molecular structure. They may be modified as needed.

The Title Panel

The Title panel holds a field used for the Gaussian title section (designed to contain a brief description of the job). Type your description into the text box.

The Link 0 Panel

The Link 0 panel is used for entering Link 0 commands for the job (see Figure 71). Note that if you remove the specification for the name and location of the checkpoint file, you will not be able to visualize output automatically from this job.

Figure 71. The Link 0 Panel

This panel specifies a name for the checkpoint file and the read-write file, the amount of memory to use for this job, the number of shared memory processors and/or the locations of Linda workers. You can specify the various settings via controls in the Options subpanel. Alternatively, you can edit the Link 0 commands directly using the Edit subpanel. The Full Path checkbox controls whether an absolute path (checked) is used with %Chk/

The General Panel

The General panel allows you to select commonly used general calculation options. It is illustrated in Figure 72.

Figure 72. Selecting General Gaussian Options

This panel contains a set of commonly used options. This window illustrates the defaults.

The following table indicates the Gaussian keywords corresponding to these items:

Default
Use Quadratically Convergent SCF
SCF=QC
On
Ignore Symmetry
NoSymm
Off
Write Gaussian Fragment Data
Fragment (in molecule specification)
Off
Additional Print
#P
On
Compute polarizabilities
Polar
On
ResNum, ResName, PDBName (in molecule specification)

The Use Modified Redundant Coordinates item is enabled only if you have set up redundant coordinates with the Redundant Coordinate Editor. If not, the item is ignored (despite its default value). Write Gaussian Fragment Data and Write PDB Data are enabled by default, but have no effect unless the corresponding items are defined.

The Write Connectivity option also includes the appropriate additional input section(s) in the Gaussian input file.

Note: Consult the discussion of the SCF keyword in the Gaussian 09 User’s Reference for recommendations for unusual/problem cases (SCF=QC is not always the best next choice).

The Guess Panel

Th Guess panel contains settings related to the initial guess. It is illustrated in Figure 73. Consult the discussion of the Guess keyword in the Gaussian 09 User’s Referencefor full details on these options.

The Guess Method popup specifies the type of initial guess to use. It has the following options:

  • Default: Uses the default Harris initial guess.
  • Core Hamiltonian: Uses the Gaussian 98 default initial guess (Guess=INDO). Generally, we do not recomment its use except when recommended by Gaussian, Inc. technical support staff.
  • Extended Huckel: Uses the Huckel guess (Guess=Huckel).
  • Read checkpoint file: Retrieves the initial guess from the checkpoint file (Guess=Read).
  • Read checkpoint; otherwise generate: Check checkpoint file for the initial guess; generate if not present (Guess=TCheck).
  • Read input checkpoint file: Read the guess from the checkpoint file whose name is specified in the input stream (Guess=Input).

Figure 73. Gaussian Initial Guess Options

This window shows the default settings for the initial guess.

The options in this panel have the following meanings:

Default
Mix HOMO & LUMO orbitals
Guess=Mix
Off
Save orbitals to checkpoint file
Guess=Save
Off
Always generate guess in optimizations
Guess=Always
Off
Permuted orbitals from MOs Dialog
Guess=Permute

The Permuted orbitals for MOs Dialog is disabled unless you have specified an alternate orbital ordering with the MO Editor. If enabled, it is on by default.

The Use fragments (atom groups) for generating guess is disabled unless fragments have been defined using the Atom Group Editor. If enabled, it is checked by default. In addition, fragment-specific charges and spin multiplicities are generated and placed into the route section. You can also modify them using the Atom Group Editor (see the example for antiferromagnetic coupling in a later section of this manual).

The NBO Panel

The NBO panel is used to select NBO analysis at the conclusion of the Gaussian job. It is illustrated in Figure 74. The Type menu specifies the kind of NBO analysis to perform. The Checkpoint Save field allows you to save NBOs and/or NLMOs in the checkpoint file for later visualization (the default is Don’t Save).

Figure 74. The NBO Panel

The panel specifies the type of NBO analysis and which NBOs to save in the checkpoint file. The selection in this window is often a useful one when you will use them to generate an active space for a CASSCF calculation.

The Solvation Panel

The Solvation panel allows you to specify that the calculation is to be performed in solution rather than in the gas phase. It is illustrated in Figure 75. The Model field allows you to specify a specific solvation model (the default is PCM, which itself defaults to IEFPCM). You can also specify the solvent by selecting it from the corresponding popup menu. Use the Other selection to select a solvent other than those on the list; you will need to specify within the route section manually (e.g., placing SCRF(EPS=value) within the Additional Keywords field).

Figure 75. The Solvation Panel

This panel specifies the SCRF model to use for solvent effects. The Default selection corresponds to the Gaussian default of SCRF=PCM.

Note that some solvation models may present different/additional fields for their required parameters. You may use the Read additional input box to generate the SCRF=Read option; additional input may be entered using the Add. Inp. panel (see below).

The PBC Panel

The PBC panel is used to specify options to the Gaussian PBCkeyword (see Figure 68). Checking the Use PBC box causes the translation vectors to be added to the molecule specification. This is the default when a unit cell has been defined with the Crystal Editor. The panel is disabled for non-periodic systems.

Figure 76. The PBC Panel

The Use PBC checkbox causes the translation vectors to be placed in the molecule specification. After you select the option above, an additional field for specifying the number of K-points will appear.

The Additional Input Panel

The final panel in the Gaussian Calculation Setup dialog is labeled Add. Inp. It may be used to enter any additional input section(s) required by the calculation you plan to run. This input will be written to the Gaussian input file provided that Append Extra Input is checked in the Save dialog. Any additional input present in input files that you open will also appear in this panel.

Special Considerations for Various Gaussian Job Types

This section summarizes information about setting up various Gaussian job types for which some special steps are required. All GaussView features mentioned are discussed in detail earlier in this book.

Transition Structure Optimizations: Opt=QST2 and Opt=QST3

Gaussian STQN-based transition structure optimizations require two or three structures as input. To set up these jobs, you must create a molecule group containing the required number of structures. If you plan on running an Opt=QST3 job, then the transition structure initial guess is assumed to be molecule 3 unless you specify a different structure on the Job Type panel.

Once you have done so, the TS (QST2) and TS (QST3) options will be enabled in the Optimize to a field for the Optimization job type in the Job panel of the Gaussian Calculation Setup dialog.

Verifying and Specifying Atom Equivalences

In most cases, GaussView will automatically identify the corresponding atoms in the multiple structures for these transition state optimizations. However, you can verify this using the Connection Editor, accessed via the button on the toolbar or the Edit=>Connection Editor menu item.

Calculations on Polymers, Surfaces and Crystals

You can set up jobs for Gaussian’s Periodic Boundary Conditions facility using the Crystal Editor (reached via the button or the Edit=>PBC menu path). Once you have defined a unit cell, GaussView automatically sets up PBC jobs for this structure by including the translation vectors within the molecule specification. This is indicated by the enabling of the PBC panel in the Gaussian Calculation Setup dialog, and the checked Use PBC item. Note that for normal cases, you do not need to access this panel at all and can proceed directly to setting up Gaussian input in the normal manner.

Multi-Layer ONIOM Calculations

GaussView contains several features for setting up ONIOM calculations.

Assigning Atoms to Layers

The Layer Editor allows you to graphically assign atoms to various ONIOM layers. It is accessed via the toolbar’s button or via the Edit=>Select Layer menu item.

Assigning Molecular Mechanics Atoms Types

GaussView will assign Molecular Mechanics atoms types for UFF, Dreiding and Amber (including Amber charges) to all atoms in the molecule automatically. You can view and modify these using the Atom List Editor (reached via the button on the toolbar or the Edit=>Atom List menu path).

Defining Link Atoms

GaussView will automatically assign minimal link atom information for the appropriate atoms in an ONIOM calculation. However, all link atoms are always handled in the same way, and they may require modification for your purposes. Link atoms generated by GaussView are always hydrogens (using the H_ UFF and Dreiding atom types and the HR Amber atom type, where R is the element of the linked-to atom). The only other link atom parameter which is included is the linked-to atom (the atom in the higher layer to which the current atom is bonded); all other parameters are left blank.

The Atom List Editor is often a convenient way to examine and modify link atoms for ONIOM calculations. You can use the button to view and modify link atoms easily.

Specifying the Model Chemistry for Each Layer

Once you have prepared the structure and specified all necessary parameters, you can set up an ONIOM calculation via the Method panel of the Gaussian Calculation Setup dialog. The Multilayer ONIOM Model checkbox indicates that this will be an ONIOM calculation (see Figure 77).

Figure 77. Setting Up a Gaussian Input File for an ONIOM Job

This example is preparing an input file for a two-layer ONIOM calculation. When Multilayer ONIOM Model is checked, the additional tabs appear in the Method panel. Each of them allows you to specify the theoretical method and basis set for the corresponding layer. In this case, we are using the Amber Molecular Mechanics method for the Low layer. Note that electronic embedding is requested by checking the final item in the Low Layer panel.

Specifying CASSCF Active Spaces Using Guess=Permute

GaussView can make it easy to specify CASSCF active space. The MOs dialog allows you to generate, view, select and reorder the starting orbitals. It is reached with the Edit=>MO Editor menu path and via the button on the toolbar. See the detailed discussion of this tool earlier in this manual.

Modifying Redundant Internal Coordinates (Geom=ModRedundant)

You can specify additions and other modifications to redundant internal coordinates for geometry optimizations and other jobs by using the Redundant Coordinate Editor, reached via the button on the toolbar or the Edit=>Redundant Coordinates menu path. See the detailed discussion of this tool earlier in this manual.

Freezing Atoms During Geometry Optimizations

The Atom Group Editor can be used to specify atoms whose positions are to be held fixed during a geometry optimization via its Freeze Atoms group class. This class is defined with four groups by default, corresponding to unfrozen atoms, frozen atoms, and the first two ONIOM frozen rigid blocks (freeze settings of -2 and -3; see the discussion of the Geom keyword in the Gaussian 09 User’s Reference for full details on specifying frozen atoms and rigid blocks for ONIOM calculations). In order to hold specific atoms fixed during a geometry optimizations, add them to the Freeze (Yes) group in the Atom Group Editor.

Selecting Normal Modes for Frequency Calculations (Freq=SelectNormalModes)


You can use the Atom Group Editor to select atoms for which normal mode analysis is conducted (see the Gaussian 09 User’s Reference for details). Placing the desired atoms into the Select Normal Modes (Yes) group will cause them to be entered into the Atoms field corresponding to Select Normal Modes in the Gaussian Calculation Setup’s Job Type panel for Frequency jobs. You can modify this list as needed, but doing so will have no effect on the definition of the groups in the Atom Group Editor’s Select Normal Modes groupclass.

Calculating NMR Spin-Spin Coupling (NMR=(SpinSpin,ReadAtoms))


When you select an NMR calculation in the Gaussian Calculation Setup’s Job Type panel, the field to the left appears. The atom list in the parentheses corresponds to the members of the NMR Spin-Spin (Yes) group, as defined in the Atom Group Editor (by default, all atoms are placed into this group and the list of atoms reads all atoms). A specific group of atoms appears in this item when the NMR Spin-Spin (No) group contains at least one atom.

Specifying Fragment-Specific Charges and Spin Multiplicities

You can specify individual charge and spin multiplicity values for each fragment defined via the Atom Group Editor. This facility is useful for setting up fragment guess jobs (Guess=Fragment) for modeling antiferromagnetic coupling, counterpoise calculations (Counterpoise) for computing counterpoise corrections and basis set superposition errors, and the like. Figure 78 illustrates setting up a system for modeling antiferromagnetic coupling effects.

Figure 78. Specifying Per-Fragment Charge and Spin

Antiferromagnetic coupling is an effect that is important for molecules with high spin multiplicity. This Fe2Cl6 compound is a simple example. Here, we have defined three fragments. Each iron atom is in its own fragment, and the six chlorine atoms are in a third fragment. The two iron fragments are each assigned a charge of +3, and both are defined as sextets with opposite spin (i.e., spin multiplicities of 6 and -6). The fragment containing the chlorine atoms is defined as a singlet with a -6 charge. These values will be placed into the route section of the Gaussian job set up in GaussView.

The Gaussian Calculation Setup’s General panel contains features relevant to these two calculation types: Write Gaussian Fragment Data (for both types) and Use Counterpoise (for Counterpoise calculations). In addition, the Guess panel has two items useful for the first job step of a fragment guess job: Only do Guess (no SCF) and Use fragments (atom groups) for generating guess, corresponding to Guess=Only and Guess=Fragment (respectively). Typically, such a job would be followed by a second job to compute the energy including the antiferromagnetic coupling: Guess=Read Geom=AllCheck Stable=Opt.

Setting Defaults for Gaussian Jobs

The Gaussian Setup Preferences may be used to specify defaults for the Gaussian Calculation Setup dialog. Click the button, and then specify the desired settings for future Gaussian calculations. These will be applied to future job setup operations.

Defining Calculation Schemes

Modifying the Gaussian Setup Preferences as described in the preceding paragraph has the effect of modifying the Gaussian calculation scheme named Default. Schemes are named sets of calculation keywords and options, and you can define and save as many different ones as you want to. You can view the calculation scheme in effect at the bottom of the Gaussian Calculation Setup dialog and in the scheme popup in the toolbar, and in the Calculate=>Gaussian Calculation Scheme submenu. You can apply a scheme to the current molecule using any of these controls as well.

For new molecules, the Default scheme is initially applied. When you open a new molecule from a file, the scheme will be set to the scheme that matches its settings (if any) or to Unnamed Scheme.

You can view and modify the properties of the various defined schemes using the button or by selecting More Schemes from any scheme list. The resulting dialog appears in Figure 79.

Figure 79. Viewing and Modifying Calculation Schemes

This dialog shows four schemes organized into two groups.

Any field within a scheme can be edited by clicking on it. Right clicking on a scheme produces a context menu, allowing you to add groups and schemes, cut and paste between fields, and delete schemes. You can also save schemes to an external file and load ones saved in this way back into GaussView. Note that neither the Default scheme nor the Main group may be renamed or deleted.

The Quick Launch Feature

The conventional way to run a Gaussian job from GaussView is to open the Gaussian Calculation Setup, set the correct job options, click the button, and specify the name and location for the input file. The Quick Launch feature greatly simplifies this common task. A job can be launched using the toolbar button, the button in the Gaussian Calculation Setup dialog or the Calculate=>Gaussian Quick Launch menu path.


Clicking on the button in the Gaussian Calculation Setup dialog or on the portion of the toolbar icon to the left of the small arrow will immediately launch a Gaussian job using the current calculation scheme and temporary files. The toolbar icon arrow and the Calculate menu item both lead to a submenu. Its Temp File item will also result in a job started from a temporary input file. The Save File option will prompt you to save an input file and submit that file as a Gaussian job afterwards. Finally, the Save and Edit File option will prompt you to save an input file and then open that file in the external editor.

When you start a new calculation using Quick Launch a new View window is opened corresponding to it. While the job is running, a text message identifying the job, a stop button, and a stream output file button are placed in the status bar of the View window. Once the job finishes successfully, the results file is opened automatically in the same View window. When more than one results file is produced by a calculation—e.g., both a log file and a checkpoint file are created—then you will be prompted to select the file to open.

You can save the files generated from a Quick Launch operation to temporary files using the File=>Save Temp Files menu item. This item replaces the usual Related Files option under these circumstances.

Viewing and Controlling Gaussian Jobs

The Calculate=>Current Jobs menu path opens the Job Manager dialog (shown in Figure 80); the button on the toolbar performs the same function.

This window displays all the jobs started by GaussView that are currently running. Note that only jobs started during the current session of GaussView can be displayed. Examples of jobs that may be displayed are Gaussian jobs submitted from the Gaussian dialog box, Gaussian input file edit sessions launched from GaussView, CubeGen processes for building surfaces for display, FreqChk processes to generate vibrational analysis data, and/or processes from other Gaussian utilities.

Figure 80. The Job Manager Dialog

This dialog allows you to view and control Gaussian jobs as well as jobs running Gaussian utilities like CubeGen. You can terminate a job using the Kill button.

Clicking on the button displays the current GaussView job log containing system messages associated with the execution of GaussView external processes. The button in the resulting window removes old jobs from the job list, and the button dismisses the job list window.

Note that the button does not display the log file associated with a running Gaussian job. The latter is accomplished by the button for Gaussian calculations. Note that selecting this button for job types (e.g., cube generation jobs) will display whatever file GaussView can find that is associated with the job (often the Gaussian input file).

Individual jobs may be aborted using the button.

Specifying How the Gaussian Program is Executed

The Job Setup Preferences dialog allows you to examine and customize how Gaussian and its utilities are launched from within GaussView. It is illustrated in Figure 81. The Application field at the top of the panel specifies the program or utility whose execution method is currently displayed. Below this popup, there are three launch choices, and the command line associated with the selected launch method is displayed in the Command Line area (where it can also be modified).

For each job type, there are three launch choices:

  • Execute directly using default command line: The job will be started using the command line specified in the lower area.
  • Execute indirectly through script using default command line: The job will be started using a GaussView-provided script. These scripts are located in the bin subdirectory of the GaussView installation directory. Their names are listed below. The associated command line appears in the lower area of the dialog.
  • Execute using custom command line: Use the command line specified in the box to start the job. You can enter whatever command line is appropriate for your situation. The GaussView provided scripts may be called if desired.

Figure 81. Job Setup Preferences

These settings are used to specify how various external jobs get initiated by GaussView.

The following figure illustrates the command line and other information displayed for running the Gaussian program using the second launch choice:

Figure 82. Running Gaussian via a Script

The Command Line field displays the command which will be used to run Gaussian via an external script (field’s height is greatly reduced). The values of the GaussView internal variables used in the command line are displayed below the field for your convenience.

GaussView provides the following scripts in its bin subdirectory:

Linux/UNIX
Mac OS X
gv_gxx.csh
gv_gxx.csh
gv_cubegen.csh
gv_cubegen.csh
gv_cubman.csh
gv_cubman.csh
gv_formchk.csh
gv_formchk.csh
gv_freqchk.csh
gv_freqchk.csh
gv_gaussianhelp.csh
gv_gaussianhelp_mac.csh
gv_fileeditor.csh
gv_fileeditor_mac.csh

Each script’s usage is documented in comments at the beginning of the file. Prudence dictates making a backup copy of any script before modifying it in any way. Note that all standard UNIX scripts are also provided on Mac OS X systems for your convenience.

You can specify a custom command line for external jobs using the third choice in the Job Setup Preferences dialog. However, successfully using this feature depends on a clear understanding of the command line invocation of Gaussian and its utilities under the current operating system. Consult the Gaussian 09 User’s Reference for details.

The following GaussView internal variables can be used within commands. Note that they are not operating system environment variables, despite their resemblance to them in naming conventions.

Meaning
Path to the Gaussian executable (UNIX)
Path to Gaussian executable (Windows)
Path to the CubeGen executable
Path to the FormChk executable
Path to the FreqChk executable
Path to the Gaussian MM executable
Path to Wordpad (Windows)
Path to UNIX editor
Path to the GHelp executable
Path to the script for the specified utility
Gaussian input file
Gaussian or utility output file
Type of cube for CubeGen
Cube density for CubeGen
CubeGen header flag
Next:The Integrals-With-Labels Library Up:The Checkpoint File Library Previous:InitializationContents

Functions for reading information from the checkpoint file

char *file30_rd_corr_lab()
Reads in a label from file30 which describes thewavefunction used to get the correlated energy which is stored infile30 (see file30_rd_ecorr()).
Arguments:takes no arguments.
Returns:a string, like 'CISD', or 'MCSCF' orsome other wavefunction designation.

char *file30_rd_label()
Reads the main file30 label.
Arguments:takes no arguments.
Returns:calculation label.

char *file30_rd_sym_label()
Reads the label for the point group.
Arguments:takes no arguments.
Returns:point group label.
Functions that return char**
char **file30_rd_irr_labs()
Read in the symmetry labels for all irreps in thepoint group in which the molecule is considered.
Arguments:takes no arguments.
Returns:an array of labels (strings) which denotethe irreps for the point group in which the molecule is considered,_regardless_ of whether there exist any symmetry orbitals whichtransform as that irrep.

char **file30_rd_hfsym_labs()
Read in the symmetry labels _only_ for those irrepswhich have basis functions.
Arguments:takes no arguments.
Returns:an array of labels (strings) which denotethe irreps which have basis functions (in Cotton ordering). For DZ orSTO-3G water, for example, in symmetry, this would be an array ofthree labels: 'A1', 'B1', and 'B2'.
int file30_rd_iopen()
Reads in the dimensionality (up to a sign) of ALPHA and BETA vectors of two-electron coupling coefficients for open shells. (see file30_rd_ccvecs())Note : iopen = MM * (MM + 1), where MM is the total number ofirreps containing singly occupied orbitals.
Arguments:takes no arguments.
Returns:the +/- dimensionality of ALPHA and BETA vectors of coupling coefficients for open shells.

int file30_rd_max_am()
Reads in the maximum orbital quantum number of AOs in the basis.
Arguments:takes no arguments.
Returns:the maximum orbital quantum number of AOs in the basis.

int file30_rd_mxcoef()
Reads the value of the constant mxcoef.
Arguments:takes no arguments.
Returns:the sum of the squares of the number of symmetryorbitals for each irrep. This gives the number of elements in thenon-zero symmetry blocks of the SCF eigenvector. For STO-3G watermxcoef.

int file30_rd_nao()
Reads in the total number of atomic orbitals (read: Cartesian Gaussian functions).
Arguments:takes no arguments.
Returns:total number of atomic orbitals.

int file30_rd_natom()
Reads in the total number of atoms.
Arguments:takes no arguments.
Returns:total number of atoms.

int file30_rd_ncalcs()
Reads in the total number of calculations (always 1).
Arguments:takes no arguments.
Returns:total number of calculations in file30.

int file30_rd_nirreps()
Reads in the total number of irreducible representationsin the point group in which the molecule is being considered.
Arguments:takes no arguments.
Returns:total number of irreducible representations.

int file30_rd_nmo()
Reads in the total number of molecular orbitals (may be differentfrom the number of basis functions).
Arguments:takes no arguments.
Returns:total number of molecular orbitals.

int file30_rd_nprim()
Reads in the total number of primitive Gaussian functions (only primitives of _symmetry independent_ atoms are counted!).
Arguments:takes no arguments.
Returns:total number of primitive Gaussian functions.

int file30_rd_nshell()
Reads in the total number of shells. For example, DZP basis set for carbon atom (contraction scheme ) has a total of 15 basis functions, 15 primitives, and 7 shells. Shells of _all_ atoms are counted(not only of the symmetry independent; compare file30_rd_nprim).
Arguments:takes no arguments.
Returns:total number of shells.

int file30_rd_nso()
Reads in the total number of symmetry-adapted basis functions (read:Cartesian or Spherical Harmonic Gaussians).
Arguments:takes no arguments.
Returns:total number of SOs.

int file30_rd_nsymhf()
Reads in the total number of irrepsin the point group in which the molecule is being considered whichhave non-zero number of basis functions. For STO-3G or DZ water, forexample, this is three, even though nirreps is 4 (compareint file30_rd_nirreps()).
Arguments:takes no arguments.
Returns:total number of irreducible representationswith a non-zero number of basis functions.

int file30_rd_num_unique_atom()
Reads in the number of symmetry unique atoms.
Arguments:takes no arguments.
Returns:number of symmetry unique atoms.

int file30_rd_num_unique_shell()
Reads in the number of symmetry unique shells.
Arguments:takes no arguments.
Returns:number of symmetry unique shells.

int file30_rd_phase_check()
Reads the phase flag???
Arguments:takes no arguments.
Returns:flag.
int file30_rd_ref()
Reads the reference type from the flag in file30.0 = RHF, 1 = UHF, 2 = ROHF, 3 = TCSCF.Read Checkpoint File GaussianSoftware
Arguments:takes no arguments.
Returns:flag indicating the reference.
int file30_rd_rottype()
Reads the rigid rotor type the molecule represents.0 = asymmetric, 1 = symmetric, 2 = spherical, 3 = linear, 6 = atom.
Arguments:takes no arguments.
Returns:rigid rotor type.
Functions that return int*
int *file30_rd_am2canon_shell_order()
Reads in the the mapping array from the angmom-orderedto the canonical (in the order of appearance) list of shells.
Arguments:takes no arguments.
Returns:an array nshell long that maps shells from the angmom-orderedto the canonical (in the order of appearance) order.
file30_rd_atom_position()
GaussianReads in symmetry positions of atoms.Allowed values are as follows:
  • 1 - atom in a general position
  • 2 - atom on the c2z axis
  • 4 - atom on the c2y axis
  • 8 - atom on the c2x axis
  • 16 - atom in the inversion center
  • 32 - atom in the sigma_xy plane
  • 64 - atom in the sigma_xz plane
  • 128 - atom in the sigma_yz plane
This data is sufficient to define stabilizers of the nuclei.
Arguments:takes no arguments.
Returns:an array of symmetry positions of atoms.

int *file30_rd_clsdpi()
Reads in an array which has an element for each irrep of thepoint group of the molecule (n.b. not just the oneswith a non-zero number of basis functions). Each elementcontains the number of doubly occupied MOs for that irrep.
Arguments:takes no arguments.
Returns:the number of doubly occupied MOs per irrep.

int *file30_rd_openpi()
Reads in an array which has an element for each irrep of thepoint group of the molecule (n.b. not just the oneswith a non-zero number of basis functions). Each elementcontains the number of singly occupied MOs for that irrep.
Arguments:takes no arguments.
Returns:the number of singly occupied MOs per irrep.

int *file30_rd_orbspi()
Reads in the number of MOs in each irrep.
Arguments:takes no arguments.
Returns:the number of MOs in each irrep.

int *file30_rd_shells_per_am()
Reads in the number of shells in each angmom block.
Arguments:takes no arguments.
Returns:the number of shells in each angmom block.

file30_rd_sloc()
Read in an array of pointers to the first AOfrom each shell.
Arguments:takes no arguments.
Returns:Read in an array nshell long of pointers tothe first AO from each shell.

file30_rd_sloc_new()
Read in an array of pointers to the first basisfunction (not AO as file30_rd_sloc does)from each shell.
Arguments:takes no arguments.
Returns:an array nshell long of pointers tothe first basis function from each shell.

int *file30_rd_snuc()
Reads in an array of pointers to the nuclei on which shells are centered.
Arguments:takes no arguments.
Returns:an array nshell long of pointers to the nuclei on which shellsare centered.
int *file30_rd_snumg()
Reads in array of the numbers of the primitiveGaussians in the shells.
Arguments:takes no arguments.
Returns:an array nshell long of the numbers of the primitive Gaussians in shells.

int *file30_rd_sprim()
Reads in pointers to the first primitivefrom each shell.
Arguments:takes no arguments.
Returns:an array nshell long of pointers to the first primitive from each shells.

file30_rd_sopi()
Read in the number of symmetry-adapted basis functions in each symmetry block.
Arguments:takes no arguments.
Returns:an array nirreps long of the numbers ofsymmetry orbitals in symmetry blocks.

int *file30_rd_stype()
Reads in angular momentum numbers ofthe shells.
Arguments:takes no arguments.
Returns:Returns an array nshell long ofthe angular momentum numbers of the shells.

int *file30_rd_symoper()
Read in the mapping array between 'canonical' orderingof the symmetry operations of the point group and theone defined in symmetry.h.
Arguments:takes no arguments.
Returns:a mapping array nirrep long
int *file30_rd_ua2a()
Read in the mapping array from the symmetry-unique atom list to the full atom list.
Arguments:takes no arguments.
Returns:a mapping array num_unique_atom long
int *file30_rd_us2s()
Read in the mapping array from the symmetry-unique shell listto the full shell list.
Arguments:takes no arguments.
Returns:a mapping array num_unique_shell long
int **file30_rd_ict()
Reads the transformation properties of the nucleiunder the operations allowed for the particular symmetry point groupin which the molecule is considered.
Arguments:takes no arguments.
Returns:a matrix of integers. Each row correspondsto a particular symmetry operation, while each column corresponds toa particular atom. The value of ict[2][1], then, should be interpretedin the following manner: application of the third symmetry operation of the relavant point group, the second atom is placed in the locationoriginally occupied by the atom number ict[2][1].

int **file30_rd_shell_transm()
Reads in the transformation matrix for the shells. Each row of the matrix is the orbit of the shell under symmetry operations of the point group.
Arguments:takes no arguments.
Returns:a matrix of nshell*nirreps integers.
Functions that return double
double file30_rd_ecorr()
Reads in the correlation energy stored in file30. To get someinformation (a label) on the type of correlated wavefunctionused to get this energy, see file30_rd_corr_lab().
Arguments:takes no arguments.
Returns:the correlation energy.

double file30_rd_enuc()
Reads in the nuclear repulsion energy
Arguments:takes no arguments.
Returns:the nuclear repulsion energy.

double file30_rd_eref()
Reads in the reference energy (may be different from HF energy).
Arguments:takes no arguments.
Returns:the reference energy.

double file30_rd_escf()
Reads in the SCF HF energy.
Arguments:takes no arguments.
Returns:the SCF HF energy.
double *file30_rd_evals()
double *file30_rd_alpha_evals()
double *file30_rd_beta_evals()

Reads in the (spin-restricted HF, UHF, and UHF) eigenvalues:the orbital energies.
Arguments:take no arguments.
Returns:an array of _all_ of the SCF eigenvalues,ordered by irrep, and by increasing energy within each irrep.(i.e. for STO-3G water, the four eigenvalues all come first, andthose four are ordered from lowest energy to highest energy,followed by the single eigenvalue, etc. -- Pitzer ordering)

double *file30_rd_exps()
Reads in the exponents of the primitive Gaussian functions.
Arguments:takes no arguments.
Returns:an array of doubles.

double *file30_rd_zvals()
Reads in nuclear charges.
Arguments:takes no arguments.
Returns:an array natom long of nuclear charges (as doubles).
Functions that return double**
double **file30_rd_blk_scf(int irrep)
double **file30_rd_alpha_blk_scf(int irrep)
double **file30_rd_beta_blk_scf(int irrep)

Reads in a symmetry block of the (RHF, UHF, UHF) eigenvector.
Arguments:int irrep, designates the desired symmetry block
Returns:a square matrix has orbspi[irrep]rows. The eigenvectors are stored with the column index denoting MOs and the row index denoting SOs: this means that scf_vector[i][j] is the contribution of the th SO to the th MO.

double **file30_rd_ccvecs()
Reads in a matrix rows of which are ALPHA (ccvecs[0]) and BETA (ccvecs[1]) matrices of couplingcoefficients for open shells stored in lower triangular form.Coupling coefficients are defined NOT as in C.C.J.Roothaan Rev. Mod. Phys. 32, 179 (1960) as it is stated in themanual pages for CSCF, but according to Pitzer (no reference yet)and are **different** from those in Yamaguchi, Osamura, Goddard, andSchaefer's book 'Analytic Derivative Methods in Ab Initio MolecularElectronic Structure Theory'.
The relationship between the Pitzer's and Yamaguchi's conventions is as follows : ALPHA = 1-2*a , BETA = 1+4*b , where a and b are alpha's and beta's for open shells defined on pp. 69-70 of Dr. Yamaguchi's book.
Arguments:takes no arguments.
Returns:double **ccvecs, a matrix 2 by abs(iopen) rows of which are couplingcoefficient matrices for open-shells in packed form.For definition of iopen see file30_rd_iopen().

file30_rd_contr_full()
Reads in the normalized contraction coefficients.
Arguments:takes no arguments.
Returns:a matrix MAXANGMOM (a constant defined in file30_params.h)by the total number of primitives nprim;each primitive Gaussian contributes to only one shell (and onebasis function, of course), so most of these values are zero.

double **file30_rd_geom()
Reads in the cartesian geometry.
Arguments:takes no arguments.
Returns:The cartesian geometry is returned as a matrixof doubles. The row index is the atomic index, and the column is thecartesian direction index (x=0, y=1, z=2). Therefore, geom[2][0]would be the x-coordinate of the third atom.

file30_rd_lagr()
file30_rd_alpha_lagr()
file30_rd_beta_lagr()

Reads in an (RHF, UHF, UHF) Lagrangian matrix in MO basis.
Arguments:takes no arguments.
Returns:a matrix nmo by nmo.

double **file30_rd_scf()
double **file30_rd_alpha_scf()
double **file30_rd_beta_scf()

Reads in the (RHF, UHF, UHF) eigenvector.
Arguments:takes no arguments.
Returns:a square matrix of dimensions nmoby nmo (see: file30_rd_nmo()).The symmetry blocks of the SCF vector appearon the diagonal of this matrix.

file30_rd_schwartz()
Reads in the table of maxima of Schwartz integrals (ij|ij)for each shell doublet.
Arguments:takes no arguments.
Returns:NULL if no table is present in the checkpoint file,a matrix nshell by nshell otherwise.

file30_rd_usotao_new()
Reads in an AO to SO transformation matrix.
Arguments:takes no arguments.
Returns:a nso by nao matrix of doubles.

file30_rd_usotbf()
Reads in a basis function to SO transformation matrix.
Arguments:takes no arguments.
Returns:a nso by nso matrix of doubles.
The z-matrix is read from file30 as an array of z_entry structswhich are declared in file30.h. This structure contains the reference atom,an optimization flag, the coordinate value, and any label used for each internal coordinate. When not applicable (such as the first few lines of a z-matrix)

Read Checkpoint File Gaussian Download

atom variables are given values of -1,opt variables are given values of -1, val variables aregiven values of -999.9, and label strings are left empty.
file30_rd_zmat()
Reads in the z-matrix
Arguments:takes no arguments.
Returns:struct*z_entry natom long.

Next:The Integrals-With-Labels Library

Read Checkpoint File Gaussian Form

Up:The Checkpoint File Library Previous:

Gaussian Read Checkpoint File

InitializationContents

Read Checkpoint File Gaussian Tool

Micah Abrams2001-11-02

Comments are closed.