IQmol (or another graphical interface) is the simplest way to control
Q-Chem. However, the low level command line interface is available to enable
maximum customization and allow the user to exploit all Q-Chem’s features.
The command line interface requires a Q-Chem input file which is simply an
ASCII text file. This input file can be created using your favorite editor
(e.g., vi, emacs, jot, etc.) following the basic steps outlined in the next few chapters.
Q-Chem’s input mechanism uses a series of keywords to signal user input sections of the input file. As required, the Q-Chem program searches the input file for supported keywords. When Q-Chem finds a keyword, it then reads the section of the input file beginning at the keyword until that keyword section is terminated the $end keyword. A short description of all Q-Chem keywords is provided in Table 3.1 and the following sections. The user must understand the function and format of the $molecule (Section 3.3) and $rem (Section 3.4) keywords, as these keyword sections are where the user places the molecular geometry information and job specification details.
Section Name | Description |
---|---|
$molecule | Contains the molecular coordinate input (input file requisite). |
$rem | Job specification and customization parameters (input file requisite). |
$basis | User-defined basis set information (Chapter 8). |
$cdft | Options for the constrained DFT method (Section 5.13). |
$chem_sol | Job control for the Q-Chem/ChemSol interface (Langevin dipoles |
model; Section 12.2.9). | |
$comment | User comments for inclusion into output file. |
$complex_ccman | Contains parameters for complex-scaled and CAP-augmented EOM-CC |
calculations (Chapter 7.8). | |
$ecp | User-defined effective core potentials (Chapter 9). |
$efei | Application of external forces in a geometry optimization (Section 10.3.6). |
$efp_fragments | Specifies labels and positions of EFP fragments (Section 12.5). |
$efp_params | Contains user-defined parameters for effective fragments (Section 12.5). |
$empirical_dispersion | User-defined van der Waals parameters for DFT dispersion correction |
(Section 5.7.2). | |
$eom_user_guess | User-defined guess for EOM-CC calculations (Chapter 7.8). |
$external_charges | Specifies external point charges and their positions. |
$force_field_params | Force-field parameters for QM/MM calculations (Section 12.3). |
$intracule | Intracule parameters (Section 11.9). |
$isotopes | Isotopic substitutions for vibrational calculations (Section 11.10.2). |
$localized_diabatization | Information for mixing together multiple adiabatic states into diabatic |
states (Chapter 11). | |
$magnet | Job control for magnetic field-related response properties (Section 11.13.3). |
$multipole_field | Details of an external multipole field (Section 3.5.0.7). |
$nbo | Options for the Natural Bond Orbital package (Section 11.3). |
$occupied | Guess orbitals to be occupied (Section 4.4.4). |
$opt | Constraint definitions for geometry optimizations (Section 10.3). |
$pcm | Job control for polarizable continuum models (Section 12.2.3). |
$plots | Generate plotting information over a grid of points (Section 11.5). |
$qct_active_modes | Information for quasi-classical trajectory calculations (Section 10.7.5). |
$qct_vib_distribution | |
$qct_vib_phase | |
$qm_atoms | Specify the QM region for QM/MM calculations (Section 12.3). |
$response | Job control for the generalized response solver (Section 11.15). |
$solvent | Additional parameters and variables for implicit solvent models |
(Section 12.2). | |
$smx | Job control for SM implicit solvent models (Section 12.2.8). |
$swap_occupied_virtual | Guess orbitals to be swapped (Section 4.4.4). |
$svp | Special parameters for the iso-density SS(V)PE module (Section 12.2.5). |
$svpirf | Initial guess for the iso-density SS(V)PE module (Section 12.2.5). |
$2pa | Additional parameters for two-photon absorption calculations |
(Section 7.8.18.1). | |
$van_der_waals | User-defined atomic radii for Langevin dipoles solvation (Section 12.2.9) |
and PCMs (Section 12.2.2). | |
$xc_functional | User-defined DFT exchange-correlation functional (Section 5.3.6). |
$aux_basis | User-defined auxiliary basis set for resolution-of-identity calculations (Chapter 8.4). |
$aux_basis_j | User-defined auxiliary basis set for resolution-of-identity Coulomb calculations (Chapter 8.4). |
$aux_basis_k | User-defined auxiliary basis set for resolution-of-identity exact exchange calculations (Chapter 8.4). |
$aux_basis_corr | User-defined auxiliary basis set for resolution-of-identity correlation methods (Chapter 8.4). |
$velocity | User-defined nuclear velocity for AIMD calculations (Chapter 10.7). |
$mass | User-defined atomic mass (Chapter 10.7). |
The keywords $rem and $molecule are required in any Q-Chem input file
As each keyword has a different function, the format required for specific keywords varies somewhat, to account for these differences (format requirements are summarized in Appendix C). However, because each keyword in the input file is sought out independently by the program, the overall format requirements of Q-Chem input files are much less stringent. For example, the $molecule section does not have to occur at the very beginning of the input file.
Note: (1) Users are able to enter keyword sections in any order. (2) Each keyword section must be terminated with the $end keyword. (3) The $rem and $molecule sections must be included. (4) It is not necessary to have all keywords in an input file. (5) Each keyword section is described in Appendix C. (6) The entire Q-Chem input is case-insensitive.
The second general aspect of Q-Chem input is that there are effectively four input sources:
User input file (required)
.qchemrc file in $HOME (optional)
preferences file in $QC/config (optional)
Internal program defaults and calculation results (built-in)
The order of preference is as shown, i.e., the input mechanism offers a program default override for all users, default override for individual users and, of course, the input file provided by the user overrides all defaults. Refer to Section 2.6 for details of .qchemrc and preferences. Currently, Q-Chem only supports the $rem keyword in .qchemrc and preferences files.
In general, users will need to enter variables for the $molecule and $rem keyword section and are encouraged to add a $comment for future reference. The necessity of other keyword input will become apparent throughout the manual.