Contents
1 Introduction
1.1 About This Manual
1.2 Chapter Summaries
1.3 Contact Information
1.3.1 Customer Support
1.4 Q-Chem, Inc.
1.5 Company Mission
1.6 Q-Chem Features
1.6.1 New Features in Q-Chem 4.1
1.6.2 New Features in Q-Chem 4.0.1
1.6.3 New Features in Q-Chem 4.0
1.6.4 New Features in Q-Chem 3.2
1.6.5 New Features in Q-Chem 3.1
1.6.6 New Features in Q-Chem 3.0
1.6.7 Summary of Features Prior to Q-Chem 3.0
1.7 Current Development and Future Releases
1.8 Citing Q-Chem
2 Installation
2.1 Q-Chem Installation Requirements
2.1.1 Execution Environment
2.1.2 Hardware Platforms and Operating Systems
2.1.3 Memory and Hard Disk
2.2 Installing Q-Chem
2.3 Q-Chem Auxiliary files ($QCAUX)
2.4 Q-Chem Runtime Environment Variables
2.5 User Account Adjustments
2.6 Further Customization
2.6.1 .qchemrc and Preferences File Format
2.6.2 Recommendations
2.7 Running Q-Chem
2.7.1 Running Q-Chem in parallel
2.8 IQmol Installation Requirements
2.9 Testing and Exploring Q-Chem
3 Q-Chem Inputs
3.1 IQmol
3.2 General Form
3.3 Molecular Coordinate Input ($molecule)
3.3.1 Reading Molecular Coordinates From a Previous Calculation
3.3.2 Reading Molecular Coordinates from Another File
3.4 Cartesian Coordinates
3.4.1 Examples
3.5 Z-matrix Coordinates
3.5.1 Dummy Atoms
3.6 Job Specification: The $rem Array Concept
3.7 $rem Array Format in Q-Chem Input
3.8 Minimum $rem Array Requirements
3.9 User-Defined Basis Sets ($basis and $aux_basis)
3.10 Comments ($comment)
3.11 User-Defined Pseudopotentials ($ecp)
3.12 User-defined Parameters for DFT Dispersion Correction ($empirical_dispersion)
3.13 Addition of External Charges ($external_charges)
3.14 Intracules ($intracule)
3.15 Isotopic Substitutions ($isotopes)
3.16 Applying a Multipole Field ($multipole_field)
3.17 Natural Bond Orbital Package ($nbo)
3.18 User-Defined Occupied Guess Orbitals ($occupied and $swap_occupied_virtual)
3.19 Geometry Optimization with General Constraints ($opt)
3.20 Polarizable Continuum Solvation Models ($pcm)
3.21 Effective Fragment Potential calculations ($efp_fragments and $efp_params)
3.22 SS(V)PE Solvation Modeling ($svp and $svpirf)
3.23 Orbitals, Densities and ESPs on a Mesh ($plots)
3.24 User-Defined van der Waals Radii ($van_der_waals)
3.25 User-Defined Exchange-Correlation Density Functionals ($xc_functional)
3.26 Multiple Jobs in a Single File: Q-Chem Batch Job Files
3.27 Q-Chem Output File
3.28 Q-Chem Scratch Files
4 Self-Consistent Field Ground State Methods
4.1 Introduction
4.1.1 Overview of Chapter
4.1.2 Theoretical Background
4.2 Hartree-Fock Calculations
4.2.1 The Hartree-Fock Equations
4.2.2 Wavefunction Stability Analysis
4.2.3 Basic Hartree-Fock Job Control
4.2.4 Additional Hartree-Fock Job Control Options
4.2.5 Examples
4.2.6 Symmetry
4.3 Density Functional Theory
4.3.1 Introduction
4.3.2 Kohn-Sham Density Functional Theory
4.3.3 Exchange-Correlation Functionals
4.3.4 Long-Range-Corrected DFT
4.3.4.1 LRC-DFT with the μB88, μPBE, and ωPBE exchange functionals
4.3.4.2 LRC-DFT with the BNL Functional
4.3.4.3 LRC-DFT with ωB97, ωB97X, ωB97X-D, and ωB97X-2 Functionals
4.3.4.4 LRC-DFT with the M11 Family of Functionals
4.3.5 Nonlocal Correlation Functionals
4.3.6 DFT-D Methods
4.3.6.1 Empirical dispersion correction from Grimme
4.3.6.2 Empirical dispersion correction from Chai and Head-Gordon
4.3.7 XDM DFT Model of Dispersion
4.3.8 DFT-D3 Methods
4.3.9 Double-Hybrid Density Functional Theory
4.3.10 Asymptotically Corrected Exchange-Correlation Potentials
4.3.11 DFT Numerical Quadrature
4.3.12 Angular Grids
4.3.13 Standard Quadrature Grids
4.3.14 Consistency Check and Cutoffs for Numerical Integration
4.3.15 Basic DFT Job Control
4.3.16 Example
4.3.17 User-Defined Density Functionals
4.4 Large Molecules and Linear Scaling Methods
4.4.1 Introduction
4.4.2 Continuous Fast Multipole Method (CFMM)
4.4.3 Linear Scaling Exchange (LinK) Matrix Evaluation
4.4.4 Incremental and Variable Thresh Fock Matrix Building
4.4.5 Incremental DFT
4.4.6 Fourier Transform Coulomb Method
4.4.7 Multiresolution Exchange-Correlation (mrXC) Method
4.4.8 Resolution-of-the-Identity Fock Matrix Methods
4.4.9 Examples
4.5 SCF Initial Guess
4.5.1 Introduction
4.5.2 Simple Initial Guesses
4.5.3 Reading MOs from Disk
4.5.4 Modifying the Occupied Molecular Orbitals
4.5.5 Basis Set Projection
4.5.6 Examples
4.6 Converging SCF Calculations
4.6.1 Introduction
4.6.2 Basic Convergence Control Options
4.6.3 Direct Inversion in the Iterative Subspace (DIIS)
4.6.4 Geometric Direct Minimization (GDM)
4.6.5 Direct Minimization (DM)
4.6.6 Maximum Overlap Method (MOM)
4.6.7 Relaxed Constraint Algorithm (RCA)
4.6.8 Examples
4.7 Dual-Basis Self-Consistent Field Calculations
4.7.1 Dual-Basis MP2
4.7.2 Basis Set Pairings
4.7.3 Job Control
4.7.4 Examples
4.7.5 Dual-Basis Dynamics
4.8 Hartree-Fock and Density-Functional Perturbative Corrections
4.8.1 Hartree-Fock Perturbative Correction
4.8.2 Density Functional Perturbative Correction (Density Functional "Triple Jumping")
4.8.3 Job Control
4.8.4 Examples
4.9 Constrained Density Functional Theory (CDFT)
4.10 Configuration Interaction with Constrained Density Functional Theory (CDFT-CI)
4.11 Unconventional SCF Calculations
4.11.1 CASE Approximation
4.11.2 Polarized Atomic Orbital (PAO) Calculations
4.12 SCF Metadynamics
4.13 Ground State Method Summary
5 Wavefunction-Based Correlation Methods
5.1 Introduction
5.2 Møller-Plesset Perturbation Theory
5.2.1 Introduction
5.2.2 Theoretical Background
5.3 Exact MP2 Methods
5.3.1 Algorithm
5.3.2 The Definition of Core Electron
5.3.3 Algorithm Control and Customization
5.3.4 Example
5.4 Local MP2 Methods
5.4.1 Local Triatomics in Molecules (TRIM) Model
5.4.2 EPAO Evaluation Options
5.4.3 Algorithm Control and Customization
5.4.4 Examples
5.5 Auxiliary Basis Set (Resolution-of-Identity) MP2 Methods
5.5.1 RI-MP2 Energies and Gradients.
5.5.2 Example
5.5.3 OpenMP Implementation of RI-MP2
5.5.4 GPU Implementation of RI-MP2
5.5.4.1 Requirements
5.5.4.2 Options
5.5.4.3 Input examples
5.5.5 Opposite-Spin (SOS-MP2, MOS-MP2, and O2) Energies and Gradients
5.5.6 Examples
5.5.7 RI-TRIM MP2 Energies
5.5.8 Dual-Basis MP2
5.6 Short-Range Correlation Methods
5.6.1 Attenuated MP2
5.6.2 Examples
5.7 Coupled-Cluster Methods
5.7.1 Coupled Cluster Singles and Doubles (CCSD)
5.7.2 Quadratic Configuration Interaction (QCISD)
5.7.3 Optimized Orbital Coupled Cluster Doubles (OD)
5.7.4 Quadratic Coupled Cluster Doubles (QCCD)
5.7.5 Resolution-of-identity with CC (RI-CC)
5.7.6 Cholesky decomposition with CC (CD-CC)
5.7.7 Job Control Options
5.7.8 Examples
5.8 Non-iterative Corrections to Coupled Cluster Energies
5.8.1 (T) Triples Corrections
5.8.2 (2) Triples and Quadruples Corrections
5.8.3 (dT) and (fT) corrections
5.8.4 Job Control Options
5.8.5 Example
5.9 Coupled Cluster Active Space Methods
5.9.1 Introduction
5.9.2 VOD and VOD(2) Methods
5.9.3 VQCCD
5.9.4 Local Pair Models for Valence Correlations Beyond Doubles
5.9.5 Convergence Strategies and More Advanced Options
5.9.6 Examples
5.10 Frozen Natural Orbitals in CCD, CCSD, OD, QCCD, and QCISD Calculations
5.10.1 Job Control Options
5.10.2 Example
5.11 Non-Hartree-Fock Orbitals in Correlated Calculations
5.11.1 Example
5.12 Analytic Gradients and Properties for Coupled-Cluster Methods
5.12.1 Job Control Options
5.12.2 Examples
5.13 Memory Options and Parallelization of Coupled-Cluster Calculations
5.14 Simplified Coupled-Cluster Methods Based on a Perfect-Pairing Active Space
5.14.1 Perfect pairing (PP)
5.14.2 Coupled Cluster Valence Bond (CCVB)
5.14.3 Second order correction to perfect pairing: PP(2)
5.14.4 Other GVBMAN methods and options
5.15 Geminal Models
5.15.1 Reference wavefunction
5.15.2 Perturbative corrections
6 Open-Shell and Excited-State Methods
6.1 General Excited-State Features
6.2 Non-Correlated Wavefunction Methods
6.2.1 Single Excitation Configuration Interaction (CIS)
6.2.2 Random Phase Approximation (RPA)
6.2.3 Extended CIS (XCIS)
6.2.4 Spin-Flip Extended CIS (SF-XCIS)
6.2.5 Basic Job Control Options
6.2.6 Customization
6.2.7 CIS Analytical Derivatives
6.2.8 Examples
6.2.9 Non-Orthogonal Configuration Interaction
6.3 Time-Dependent Density Functional Theory (TDDFT)
6.3.1 Brief Introduction to TDDFT
6.3.2 TDDFT within a Reduced Single-Excitation Space
6.3.3 Job Control for TDDFT
6.3.4 TDDFT coupled with C-PCM for excitation energies and properties calculations
6.3.5 Analytical Excited-State Hessian in TDDFT
6.3.6 Various TDDFT-Based Examples
6.4 Correlated Excited State Methods: the CIS(D) Family
6.4.1 CIS(D) Theory
6.4.2 Resolution of the Identity CIS(D) Methods
6.4.3 SOS-CIS(D) Model
6.4.4 SOS-CIS(D0) Model
6.4.5 CIS(D) Job Control and Examples
6.4.6 RI-CIS(D), SOS-CIS(D), and SOS-CIS(D0): Job Control
6.4.7 Examples
6.5 Maximum Overlap Method (MOM) for SCF Excited States
6.6 Coupled-Cluster Excited-State and Open-Shell Methods
6.6.1 Excited States via EOM-EE-CCSD and EOM-EE-OD
6.6.2 EOM-XX-CCSD and CI Suite of Methods
6.6.3 Spin-Flip Methods for Di- and Triradicals
6.6.4 EOM-DIP-CCSD
6.6.5 Charge Stabilization for EOM-DIP and Other Methods
6.6.6 Frozen Natural Orbitals in CC and IP-CC Calculations
6.6.7 Equation-of-Motion Coupled-Cluster Job Control
6.6.8 Examples
6.6.9 Non-Hartree-Fock Orbitals in EOM Calculations
6.6.10 Analytic Gradients and Properties for the CCSD and EOM-XX-CCSD Methods
6.6.11 Equation-of-Motion Coupled-Cluster Optimization and Properties Job Control
6.6.12 Examples
6.6.13 EOM(2,3) Methods for Higher-Accuracy and Problematic Situations
6.6.14 Active-Space EOM-CC(2,3): Tricks of the Trade
6.6.15 Job Control for EOM-CC(2,3)
6.6.16 Examples
6.6.17 Non-Iterative Triples Corrections to EOM-CCSD and CCSD
6.6.18 Job Control for Non-Iterative Triples Corrections
6.6.19 Examples
6.6.20 Potential Energy Surface Crossing Minimization
6.6.20.1 Job Control Options
6.6.20.2 Examples
6.6.21 Dyson Orbitals for Ionization from Ground and Excited States within EOM-CCSD Formalism
6.6.21.1 Dyson Orbitals Job Control
6.6.21.2 Examples
6.6.22 Interpretation of EOM / CI Wavefunction and Orbital Numbering
6.7 Correlated Excited State Methods: ADC(n) Family
6.7.1 The Algebraic Diagrammatic Construction (ADC) Scheme
6.7.2 ADC Job Control
6.7.3 Examples
6.8 Restricted active space spin-flip (RAS-SF) and configuration interaction (RAS-CI) methods
6.8.1 The Restricted Active Space (RAS) Scheme
6.8.2 Job Control for the RASCI1 implementation
6.8.3 Job control options for the RASCI2 implementation
6.8.4 Examples
6.9 How to Compute Ionization Energies of Core Electrons and Excited States Involving Excitations of Core Electrons
6.9.1 Calculations of States Involving Core Electron Excitation/Ionization with DFT and TDDFT
6.10 Visualization of Excited States
6.10.1 Attachment / Detachment Density Analysis
6.10.2 Natural Transition Orbitals
7 Basis Sets
7.1 Introduction
7.2 Built-In Basis Sets
7.3 Basis Set Symbolic Representation
7.3.1 Customization
7.4 User-Defined Basis Sets ($basis)
7.4.1 Introduction
7.4.2 Job Control
7.4.3 Format for User-Defined Basis Sets
7.4.4 Example
7.5 Mixed Basis Sets
7.5.1 Examples
7.6 Dual basis sets
7.7 Auxiliary basis sets for RI / density fitting
7.8 Basis Set Superposition Error (BSSE)
8 Effective Core Potentials
8.1 Introduction
8.2 Built-In Pseudopotentials
8.2.1 Overview
8.2.2 Combining Pseudopotentials
8.2.3 Examples
8.3 User-Defined Pseudopotentials
8.3.1 Job Control for User-Defined ECPs
8.3.2 Example
8.4 Pseudopotentials and Density Functional Theory
8.4.1 Example
8.5 Pseudopotentials and Electron Correlation
8.5.1 Example
8.6 Pseudopotentials, Forces and Vibrational Frequencies
8.6.1 Example
8.6.2 A Brief Guide to Q-Chem's Built-In ECPs
8.6.3 The HWMB Pseudopotential at a Glance
8.6.4 The LANL2DZ Pseudopotential at a Glance
8.6.5 The SBKJC Pseudopotential at a Glance
8.6.6 The CRENBS Pseudopotential at a Glance
8.6.7 The CRENBL Pseudopotential at a Glance
8.6.8 The SRLC Pseudopotential at a Glance
8.6.9 The SRSC Pseudopotential at a Glance
9 Molecular Geometry Critical Points, ab Initio Molecular Dynamics, and QM/MM
9.1 Equilibrium Geometries and Transition Structures
9.2 User-Controllable Parameters
9.2.1 Features
9.2.2 Job Control
9.2.3 Customization
9.2.4 Example
9.3 Constrained Optimization
9.3.1 Introduction
9.3.2 Geometry Optimization with General Constraints
9.3.3 Frozen Atoms
9.3.4 Dummy Atoms
9.3.5 Dummy Atom Placement in Dihedral Constraints
9.3.6 Additional Atom Connectivity
9.3.7 Example
9.3.8 Summary
9.4 Potential Energy Scans
9.5 Intrinsic Reaction Coordinates
9.5.1 Job Control
9.5.2 Example
9.6 Freezing String Method
9.7 Hessian-Free Transition State Search
9.8 Improved Dimer Method
9.9 Ab initio Molecular Dynamics
9.9.1 Examples
9.9.2 AIMD with Correlated Wavefunctions
9.9.3 Vibrational Spectra
9.9.4 Quasi-Classical Molecular Dynamics
9.10 Ab initio Path Integrals
9.10.1 Classical Sampling
9.10.2 Quantum Sampling
9.10.3 Examples
9.11 Q-CHEM / CHARMM Interface
9.12 Stand-Alone QM / MM calculations
9.12.1 Available QM / MM Methods and Features
9.12.2 Using the Stand-Alone QM / MM Features
9.12.2.1 $molecule section
9.12.2.2 $force_field_params section
9.12.2.3 User-defined force fields
9.12.2.4 $qm_atoms and $forceman sections
9.12.3 Additional Job Control Variables
9.12.4 QM / MM Examples
10 Molecular Properties and Analysis
10.1 Introduction
10.2 Chemical Solvent Models
10.2.1 Kirkwood-Onsager Model
10.2.2 Polarizable Continuum Models
10.2.3 PCM Job Control
10.2.3.1 $rem section
10.2.3.2 $pcm section
10.2.3.3 $pcm_solvent section
10.2.4 Linear-Scaling QM / MM / PCM Calculations
10.2.5 Iso-Density Implementation of SS(V)PE
10.2.5.1 The $svp input section
10.2.6 Langevin Dipoles Solvation Model
10.2.6.1 Overview
10.2.6.2 Customizing Langevin dipoles solvation calculations
10.2.7 The SM8 Model
10.2.8 COSMO
10.3 Wavefunction Analysis
10.3.1 Population Analysis
10.3.2 Multipole Moments
10.3.3 Symmetry Decomposition
10.3.4 Localized Orbital Bonding Analysis
10.3.5 Excited-State Analysis
10.4 Intracules
10.4.1 Position Intracules
10.4.2 Momentum Intracules
10.4.3 Wigner Intracules
10.4.4 Intracule Job Control
10.4.5 Format for the $intracule Section
10.5 Vibrational Analysis
10.5.1 Job Control
10.6 Anharmonic Vibrational Frequencies
10.6.1 Partial Hessian Vibrational Analysis
10.6.2 Vibration Configuration Interaction Theory
10.6.3 Vibrational Perturbation Theory
10.6.4 Transition-Optimized Shifted Hermite Theory
10.6.5 Job Control
10.6.6 Isotopic Substitutions
10.7 Interface to the NBO Package
10.8 Orbital Localization
10.9 Visualizing and Plotting Orbitals and Densities
10.9.1 Visualizing Orbitals Using MolDen and MacMolPlt
10.9.2 Visualization of Natural Transition Orbitals
10.9.3 Generation of Volumetric Data Using $plots
10.9.4 Direct Generation of "Cube" Files
10.9.5 NCI Plots
10.10 Electrostatic Potentials
10.11 Spin and Charge Densities at the Nuclei
10.12 NMR Shielding Tensors
10.12.1 Job Control
10.12.2 Using NMR Shielding Constants as an Efficient Probe of Aromaticity
10.13 Linear-Scaling NMR Chemical Shifts: GIAO-HF and GIAO-DFT
10.14 Linear-Scaling Computation of Electric Properties
10.14.1 Examples for Section $fdpfreq
10.14.2 Features of Mopropman
10.14.3 Job Control
10.15 Atoms in Molecules
10.16 Distributed Multipole Analysis
10.17 Electronic Couplings for Electron Transfer and Energy Transfer
10.17.1 Eigenstate-Based Methods
10.17.1.1 Two-state approximation
10.17.1.2 Multi-state treatments
10.17.2 Diabatic-State-Based Methods
10.17.2.1 Electronic coupling in charge transfer
10.17.2.2 Corresponding orbital transformation
10.17.2.3 Generalized density matrix
10.17.2.4 Direct coupling method for electronic coupling
10.18 Calculating the Population of Effectively Unpaired ("odd") Electrons with DFT
10.19 Quantum Transport Properties via the Landauer Approximation
11 Effective Fragment Potential Method
11.1 Theoretical Background
11.2 Excited-State Calculations with EFP
11.3 Extension to Macromolecules: Fragmented EFP Scheme
11.4 EFP Fragment Library
11.5 EFP Job Control
11.6 Examples
11.7 Calculation of User-Defined EFP Potentials
11.7.1 Generating EFP Parameters in GAMESS
11.7.2 Converting EFP Parameters to the Q-Chem Library Format
11.7.3 Converting EFP Parameters to the Q-Chem Input Format
11.8 Converting PDB Coordinates into Q-Chem EFP Input Format
11.9 fEFP Input Structure
11.10 Advanced EFP options
12 Methods Based on Absolutely-Localized Molecular Orbitals
12.1 Introduction
12.2 Specifying Fragments in the $molecule Section
12.3 911 plus3 minus4 plus2 plus2 minus2 plus2 minus plus2 minus4 plus2 minus plus2 minus2 plus minus FRAGMO Initial Guess for SCF Methods
12.4 Locally-Projected SCF Methods
12.4.1 Locally-Projected SCF Methods with Single Roothaan-Step Correction
12.4.2 Roothaan-Step Corrections to the 911 plus3 minus4 plus2 plus2 minus2 plus2 minus plus2 minus4 plus2 minus plus2 minus2 plus minus FRAGMO Initial Guess
12.4.3 Automated Evaluation of the Basis-Set Superposition Error
12.5 Energy Decomposition and Charge-Transfer Analysis
12.5.1 Energy Decomposition Analysis
12.5.2 Analysis of Charge-Transfer Based on Complementary Occupied / Virtual Pairs
12.6 Job Control for Locally-Projected SCF Methods
12.7 The Explicit Polarization (XPol) Method
12.7.1 Supplementing XPol with Empirical Potentials
12.7.2 Job Control Variables for XPol
12.8 Symmetry-Adapted Perturbation Theory (SAPT)
12.8.1 Theory
12.8.2 Job Control for SAPT Calculations
12.9 The XPol+SAPT Method
A Geometry Optimization with Q-Chem
A.1 Introduction
A.2 Theoretical Background
A.3 Eigenvector-Following (EF) Algorithm
A.4 Delocalized Internal Coordinates
A.5 Constrained Optimization
A.6 Delocalized Internal Coordinates
A.7 GDIIS
B AOINTS
B.1 Introduction
B.2 Historical Perspective
B.3 AOINTS: Calculating ERIs with Q-Chem
B.4 Shell-Pair Data
B.5 Shell-Quartets and Integral Classes
B.6 Fundamental ERI
B.7 Angular Momentum Problem
B.8 Contraction Problem
B.9 Quadratic Scaling
B.10 Algorithm Selection
B.11 More Efficient Hartree-Fock Gradient and Hessian Evaluations
B.12 User-Controllable Variables
C Q-Chem Quick Reference
C.1 Q-Chem Text Input Summary
C.1.1 Keyword: $molecule
C.1.2 Keyword: $rem
C.1.3 Keyword: $basis
C.1.4 Keyword: $comment
C.1.5 Keyword: $ecp
C.1.6 Keyword: $empirical_dispersion
C.1.7 Keyword: $external_charges
C.1.8 Keyword: $intracule
C.1.9 Keyword: $isotopes
C.1.10 Keyword: $multipole_field
C.1.11 Keyword: $nbo
C.1.12 Keyword: $occupied
C.1.13 Keyword: $opt
C.1.14 Keyword: $svp
C.1.15 Keyword: $svpirf
C.1.16 Keyword: $plots
C.1.17 Keyword: $localized_diabatization
C.1.18 Keyword $van_der_waals
C.1.19 Keyword: $xc_functional
C.2 Geometry Optimization with General Constraints
C.2.1 Frozen Atoms
C.3 $rem Variable List
C.3.1 General
C.3.2 SCF Control
C.3.3 DFT Options
C.3.4 Large Molecules
C.3.5 Correlated Methods
C.3.6 Correlated Methods Handled by CCMAN and CCMAN2
C.3.7 Perfect pairing, Coupled cluster valence bond, and related methods
C.3.8 Excited States: CIS, TDDFT, SF-XCIS and SOS-CIS(D)
C.3.9 Excited States: EOM-CC and CI Methods
C.3.10 Geometry Optimizations
C.3.11 Vibrational Analysis
C.3.12 Reaction Coordinate Following
C.3.13 NMR Calculations
C.3.14 Wavefunction Analysis and Molecular Properties
C.3.15 Symmetry
C.3.16 Printing Options
C.3.17 Resource Control
C.3.18 Alphabetical Listing
Chapter 1 Introduction
1.1 About This Manual
This manual is intended as a general-purpose user's guide for Q-Chem, a
modern electronic structure program. The manual contains background
information that describes Q-Chem methods and user-selected parameters.
It is assumed that the user has some familiarity with the UNIX environment,
an ASCII file editor and a basic understanding of quantum chemistry.
The manual is divided into 12 chapters and 3 appendices, which are briefly
summarized below. After installing Q-Chem, and making necessary adjustments
to your user account, it is recommended that particular attention be given to
Chapters 3 and 4. The latter chapter has been
formatted so that advanced users can quickly find the information they require,
while supplying new users with a moderate level of important background
information. This format has been maintained throughout the manual, and every
attempt has been made to guide the user forward and backward to other relevant
information so that a logical progression through this manual, while
recommended, is not necessary.
1.2 Chapter Summaries
Chapter 1: | General overview of the Q-Chem program, its features and
capabilities, the people behind it, and contact information. |
Chapter 2: | Procedures to install, test, and run Q-Chem on your machine. |
Chapter 3: | Basic attributes of the Q-Chem command line input. |
Chapter 4: | Running self-consistent field ground state calculations. |
Chapter 5: | Running wavefunction-based correlation methods for ground states. |
Chapter 6: | Running calculations for excited states and open-shell species. |
Chapter 7: | Using Q-Chem's built-in basis sets and running user-defined
basis sets. |
Chapter 8: | Using Q-Chem's effective core potential capabilities. |
Chapter 9: | Options available for exploring potential energy surfaces,
such as determining critical points (transition states and local minima) as well
as molecular dynamics options. |
Chapter 10: | Techniques available for computing molecular properties and
performing wavefunction analysis. |
Chapter 11: | Techniques for molecules in environments (e.g., bulk solution)
and intermolecular interactions; Effective Fragment Potential method. |
Chapter 12: | Methods based on absolutely-localized molecular orbitals. |
Appendix A: | Optimize package used in Q-Chem for determining molecular
geometry critical points. |
Appendix B: | Q-Chem's AOINTS library, which contains some of the fastest
two-electron integral code currently available. |
Appendix C: | Quick reference section. |
1.3 Contact Information
For general information regarding broad aspects and features of the Q-Chem
program, see Q-Chem's home page (http://www.q-chem.com).
1.3.1 Customer Support
Full customer support is promptly provided though telephone or email for those
customers who have purchased Q-Chem's maintenance contract. The maintenance
contract offers free customer support and discounts on future releases and
updates. For details of the maintenance contract please see Q-Chem's home page
(http://www.q-chem.com).
1.4 Q-Chem, Inc.
Q-Chem, Inc. was founded in 1993 and
was based in Pittsburgh, USA for many years,
but will relocate to California in 2013.
Q-Chem's scientific contributors include leading quantum chemists
around the world. The company is governed by the Board of Directors
which currently consists of Peter Gill (Canberra), Anna Krylov (USC),
John Herbert (OSU), and Hilary Pople. Fritz Schaefer (Georgia) is a
Board Member Emeritus. Martin Head-Gordon is a Scientific
Advisor to the Board.
The close coupling between leading university research groups and Q-Chem
Inc. ensures that the methods and algorithms available in
Q-Chem are state-of-the-art.
In order to create this technology, the founders of Q-Chem, Inc. built
entirely new methodologies from the ground up, using the latest algorithms and
modern programming techniques. Since 1993, well over 300 person-years have been
devoted to the development of the Q-Chem program. The author list of the
program shows the full list of contributors to the current version.
The current group of developers consist of more than 100 people in 9 countries.
A brief history of Q-Chem is given in a recent Software Focus article[1], "Q-Chem: An Engine for Innovation".
1.5 Company Mission
The mission of Q-Chem, Inc. is to develop, distribute and support innovative
quantum chemistry software for industrial, government and academic researchers
in the chemical, petrochemical, biochemical, pharmaceutical and material
sciences.
1.6 Q-Chem Features
Quantum chemistry methods have proven invaluable for studying chemical and
physical properties of molecules. The Q-Chem system brings together a variety
of advanced computational methods and tools in an integrated ab initio
software package, greatly improving the speed and accuracy of calculations
being performed. In addition, Q-Chem will accommodate far large molecular
structures than previously possible and with no loss in accuracy, thereby
bringing the power of quantum chemistry to critical research projects for which
this tool was previously unavailable.
1.6.1 New Features in Q-Chem 4.1
Q-Chem 4.1 provides several bug fixes, performance enhancements, and
the following new features:
- Fundamental algorithms
- Improved parallel performance at all levels including new OpenMP capabilities for SCF/DFT, MP2, integral transformation and coupled cluster theory (Zhengting Gan, Evgeny Epifanovsky, Matt Goldey, Yihan Shao;
see Section 2.7.1).
- Significantly enhanced ECP capabilities, including availability of gradients and frequencies in all basis sets for which the energy can be evaluated (Yihan Shao and Martin Head-Gordon; see Chapter 8).
- Self-Consistent Field and Density Functional Theory capabilities
- Numerous DFT enhancements and new features:
TD-DFT energy with M06, M08, and M11-series of
functionals; XYGJ-OS analytical energy gradient;
- TD-DFT/C-PCM excitation energies, gradient, and Hessian
(Jie Liu, W. Liang;
Section 6.3.4).
- Additional features in the Maximum Overlap Method (MOM) approach for converging difficult DFT and SCF calculations (Nick Besley;
Section 4.6.6).
- Wave function correlation capabilities
- Resolution-of-identity/Cholesky decomposition implementation
of all coupled-cluster and equation-of-motion methods enabling
applications to larger systems, reducing disk/memory requirements, and
improving performance (see Sections 5.7.5 and 5.7.6;
Evgeny Epifanovsky,
Xintian Feng, Dmitri Zuev, Yihan Shao, Anna Krylov).
- Attenuated MP2 theory in the aug-cc-pVDZ and aug-cc-pVTZ basis sets, which truncate two-electron integrals to cancel basis set superposition error, yielding results for intermolecular interactions that are much more accurate than standard MP2 in the same basis sets (Matt Goldey and Martin Head-Gordon, Section 5.6.1).
- Extended RAS-nSF methodology for ground and excited states involving strong non-dynamical correlations
(see Section 6.8, Paul Zimmerman, David Casanova, Martin Head-Gordon).
- Coupled cluster valence bond (CCVB) method for describing molecules with strong spin correlations (David Small and
Martin Head-Gordon; see Section 5.14.2).
- Walking on potential energy surfaces
- Potential energy surface scans (Yihan Shao, Section 9.4).
- Improvements in automatic transition structure search algorithms by the freezing string method,
including the ability to perform such calculations without a Hessian calculation
(Shaama Sharada, Martin Head-Gordon, Section 9.7).
- Enhancements to partial Hessian vibrational analysis (Nick Besley;
Section 10.6.1).
- Calculating and characterizing inter- and intra-molecular interactions
- Extension of EFP to macromolecules: fEFP approach
(Adele Laurent, Debashree Ghosh, Anna Krylov, Lyudmila Slipchenko,
see Section 11.3).
- Symmetry-adapted perturbation theory level at the "SAPT0" level,
for intermolecular interaction energy decomposition analysis into
physically-meaningful components such as electrostatics, induction, dispersion,
and exchange. (Leif Jacobson,
John Herbert; Section 12.8). Q-Chem features an efficient resolution-of-identity (RI) version of the "SAPT0" approximation,
based on 2nd-order perturbation theory for the intermolecular interaction.
- The "explicit polarization" (XPol) monomer-based SCF calculations to
compute many-body polarization
effects in linear-scaling time via charge embedding (Section 12.7), which
can be combined either with empirical potentials (e.g., Lennard Jones) for
the non-polarization parts of the intermolecular interactions, or better yet, with
SAPT for an ab initio approach called XSAPT that extends SAPT to systems containing more that two monomers (Leif Jacobson, John Herbert;
Section 12.9).
- Extension of the absolutely-localized-molecular-orbital-based energy
decomposition analysis to unrestricted cases
(Section 12.5, Paul Horn and Martin Head-Gordon)
- Calculations of populations of effectively
unpaired electrons in low-spin state within DFT,
a new method of evaluating localized atomic magnetic moments within Kohn-Sham without symmetry breaking,
and Mayer-type bond order analysis with inclusion of static correlation effects
(Emil Proynov; Section 10.18).
- Calculations of quantum transport including electron transmission
functions and electron tunneling currents under applied bias voltage
(Section 10.19, Barry Dunietz, Nicolai Sergueev).
- Searchable online version of our pdf manual.
1.6.2 New Features in Q-Chem 4.0.1
Q-Chem 4.0.1 provides several bug fixes, performance enhancements, and
the following new features:
- Remote submission capability in IQmol (Andrew Gilbert).
- Scaled nuclear charge and charged cage stabilization capabilities
(Tomasz Ku\'s, Anna Krylov, Section 6.6.5).
- Calculations of excited state properties including transition dipole
moments between different excited states in CIS and TDDFT as well as
couplings for electron and energy transfer (see Section 10.17).
1.6.3 New Features in Q-Chem 4.0
Q-Chem 4.0 provides the following new features and upgrades:
- Exchange-Correlation Functionals
- Density functional dispersion with implementation of the efficient Becke and Johnson's XDM
model in the analytic form
(Zhengting Gan, Emil Proynov, Jing Kong; Section 4.3.7).
- Implementation of the van der Waals density functionals vdW-DF-04 and vdW-DF-10
of Langreth and co-workers (Oleg Vydrov; Section 4.3.5).
- VV09 and VV10, new analytic dispersion functionals (Oleg Vydrov,
Troy Van Voorhis; Section 4.3.5).
- Implementation of DFT-D3 Methods for improved noncovalent interactions
(Shan-Ping Mao, Jeng-Da Chai; Section 4.3.8).
- ωB97X-2, a double-hybrid functional based on long range corrected B97
functional with improved account for medium and long range interactions
(Jeng-Da Chai, Martin Head-Gordon; Section 4.3.9).
- XYGJ-OS, a double-hybrid functional for predictions of nonbonding
interactions and thermochemistry at nearly chemical accuracy (Igor Zhang,
Xin Xu, William A. Goddard, III, Yousung Jung; Section 4.3.9).
- Calculation of near-edge X-ray absorption with short-range corrected DFT
(Nick Besley).
- Improved TDDFT prediction with implementation of asymptotically corrected
exchange-correlation potential (TDDFT / TDA with LB94) (Yu-Chuan Su, Jeng-Da
Chai; Section 4.3.10).
- Nondynamic correlation in DFT with efficient RI implementation of Becke-05 model in
fully analytic formulation (Emil Proynov, Yihan Shao, Fenglai Liu, Jing Kong;
Section 4.3.3).
- Implementation of meta-GGA functionals TPSS and its hybrid version TPSSh (Fenglai Liu)
and the rPW86 GGA functional (Oleg Vydrov).
- Implementation of double hybrid functional B2PLYP-D (Jeng-Da Chai).
- Implementation of Mori-Sánchez-Cohen-Yang (MCY2) hyper-GGA functional
(Fenglai Liu).
- SOGGA, SOGGA11 and SOGGA11-X family of GGA functionals (Roberto Peverati, Yan Zhao, Don Truhlar).
- M08-HX and M08-SO suites of high HF exchange meta-GGA functionals (Yan Zhao, Don Truhlar).
- M11-L and M11 suites of meta-GGA functionals (Roberto Peverati, Yan Zhao, Don Truhlar).
- DFT Algorithms
- Fast numerical integration of exchange-correlation with mrXC
(multiresolution exchange-correlation) (Shawn Brown, Laszlo Fusti-Molnar,
Nicholas J. Russ, Chun-Min Chang, Jing Kong; Section 4.4.7).
- Efficient computation of the exchange-correlation part of the dual basis DFT
(Zhengting Gan, Jing Kong; Section 4.5.5).
- Fast DFT calculation with "triple jumps" between different sizes of basis
set and grid and different levels of functional (Jia Deng, Andrew Gilbert,
Peter M. W. Gill; Section 4.8).
- Faster DFT and HF calculation with atomic resolution of the identity
(ARI) algorithms (Alex Sodt, Martin Head-Gordon).
- POST-HF: Coupled Cluster, Equation of Motion, Configuration Interaction,
and Algebraic Diagrammatic Construction Methods
- Significantly enhanced coupled-cluster code rewritten for better performance
and multicore systems for many modules (energy and gradient for CCSD,
EOM-EE / SF / IP / EA-CCSD, CCSD(T) energy) (Evgeny Epifanovsky, Michael Wormit,
Tomasz Kus, Arik Landau, Dmitri Zuev, Kirill Khistyaev, Ilya Kaliman, Anna
Krylov, Andreas Dreuw; Chapters 5 and 6).
This new code is named CCMAN2.
- Fast and accurate coupled-cluster calculations with frozen natural orbitals
(Arik Landau, Dmitri Zuev, Anna Krylov; Section 5.10).
- Correlated excited states with the perturbation-theory based, size
consistent ADC scheme of second order (Michael Wormit, Andreas Dreuw;
Section 6.7).
- Restricted active space spin flip method for multiconfigurational ground states
and multi-electron excited states (Paul Zimmerman, Franziska Bell, David Casanova,
Martin Head-Gordon, Section 6.2.4).
- POST-HF: Strong Correlation
- Perfect Quadruples and Perfect Hextuples methods for strong
correlation problems (John Parkhill, Martin Head-Gordon, Section 5.9.4).
- Coupled Cluster Valence Bond (CCVB) and related methods for multiple
bond breaking (David Small, Keith Lawler, Martin Head-Gordon, Section 5.14).
- DFT Excited States and Charge Transfer
- Nuclear gradients of excited states with TDDFT (Yihan Shao, Fenglai Liu,
Zhengting Gan, Chao-Ping Hsu, Andreas Dreuw, Martin Head-Gordon, Jing Kong;
Section 6.3.1).
- Direct coupling of charged states for study of charge transfer
reactions (Zhi-Qiang You, Chao-Ping Hsu, Section 10.17.2.
- Analytical excited-state Hessian in TDDFT within Tamm-Dancoff approximation
(Jie Liu, Wanzhen Liang; Section 6.3.5).
- Obtaining an excited state self-consistently with MOM, the Maximum Overlap Method
(Andrew Gilbert, Nick Besley, Peter M. W. Gill; Section 6.5).
- Calculation of reactions with configuration interactions of
charge-constrained states with constrained DFT (Qin Wu, Benjamin Kaduk, Troy
Van Voorhis; Section 4.9).
- Overlap analysis of the charge transfer in a excited state with TDDFT (Nick
Besley; Section 6.3.2).
- Localizing diabatic states with Boys or Edmiston-Ruedenberg localization
scheme for charge or energy transfer (Joe Subotnik, Ryan Steele, Neil
Shenvi, Alex Sodt; Section 10.17.1.2).
- Implementation of non-collinear formulation extends SF-TDDFT to a broader
set of functionals and improves its accuracy (Yihan Shao, Yves Bernard,
Anna Krylov; Section 6.3).
- Solvation and Condensed Phase
- Smooth solvation energy surface with switching/Gaussian polarizable
continuum medium (PCM) solvation models for QM and QM / MM calculations
(Adrian Lange, John Herbert; Sections 10.2.2 and 10.2.4).
- The original COSMO solvation model by Klamt and Schüürmann with DFT
energy and gradient (ported by Yihan Shao; Section 10.2.8).
- Accurate and fast energy computation for large systems including polarizable
explicit solvation for ground and excited states with effective fragment
potential using DFT / TDDFT, CCSD / EOM-CCSD, as well as CIS and CIS(D); library
of effective fragments for common solvents; energy gradient for EFP-EFP
systems (Vitalii Vanovschi, Debashree Ghosh, Ilya Kaliman, Dmytro Kosenkov,
Chris Williams, John Herbert, Mark Gordon, Michael Schmidt, Yihan Shao,
Lyudmila Slipchenko, Anna Krylov; Chapter 11).
- Optimizations, Vibrations, and Dynamics
- Freezing and Growing String Methods for efficient automatic reaction path
finding (Andrew Behn, Paul Zimmerman, Alex Bell, Martin Head-Gordon,
Section 9.6).
- Improved robustness of IRC code (intrinsic reaction coordinate following) (Martin
Head-Gordon).
- Exact, quantum mechanical treatment of nuclear motions at equilibrium with
path integral methods (Ryan Steele; Section 9.10).
- Calculation of local vibrational modes of interest with partial Hessian
vibrational analysis (Nick Besley; Section 10.6.1).
- Ab initio dynamics with extrapolated Z-vector techniques for MP2 and / or
dual-basis methods (Ryan Steele; Section 4.7.5).
- Quasiclassical ab initio molecular dynamics (Daniel Lambrecht, Martin Head-Gordon,
Section 9.9.4).
- Properties and Wavefunction Analysis
- Analysis of metal oxidation states via localized orbital bonding
analysis (Alex Thom, Eric Sundstrom, Martin Head-Gordon; Section 10.3.4).
- Hirshfeld population analysis (Sina Yeganeh; Section 10.3.1).
- Visualization of noncovalent bonding using Johnson and Yang's algorithm
(Yihan Shao; Section 10.9.5).
- ESP on a grid for transition density (Yihan Shao;
Section 10.10).
- Support for Modern Computing Platforms
- Efficient multicore parallel CC/EOM/ADC methods.
- Better performance for multicore systems with shared-memory parallel DFT/HF
(Zhengting Gan, Yihan Shao, Jing Kong) and RI-MP2 (Matthew Goldey, Martin
Head-Gordon; Section 5.13).
- Accelerating RI-MP2 calculation with GPU (graphic processing unit) (Roberto
Olivares-Amaya, Mark Watson, Richard Edgar, Leslie Vogt, Yihan Shao,
Alan Aspuru-Guzik; Section 5.5.4).
- Graphic User Interface
- Input file generation, Q-Chem job submission, and visualization
is supported by IQmol, a fully integrated GUI
developed by Andrew Gilbert from the Australian
National University. IQmol is a free software and does not require purchasing
a license. See http://www.iqmol.org for details and installation instructions.
- Other graphic interfaces are also available.
1.6.4 New Features in Q-Chem 3.2
Q-Chem 3.2 provides the following important upgrades:
- Several new DFT options:
- Long-ranged corrected (LRC) functionals (Dr. Rohrdanz, Prof. Herbert)
- Baer-Neuhauser-Livshits (BNL) functional (Prof. Baer, Prof. Neuhauser, Dr. Livshits)
- Variations of ωB97 Functional (Dr. Chai, Prof. Head-Gordon)
- Constrained DFT (CDFT) (Dr. Wu, Cheng, Prof. Van Voorhis)
- Grimme's empirical dispersion correction (Prof. Sherrill)
- Default XC grid for DFT:
- Default xc grid is now SG-1. It used to be SG-0 before this release.
- Solvation models:
- SM8 model (energy and analytical gradient) for water and organic solvents
(Dr. Marenich, Dr. Olson, Dr. Kelly, Prof. Cramer, Prof. Truhlar)
- Updates to Onsager reaction-field model
(Mr. Cheng, Prof. Van Voorhis, Dr. Thanthiriwatte, Prof. Gwaltney)
- Intermolecular interaction analysis (Dr. Khaliullin, Prof. Head-Gordon):
- SCF with absolutely localized molecular orbitals for molecule interaction (SCF-MI)
- Roothaan-step (RS) correction following SCF-MI
- Energy decomposition analysis (EDA)
- Complimentary occupied-virtual pair (COVP) analysis for charge transfer
- Automated basis-set superposition error (BSSE) calculation
- Electron transfer analysis (Dr. You, Prof. Hsu)
- Relaxed constraint algorithm (RCA) for converging SCF (Mr. Cheng, Prof. Van Voorhis)
- G3Large basis set for transition metals (Prof. Rassolov)
- New MP2 options:
- dual-basis RIMP2 energy and analytical gradient (Dr. Steele, Mr. DiStasio Jr., Prof. Head-Gordon)
- O2 energy and gradient (Dr. Lochan, Prof. Head-Gordon)
- New wavefunction-based methods for efficiently calculating excited state properties (Dr. Casanova, Prof. Rhee, Prof. Head-Gordon):
- SOS-CIS(D) energy for excited states
- SOS-CIS(D0) energy and gradient for excited states
- Coupled-cluster methods (Dr. Pieniazek, Dr. Epifanovsky, Prof. Krylov):
- IP-CISD energy and gradient
- EOM-IP-CCSD energy and gradient
- OpenMP for parallel coupled-cluster calculations
- QM/MM methods (Dr. Woodcock, Ghysels, Dr. Shao, Dr. Kong, Dr. Brooks)
- QM/MM full Hessian evaluation
- QM/MM mobile-block Hessian (MBH) evaluation
- Description for MM atoms with Gaussian-delocalized charges
- Partial Hessian method for vibrational analysis (Dr. Besley)
- Wavefunction analysis tools:
- Improved algorithms for computing localized orbitals
(Dr. Subotnik, Prof. Rhee, Dr. Thom, Mr. Kurlancheek, Prof. Head-Gordon)
- Distributed multipole analysis
(Dr. Vanovschi, Prof. Krylov, Dr. Williams, Prof. Herbert)
- Analytical Wigner intracule
(Dr. Crittenden, Prof. Gill)
1.6.5 New Features in Q-Chem 3.1
Q-Chem 3.1 provides the following important upgrades:
- Several new DFT functional options:
- The nonempirical GGA functional PBE (from the open DF Repository
distributed by the QCG CCLRC Daresbury Lab., implemented in Q-Chem 3.1 by Dr. E. Proynov).
- M05 and M06 suites of meta-GGA functionals for more
accurate predictions of various types of reactions and systems
(Dr. Yan Zhao, Dr. Nathan E. Schultz, Prof. Don Truhlar).
- A faster correlated excited state method:
RI-CIS(D) (Dr. Young Min Rhee).
- Potential energy surface crossing minimization with CCSD and EOM-CCSD
methods (Dr. Evgeny Epifanovsky).
- Dyson orbitals for ionization from the ground and excited states
within CCSD and EOM-CCSD methods (Dr. Melania Oana).
1.6.6 New Features in Q-Chem 3.0
Q-Chem 3.0 includes many new features, along with many enhancements in
performance and robustness over previous versions. Below is a list of some
of the main additions, and who is primarily to thank for implementing them.
Further details and references can be found in the official citation for
Q-Chem (see Section 1.8).
- Improved two-electron integrals package (Dr. Yihan Shao):
- Code for the Head-Gordon-Pople algorithm rewritten to avoid
cache misses and to take advantage of modern computer
architectures.
- Overall increased in performance, especially for computing
derivatives.
- Fourier Transform Coulomb method (Dr. Laszlo Fusti-Molnar):
- Highly efficient implementation for the calculation of
Coulomb matrices and forces for DFT calculations.
- Linear scaling regime is attained earlier than previous
linear algorithms.
- Present implementation works well for basis sets with
high angular momentum and diffuse functions.
- Improved DFT quadrature evaluation:
- Incremental DFT method avoids calculating negligible contributions
from grid points in later SCF cycles (Dr. Shawn Brown).
- Highly efficient SG-0 quadrature grid with approximately half the
accuracy and number of grid points as the SG-1 grid (Siu-Hung Chien).
- Dual basis self-consistent field calculations (Dr. Jing Kong, Ryan Steele):
- Two stage SCF calculations can reduce computational cost by an
order of magnitude.
- Customized basis subsets designed for optimal projection into larger
bases.
- Auxiliary basis expansions for MP2 calculations:
- RI-MP2 and SOS-MP2 energies (Dr. Yousung Jung) and gradients (Robert A. DiStasio Jr.).
- RI-TRIM MP2 energies (Robert A. DiStasio Jr.).
- Scaled opposite spin energies and gradients (Rohini Lochan).
- Enhancements to the correlation package including:
- Most extensive range of EOM-CCSD methods available including
EOM-SF-CCSD, EOM-EE-CCSD, EOM-DIP-CCSD, EOM-IP/EA-CCSD (Prof. Anna Krylov).
- Available for RHF/UHF/ROHF references.
- Analytic gradients and properties calculations (permanent and
transition dipoles etc.).
- Full use of abelian point-group symmetry.
- Singlet strongly orthogonal geminal (SSG) methods (Dr. Vitaly Rassolov).
- Coupled-cluster perfect-paring methods (Prof. Martin Head-Gordon):
- Perfect pairing (PP), imperfect pairing (IP) and restricted pairing
(RP) models.
- PP(2) Corrects for some of the worst failures of MP2 theory.
- Useful in the study of singlet molecules with diradicaloid
character.
- Applicable to systems with more than 100 active electrons.
- Hybrid quantum mechanics / molecular mechanics (QM / MM) methods:
- Fixed point-charge model based on the AMBER force field.
- Two-layer ONIOM model (Dr. Yihan Shao).
- Integration with the Molaris simulation package (Dr. Edina Rosta).
- Q-Chem/ CHARMM interface (Dr. Lee Woodcock)
- New continuum solvation models (Dr. Shawn Brown):
- Surface and Simulation of Volume Polarization for Electrostatics
[SS(V)PE] model.
- Available for HF and DFT calculations.
- New transition structure search algorithms (Andreas Heyden and Dr. Baron
Peters):
- Growing string method for finding transition states.
- Dimer Method which does not use the Hessian and is therefore
useful for large systems.
- Ab Initio Molecular dynamics (Dr. John Herbert):
- Available for SCF wavefunctions (HF, DFT).
- Direct Born-Oppenheimer molecular dynamics (BOMD).
- Extended Lagrangian ab initio molecular dynamics (ELMD).
- Linear scaling properties for large systems (Jörg Kussmann and
Prof. Christian Ochsenfeld):
- NMR chemical shifts.
- Static and dynamic polarizabilities.
- Static hyperpolarizabilities, optical rectification and
electro-optical Pockels effect.
- Anharmonic frequencies (Dr. Ching Yeh Lin):
- Efficient implementation of high-order derivatives
- Corrections via perturbation theory (VPT) or configuration
interaction (VCI).
- New transition optimized shifted Hermite (TOSH) method.
- Wavefunction analysis tools:
- Spin densities at the nuclei (Dr. Vitaly Rassolov).
- Efficient calculation of localized orbitals.
- Optimal atomic point-charge models for densities (Andrew Simmonett).
- Calculation of position, momentum and Wigner intracules (Dr Nick
Besley and Dr. Darragh O'Neill).
- Graphical user interface options:
- IQmol, a fully integrated GUI. IQmol includes
input file generator and contextual help, molecular builder,
job submission tool, and visualization kit
(molecular orbital and density viewer, frequencies, etc).
For the latest version and download/installation instructions, please
see the IQmol homepage (www.iqmol.org).
- Support for the public domain version of WebMO
(see www.webmo.net).
- Seamless integration with the Spartan package
(see www.wavefun.com).
- Support for the public domain version of Avogadro (see:
http: / / avogadro.openmolecules.net / wiki / Get_Avogadro).
- Support the MolDen molecular orbital viewer
(see www.cmbi.ru.nl/molden).
- Support the JMol package
(see http://sourceforge.net/project/showfiles.php?group_id= 23629&release_id=66897).
1.6.7 Summary of Features Prior to Q-Chem 3.0
- Efficient algorithms for large-molecule density functional calculations:
- CFMM for linear scaling Coulomb interactions (energies and gradients) (Dr. Chris White).
- Second-generation J-engine and J-force engine (Dr. Yihan Shao).
- LinK for exchange energies and forces (Dr. Christian Ochsenfeld and Dr. Chris White).
- Linear scaling DFT exchange-correlation quadrature.
- Local, gradient-corrected, and hybrid DFT functionals:
- Slater, Becke, GGA91 and Gill `96 exchange functionals.
- VWN, PZ81, Wigner, Perdew86, LYP and GGA91 correlation functionals.
- EDF1 exchange-correlation functional (Dr. Ross Adamson).
- B3LYP, B3P and user-definable hybrid functionals.
- Analytical gradients and analytical frequencies.
- SG-0 standard quadrature grid (Siu-Hung Chien).
- Lebedev grids up to 5294 points (Dr. Shawn Brown).
- High level wavefunction-based electron correlation methods (Chapter
5):
- Efficient semi-direct MP2 energies and gradients.
- MP3, MP4, QCISD, CCSD energies.
- OD and QCCD energies and analytical gradients.
- Triples corrections (QCISD(T), CCSD(T) and OD(T) energies).
- CCSD(2) and OD(2) energies.
- Active space coupled cluster methods: VOD, VQCCD, VOD(2).
- Local second order Møller-Plesset (MP2) methods (DIM and TRIM).
- Improved definitions of core electrons for post-HF correlation (Dr. Vitaly Rassolov).
- Extensive excited state capabilities:
- CIS energies, analytical gradients and analytical frequencies.
- CIS(D) energies.
- Time-dependent density functional theory energies (TDDFT).
- Coupled cluster excited state energies, OD and VOD (Prof. Anna Krylov).
- Coupled-cluster excited-state geometry optimizations.
- Coupled-cluster property calculations (dipoles, transition dipoles).
- Spin-flip calculations for CCSD and TDDFT excited states (Prof. Anna
Krylov and Dr. Yihan Shao).
- High performance geometry and transition structure optimization (Jon Baker):
- Optimizes in Cartesian, Z-matrix or delocalized internal coordinates.
- Impose bond angle, dihedral angle (torsion) or out-of-plane bend constraints.
- Freezes atoms in Cartesian coordinates.
- Constraints do not need to be satisfied in the starting structure.
- Geometry optimization in the presence of fixed point charges.
- Intrinsic reaction coordinate (IRC) following code.
- Evaluation and visualization of molecular properties
- Onsager, SS(V)PE and Langevin dipoles solvation models.
- Evaluate densities, electrostatic potentials, orbitals over cubes for plotting.
- Natural Bond Orbital (NBO) analysis.
- Attachment / detachment densities for excited states via CIS, TDDFT.
- Vibrational analysis after evaluation of the nuclear coordinate Hessian.
- Isotopic substitution for frequency calculations (Robert Doerksen).
- NMR chemical shifts (Joerg Kussmann).
- Atoms in Molecules (AIMPAC) support (Jim Ritchie).
- Stability analysis of SCF wavefunctions (Yihan Shao).
- Calculation of position and momentum molecular intracules (Aaron
Lee, Nick Besley and Darragh O'Neill).
- Flexible basis set and effective core potential (ECP) functionality:
(Ross Adamson and Peter Gill)
- Wide range of built-in basis sets and ECPs.
- Basis set superposition error correction.
- Support for mixed and user-defined basis sets.
- Effective core potentials for energies and gradients.
- Highly efficient PRISM-based algorithms to evaluate ECP matrix elements.
- Faster and more accurate ECP second derivatives for frequencies.
1.7 Current Development and Future Releases
All details of functionality currently under development, information relating
to future releases, and patch information are regularly updated on the Q-Chem
web page (http://www.q-chem.com). Users are referred to this page for updates on developments,
release information and further information on ordering and licenses. For any
additional information, please contact Q-Chem, Inc. headquarters.
1.8 Citing Q-Chem
The most recent official citation for Q-Chem is a journal article
that has been written describing the main technical features of Q-Chem3.0
version of the program.
The full citation for this article is:
"Advances in quantum chemical methods and algorithms in the Q-Chem 3.0 program
package",
Yihan Shao, Laszlo Fusti-Molnar, Yousung Jung, Jürg Kussmann, Christian
Ochsenfeld, Shawn T. Brown, Andrew T.B. Gilbert, Lyudmila V. Slipchenko,
Sergey V. Levchenko, Darragh P. O'Neill, Robert A. DiStasio Jr., Rohini C.
Lochan, Tao Wang, Gregory J.O. Beran, Nicholas A. Besley, John M. Herbert,
Ching Yeh Lin, Troy Van Voorhis, Siu Hung Chien, Alex Sodt, Ryan P. Steele,
Vitaly A. Rassolov, Paul E. Maslen, Prakashan P. Korambath, Ross D. Adamson,
Brian Austin, Jon Baker, Edward F. C. Byrd, Holger Daschel, Robert J. Doerksen,
Andreas Dreuw, Barry D. Dunietz, Anthony D. Dutoi, Thomas R. Furlani, Steven
R. Gwaltney, Andreas Heyden, So Hirata, Chao-Ping Hsu, Gary Kedziora, Rustam Z.
Khaliullin, Phil Klunzinger, Aaron M. Lee, Michael S. Lee, WanZhen Liang, Itay
Lotan, Nikhil Nair, Baron Peters, Emil I. Proynov, Piotr A. Pieniazek, Young
Min Rhee, Jim Ritchie, Edina Rosta, C. David Sherrill, Andrew C. Simmonett,
Joseph E. Subotnik, H. Lee Woodcock III, Weimin Zhang, Alexis T. Bell, Arup
K. Chakraborty, Daniel M. Chipman, Frerich J. Keil, Arieh Warshel, Warren J.
Hehre, Henry F. Schaefer III, Jing Kong, Anna I. Krylov, Peter M.W. Gill and
Martin Head-Gordon. Phys. Chem. Chem. Phys., 8, 3172 (2006).
This citation will soon be replaced by an official Q-Chem 4 paper, which is
in preparation. The full list of current authors can be found on
Q-Chem's website.
Meanwhile, one can acknowledge using Q-Chem 4.0 by additionally citing
a more recent feature article describing Q-Chem:
"Q-Chem: An engine for innovation",
A.I. Krylov and P.M.W. Gill.
WIREs Comput. Mol. Sci., 3, 317-326 (2013).
Chapter 2 Installation
2.1 Q-Chem Installation Requirements
2.1.1 Execution Environment
Q-Chem is shipped as a single executable along with several scripts for
the computer system you will run Q-Chem on. No compilation is required. Once
the package is installed, it is ready to run.
Please refer to the installation notes for your particular platform which
are distributed with the software.
The system software required to run Q-Chem on your platform is
minimal, and includes:
- A suitable operating system.
- Run-time libraries (usually provided with your operating system).
- Perl, version 5.
- Vendor implementation of MPI or MPICH libraries (MPI-parallel
version only).
Please check the Q-Chem web site, or contact Q-Chem support (email:
support@q-chem.com) if further details are required.
2.1.2 Hardware Platforms and Operating Systems
Q-Chem runs on a wide varieties of computer systems, ranging from Intel and AMD microprocessor
based PCs and workstations to high performance server nodes used in clusters and supercomputers.
Currently Q-Chem support Linux, Mac, Windows and IBM AIX systems.
For the availability of a specific platform/operating system, please contact
support@q-chem.com for details.
2.1.3 Memory and Hard Disk
Memory
Q-Chem, Inc. has endeavored to minimize memory requirements and maximize the
efficiency of its use. Still, the larger the structure or the higher the level
of theory, the more random access memory (RAM) is needed. Although Q-Chem can
be run with very small memory, we recommend 1 GB as a minimum. Q-Chem also offers
the ability for user control of important memory intensive aspects of the
program, an important consideration for non-batch constrained multi-user
systems. In general, the more memory your system has, the larger the
calculation you will be able to perform.
Q-Chem uses two types of memory: a chunk of static memory that is used by
multiple data sets and managed by the code, and dynamic memory which is allocated
using system calls. The size of the static memory is specified by the user
through the $rem word MEM_STATIC and has a default value of 64 MB.
The $rem word MEM_TOTAL specifies the limit of the total memory the
user's job can use. The default value is sufficiently large that on most
machines it will allow Q-Chem to use all the available memory. This value
should be reduced on machines where this is undesirable (for example if the
machine is used by multiple users). The limit for the dynamic memory
allocation is given by (MEM_TOTAL − MEM_STATIC). The amount
of MEM_STATIC needed depends on the size of the user's particular
job. Please note that one should not specify an excessively large value for
MEM_STATIC, otherwise it will reduce the available memory for dynamic
allocation. Memory settings in CC/EOM/ADC
calculations are described in Section 5.13. The use of $rem
words will be discussed in the next Chapter.
Disk
The Q-Chem executables, shell scripts, auxiliary files, samples and
documentation require between 360 to 400 MB of disk space, depending on the
platform. The default Q-Chem output, which is printed to the designated
output file, is usually only a few KBs. This will be exceeded, of course, in
difficult geometry optimizations, and in cases where users invoke non-default
print options. In order to maximize the capabilities of your copy of Q-Chem,
additional disk space is required for scratch files created during execution,
and these are automatically deleted on normal termination of a job. The amount of
disk space required for scratch files depends critically on the type of job,
the size of the molecule and the basis set chosen.
Q-Chem uses direct methods for Hartree-Fock and density functional theory
calculations, which do not require large amount of scratch disk space.
Wavefunction-based correlation methods, such as MP2 and coupled-cluster theory
require substantial amounts of temporary (scratch) disk storage, and the faster
the access speeds, the better these jobs will perform. With the low cost of
disk drives, it is feasible to have between 100 and 1000 Gb of scratch space
available as a dedicated file system for these large temporary job files. The
more you have available, the larger the jobs that will be feasible and in the
case of some jobs, like MP2, the jobs will also run faster as two-electron
integrals are computed less often.
Although the size of any one of the Q-Chem temporary files will not exceed
2 Gb, a user's job will not be limited by this. Q-Chem writes large temporary
data sets to multiple files so that it is not bounded by the 2 Gb file size
limitation on some operating systems.
2.2 Installing Q-Chem
Users are referred to the detailed installation instructions distributed
with your copy of Q-Chem.
An encrypted license file, qchem.license.dat, must be obtained from your
vendor before you will be able to use Q-Chem. This file should be placed in
the directory $QCAUX/license and must be able to be read by all users
of the software. This file is node-locked, i.e., it will only operate
correctly on the machine for which it was generated. Further details about
obtaining this file, can be found in the installation instructions.
Do not alter the license file unless directed by Q-Chem, Inc.
2.3 Q-Chem Auxiliary files ($QCAUX)
The $QCAUX environment variable determines the directory where Q-Chem
searches for auxiliary files and the machine license. If not set explicitly,
it defaults to $QC/qcaux.
The $QCAUX directory contains files required to run Q-Chem
calculations, including basis set and ECP specifications, SAD
guess (see Chapter 4),
library of standard effective fragments (see Chapter 11),
and instructions for the AOINTS package for generating two-electron integrals
efficiently.
2.4 Q-Chem Runtime Environment Variables
Q-Chem requires the following shell environment variables setup prior to running any
calculations:
QC | Defines the location of the Q-Chem directory structure. The
qchem.install shell script determines this
automatically. |
QCAUX | Defines the location of the auxiliary information required by
Q-Chem, which includes the license required to run Q-Chem.
If not explicitly set by the user, this defaults to
$QC/qcaux. |
QCSCRATCH | Defines the directory in which Q-Chem will store temporary
files. Q-Chem will usually remove these files on successful
completion of the job, but they can be saved, if so wished.
Therefore, $QCSCRATCH should not reside in a directory that
will be automatically removed at the end of a job, if the files
are to be kept for further calculations.
Note that many of these files can be very large, and it should be
ensured that the volume that contains this directory has
sufficient disk space available. The $QCSCRATCH directory
should be periodically checked for scratch files remaining from
abnormally terminated jobs. $QCSCRATCH defaults to the
working directory if not explicitly set. Please see section
2.7 for details on saving temporary files and
consult your systems administrator. |
QCLOCALSCR | On certain platforms, such as Linux clusters, it is sometimes
preferable to write the temporary files to a disk local to the
node. $QCLOCALSCR specifies this directory. The temporary
files will be copied to $QCSCRATCH at the end of the job,
unless the job is terminated abnormally. In such cases Q-Chem
will attempt to remove the files in $QCLOCALSCR, but may
not be able to due to access restrictions. Please specify this
variable only if required.
|
2.5 User Account Adjustments
In order for individual users to run Q-Chem, User file access permissions
must be set correctly so that the user can read, write
and execute the necessary Q-Chem files. It may be advantageous to
create a qchem user group on your machine and recursively
change the group ownership of the Q-Chem directory to qchem group.
The Q-Chem runtime environment need to be initiated prior to running any Q-Chem
calculations, which is done by sourcing the environment setup script qcenv.sh [for bash] or
qcenv.csh [for tcsh/csh] placed in your Q-Chem top directory after a successful
installation. It might be more convenient for user to include the Q-Chem environment setup
in their shell startup script, e.g., .cshrc/.tcshrc for csh/tcsh or .bashrc for bash.
For users using the csh shell (or equivalent), add the following lines to their
home directory .cshrc file:
#
setenv QC qchem_root_directory_name
setenv QCSCRATCH scratch_directory_name
source $QC/qcenv.csh
#
For users using the Bourne-again shell (bash), add the following lines to
their home directory .bashrc file:
#
export QC=qchem_root_directory_name
export QCSCRATCH=scratch_directory_name
. $QC/qcenv.sh
#
2.6 Further Customization
Q-Chem has developed a simple mechanism for users to set user-defined
long-term defaults to override the built-in program defaults. Such defaults
may be most suited to machine specific features such as memory allocation,
as the total available memory will vary from machine to machine depending on
specific hardware and accounting configurations. However, users may identify
other important uses for this customization feature.
Q-Chem obtains input initialization variables from four sources:
- User input file
- $HOME/.qchemrc file
- $QC/config/preferences file
- Program defaults
The order of preference of initialization is as above, where the higher placed
input mechanism overrides the lower.
Details of the requirements for the Q-Chem input file are discussed in detail
in this manual. In reviewing the $rem variables and their defaults, users
may identify some variable defaults that they find too limiting or variables
which they find repeatedly need to be set within their input files to make the
most of Q-Chem's features. Rather than having to remember to place such
variables into the Q-Chem input file, users are able to set long-term
defaults which are read each time the user runs a Q-Chem job. This is done by
placing these defaults into the file .qchemrc stored in the users home
directory. Additionally, system administrators can override Q-Chem defaults
with an additional preferences file in the $QC/config directory
achieving a hierarchy of input as illustrated above.
Note:
The .qchemrc and preferences files are not requisites for
running Q-Chem and currently only support $rem keywords. |
2.6.1 .qchemrc and Preferences File Format
The format of the .qchemrc and preferences files is similar to
that for the input file, except that only a $rem keyword section may be
entered, terminated with the usual $end keyword. Any other keyword sections
will be ignored. So that jobs may easily be reproduced, a copy of the
.qchemrc file (if present) is now included near the top of the job
output file.
It is important that the .qchemrc and preferences files have
appropriate file permissions so that they are readable by the user invoking
Q-Chem. The format of both of these files is as follows:
$rem
rem_variable option comment
rem_variable option comment
...
$end
Example 2.0 An example of a .qchemrc file to apply program default
override $rem settings to all of the user's Q-Chem jobs.
$rem
INCORE_INTS_BUFFER 4000000 More integrals in memory
DIIS_SUBSPACE_SIZE 5 Modify max DIIS subspace size
THRESH 10
$end
2.6.2 Recommendations
As mentioned, the customization files are specifically suited for placing
long-term machine specific defaults as clearly some of the defaults placed by
Q-Chem will not be optimal on large or very small machines. The following
$rem variables are examples of those which should be considered, but the user
is free to include as few or as many as desired:
AO2MO_DISK
INCORE_INTS_BUFFER
MEM_STATIC
SCF_CONVERGENCE
THRESH
NBO
Q-Chem will print a warning message to advise the user if a $rem
keyword section has been detected in either .qchemrc or
preferences.
2.7 Running Q-Chem
Once installation is complete, and any necessary adjustments are made to the
user account, the user is now able to run Q-Chem. There are several ways to
invoke
Q-Chem:
- IQmol offers a fully integrated graphical interface for the Q-Chem
package and includes a sophisticated input generator with contextual help
which is able to guide you through the many Q-Chem options available. It
also provides a molecular builder, job submission and monitoring tools, and
is able to visualize molecular orbitals, densities and vibrational frequencies.
For the latest version and download/installation instructions, please
see the IQmol homepage (www.iqmol.org).
- qchem command line shell script.
The simple format for command line execution
is given below. The remainder of this manual covers the creation of input
files in detail.
- Via a third-party GUI. The two most popular ones are:
- A general web-based interface for electronic structure software, WebMO
(see www.webmo.net).
- Wavefunction's Spartan user interface on some platforms. Contact
Wavefunction (www.wavefun.com) or Q-Chem for full details of
current availability.
Using the Q-Chem command line shell script (qchem) is straightforward
provided Q-Chem has been correctly installed on your machine and the
necessary environment variables have been set in your .cshrc,
.profile, or equivalent login file. If done correctly, the necessary
changes will have been made to the $PATH variable automatically on
login so that Q-Chem can be invoked from your working directory.
The qchem shell script can be used in either of the following ways:
qchem infile outfile
qchem infile outfile savename
qchem --save infile outfile savename
where infile is the name of a suitably formatted Q-Chem input file
(detailed in Chapter 3, and the remainder of this manual), and
the outfile is the name of the file to which Q-Chem will place the job
output information.
Note:
If the outfile already exists in the working directory, it will be
overwritten. |
The use of the savename command line variable allows the saving of a few
key scratch files between runs, and is necessary when instructing Q-Chem to
read information from previous jobs. If the savename argument is not
given, Q-Chem deletes all temporary scratch files at the end of a run. The
saved files are in $QCSCRATCH/savename/, and include files with the
current molecular geometry, the current molecular orbitals and density matrix
and the current force constants (if available). The -save option in
conjunction with savename means that all temporary files are saved,
rather than just the few essential files described above. Normally this is not
required. When $QCLOCALSCR has been specified, the temporary files
will be stored there and copied to $QCSCRATCH/savename/ at the end of
normal termination.
The name of the input parameters infile, outfile and save
can be chosen at the discretion of the user (usual UNIX file and directory name
restrictions apply). It maybe helpful to use the same job name for
infile and outfile, but with varying suffixes. For example:
localhost-1> qchem water.in water.out &
invokes Q-Chem where the input is taken from water.in and the output
is placed into water.out. The & places the job into the
background so that you may continue to work in the current shell.
localhost-2> qchem water.com water.log water &
invokes Q-Chem where the input is assumed to reside in water.com, the
output is placed into water.log and the key scratch files are saved in a
directory $QCSCRATCH/water/.
Note:
A checkpoint file can be requested by setting GUI=2 in the
$rem section of the input. The checkpoint file name is determined by the
GUIFILE environment variable which by default is set to ${input}.fchk |
2.7.1 Running Q-Chem in parallel
The parallel execution of Q-Chem can be based on either OpenMP
multi-threading on a single node or MPI protocol using multiple cores
or multiple nodes. In the current release (version 4.1)
hybrid MPI+OpenMP parallelization is not supported.
This restriction will be lifted in our future releases.
As of the 4.1 release OpenMP parallelization is fully supported only by CC, EOM-CC,
and ADC methods. Experimental OpenMP code is available for parallel
SCF, DFT, and MP2 calculations. The MPI parallel capability is
available for SCF, DFT, and MP2 methods.
Table 2.1 summarizes the parallel capabilities of Q-Chem 4.1.
Method | OpenMP | MPI | |
HF energy & gradient | noa | yes |
DFT energy & gradient | noa | yes |
MP2 energy and gradient | yesb | yes |
Integral transformation | yes | no |
CCMAN & CCMAN2 methods | yes | no |
ADC methods | yes | no |
CIS | no | no |
TDDFT | no | no | |
Table 2.1: Parallel capabilities of Q-Chem 4.0.1. a Experimental code in version 4.0.1.
b To invoke an experimental OpenMP RI-MP2 code (RHF energies only),
use CORR=primp2.
To run Q-Chem calculation with OpenMP threads specify the number of threads ( nthreads )
using qchem command option -nt.
Since each thread uses one CPU core, you should not specify more threads than
the total number of available CPU cores for performance reason.
When unspecified, the number of threads defaults to 1 (serial calculation).
qchem -nt nthreads infile outfile
qchem -nt nthreads infile outfile save
qchem -save -nt nthreads infile outfile save
Similarly, to run parallel calculations with MPI use the option -np to specify
the number of MPI processes to be spawned.
qchem -np n infile outfile
qchem -np n infile outfile savename
qchem -save -np n infile outfile savename
where n is the number of processors to use. If the -np switch is not
given, Q-Chem will default to running locally on a single node.
When the additional argument savename is specified, the temporary files
for MPI-parallel Q-Chem are stored in $QCSCRATCH/savename.0 At the start
of a job, any existing files will be copied into this directory, and on
successful completion of the job, be copied to $QCSCRATCH/savename/ for
future use. If the job terminates abnormally, the files will not be copied.
To run parallel Q-Chem using a batch scheduler such as PBS, users may need to
set QCMPIRUN environment variable to point to the mpirun command used in
the system. For further details users should read the
$QC/README.Parallel file, and contact Q-Chem if any
problems are encountered (email: support@q-chem.com).
2.8 IQmol Installation Requirements
IQmol provides a fully integrated molecular builder and viewer for the
Q-Chem package. It is available for the Windows, Linux, and Mac OS X
platforms and instructions for downloading and installing the latest version
can be found at www.iqmol.org/downloads.html.
IQmol can be run as a stand-alone package which is able to open existing
Q-Chem input/output files, but it can also be used as a fully functional
front end which is able to submit and monitor Q-Chem jobs, and analyze the
resulting output. Before Q-Chem can be launched from IQmol an appropriate
server must be configured. First, ensure Q-Chem has been correctly installed
on the target machine and can be run from the command line. Second, open IQmol
and carry out the following steps:
- Select the Calculation→Edit Servers menu option. A dialog
will appear with a list of configured servers (which will initially be
empty).
- Click the Add New Server button with the `+' icon. This opens a dialog
which allows the new server to be configured. The server is the machine
which has your Q-Chem installation.
- Give the server a name (this is simply used to identify the current
server configuration and does not have to match the actual machine name)
and select if the machine is local (i.e. the same machine as IQmol is
running on) or remote.
- If there is PBS software running on the server, select the PBS `Type'
option, otherwise in most cases the Basic option should be sufficient.
Please note that the server must be Linux based and cannot be a Windows
server.
- If required, the server can be further configured using the Configure
button. Details on this can be found in the embedded IQmol help which
can be accessed via the Help→Show Help menu option.
- For non-PBS servers the number of concurrent Q-Chem jobs can be limited
using a simple inbuilt queuing system. The maximum number of jobs is set
by the Job Limit control. If the Job Limit is set to zero the queue is
disabled and any number of jobs can be run concurrently. Please note
that this limit applies to the current IQmol session and does not
account for jobs submitted by other users or by other IQmol sessions.
- The $QC environment variable should be entered in the given box.
- For remote servers the address of the machine and your user name are also
required. IQmol uses SSH2 to connect to remote machines and the most
convenient way to set this up is by using authorized keys (see
http://www.debian.org/devel/passwordlessssh for details on how these
can be set up). IQmol can then connect via the SSH Agent and will
not have to prompt you for your password. If you are not able to use
an SSH Agent, several other authentication methods are offered:
- Public Key This requires you to enter your SSH passphrase (if
any) to unlock your private key file. The passphrase is stored in
memory, not disk, so you will need to re-enter this each time
IQmol is run.
- Password Vault This allows a single password (the vault key)
to be used to unlock the passwords for all the configured servers.
The server passwords are salted with 64 random bits and encrypted
using the AES algorithm before being stored on disk. The vault key
is not stored permanently and must be re-entered each time IQmol
is run.
- Password Prompt This requires each server password to be
entered each time IQmol is run. Once the connection has been
established the memory used to hold the password is overwritten to
reduce the risk of recovery from a core dump.
Further configuration of SSH options should not be required unless your
public/private keys are stored in a non-standard location.
It is recommended that you test the server configuration to ensure everything
is working before attempting to submit a job. Multiple servers can be
configured if you have access to more than one copy of Q-Chem or have
different account configurations. In this case the default server is the first
on the list and if you want to change this you should use the arrow buttons in
the Server List dialog. The list of configured servers will be displayed when
submitting Q-Chem jobs and you will be able to select the desired server for
each job.
Please note that while Q-Chem is file-based, as of version 2.1 IQmol uses
a directory to keep the various files from a calculation.
2.9 Testing and Exploring Q-Chem
Q-Chem is shipped with a small number of test jobs which are located in the
$QC/samples directory. If you wish to test your version of
Q-Chem, run the test jobs in the samples directory and compare the output
files with the reference files (suffixed .out) of the same name.
These test jobs are not an exhaustive quality control test (a small subset of
the test suite used at Q-Chem, Inc.), but they should all run correctly on
your platform. If any fault is identified in these, or any output files created
by your version, do not hesitate to contact customer service immediately.
These jobs are also an excellent way to begin learning about Q-Chem's
text-based input and output formats in detail. In many cases you can use these
inputs as starting points for building your own input files, if you wish to
avoid reading the rest of this manual!
Please check the Q-Chem web page (http://www.q-chem.com) and the
README files in the $QC/bin directory for updated information.
Chapter 3 Q-Chem Inputs
3.1 IQmol
The easiest way to run Q-Chem is by using the IQmol interface which can be
downloaded for free from www.iqmol.org. Before submitting a Q-Chem job
from you will need to configure a Q-Chem server and details on how to do this
are given in Section 2.8 of this manual.
IQmol provides a free-form molecular builder and a comprehensive interface
for setting up the input for Q-Chem jobs. Additionally calculations can be
submitted to either the local or a remote machine and monitored using the built
in job monitor. The output can also be analyzed allowing visualization of
molecular orbitals and densities, and animation of vibrational modes and
reaction pathways. A more complete list of features can be found at
www.iqmol.org/features.html.
The IQmol program comes with a built-in help system that details how to set
up and submit Q-Chem calculations. This help can be accessed via the
Help→Show Help menu option.
3.2 General Form
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.2 and the following
sections. The user
must understand the function and format of the $molecule (Section
3.3) and $rem (Section 3.6) keywords, as these
keyword sections are where the user places the molecular geometry information
and job specification details.
The keywords $rem and $molecule are requisites of Q-Chem input
files
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 start of the input file.
Keyword | Description | |
$molecule | Contains the molecular coordinate input (input file requisite). |
$rem | Job specification and customization parameters (input file requisite). |
$end | Terminates each keyword section. |
$basis | User-defined basis set information (see Chapter 7). |
$comment | User comments for inclusion into output file. |
$ecp | User-defined effective core potentials (see Chapter 8). |
$empirical_dispersion | User-defined van der Waals parameters for DFT dispersion |
| correction. |
$external_charges | External charges and their positions. |
$force_field_params | Force field parameters for QM / MM calculations
(see Section 9.12). |
$intracule | Intracule parameters (see Chapter 10). |
$isotopes | Isotopic substitutions for vibrational calculations (see
Chapter 10). |
$localized_diabatization | Information for mixing together multiple adiabatic states into |
| diabatic states (see Chapter 10). |
$multipole_field | Details of a multipole field to apply. |
$nbo | Natural Bond Orbital package. |
$occupied | Guess orbitals to be occupied. |
$swap_occupied_virtual | Guess orbitals to be swapped. |
$opt | Constraint definitions for geometry optimizations. |
$pcm | Special parameters for polarizable continuum models (see Section |
| 10.2.3). |
$pcm_solvent | Special parameters for polarizable continuum models (see Section |
| 10.2.3). |
$plots | Generate plotting information over a grid of points (see |
| Chapter 10). |
$qm_atoms | Specify the QM region for QM / MM calculations
(see Section 9.12). |
$svp | Special parameters for the SS(V)PE module
(see Section 10.2.5). |
$svpirf | Initial guess for SS(V)PE module. |
$van_der_waals | User-defined atomic radii for Langevin dipoles solvation (see |
| Chapter 10). |
$xc_functional | Details of user-defined DFT exchange-correlation functionals. |
$cdft | Options for the constrained DFT method
(see Section 4.9). |
$efp_fragments | Specifies labels and positions of EFP fragments
(see Chapter 11). |
$efp_params | Contains user-defined parameters for effective fragments
(see Chapter 11). |
Table 3.1: Q-Chem user input section keywords. See the $QC/samples
directory with your release for specific examples of Q-Chem input using these
keywords.
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.
3.3 Molecular Coordinate Input ($molecule)
The $molecule section communicates to the program the charge, spin
multiplicity, and geometry of the molecule being considered. The molecular
coordinates input begins with two integers: the net charge and the spin
multiplicity of the molecule. The net charge must be between -50 and 50,
inclusive (0 for neutral molecules, 1 for cations, -1 for anions, etc.).
The multiplicity must be between 1 and 10, inclusive (1 for a singlet, 2 for
a doublet, 3 for a triplet, etc.). Each subsequent line of the molecular
coordinate input corresponds to a single atom in the molecule (or dummy atom),
irrespective of whether using Z-matrix internal coordinates or Cartesian
coordinates.
Note:
The coordinate system used for declaring an initial molecular geometry by
default does not affect that used in a geometry optimization procedure. See
Appendix A which discusses the OPTIMIZE package in further detail. |
Q-Chem begins all calculations by rotating and translating the user-defined
molecular geometry into a Standard Nuclear Orientation whereby the center of
nuclear charge is placed at the origin. This is a standard feature of most
quantum chemistry programs. This action can be turned off by
using SYM_IGNORE=TRUE.
Note:
SYM_IGNORE=TRUE will also turn off
determining and using of the point group symmetry. |
Note:
Q-Chem ignores commas and equal signs, and requires all distances,
positions and angles to be entered as Angstroms and degrees unless the
INPUT_BOHR $rem variable is set to TRUE, in which case all
lengths are assumed to be in bohr. |
Example 3.0 A molecule in Z-matrix coordinates. Note that the $molecule
input begins with the charge and multiplicity.
$molecule
0 1
O
H1 O distance
H2 O distance H1 theta
distance = 1.0
theta = 104.5
$end
3.3.1 Reading Molecular Coordinates From a Previous Calculation
Often users wish to perform several calculations in quick succession, whereby
the later calculations rely on results obtained from the previous ones. For
example, a geometry optimization at a low level of theory, followed by a
vibrational analysis and then, perhaps, single-point energy at a higher level.
Rather than having the user manually transfer the coordinates from the output
of the optimization to the input file of a vibrational analysis or single point
energy calculation, Q-Chem can transfer them directly from job to job.
To achieve this requires that:
- The READ variable is entered into the molecular coordinate input
- Scratch files from a previous calculation have been saved. These may be
obtained explicitly by using the save option across multiple job
runs as described below and in Chapter 2, or
implicitly when running multiple calculations in one input file,
as described later in this Chapter.
Example 3.0 Reading a geometry from a prior calculation.
localhost-1> qchem job1.in job1.out job1
localhost-2> qchem job2.in job2.out job1
In this example, the job1 scratch files are saved in a directory
$QCSCRATCH/job1 and are then made available to the job2
calculation.
Note:
The program must be instructed to read specific scratch files
by the input of job2. |
Users are also able to use the READ function for molecular coordinate input
using Q-Chem's batch job file (see later in this Chapter).
3.3.2 Reading Molecular Coordinates from Another File
Users are able to use the READ function to read molecular coordinates
from a second input file. The format for the coordinates in the second file
follows that for standard Q-Chem input, and must be delimited with the
$molecule and $end keywords.
Example 3.0 Reading molecular coordinates from another file.
filename may be given either as the full file path, or path relative to
the working directory.
$molecule
READ filename
$end
3.4 Cartesian Coordinates
Q-Chem can accept a list of N atoms and their 3N Cartesian coordinates.
The atoms can be entered either as atomic numbers or atomic symbols where each
line corresponds to a single atom. The Q-Chem format for declaring a
molecular geometry using Cartesian coordinates (in Angstroms) is:
atom x-coordinate y-coordinate z-coordinate
Note:
The geometry can by specified in bohr; to do so, set the
INPUT_BOHR $rem variable to TRUE. |
3.4.1 Examples
Example 3.0 Atomic number Cartesian coordinate input for H2O.
$molecule
0 1
8 0.000000 0.000000 -0.212195
1 1.370265 0.000000 0.848778
1 -1.370265 0.000000 0.848778
$end
Example 3.0 Atomic symbol Cartesian coordinate input for H2O.
$molecule
0 1
O 0.000000 0.000000 -0.212195
H 1.370265 0.000000 0.848778
H -1.370265 0.000000 0.848778
$end
Note:
(1) Atoms can be declared by either atomic number or symbol.
(2) Coordinates can be entered either as variables/parameters or real numbers.
(3) Variables/parameters can be declared in any order.
(4) A single blank line separates parameters from the atom declaration. |
Once all the molecular Cartesian coordinates have been entered, terminate
the molecular coordinate input with the $end keyword.
3.5 Z-matrix Coordinates
Z-matrix notation is one of the most common molecular coordinate input forms.
The Z-matrix defines the positions of atoms relative to previously defined
atoms using a length, an angle and a dihedral angle. Again, note that all bond
lengths and angles must be in Angstroms and degrees.
Note:
As with the Cartesian coordinate input method, Q-Chem begins a
calculation by taking the user-defined coordinates and translating and
rotating them into a Standard Nuclear Orientation. |
The first three atom entries of a Z-matrix are different from the subsequent
entries. The first Z-matrix line declares a single atom. The second line of
the Z-matrix input declares a second atom, refers to the first atom and gives
the distance between them. The third line declares the third atom, refers to
either the first or second atom, gives the distance between them, refers to the
remaining atom and gives the angle between them. All subsequent entries begin
with an atom declaration, a reference atom and a distance, a second reference
atom and an angle, a third reference atom and a dihedral angle. This can be
summarized as:
- First atom.
- Second atom, reference atom, distance.
- Third atom, reference atom A, distance between A and the third atom,
reference atom B, angle defined by atoms A, B and the third atom.
- Fourth atom, reference atom A, distance, reference atom B, angle,
reference atom C, dihedral angle (A, B, C and the fourth atom).
- All subsequent atoms follow the same basic form as (4)
Example 3.0 Z-matrix for hydrogen peroxide
O1
O2 O1 oo
H1 O1 ho O2 hoo
H2 O2 ho O1 hoo H1 hooh
Line 1 declares an oxygen atom (O1). Line 2 declares the second oxygen atom
(O2), followed by a reference to the first atom (O1) and a distance between
them denoted oo. Line 3 declares the first hydrogen atom (H1), indicates
it is separated from the first oxygen atom (O1) by a distance HO and makes an
angle with the second oxygen atom (O2) of hoo. Line 4 declares the
fourth atom and the second hydrogen atom (H2), indicates it is separated from
the second oxygen atom (O2) by a distance HO and makes an angle with the first
oxygen atom (O1) of hoo and makes a dihedral angle with the first
hydrogen atom (H1) of hooh.
Some further points to note are:
- Atoms can be declared by either atomic number or symbol.
- If declared by atomic number, connectivity needs to be indicated
by Z-matrix line number.
- If declared by atomic symbol either number similar atoms (e.g.,
H1, H2, O1, O2 etc.) and refer connectivity using this symbol, or
indicate connectivity by the line number of the referred atom.
- Bond lengths and angles can be entered either as variables/parameters or
real numbers.
- Variables/parameters can be declared in any order.
- A single blank line separates parameters from the Z-matrix.
All the following examples are equivalent in the information forwarded to the
Q-Chem program.
Example 3.0 Using parameters to define bond lengths and angles, and
using numbered symbols to define atoms and indicate connectivity.
$molecule
0 1
O1
O2 O1 oo
H1 O1 ho O2 hoo
H2 O2 ho O1 hoo H1 hooh
oo = 1.5
oh = 1.0
hoo = 120.0
hooh = 180.0
$end
Example 3.0 Not using parameters to define bond lengths and angles,
and using numbered symbols to define atoms and indicate connectivity.
$molecule
0 1
O1
O2 O1 1.5
H1 O1 1.0 O2 120.0
H2 O2 1.0 O1 120.0 H1 180.0
$end
Example 3.0 Using parameters to define bond lengths and angles, and
referring to atom connectivities by line number.
$molecule
0 1
8
8 1 oo
1 1 ho 2 hoo
1 2 ho 1 hoo 3 hooh
oo = 1.5
oh = 1.0
hoo = 120.0
hooh = 180.0
$end
Example 3.0 Referring to atom connectivities by line number, and
entering bond length and angles directly.
$molecule
0 1
8
8 1 1.5
1 1 1.0 2 120.0
1 2 1.0 1 120.0 3 180.0
$end
Obviously, a number of the formats outlined above are less appealing to the
eye and more difficult for us to interpret than the others, but each
communicates exactly the same Z-matrix to the Q-Chem program.
3.5.1 Dummy Atoms
Dummy atoms are indicated by the identifier X and followed, if necessary, by
an integer. (e.g., X1, X2. Dummy atoms are often useful for molecules
where symmetry axes and planes are not centered on a real atom, and have also
been useful in the past for choosing variables for structure optimization and
introducing symmetry constraints.
Note:
Dummy atoms play no role in the quantum mechanical calculation, and are
used merely for convenience in specifying other atomic positions or geometric
variables. |
3.6 Job Specification: The $rem Array Concept
The $rem array is the means by which users convey to Q-Chem the type of
calculation they wish to perform (level of theory, basis set, convergence
criteria, etc.). The keyword $rem signals the beginning of the overall job
specification. Within the $rem section the user inserts $rem
variables (one per line) which define the essential details of the
calculation. The format for entering $rem variables within the $rem keyword
section of the input is shown in the following example shown in the following
example:
Example 3.0 Format for declaring $rem variables in the $rem keyword
section of the Q-Chem input file. Note, Q-Chem only reads the first two
arguments on each line of $rem. All other text is ignored and can be used for
placing short user comments.
REM_VARIABLE VALUE [comment]
The $rem array stores all details required to perform the calculation, and
details of output requirements. It provides the flexibility to customize a
calculation to specific user requirements. If a default $rem variable setting
is indicated in this manual, the user does not have to declare the variable in
order for the default to be initiated (e.g., the default JOBTYPE is a
single point energy, SP). Thus, to perform a single point energy
calculation, the user does not need to set the $rem variable
JOBTYPE to SP. However, to perform an optimization, for
example, it is necessary to override the program default by setting
JOBTYPE to OPT.
A number of the $rem variables have been set aside for internal program use,
as they represent variables automatically determined by Q-Chem (e.g., the
number of atoms, the number of basis functions). These need not concern the
user.
User communication to the internal program $rem array comes in two general
forms: (1) long term, machine-specific customization via the
.qchemrc and preferences files (Section 2.6)
and, (2) the Q-Chem input deck. There are many defaults already set within
the Q-Chem program many of which can be overridden by the user. Checks are
made to ensure that the user specifications are permissible (e.g. integral
accuracy is confined to 10−12 and adjusted, if necessary. If adjustment is
not possible, an error message is returned. Details of these checks and
defaults will be given as they arise.
The user need not know all elements, options and details of the $rem array in
order to fully exploit the Q-Chem program. Many of the necessary elements and
options are determined automatically by the program, or the optimized default
parameters, supplied according to the user's basic requirements, available disk
and memory, and the operating system and platform.
3.7 $rem Array Format in Q-Chem Input
All data between the $rem keyword and the next appearance of $end is
assumed to be user $rem array input. On a single line for each $rem
variable, the user declares the $rem variable, followed by a blank space (tab
stop inclusive) and then the $rem variable option. It is recommended that a
comment be placed following a space after the $rem variable option. $rem
variables are case insensitive and a full listing is supplied in Appendix C.
Depending on the particular $rem variable, $rem options are entered either
as a case-insensitive keyword, an integer value or logical identifier
(true/false). The format for describing each $rem variable in this manual is
as follows:
REM_VARIABLE
A short description of what the variable controls. |
TYPE:
The type of variable, i.e. either INTEGER, LOGICAL or STRING |
DEFAULT:
The default value, if any. |
OPTIONS:
A list of the options available to the user. |
RECOMMENDATION:
A quick recommendation, where appropriate. |
|
Example 3.0 General format of the $rem section of the text input file.
$rem
REM_VARIABLE value [ user_comment ]
REM_VARIABLE value [ user_comment ]
...
$end
Note:
(1) Erroneous lines will terminate the calculation.
(2) Tab stops can be used to format input.
(3) A line prefixed with an exclamation mark `!' is treated as a comment and
will be ignored by the program. |
3.8 Minimum $rem Array Requirements
Although Q-Chem provides defaults for most $rem variables, the user will
always have to stipulate a few others. For example, in a single point energy
calculation, the minimum requirements will be BASIS (defining the
basis set), EXCHANGE (defining the level of theory to treat exchange)
and CORRELATION (defining the level of theory to treat correlation, if
required). If a wavefunction-based correlation treatment (such as
MP2) is used, HF is taken as the default for exchange.
Example 3.0 Example of minimum $rem requirements to run an MP2/6-31G*
energy calculation.
$rem
BASIS 6-31G* Just a small basis set
CORRELATION mp2 MP2 energy
$end
3.9 User-Defined Basis Sets ($basis and $aux_basis)
The $rem variable BASIS allows the user to indicate that
the basis set is being user-defined. The user-defined basis set is entered in
the $basis section of the input. For further details of entering a
user-defined basis set, see Chapter 7. Similarly, a user-defined
auxiliary basis set may be entered in a $aux_basis section of the input if
the $rem list includes AUX_BASIS = GEN.
3.10 Comments ($comment)
Users are able to add comments to the input file outside keyword input
sections, which will be ignored by the program. This can be useful as
reminders to the user, or perhaps, when teaching another user to set up inputs.
Comments can also be provided in a $comment block, although currently the
entire input deck is copied to the output file, rendering this redundant.
3.11 User-Defined Pseudopotentials ($ecp)
The $rem variable ECP allows the user to indicate that
pseudopotentials (effective core potentials) are being user-defined. The
user-defined effective core potential is entered in the $ecp section of the
input. For further details, see Chapter 8.
3.12 User-defined Parameters for DFT Dispersion Correction ($empirical_dispersion)
If a user wants to change from the default values recommended by Grimme,
the user-defined dispersion parameters can be entered in the
$empirical_dispersion section of the input. For further details, see Section 4.3.6.
3.13 Addition of External Charges ($external_charges)
If the $external_charges keyword is present, Q-Chem scans for
a set of external charges to be incorporated into a calculation. The format for
a set of external charges is the Cartesian coordinates, followed by the charge
size, one charge per line. Charges are in atomic units, and coordinates are in
angstroms (unless atomic units are specifically selected, see INPUT_BOHR).
The external charges are rotated with the molecule into the standard nuclear orientation.
Example 3.0 General format for incorporating a set of external charges.
$external_charges
x-coord1 y-coord1 z-coord1 charge1
x-coord2 y-coord2 z-coord2 charge2
x-coord3 y-coord3 z-coord3 charge3
$end
In addition, the user can request to add a charged cage around the molecule
by using ADD_CHARGED_CAGE keyword
The cage parameters are controlled by
CAGE_RADIUS, CAGE_POINTS, and CAGE_CHARGE.
More details are given in Section 6.6.5.
3.14 Intracules ($intracule)
The $intracule section allows the user to enter options to customize the
calculation of molecular intracules. The INTRACULE $rem variable
must also be set to TRUE before this section takes effect. For further
details see Section 10.4.
3.15 Isotopic Substitutions ($isotopes)
By default Q-Chem uses atomic masses that correspond to the most abundant
naturally occurring isotopes. Alternative masses for any or all of the atoms in
a molecule can be specified using the $isotopes keyword. The
ISOTOPES $rem variable must be set to TRUE for this section to take
effect. See Section 10.6.6 for details.
3.16 Applying a Multipole Field ($multipole_field)
Q-Chem has the capability to apply a multipole field to the molecule under
investigation. Q-Chem scans the input deck for the $multipole_field keyword,
and reads each line (up to the terminator keyword, $end) as a single
component of the applied field.
Example 3.0 General format for imposing a multipole field.
$multipole_field
field_component_1 value_1
field_component_2 value_2
$end
The field_component is simply stipulated using the Cartesian
representation e.g. X, Y, Z, (dipole), XX, XY, YY (quadrupole) XXX,
etc., and the value or size of the imposed field is in atomic units.
3.17 Natural Bond Orbital Package ($nbo)
The default action in Q-Chem is not to run the NBO package. To turn the NBO
package on, set the $rem variable NBO to ON. To access
further features of NBO, place standard NBO package parameters into a keyword
section in the input file headed with the $nbo keyword. Terminate the section
with the termination string $end.
3.18 User-Defined Occupied Guess Orbitals ($occupied and $swap_occupied_virtual)
It is sometimes useful for the occupied guess orbitals to be other than the
lowest Nα (or Nβ) orbitals. Q-Chem allows the occupied
guess orbitals to be defined using the $occupied keyword. The user defines
occupied guess orbitals by listing the alpha orbitals to be occupied on the
first line, and beta on the second. Alternatively, orbital choice can be controlled
by the $swap_occupied_virtualkeyword. See Section 4.5.4.
3.19 Geometry Optimization with General Constraints ($opt)
When a user defines the JOBTYPE to be a molecular geometry
optimization, Q-Chem scans the input deck for the $opt keyword. Distance,
angle, dihedral and out-of-plane bend constraints imposed on any atom declared
by the user in this section, are then imposed on the optimization procedure.
See Chapter 9 for details.
3.20 Polarizable Continuum Solvation Models ($pcm)
The $pcm section is available to provide special parameters for polarizable
continuum models (PCMs). These include the C-PCM and IEF-PCM models, which
share a common set of parameters. Details are provided in Section 10.2.2.
3.21 Effective Fragment Potential calculations ($efp_fragments and
$efp_params)
These keywords are used to specify positions and parameters for effective fragments
in EFP calculations. Details are provided in Chapter 11.
3.22 SS(V)PE Solvation Modeling ($svp and $svpirf)
The $svp section is available to specify special
parameters to the solvation module such as cavity grid parameters and
modifications to the numerical integration procedure. The $svpirf section
allows the user to specify an initial guess for the solution of the cavity
charges. As discussed in section 10.2.5, the $svp and $svpirf
input sections are used to specify parameters for the iso-density implementation
of SS(V)PE. An alternative implementation of the SS(V)PE mode, based on a more
empirical definition of the solute cavity, is available within the PCM code
(Section 10.2.2).
3.23 Orbitals, Densities and ESPs on a Mesh ($plots)
The $plots part of the input permits the evaluation of molecular orbitals,
densities, electrostatic potentials, transition densities, electron attachment
and detachment densities on a user-defined mesh of points. For more details,
see Section 10.9.
3.24 User-Defined van der Waals Radii ($van_der_waals)
The $van_der_waals section of the input enables the user to customize the Van der Waals
radii that are important parameters in the Langevin dipoles solvation model.
For more details, see Section 10.2.
3.25 User-Defined Exchange-Correlation Density Functionals ($xc_functional)
The EXCHANGE and CORRELATION $rem variables
(Chapter 4) allow the user to indicate that the exchange-correlation
density functional will be user-defined. The user defined exchange-correlation
is to be entered in the $xc_functional part of the input. The format is:
$xc_functional
X exchange_symbol coefficient
X exchange_symbol coefficient
...
C correlation_symbol coefficient
C correlation_symbol coefficient
...
K coefficient
$end
Note:
Coefficients are real numbers. |
3.26 Multiple Jobs in a Single File: Q-Chem Batch Job Files
It is sometimes useful to place a series of jobs into a single ASCII file.
This feature is supported by Q-Chem and is invoked by separating jobs with
the string @@@ on a single line. All output is subsequently appended
to the same output file for each job within the file.
Note:
The first job will overwrite any existing output file of the same name in
the working directory. Restarting the job will also overwrite any existing
file. |
In general, multiple jobs are placed in a single file for two reasons:
- To use information from a prior job in a later job
- To keep projects together in a single file
The @@@ feature allows these objectives to be met, but the following points
should be noted:
- Q-Chem reads all the jobs from the input file on initiation and stores
them. The user cannot make changes to the details of jobs which have not
been run post command line initiation.
- If any single job fails, Q-Chem proceeds to the next job in the batch
file.
- No check is made to ensure that dependencies are satisfied, or that
information is consistent (e.g. an optimization job followed by a
frequency job; reading in the new geometry from the optimization for the
frequency). No check is made to ensure that the optimization was
successful. Similarly, it is assumed that both jobs use the same basis
set when reading in MO coefficients from a previous job.
- Scratch files are saved between multi-job / single files runs (i.e.,
using a batch file with @@@ separators), but are deleted on
completion unless a third qchem command line argument is
supplied (see Chapter 2).
Using batch files with the @@@ separator is clearly most useful for cases
relating to point 1 above. The alternative would be to cut and paste output,
and/or use a third command line argument to save scratch files between separate
runs.
For example, the following input file will optimize the geometry of H2 at
HF/6-31G*, calculate vibrational frequencies at HF/6-31G* using the optimized
geometry and the self-consistent MO coefficients from the optimization and,
finally, perform a single point energy using the optimized geometry at the
MP2/6-311G(d,p) level of theory. Each job will use the same scratch area,
reading files from previous runs as instructed.
Example 3.0 Example of using information from previous jobs in a single
input file.
$comment
Optimize H-H at HF/6-31G*
$end
$molecule
0 1
H
H 1 r
r = 1.1
$end
$rem
JOBTYPE opt Optimize the bond length
EXCHANGE hf
CORRELATION none
BASIS 6-31G*
$end
@@@
$comment
Now calculate the frequency of H-H at the same level of theory.
$end
$molecule
read
$end
$rem
JOBTYPE freq Calculate vibrational frequency
EXCHANGE hf
CORRELATION none
BASIS 6-31G*
SCF_GUESS read Read the MOs from disk
$end
@@@
$comment
Now a single point calculation at at MP2/6-311G(d,p)//HF/6-31G*
$end
$molecule
read
$end
$rem
EXCHANGE hf
CORRELATION mp2
BASIS 6-311G(d,p)
$end
Note:
(1) Output is concatenated into the same output file.
(2) Only two arguments are necessarily supplied to the command line interface. |
3.27 Q-Chem Output File
The Q-Chem output file is the file to which details of the job invoked by
the user are printed. The type of information printed to this files depends
on the type of job (single point energy, geometry optimization etc.) and the
$rem variable print levels. The general and default form is as follows:
- Q-Chem citation
- User input
- Molecular geometry in Cartesian coordinates
- Molecular point group, nuclear repulsion energy, number of alpha and beta electrons
- Basis set information (number of functions, shells and function pairs)
- SCF details (method, guess, optimization procedure)
- SCF iterations (for each iteration, energy and DIIS error is reported)
- {depends on job type}
- Molecular orbital symmetries
- Mulliken population analysis
- Cartesian multipole moments
- Job completion
Note:
Q-Chem overwrites any existing output files in the working directory
when it is invoked with an existing file as the output file parameter. |
3.28 Q-Chem Scratch Files
The directory set by the environment variable $QCSCRATCH is the
location Q-Chem places scratch files it creates on execution. Users may wish
to use the information created for subsequent calculations. See Chapter 2
for information on saving files.
The 32-bit architecture on some platforms means there can be problems
associated with files larger than about 2 Gb. Q-Chem handles this issue by
splitting scratch files that are larger than this into several files, each of
which is smaller than the 2 Gb limit. The maximum number of these files (which
in turn limits the maximum total file size) is determined by the following
$rem variable:
MAX_SUB_FILE_NUM
|
Sets the maximum number of sub files allowed. |
TYPE:
DEFAULT:
16 Corresponding to a total of 32Gb for a given file. |
OPTIONS:
n | User-defined number of gigabytes. |
RECOMMENDATION:
Leave as default, or adjust according to your system limits.
|
Chapter 4 Self-Consistent Field Ground State Methods
4.1 Introduction
4.1.1 Overview of Chapter
Theoretical chemical models [6] involve two principal
approximations. One must specify the type of atomic orbital basis set used (see
Chapters 7 and 8), and one must specify the way in
which the instantaneous interactions (or correlations) between electrons are
treated. Self-consistent field (SCF) methods are the simplest and most widely
used electron correlation treatments, and contain as special cases all
Kohn-Sham density functional methods and the Hartree-Fock method. This
Chapter summarizes Q-Chem's SCF capabilities, while the next Chapter
discusses more complex (and computationally expensive!) wavefunction-based
methods for describing electron correlation. If you are new to quantum
chemistry, we recommend that you also purchase an introductory textbook on the
physical content and practical performance of standard
methods [6,[7,[8].
This Chapter is organized so that the earlier sections provide a mixture of
basic theoretical background, and a description of the minimum number of
program input options that must be specified to run SCF jobs. Specifically,
this includes the sections on:
- Hartree-Fock theory
- Density functional theory. Note that all basic input options described in
the Hartree-Fock also apply to density functional calculations.
Later sections introduce more specialized options that can be consulted as
needed:
- Large molecules and linear scaling methods. A short overview of the ideas
behind methods for very large systems and the options that control them.
- Initial guesses for SCF calculations. Changing the default initial guess
is sometimes important for SCF calculations that do not converge.
- Converging the SCF calculation. This section describes the iterative
methods available to control SCF calculations in Q-Chem. Altering the
standard options is essential for SCF jobs that have failed to converge
with the default options.
- Unconventional SCF calculations. Some nonstandard SCF methods
with novel physical and mathematical features. Explore further if you are
interested!
- SCF Metadynamics. This can be used to locate multiple solutions to the SCF
equations and help check that your solution is the lowest minimum.
4.1.2 Theoretical Background
In 1926, Schrödinger [9] combined the wave nature of the
electron with the statistical knowledge of the electron viz.
Heisenberg's Uncertainty Principle [10] to formulate an
eigenvalue equation for the total energy of a molecular system. If we focus on
stationary states and ignore the effects of relativity, we have the
time-independent, non-relativistic equation
where the coordinates R and r refer to nuclei and electron position
vectors respectively and H is the Hamiltonian operator. In atomic units,
H=− |
1
2
|
|
N ∑
i=1
|
∇i2 − |
1
2
|
|
M ∑
A=1
|
|
1
MA
|
∇A2 − |
N ∑
i=1
|
|
M ∑
A=1
|
|
ZA
riA
|
+ |
N ∑
i=1
|
|
N ∑
j > i
|
|
1
rij
|
+ |
M ∑
A=1
|
|
M ∑
B > A
|
|
ZA ZB
RAB
|
|
| (4.2) |
where ∇2 is the Laplacian operator,
∇2 ≡ |
∂2
∂x2
|
+ |
∂2
∂y2
|
+ |
∂2
∂z2
|
|
| (4.3) |
In Eq. ,
Z is the nuclear charge, MA is the ratio of the mass of nucleus A to
the mass of an electron, RAB = |RA − RB| is the distance between
the Ath and Bth nucleus, rij = |ri − rj|
is the distance between the ith and jth electrons, riA = | ri − RA| is the distance between the ith electron and the Ath
nucleus, M is the number of nuclei and N is the number of
electrons. E is an eigenvalue of H, equal to the total energy, and the wave
function Ψ, is an eigenfunction of H.
Separating the motions of the electrons from that of the nuclei, an idea
originally due to Born and Oppenheimer [11], yields the electronic
Hamiltonian operator:
Helec = − |
1
2
|
|
N ∑
i=1
|
∇i2 − |
N ∑
i=1
|
|
M ∑
A=1
|
|
ZA
riA
|
+ |
N ∑
i=1
|
|
N ∑
j > i
|
|
1
rij
|
|
| (4.4) |
The solution of the corresponding electronic Schrödinger equation,
Helec Ψelec = Eelec Ψelec |
| (4.5) |
gives the total electronic energy, Eelec, and electronic wave
function, Ψelec, which describes the motion of the electrons for a
fixed nuclear position. The total energy is obtained by simply adding the
nuclear-nuclear repulsion energy [the fifth term in Eq. (4.2)] to the
total electronic energy:
Solving the eigenvalue problem in Eq. (4.5) yields a set of eigenfunctions
(Ψ0, Ψ1, Ψ2 …) with corresponding eigenvalues
(E0, E1, E2…) where E0 ≤ E1 ≤ E2 ≤ ….
Our interest lies in determining the lowest eigenvalue and associated
eigenfunction which correspond to the ground state energy and wavefunction
of the molecule. However, solving Eq. (4.5) for other than the most trivial
systems is extremely difficult and the best we can do in practice is to find
approximate solutions.
The first approximation used to solve Eq. (4.5) is that electrons move
independently within molecular orbitals (MO), each of which describes the
probability distribution of a single electron. Each MO is determined by
considering the electron as moving within an average field of all the other
electrons. Ensuring that the wavefunction is antisymmetric upon electron
interchange, yields the well known Slater-determinant wavefunction [12,[13],
where χi, a spin orbital, is the product of a molecular orbital ψi
and a spin function (α or β).
One obtains the optimum set of MOs by variationally minimizing the energy in
what is called a "self-consistent field" or SCF approximation to the
many-electron problem. The archetypal SCF method is the Hartree-Fock
approximation, but these SCF methods also include Kohn-Sham Density Functional
Theories (see Section 4.3). All SCF methods lead to equations of the form
where the Fock operator f(i) can be written
Here xi are spin and spatial coordinates of the ith electron,
χ are the spin orbitals and υeff is the effective potential
"seen" by the ith electron which depends on the spin orbitals of the
other electrons. The nature of the effective potential υeff depends on
the SCF methodology and will be elaborated on in further sections.
The second approximation usually introduced when solving Eq. (4.5), is the
introduction of an Atomic Orbital (AO) basis. AOs (ϕμ) are usually
combined linearly to approximate the true MOs. There are many standardized,
atom-centered basis sets and details of these are discussed in Chapter 7.
After eliminating the spin components in Eq. (4.8) and introducing a finite basis,
Eq. (4.8) reduces to the Roothaan-Hall matrix equation,
where F is the Fock matrix, C is a square matrix of molecular
orbital coefficients, S is the overlap matrix with elements
and ε is a diagonal matrix of the orbital energies.
Generalizing to an unrestricted formalism by introducing separate spatial
orbitals for α and β spin in Eq. (4.7) yields the
Pople-Nesbet [14] equations
Solving Eq. (4.11) or Eq. (4.13) yields the restricted or unrestricted
finite basis Hartree-Fock approximation. This approximation inherently
neglects the instantaneous electron-electron correlations which are averaged
out by the SCF procedure, and while the chemistry resulting from HF
calculations often offers valuable qualitative insight, quantitative energetics
are often poor. In principle, the DFT SCF methodologies are able to capture
all the correlation energy (the difference in energy between the HF energy and
the true energy). In practice, the best currently available density functionals
perform well, but not perfectly and conventional HF-based approaches to
calculating the correlation energy are still often required. They are discussed
separately in the following Chapter.
In self-consistent field methods, an initial guess is calculated for the MOs
and, from this, an average field seen by each electron can be calculated. A new
set of MOs can be obtained by solving the Roothaan-Hall or Pople-Nesbet
eigenvalue equations. This procedure is repeated until the new MOs differ
negligibly from those of the previous iteration.
Because they often yield acceptably accurate chemical predictions at a
reasonable computational cost, self-consistent field methods are the corner
stone of most quantum chemical programs and calculations. The formal costs of
many SCF algorithms is O(N4), that is, they grow with the fourth power of
the size, N, of the system. This is slower than the growth of the cheapest
conventional correlated methods but recent work by Q-Chem, Inc. and its
collaborators has dramatically reduced it to O(N), an improvement that now
allows SCF methods to be applied to molecules previously considered beyond the
scope of ab initio treatment.
In order to carry out an SCF calculation using Q-Chem, three $rem variables
need to be set:
BASIS | to specify the basis set (see Chapter 7). |
EXCHANGE | method for treating Exchange. |
CORRELATION | method for treating Correlation (defaults to NONE)
|
Types of ground state energy calculations currently available in Q-Chem
are summarized in Table 4.1.
Calculation | $rem Variable JOBTYPE | |
Single point energy (default) | SINGLE_POINT, SP |
Force | FORCE |
Equilibrium Structure Search | OPTIMIZATION, OPT |
Transition Structure Search | TS |
Intrinsic reaction pathway | RPATH |
Frequency | FREQUENCY, FREQ |
NMR Chemical Shift | NMR |
Table 4.1: The type of calculation to be run by Q-Chem is controlled by the
$rem variable JOBTYPE.
4.2 Hartree-Fock Calculations
4.2.1 The Hartree-Fock Equations
As with much of the theory underlying modern quantum chemistry, the
Hartree-Fock approximation was developed shortly after publication of the
Schrödinger equation, but remained a qualitative theory until the advent of
the computer. Although the HF approximation tends to yield qualitative chemical
accuracy, rather than quantitative information, and is generally inferior to
many of the DFT approaches available, it remains as a useful tool in the
quantum chemist's toolkit. In particular, for organic chemistry, HF predictions
of molecular structure are very useful.
Consider once more the Roothaan-Hall equations, Eq. (4.11), or the
Pople-Nesbet equations, Eq. (4.13), which can be traced back to the
integro-differential Eq. (4.8) in which the effective potential
υeff depends on the SCF methodology. In a restricted HF (RHF)
formalism, the effective potential can be written as
υeff= |
N/2 ∑
a
|
[ 2Ja (1)−Ka (1) ] − |
M ∑
A=1
|
|
ZA
r1A
|
|
| (4.14) |
where the Coulomb and exchange operators are defined as
Ja (1)= | ⌠ ⌡
|
ψa∗ (2) |
1
r12
|
ψa (2)dr 2 |
| (4.15) |
and
Ka (1)ψi (1)= | ⎡ ⎣
| ⌠ ⌡
|
ψa∗ (2) |
1
r12
|
ψi (2)dr 2 | ⎤ ⎦
|
ψa (1) |
| (4.16) |
respectively. By introducing an atomic orbital basis, we obtain Fock matrix elements
where the core Hamiltonian matrix elements
consist of kinetic energy elements
Tμν = | ⌠ ⌡
|
ϕμ (r) | ⎡ ⎣
|
− |
1
2
|
∇2 | ⎤ ⎦
|
ϕν (r)dr |
| (4.19) |
and nuclear attraction elements
Vμν = | ⌠ ⌡
|
ϕμ (r) | ⎡ ⎣
|
− |
∑
A
|
|
ZA
| R A −r |
| ⎤ ⎦
|
ϕν (r)dr |
| (4.20) |
The Coulomb and Exchange elements are given by
and
Kμν = |
1
2
|
|
∑
λσ
|
Pλσ ( μλ|νσ ) |
| (4.22) |
respectively, where the density matrix elements are
and the two electron integrals are
( μν|λσ ) = | ⌠ ⌡
|
| ⌠ ⌡
|
ϕμ (r 1 )ϕν (r 1 ) | ⎡ ⎣
|
1
r12
| ⎤ ⎦
|
ϕλ (r 2 )ϕσ (r2 )dr 1 dr 2 |
| (4.24) |
Note:
The formation and utilization of two-electron integrals is a topic
central to the overall performance of SCF methodologies. The performance of the
SCF methods in new quantum chemistry software programs can be quickly estimated
simply by considering the quality of their atomic orbital integrals packages.
See Appendix B for details of Q-Chem's AOINTS package. |
Substituting the matrix element in Eq. (4.17) back into the Roothaan-Hall
equations, Eq. (4.11), and iterating until self-consistency is achieved will
yield the Restricted Hartree-Fock (RHF) energy and wavefunction.
Alternatively, one could have adopted the unrestricted form of the wavefunction
by defining an alpha and beta density matrix:
The total electron density matrix PT is simply the sum of the alpha
and beta density matrices. The unrestricted alpha Fock matrix,
Fμνα = Hμνcore +Jμν −Kμνα |
| (4.26) |
differs from the restricted one only in the exchange contributions where the
alpha exchange matrix elements are given by
Kμνα = |
N ∑
λ
|
|
N ∑
σ
|
Pλσα ( μλ|νσ ) |
| (4.27) |
4.2.2 Wavefunction Stability Analysis
At convergence, the SCF energy will be at a stationary point with respect to
changes in the MO coefficients. However, this stationary point is not
guaranteed to be an energy minimum, and in cases where it is not, the
wavefunction is said to be unstable. Even if the wavefunction is at a minimum,
this minimum may be an artifact of the constraints placed on the form of the
wavefunction. For example, an unrestricted calculation will usually give a
lower energy than the corresponding restricted calculation, and this can give
rise to a RHF→UHF instability.
To understand what instabilities can occur, it is useful to consider the
most general form possible for the spin orbitals:
χi (r,ζ)=ψiα (r)α(ζ)+ψiβ (r)β(ζ) |
| (4.28) |
Here, the ψ's are complex functions of the Cartesian coordinates
r, and α and β are spin eigenfunctions of the
spin-variable ζ. The first constraint that is almost universally
applied is to assume the spin orbitals depend only on one or other of the
spin-functions α or β. Thus, the spin-functions take the form
χi(r,ζ)=ψiα(r)α(ζ) or χi(r,ζ)=ψiβ (r)β(ζ) |
| (4.29) |
where the ψ's are still complex functions. Most SCF packages,
including Q-Chem's, deal only with real functions, and this places an
additional constraint on the form of the wavefunction. If there exists a
complex solution to the SCF equations that has a lower energy, the
wavefunction will exhibit either a RHF → CRHF or a UHF → CUHF
instability. The final constraint that is commonly placed on the
spin-functions is that ψiα = ψiβ, i.e., the spatial
parts of the spin-up and spin-down orbitals are the same. This gives the
familiar restricted formalism and can lead to a RHF→ UHF instability as
mentioned above. Further details about the possible instabilities can be
found in Ref. .
Wavefunction instabilities can arise for several reasons, but frequently occur if
- There exists a singlet diradical at a lower energy then the closed-shell
singlet state.
- There exists a triplet state at a lower energy than the lowest singlet
state.
- There are multiple solutions to the SCF equations, and the calculation
has not found the lowest energy solution.
If a wavefunction exhibits an instability, the seriousness of it can be judged
from the magnitude of the negative eigenvalues of the stability matrices. These
matrices and eigenvalues are computed by Q-Chem's Stability Analysis package,
which was implemented by Dr Yihan Shao. The package is invoked by setting the
STABILITY_ANALYSIS $rem variable is set to TRUE. In order
to compute these stability matrices Q-Chem must first perform a CIS
calculation. This will be performed automatically, and does not require any
further input from the user. By default Q-Chem computes only the lowest
eigenvalue of the stability matrix. This is usually sufficient to determine if
there is a negative eigenvalue, and therefore an instability. Users wishing to
calculate additional eigenvalues can do so by setting the
CIS_N_ROOTS $rem variable to a number larger than 1.
Q-Chem's Stability Analysis package also seeks to correct internal
instabilities (RHF→RHF or UHF→UHF). Then, if such an instability is
detected, Q-Chem automatically performs a unitary transformation of the
molecular orbitals following the directions of the lowest eigenvector, and
writes a new set of MOs to disk. One can read in these MOs as an initial guess
in a second SCF calculation (set the SCF_GUESS $rem variable to
READ), it might also be desirable to set the SCF_ALGORITHM
to GDM. In cases where the lowest-energy SCF solution breaks the
molecular point-group symmetry, the SYM_IGNORE $rem should be set
to TRUE.
Note:
The stability analysis package can be used to analyze both DFT and HF
wavefunctions. |
4.2.3 Basic Hartree-Fock Job Control
In brief, Q-Chem supports the three main variants of the Hartree-Fock
method. They are:
- Restricted Hartree-Fock (RHF) for closed shell molecules. It is typically
appropriate for closed shell molecules at their equilibrium geometry,
where electrons occupy orbitals in pairs.
- Unrestricted Hartree-Fock (UHF) for open shell molecules. Appropriate for
radicals with an odd number of electrons, and also for molecules with
even numbers of electrons where not all electrons are paired (for example
stretched bonds and diradicaloids).
- Restricted open shell Hartree-Fock (ROHF) for open shell molecules, where
the alpha and beta orbitals are constrained to be identical.
Only two $rem variables are required in order to run Hartree-Fock (HF)
calculations:
-
EXCHANGE must be set to HF.
- A valid keyword for BASIS must be specified (see Chapter
7).
In slightly more detail, here is a list of basic $rem variables associated
with running Hartree-Fock calculations. See Chapter 7 for
further detail on basis sets available and Chapter 8 for
specifying effective core potentials.
JOBTYPE
Specifies the type of calculation. |
TYPE:
DEFAULT:
OPTIONS:
SP | Single point energy. |
OPT | Geometry Minimization. |
TS | Transition Structure Search. |
FREQ | Frequency Calculation. |
FORCE | Analytical Force calculation. |
RPATH | Intrinsic Reaction Coordinate calculation. |
NMR | NMR chemical shift calculation. |
BSSE | BSSE calculation. |
EDA | Energy decomposition analysis. |
RECOMMENDATION:
|
| EXCHANGE
Specifies the exchange level of theory. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Use HF for Hartree-Fock calculations. |
|
|
|
BASIS
Specifies the basis sets to be used. |
TYPE:
DEFAULT:
OPTIONS:
General, Gen | User defined ($basis keyword required). |
Symbol | Use standard basis sets as per Chapter 7. |
Mixed | Use a mixture of basis sets (see Chapter 7). |
RECOMMENDATION:
Consult literature and reviews to aid your selection. |
|
| PRINT_ORBITALS
Prints orbital coefficients with atom labels in analysis part of output. |
TYPE:
DEFAULT:
OPTIONS:
FALSE | Do not print any orbitals. |
TRUE | Prints occupied orbitals plus 5 virtuals. |
NVIRT | Number of virtuals to print. |
RECOMMENDATION:
Use TRUE unless more virtuals are desired. |
|
|
|
THRESH
Cutoff for neglect of two electron integrals. 10−THRESH (THRESH
≤ 14). |
TYPE:
DEFAULT:
8 | For single point energies. |
10 | For optimizations and frequency calculations. |
14 | For coupled-cluster calculations. |
OPTIONS:
n | for a threshold of 10−n. |
RECOMMENDATION:
Should be at least three greater than SCF_CONVERGENCE. Increase for
more significant figures, at greater computational cost. |
|
| SCF_CONVERGENCE
SCF is considered converged when the wavefunction error is less that
10−SCF_CONVERGENCE. Adjust the value of THRESH at the same
time. Note that in Q-Chem 3.0 the DIIS error is measured by the maximum error
rather than the RMS error as in previous versions. |
TYPE:
DEFAULT:
5 | For single point energy calculations. |
7 | For geometry optimizations and vibrational analysis. |
8 | For SSG calculations, see Chapter 5. |
OPTIONS:
RECOMMENDATION:
Tighter criteria for geometry optimization and vibration analysis. Larger
values provide more significant figures, at greater computational cost. |
|
|
|
UNRESTRICTED
Controls the use of restricted or unrestricted orbitals. |
TYPE:
DEFAULT:
FALSE | (Restricted) Closed-shell systems. |
TRUE | (Unrestricted) Open-shell systems. |
OPTIONS:
TRUE | (Unrestricted) Open-shell systems. |
FALSE | Restricted open-shell HF (ROHF). |
RECOMMENDATION:
Use default unless ROHF is desired. Note that for unrestricted calculations on
systems with an even number of electrons it is usually necessary to break
alpha / beta symmetry in the initial guess, by using SCF_GUESS_MIX or
providing $occupied information (see Section 4.5 on
initial guesses). |
|
4.2.4 Additional Hartree-Fock Job Control Options
Listed below are a number of useful options to customize a Hartree-Fock
calculation. This is only a short summary of the function of these $rem
variables. A full list of all SCF-related variables is provided in
Appendix C.
A number of other specialized topics (large molecules, customizing initial
guesses, and converging the calculation) are discussed separately in
Sections 4.4, 4.5, and 4.6, respectively.
INTEGRALS_BUFFER
Controls the size of in-core integral storage buffer. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Use the default, or consult your systems administrator for hardware limits. |
|
| DIRECT_SCF
TYPE:
DEFAULT:
OPTIONS:
TRUE | Forces direct SCF. |
FALSE | Do not use direct SCF. |
RECOMMENDATION:
Use default; direct SCF switches off in-core integrals. |
|
|
|
METECO
Sets the threshold criteria for discarding shell-pairs. |
TYPE:
DEFAULT:
2 | Discard shell-pairs below 10−THRESH. |
OPTIONS:
1 | Discard shell-pairs four orders of magnitude below machine precision. |
2 | Discard shell-pairs below 10−THRESH. |
RECOMMENDATION:
|
| STABILITY_ANALYSIS
Performs stability analysis for a HF or DFT solution. |
TYPE:
DEFAULT:
OPTIONS:
TRUE | Perform stability analysis. |
FALSE | Do not perform stability analysis. |
RECOMMENDATION:
Set to TRUE when a HF or DFT solution is suspected to be unstable. |
|
|
|
SCF_PRINT
Controls level of output from SCF procedure to Q-Chem output file. |
TYPE:
DEFAULT:
0 | Minimal, concise, useful and necessary output. |
OPTIONS:
0 | Minimal, concise, useful and necessary output. |
1 | Level 0 plus component breakdown of SCF electronic energy. |
2 | Level 1 plus density, Fock and MO matrices on each cycle. |
3 | Level 2 plus two-electron Fock matrix components (Coulomb, HF exchange |
| and DFT exchange-correlation matrices) on each cycle. |
RECOMMENDATION:
Proceed with care; can result in extremely large output files at level 2 or higher.
These levels are primarily for program debugging. |
|
| SCF_FINAL_PRINT
Controls level of output from SCF procedure to Q-Chem output file at the
end of the SCF. |
TYPE:
DEFAULT:
OPTIONS:
0 | No extra print out. |
1 | Orbital energies and break-down of SCF energy. |
2 | Level 1 plus MOs and density matrices. |
3 | Level 2 plus Fock and density matrices. |
RECOMMENDATION:
The break-down of energies is often useful (level 1). |
|
|
|
DIIS_SEPARATE_ERRVEC
Control optimization of DIIS error vector in unrestricted calculations. |
TYPE:
DEFAULT:
FALSE | Use a combined alpha and beta error vector. |
OPTIONS:
FALSE | Use a combined alpha and beta error vector. |
TRUE | Use separate error vectors for the alpha and beta spaces. |
RECOMMENDATION:
When using DIIS in Q-Chem a convenient optimization for unrestricted calculations is to sum
the alpha and beta error vectors into a single vector which is used for extrapolation. This
is often extremely effective, but in some pathological systems with symmetry breaking, can lead
to false solutions being detected, where the alpha and beta components of the error vector
cancel exactly giving a zero DIIS error. While an extremely uncommon occurrence, if it is suspected,
set DIIS_SEPARATE_ERRVEC to TRUE to check. |
|
4.2.5 Examples
Provided below are examples of Q-Chem input files to run ground state,
Hartree-Fock single point energy calculations.
Example 4.0 Example Q-Chem input for a single point energy calculation on
water. Note that the declaration of the single point $rem variable and level
of theory to treat correlation are redundant because they are the same as the
Q-Chem defaults.
$molecule
0 1
O
H1 O oh
H2 O oh H1 hoh
oh = 1.2
hoh = 120.0
$end
$rem
JOBTYPE sp Single Point energy
EXCHANGE hf Exact HF exchange
CORRELATION none No correlation
BASIS sto-3g Basis set
$end
$comment
HF/STO-3G water single point calculation
$end
Example 4.0 UHF/6-311G calculation on the Lithium atom. Note that
correlation and the job type were not indicated because Q-Chem defaults
automatically to no correlation and single point energies. Note also that,
since the number of alpha and beta electron differ, MOs default to an
unrestricted formalism.
$molecule
0,2
3
$end
$rem
EXCHANGE HF Hartree-Fock
BASIS 6-311G Basis set
$end
Example 4.0 ROHF/6-311G calculation on the Lithium atom. Note again that
correlation and the job type need not be indicated.
$molecule
0,2
3
$end
$rem
EXCHANGE hf Hartree-Fock
UNRESTRICTED false Restricted MOs
BASIS 6-311G Basis set
$end
Example 4.0 RHF/6-31G stability analysis calculation on the singlet state of
the oxygen molecule. The wavefunction is RHF→UHF unstable.
$molecule
0 1
O
O 1 1.165
$end
$rem
EXCHANGE hf Hartree-Fock
UNRESTRICTED false Restricted MOs
BASIS 6-31G(d) Basis set
STABILITY_ANALYSIS true Perform a stability analysis
$end
4.2.6 Symmetry
Symmetry is a powerful branch of mathematics and is often exploited in quantum
chemistry, both to reduce the computational workload and to classify the final
results obtained [16,[17,[18]. Q-Chem is able
to determine the point group symmetry of the molecular nuclei and, on
completion of the SCF procedure, classify the symmetry of molecular orbitals,
and provide symmetry decomposition of kinetic and nuclear attraction energy
(see Chapter 10).
Molecular systems possessing point group symmetry offer the possibility of
large savings of computational time, by avoiding calculations of integrals
which are equivalent i.e., those integrals which can be mapped on to one
another under one of the symmetry operations of the molecular point group.
The Q-Chem default is to use symmetry to reduce computational time, when
possible.
There are several keywords that are related to symmetry, which causes frequent
confusion. SYM_IGNORE controls symmetry throughout all modules.
The default is FALSE. In some cases it may be desirable to turn off
symmetry altogether, for example if you do not want Q-Chem to reorient the
molecule into the standard nuclear orientation, or if you want to turn it off for
finite difference calculations. If the SYM_IGNORE $rem is set to
TRUE then the coordinates will not be altered from the input, and the
point group will be set to C1.
The SYMMETRY (an alias for ISYM_RQ) keyword controls symmetry in
some integral routines.
It is set to FALSE by default.
Note that setting it to FALSE
does not turn point group symmetry off, and does not disable
symmetry in the coupled-cluster suite (CCMAN and CCMAN2), which is controlled
by CC_SYMMETRY (see Chapters 5
and 6), although we noticed that sometimes it may mess up
the determination of orbital symmetries, possibly due to numeric noise.
In some cases, SYMMETRY=TRUE
can cause problems (poor convergence and crazy SCF energies) and
turning it off can help.
Note:
The user should be aware about different conventions for defining
symmetry
elements.
The arbitrariness affects, for example, C2v point group.
The specific choice affects how the irreps in the affected groups are labeled.
For example, b1 and b2 irreps in C2v are flipped when using different
conventions. Q-Chem uses non-Mulliken symmetry convention.
See http://iopenshell.usc.edu/howto/symmetry
for detailed explanations. |
| SYMMETRY
Controls the efficiency through the use of point group symmetry for
calculating integrals. |
TYPE:
DEFAULT:
TRUE | Use symmetry for computing integrals. |
OPTIONS:
TRUE | Use symmetry when available. |
FALSE | Do not use symmetry. This is
always the case for RIMP2 jobs |
RECOMMENDATION:
Use default unless benchmarking.
Note that symmetry usage is disabled for RIMP2, FFT, and QM/MM jobs. |
|
|
|
SYM_IGNORE
Controls whether or not Q-Chem determines the point group of the molecule and reorients the molecule to the standard orientation. |
TYPE:
DEFAULT:
FALSE | Do determine the point group (disabled for RIMP2 jobs). |
OPTIONS:
RECOMMENDATION:
Use default unless you do not want the molecule to be reoriented.
Note that symmetry usage is disabled for RIMP2 jobs. |
|
| SYM_TOL
Controls the tolerance for determining point group symmetry. Differences in
atom locations less than 10−SYM_TOL are treated as zero. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Use the default unless the molecule has high symmetry which is not being
correctly identified. Note that relaxing this tolerance too much may introduce
errors into the calculation. |
|
|
|
4.3 Density Functional Theory
4.3.1 Introduction
In recent years, Density Functional Theory [19,[20,[21,[22]
has emerged as an accurate alternative first-principles approach to quantum
mechanical molecular investigations. DFT currently accounts for approximately
90% of all quantum chemical calculations being performed, not only because
of its proven chemical accuracy, but also because of its relatively cheap
computational expense. These two features suggest that DFT is likely to remain
a leading method in the quantum chemist's toolkit well into the future.
Q-Chem contains fast, efficient and accurate algorithms for all popular
density functional theories, which make calculations on quite large molecules
possible and practical.
DFT is primarily a theory of electronic ground state structures based on the
electron density, ρ(r), as opposed to the many-electron wavefunction
Ψ(r1,…,rN) There are a number of distinct similarities and
differences to traditional wavefunction approaches and modern DFT
methodologies. Firstly, the essential building blocks of the many electron
wavefunction are single-electron orbitals are directly analogous to the
Kohn-Sham (see below) orbitals in the current DFT framework. Secondly, both the
electron density and the many-electron wavefunction tend to be constructed
via a SCF approach that requires the construction of matrix elements
which are remarkably and conveniently very similar.
However, traditional approaches using the many electron wavefunction as a
foundation must resort to a post-SCF calculation (Chapter 5)
to incorporate correlation effects, whereas DFT
approaches do not. Post-SCF methods, such as perturbation theory or coupled
cluster theory are extremely expensive relative to the SCF procedure. On the
other hand, the DFT approach is, in principle, exact, but in practice relies on
modeling the unknown exact exchange correlation energy functional. While more
accurate forms of such functionals are constantly being developed, there is no
systematic way to improve the functional to achieve an arbitrary level of
accuracy. Thus, the traditional approaches offer the possibility of achieving
an arbitrary level of accuracy, but can be computationally demanding, whereas
DFT approaches offer a practical route but the theory is currently incomplete.
4.3.2 Kohn-Sham Density Functional Theory
The Density Functional Theory by Hohenberg, Kohn and Sham [23,[24]
stems from the original work of
Dirac [25], who found that the exchange energy of a uniform electron gas
may be calculated exactly, knowing only the charge density. However, while the
more traditional DFT constitutes a direct approach and the necessary equations
contain only the electron density, difficulties associated with the kinetic
energy functional obstructed the extension of DFT to anything more than a crude
level of approximation. Kohn and Sham developed an indirect approach to the
kinetic energy functional which transformed DFT into a practical tool for
quantum chemical calculations.
Within the Kohn-Sham formalism [24], the ground state
electronic energy, E, can be written as
where ET is the kinetic energy, EV is the electron-nuclear
interaction energy, EJ is the Coulomb self-interaction of the
electron density ρ(r) and EXC is the exchange-correlation
energy. Adopting an unrestricted format, the alpha and beta total electron
densities can be written as
where nα and nβ are the number of alpha and beta electron
respectively and, ψi are the Kohn-Sham orbitals. Thus, the total
electron density is
Within a finite basis set [26], the density is represented by
ρ(r) = |
∑
μν
|
PμνT ϕμ (r) ϕν (r) |
| (4.33) |
The components of Eq. (4.28) can now be written as
| |
|
|
nα ∑
i=1
|
|
|
ψiα | ⎢ ⎢
|
− |
1
2
|
∇2 | ⎢ ⎢
|
ψiα |
|
+ |
nβ ∑
i=1
|
|
|
ψiβ | ⎢ ⎢
|
− |
1
2
|
∇2 | ⎢ ⎢
|
ψiβ |
|
|
| |
| |
|
|
∑
μν
|
PμνT |
|
ϕμ(r) | ⎢ ⎢
|
− |
1
2
|
∇2 | ⎢ ⎢
|
ϕν(r) |
|
|
| | (4.34) |
| |
|
− |
M ∑
A=1
|
ZA |
ρ(r)
|r−RA|
|
dr |
| |
| |
|
− |
∑
μν
|
PμνT |
∑
A
|
|
|
ϕμ(r) | ⎢ ⎢
|
ZA
|r−RA|
| ⎢ ⎢
|
ϕν(r) |
|
|
| | (4.35) |
| |
|
|
1
2
|
|
|
ρ(r1) | ⎢ ⎢
|
1
|r1 − r2|
| ⎢ ⎢
|
ρ(r2) |
|
|
| |
| |
|
|
1
2
|
|
∑
μν
|
|
∑
λσ
|
PμνT PλσT (μν|λσ) |
| | (4.36) |
| |
|
| | (4.37) |
|
Minimizing E with respect to the unknown Kohn-Sham orbital coefficients
yields a set of matrix equations exactly analogous to the UHF case
where the Fock matrix elements are generalized to
|
Fμνα = Hμνcore + Jμν − FμνXCα |
| | (4.40) |
| Fμνβ = Hμνcore + Jμν − FμνXCβ |
| | (4.41) |
|
where FμνXCα and FμνXCβ are the
exchange-correlation parts of the Fock matrices dependent on the
exchange-correlation functional used. The Pople-Nesbet equations are obtained
simply by allowing
and similarly for the beta equation. Thus, the density and energy are obtained
in a manner analogous to that for the Hartree-Fock method. Initial guesses are
made for the MO coefficients and an iterative process applied until self
consistency is obtained.
4.3.3 Exchange-Correlation Functionals
There are an increasing number of exchange and correlation functionals and
hybrid DFT methods available to the quantum chemist, many of which are very
effective. In short, there are nowadays five basic working types of functionals
(five rungs on the Perdew's "Jacob`s Ladder"): those based on
the local spin density approximation (LSDA) are on the first rung,
those based on generalized gradient approximations (GGA) are on the second rung.
Functionals that include not only density gradient
corrections (as in the GGA functionals), but also a dependence on
the electron kinetic energy density and / or
the Laplacian of the electron density, occupy
the third rung of the Jacob`s Ladder and are known as "meta-GGA"
functionals. The latter lead to a systematic,
and often substantial improvement over GGA for thermochemistry
and reaction kinetics. Among the meta-GGA functionals, a particular attention
deserve the VSXC functional [27],
the functional of Becke and Roussel for exchange [28],
and for correlation [29] (the BR89B94 meta-GGA
combination [29]). The latter functional did not receive enough
popularity until recently, mainly because it was not representable
in an analytic form. In Q-Chem, BR89B94 is implemented now self-consistently
in a fully analytic form, based on the recent work [30].
The one and only non-empirical meta-GGA functional,
the TPSS functional [31],
was also implemented recently in Q-Chem [32].
Each of the above mentioned "pure" functionals can be
combined with a fraction of exact (Hartree-Fock) non-local
exchange energy replacing a similar fraction
from the DFT local exchange energy.
When a nonzero amount of Hartree-Fock exchange
is used (less than a 100%), the corresponding functional is a hybrid extension
(a global hybrid) of the parent "pure" functional.
In most cases a hybrid functional would have one or more
(up to 21 so far) linear mixing parameters that are fitted
to experimental data. An exception is the hybrid extension
of the TPSS meta-GGA functional, the non-empirical TPSSh scheme, which is
also implemented now in Q-Chem [32].
The forth rung of functionals ("hyper-GGA" functionals)
involve occupied Kohn-Sham orbitals as additional
non-local variables [33,[34,[35,[36].
This helps tremendously in describing cases of strong inhomogeneity
and strong non-dynamic correlation, that are evasive for global
hybrids at GGA and meta-GGA levels of the theory. The success is
mainly due to one novel feature of these functionals:
they incorporate a 100% of exact (or HF) exchange
combined with a hyper-GGA model correlation.
Employing a 100% of exact exchange has been a long standing dream in DFT,
but most previous attempts were unsuccessful. The correlation models
used in the hyper-GGA schemes B05 [33] and
PSTS [36], properly compensate the spuriously
high non-locality of the exact exchange hole,
so that cases of strong non-dynamic correlation become treatable.
In addition to some GGA and meta-GGA variables, the B05 scheme employs a new
functional variable, namely, the exact-exchange energy density:
eHFX(r) = − |
1
2
|
| ⌠ ⌡
|
dr′ |
|n(r,r′)|2
|r−r′|
|
, |
| (4.43) |
where
n(r,r′) = |
1
ρ(r)
|
|
occ ∑
i
|
φiks(r)φiks(r′) . |
| (4.44) |
This new variable enters the correlation energy component in a
rather sophisticated nonlinear manner [33]:
This presents a huge challenge for the practical implementation
of such functionals, since they require a Hartree-Fock
type of calculation at each grid point, which renders the
task impractical. Significant progress in implementing
efficiently the B05 functional was reported only
recently [37,[38]. This new implementation
achieves a speed-up of the B05 calculations by a factor of 100
based on resolution-of-identity (RI) technique (the RI-B05 scheme) and
analytical interpolations. Using this methodology, the PSTS
hyper-GGA was also implemented in Q-Chem more recently [32].
For the time being only single-point SCF calculations are
available for RI-B05 and RI-PSTS (the energy gradient will be available soon).
In contrast to B05 and PSTS, the forth-rung functional MCY employs a
100% global exact exchange, not only as a separate energy component of the functional,
but also as a non-linear variable used the MCY correlation energy
expression [34,[35]. Since this variable is
the same at each grid point, it has to be calculated
only once per SCF iteration. The form of the MCY correlation functional
is deduced from known adiabatic connection and coordinate
scaling relationships which, together with a few fitting
parameters, provides a good correlation match to the exact exchange.
The MCY functional [34] in its MCY2 version [35] is now
implemented in Q-Chem, as described in Ref. [32].
The fifth-rung functionals include not only occupied Kohn-Sham orbitals, but
also unoccupied orbitals, which improves further the quality of the
exchange-correlation energy. The practical application so far of these
consists of adding empirically a small fraction of correlation energy obtained
from MP2-like post-SCF calculation [39,[40].
Such functionals are known as "double-hybrids".
A more detailed
description of some these as implemented in Q-Chem is
given in Subsections 4.3.9 and 4.3.4.3.
Finally, the so-called range-separated (or long-range corrected, LRC)
functionals that employ exact
exchange for the long-range part of the functional are showing excellent
performance and considerable
promise (see Section 4.3.4). In addition, many of the functionals
can be augmented by an empirical dispersion correction, "-D" (see Section 4.3.6).
In summary, Q-Chem includes the following exchange and correlation functionals:
LSDA functionals:
- Slater-Dirac (Exchange) [25]
- Vokso-Wilk-Nusair (Correlation) [41]
- Perdew-Zunger (Correlation) [42]
- Wigner (Correlation) [43]
- Perdew-Wang 92 (Correlation) [44]
- Proynov-Kong 2009 (Correlation) [45]
GGA functionals:
- Becke86 (Exchange) [46]
- Becke88 (Exchange) [47]
- PW86 (Exchange) [48]
- refit PW86 (Exchange) [49]
- Gill96 (Exchange) [50]
- Gilbert-Gill99 (Exchange [51]
- Lee-Yang-Parr (Correlation) [52]
- Perdew86 (Correlation) [53]
- GGA91 (Exchange and correlation) [54]
- mPW1PW91 (Exchange and Correlation) [55]
- mPW1PBE (Exchange and Correlation)
- mPW1LYP (Exchange and Correlation)
- PBE (Exchange and correlation) [56,[57]
- revPBE (Exchange) [58]
- PBE0 (25% Hartree-Fock exchange + 75% PBE exchange + 100% PBE correlation) [59]
- PBE50 (50% Hartree-Fock exchange + 50% PBE exchange + 100% PBE correlation)
- B3LYP (Exchange and correlation within a hybrid scheme) [60]
- B3PW91 (B3 Exchange + PW91 correlation)
- B3P86 (B3 Exchange + PW86 correlation)
- B5050LYP (50% Hartree-Fock exchange + 5% Slater exchange + 42% Becke exchange + 100% LYP correlation) [61]
- BHHLYP (50% Hartree-Fock exchange + 50% Becke exchange + 100% LYP correlation) [60]
- O3LYP (Exchange and correlation) [62]
- X3LYP (Exchange and correlation) [63]
- CAM-B3LYP (Range separated exchange and LYP correlation) [64]
- Becke97 (Exchange and correlation within a hybrid scheme) [65,[57]
- Becke97-1 (Exchange and correlation within a hybrid scheme) [66,[57]
- Becke97-2 (Exchange and correlation within a hybrid scheme) [67,[57]
- B97-D (Exchange and correlation and empirical dispersion correction) [68]
- HCTH (Exchange- correlation within a hybrid scheme) [66,[57]
- HCTH-120 (Exchange- correlation within a hybrid scheme) [69,[57]
- HCTH-147 (Exchange- correlation within a hybrid scheme) [69,[57]
- HCTH-407 (Exchange- correlation within a hybrid scheme) [70,[57]
- The ωB97X functionals developed by Chai and Gordon [71]
(Exchange and correlation within a hybrid scheme, with long-range correction,
see further in this manual for details)
- BNL (Exchange GGA functional) [72,[73]
- BOP (Becke88 exchange plus the "one-parameter progressive" correlation
functional, OP) [74]
- PBEOP (PBE Exchange plus the OP correlation functional) [74]
- SOGGA (Exchange plus the PBE correlation functional) [75]
- SOGGA11 (Exchange and Correlation) [76]
- SOGGA11-X (Exchange and Correlation within a hybrid scheme, with re-optimized SOGGA11 parameters) [77]
- LRC-wPBEPBE (Long-range corrected PBE exchange and PBE correlation) [78]
- LRC-wPBEhPBE (Long-range corrected hybrid PBE exchange and PBE correlation) [79]
Note:
The OP correlation functional used in BOP has been parameterized for use with
Becke88 exchange, whereas in the PBEOP functional, the same correlation ansatz
is re-parameterized for use with PBE exchange. These two versions of OP correlation
are available as the correlation functionals (B88)OP and (PBE)OP. The BOP
functional, for example, consists of (B88)OP correlation combined with Becke88 exchange. |
Meta-GGA functionals involving the kinetic energy
density (τ), and or the Laplacian of the electron density:
- VSXC (Exchange and Correlation) [27]
- TPSS (Exchange and Correlation in a single non-empirical
scheme) [31,[32]
- TPSSh (Exchange and Correlation within a non-empirical hybrid scheme) [80]
- BMK (Exchange and Correlation within a hybrid scheme) [81]
- M05 (Exchange and Correlation within a hybrid scheme) [82,]
- M05-2X (Exchange and Correlation within a hybrid scheme) [84,[83]
- M06-L (Exchange and Correlation) [85,[83]
- M06-HF (Exchange and Correlation within a hybrid scheme) [86,[83]
- M06 (Exchange and Correlation within a hybrid scheme) [87,[83]
- M06-2X (Exchange and Correlation within a hybrid scheme) [87,[83]
- M08-HX (Exchange and Correlation within a hybrid scheme) [88]
- M08-SO (Exchange and Correlation within a hybrid scheme) [88]
- M11-L (Exchange and Correlation) [89]
- M11 (Exchange and Correlation within a hybrid scheme, with long-range correction) [90]
- BR89 (Exchange) [28,[30]
- B94 (Correlation) [29,[30]
- B95 (Correlation) [91]
- B1B95 (Exchange and Correlation) [91]
- PK06 (Correlation) [92]
Hyper-GGA functionals:
- B05 (A full exact-exchange Kohn-Sham scheme of Becke that accounts for static corrrelation
via real-space corrections) [33,[37,[38]
- mB05 (Modified B05 method that has simpler functional form and SCF potential) [93]
- PSTS (Hyper-GGA functional of Perdew-Staroverov-Tao-Scuseria) [36]
- MCY2 (The adiabatic connection-based MCY2 functional) [34,[35,[32]
Fifth-rung, double-hybrid (DH) functionals:
- ωB97X-2 (Exchange and Correlation within a DH generalization of the
LC corrected ωB97X scheme) [40]
- B2PLYP (another DH scheme proposed by Grimme, based on GGA exchange and correlation
functionals) [68]
- XYG3 and XYGJ-OS (an efficient DH scheme based on generalization of B3LYP) [94]
In addition to the above functional types, Q-Chem contains the
Empirical Density Functional 1 (EDF1), developed by Adamson, Gill and
Pople [95]. EDF1 is a combined exchange and correlation
functional that is specifically adapted to yield good results with the
relatively modest-sized 6-31+G* basis set, by direct fitting to thermochemical
data. It has the interesting feature that exact exchange mixing was not found
to be helpful with a basis set of this size. Furthermore, for this basis set,
the performance substantially exceeded the popular B3LYP functional,
while the cost of the calculations is considerably lower because there is no
need to evaluate exact (non-local) exchange. We recommend consideration of
EDF1 instead of either B3LYP or BLYP for density functional calculations on
large molecules, for which basis sets larger than 6-31+G* may be too
computationally demanding.
EDF2, another Empirical Density Functional, was developed by Ching Yeh Lin and
Peter Gill [96] in a similar vein to EDF1, but is specially designed for
harmonic frequency calculations. It was optimized using the cc-pVTZ basis
set by fitting into experimental harmonic frequencies and is designed
to describe the potential energy curvature well. Fortuitously, it also
performs better than B3LYP for thermochemical properties.
A few more words deserve the hybrid functionals [60], where several
different exchange and correlation functionals can be combined linearly to form a
hybrid functional. These have proven successful in a number of reported applications.
However, since the hybrid functionals contain HF exchange they are more expensive
that pure DFT functionals. Q-Chem has incorporated two of the most popular
hybrid functionals, B3LYP [97] and B3PW91 [28],
with the additional option for users to define their own hybrid functionals via
the $xc_functional keyword (see user-defined functionals in
Section 4.3.17, below). Among the latter, a recent new hybrid combination
available in Q-Chem is the 'B3tLap' functional, based on Becke's B88
GGA exchange and the 'tLap' (or 'PK06') meta-GGA
correlation [92,[98]. This
hybrid combination is on average more accurate than B3LYP, BMK, and M06
functionals for thermochemistry and better than B3LYP for reaction
barriers, while involving only five fitting parameters.
Another hybrid functional in Q-Chem that deserves attention
is the hybrid extension of the BR89B94 meta-GGA
functional [29,[98].
This hybrid functional yields a very good thermochemistry results, yet has
only three fitting parameters.
In addition, Q-Chem now includes the M05 and M06 suites of density
functionals. These are designed to be used only with
certain definite percentages of Hartree-Fock exchange. In
particular, M06-L [85] is designed to be used with no Hartree-Fock
exchange (which reduces the cost for large molecules), and M05 [82],
M05-2X [84], M06, and M06-2X [87] are designed to be used with
28%, 56%, 27%, and 54% Hartree-Fock exchange. M06-HF [86] is designed to
be used with 100% Hartree-Fock exchange, but it still contains some
local DFT exchange because the 100% non-local Hartree-Fock
exchange replaces only some of the local exchange.
Note:
The hybrid functionals are not simply a pairing of an exchange
and correlation functional, but are a combined exchange-correlation functional
(i.e., B-LYP and B3LYP vary in the correlation contribution in addition to the
exchange part). |
4.3.4 Long-Range-Corrected DFT
As pointed out in Ref. and elsewhere, the description of
charge-transfer excited states within density functional theory
(or more precisely, time-dependent DFT, which is discussed in
Section 6.3) requires full (100%)
non-local Hartree-Fock exchange, at least in the limit of large
donor-acceptor distance.
Hybrid functionals such as B3LYP [97] and
PBE0 [59] that are well-established and in widespread use,
however, employ only 20%
and 25% Hartree-Fock exchange, respectively. While these functionals
provide excellent results for many ground-state properties, they cannot
correctly describe the distance dependence of charge-transfer excitation
energies, which are enormously underestimated by most common density
functionals. This is a serious problem in any case, but it is a
catastrophic
problem in large molecules and in clusters, where TDDFT often predicts a
near-continuum of of spurious, low-lying charge transfer states [100,[101].
The problems with TDDFT's description of
charge transfer are not limited to large donor-acceptor distances, but have
been observed at ∼ 2 Å separation, in systems as small as
uracil-(H2O)4 [100]. Rydberg excitation energies
also tend to be substantially underestimated by standard TDDFT.
One possible avenue by which to correct such problems is to parameterize
functionals
that contain 100% Hartree-Fock exchange. To date, few such functionals exist,
and those that do (such as M06-HF) contain a very large number of
empirical adjustable parameters. An alternative option is to
attempt to preserve the form of common GGAs and hybrid functionals at
short range (i.e., keep the 25% Hartree-Fock exchange in PBE0)
while incorporating 100% Hartree-Fock exchange
at long range. Functionals along these lines are known variously
as "Coulomb-attenuated" functionals, "range-separated"
functionals, or (our preferred designation) "long-range-corrected"
(LRC) density functionals. Whatever the nomenclature, these functionals
are all based upon
a partition of the electron-electron Coulomb potential into long- and
short-range components, using the error function (erf):
|
1
r12
|
≡ |
1−erf(ωr12)
r12
|
+ |
erf(ωr12)
r12
|
|
| (4.45) |
The first term on the right in Eq. (4.45)
is singular but short-range, and decays
to zero on a length scale of ∼ 1/ω, while the second term
constitutes a non-singular, long-range background. The basic idea of LRC-DFT
is to utilize the short-range component of the Coulomb operator in
conjunction with standard DFT exchange (including any component of
Hartree-Fock exchange, if the functional is a hybrid), while at the same
time incorporating full Hartree-Fock exchange using the long-range
part of the Coulomb operator. This provides a
rigorously correct description of the long-range distance dependence of
charge-transfer excitation energies, but aims to avoid contaminating short-range
exchange-correlation effects with extra Hartree-Fock exchange.
Consider an exchange-correlation functional of the form
EXC = EC + EXGGA + CHF EXHF |
| (4.46) |
in which EC is the correlation energy, EXGGA
is the (local) GGA exchange energy, and EXHF is the (non-local)
Hartree-Fock exchange energy. The constant CHF denotes
the fraction of Hartree-Fock exchange in the functional, therefore
CHF = 0 for GGAs, CHF = 0.20 for B3LYP,
CHF = 0.25 for PBE0, etc..
The LRC version of the generic functional in Eq. (4.46) is
EXCLRC = EC + EXGGA, SR + CHF EXHF, SR + EXHF, LR |
| (4.47) |
in which the designations "SR" and "LR" in the various exchange
energies indicate that these components
of the functional are evaluated using either the short-range (SR) or the
long-range (LR) component of the Coulomb operator. (The correlation
energy EC is evaluated using the full Coulomb operator.)
The LRC functional in
Eq. (4.47) incorporates full Hartree-Fock exchange in the
asymptotic limit via the final term, EXHF, LR. To fully
specify the LRC functional, one must choose a value for the range
separation parameter ω in Eq. (4.45);
in the limit ω→ 0, the LRC functional in
Eq. (4.47) reduces to the original functional in
Eq. (4.46), while the ω→∞ limit
corresponds to a new functional, EXC = EC + EXHF. It is well known that full Hartree-Fock exchange
is inappropriate for use with most contemporary GGA correlation functionals,
so the latter limit is expected to perform quite poorly. Values of
ω > 1.0 bohr−1 are probably not worth considering [102,[78].
Evaluation of the short- and long-range Hartree-Fock exchange energies
is straightforward [103], so the crux of LRC-DFT rests upon
the form of the short-range GGA exchange energy. Several different
short-range GGA exchange functionals are available in Q-Chem, including
short-range variants of B88 and PBE exchange described by Hirao and
co-workers [104,[105], an alternative formulation of
short-range PBE exchange proposed by Scuseria and co-workers [106],
and several short-range variants of B97 introduced by
Chai and Head-Gordon [71,[107,[108,[40].
The reader is referred to these papers for additional methodological details.
These LRC-DFT functionals have been shown to remove
the near-continuum of spurious charge-transfer excited states that
appear in large-scale TDDFT calculations [102].
However, certain results depend sensitively upon the range-separation
parameter ω [101,[102,[78,[79], and the results
of LRC-DFT calculations must therefore be interpreted with caution,
and probably for a range of ω values. In two recent benchmark
studies of several LRC density functionals,
Rohrdanz and Herbert [78,[79]
have considered the errors engendered, as a function of ω, in
both ground-state properties and also TDDFT vertical excitation energies.
In Ref. , the sensitivity of valence excitations versus charge-transfer
excitation energies in TDDFT was considered, again as a function of ω.
A careful reading of these references is suggested prior to
performing any LRC-DFT calculations.
Within Q-Chem 3.2, there are three ways to perform LRC-DFT calculations.
4.3.4.1 LRC-DFT with the μB88, μPBE, and ωPBE exchange functionals
The form of EXGGA, SR is different for each different
GGA exchange functional, and short-range versions of B88
and PBE exchange are available in Q-Chem through the efforts of
the Herbert group. Versions of B88 and PBE, in which the Coulomb attenuation
is performed according to the procedure of Hirao [105], are denoted
as μB88 and μPBE, respectively (since μ, rather than ω, is
the Hirao group's notation for the range-separation parameter). Alternatively,
a short-range version of PBE exchange called ωPBE is available, which is
constructed according to the prescription of Scuseria and co-workers [106].
These short-range exchange functionals can be used in the absence of long-range
Hartree-Fock exchange, and using a combination of
ωPBE exchange and PBE correlation, a user could, for example, employ the
short-range hybrid functional recently described by Heyd, Scuseria, and
Ernzerhof [109]. Short-range hybrids appear to be most appropriate for
extended systems, however. Thus, within Q-Chem, short-range GGAs should
be used with long-range Hartree-Fock exchange, as in Eq. 4.47.
Long-range Hartree-Fock exchange is requested by setting LRC_DFT to
TRUE.
LRC-DFT is thus available
for any functional whose exchange component consists of some combination
of Hartree-Fock, B88, and PBE exchange (e.g., BLYP, PBE, PBE0,
BOP, PBEOP, and various user-specified combinations, but not B3LYP or other
functionals whose exchange components are more involved). Having
specified such a functional via the EXCHANGE and
CORRELATION variables, a user may request the
corresponding LRC functional by setting
LRC_DFT to TRUE. Long-range-corrected variants of PBE0,
BOP, and PBEOP must be obtained through the appropriate user-specified
combination of exchange and correlation functionals (as demonstrated in the
example below). In any case,
the value of ω must also be
specified by the user. Analytic energy gradients are available but
analytic Hessians are not. TDDFT vertical excitation energies are also
available.
LRC_DFT
Controls the application of long-range-corrected DFT |
TYPE:
DEFAULT:
OPTIONS:
FALSE | (or 0) Do not apply long-range correction. |
TRUE | (or 1) Use the long-range-corrected version of the requested functional.
|
RECOMMENDATION:
Long-range correction is available for any combination of Hartree-Fock,
B88, and PBE exchange (along with any stand-alone correlation functional).
|
|
| OMEGA
Sets the Coulomb attenuation parameter ω. |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to ω = n/1000, in units of bohr−1 |
RECOMMENDATION:
|
|
|
Example 4.0 Application of LRC-BOP to (H2O)2−.
$comment
To obtain LRC-BOP, a short-range version of BOP must be specified,
using muB88 short-range exchange plus (B88)OP correlation, which is
the version of OP parameterized for use with B88.
$end
$molecule
-1 2
O 1.347338 -.017773 -.071860
H 1.824285 .813088 .117645
H 1.805176 -.695567 .461913
O -1.523051 -.002159 -.090765
H -.544777 -.024370 -.165445
H -1.682218 .174228 .849364
$end
$rem
EXCHANGE GEN
BASIS 6-31(1+,3+)G*
LRC_DFT TRUE
OMEGA 330 ! = 0.330 a.u.
$end
$xc_functional
C (B88)OP 1.0
X muB88 1.0
$end
Regarding the choice of functionals and ω values, it has been found that
the Hirao and Scuseria ansatz afford virtually identical TDDFT
excitation energies, for all values of ω [79]. Thus,
functionals based on μPBE versus ωPBE provide the same excitation
energies, as a function of ω. However, the ωPBE functional appears
to be somewhat superior in the sense that it can provide accurate TDDFT
excitation energies and accurate ground-state properties using the
same value of ω [79], whereas this does not seem
to be the case for functionals based on μB88 or μPBE [78].
Recently, Rohrdanz et al. [79] have published a thorough
benchmark study of both ground- and excited-state properties, using the
"LRC-ωPBEh" functional, a hybrid (hence the "h")
that contains a fraction of short-range
Hartree-Fock exchange in addition to full long-range Hartree-Fock exchange:
EXC(LRC−ωPBEh) = EC(PBE) + EXSR(ωPBE) + CHF EXSR(HF) + EXLR(HF) |
| (4.48) |
The statistically-optimal parameter set, consider both ground-state properties and
TDDFT excitation energies together, was found to be CHF = 0.2 and
ω = 0.2 bohr−1 [79]. With these parameters, the
LRC-ωPBEh functional outperforms the traditional hybrid functional PBE0
for ground-state atomization energies and barrier heights. For TDDFT excitation
energies corresponding to localized excitations, TD-PBE0 and TD-LRC-ωPBEh
show similar statistical errors of ∼ 0.3 eV, but the latter functional also
exhibits only ∼ 0.3 eV errors for charge-transfer excitation energies, whereas
the statistical error for TD-PBE0 charge-transfer excitation energies is 3.0 eV!
Caution is definitely warranted in the case of charge-transfer excited states,
however, as these excitation energies are very sensitive to the precise value of
ω [101,[79]. It was later found that the parameter
set (CHF = 0, ω = 0.3 bohr−1) provides similar
(statistical) performance to that described above, although the predictions for
specific charge-transfer excited states can be somewhat different as compared to
the original parameter set [101].
Example 4.0 Application of LRC-ωPBEh to the C2H4-C2F4
hetero-dimer at 5 Å separation.
$comment
This example uses the "optimal" parameter set discussed above.
It can also be run by setting "EXCHANGE LRC-WPBEhPBE".
$end
$molecule
0 1
C 0.670604 0.000000 0.000000
C -0.670604 0.000000 0.000000
H 1.249222 0.929447 0.000000
H 1.249222 -0.929447 0.000000
H -1.249222 0.929447 0.000000
H -1.249222 -0.929447 0.000000
C 0.669726 0.000000 5.000000
C -0.669726 0.000000 5.000000
F 1.401152 1.122634 5.000000
F 1.401152 -1.122634 5.000000
F -1.401152 -1.122634 5.000000
F -1.401152 1.122634 5.000000
$end
$rem
EXCHANGE GEN
BASIS 6-31+G*
LRC_DFT TRUE
OMEGA 200 ! = 0.2 a.u.
CIS_N_ROOTS 4
CIS_TRIPLETS FALSE
$end
$xc_functional
C PBE 1.00
X wPBE 0.80
X HF 0.20
$end
4.3.4.2 LRC-DFT with the BNL Functional
The Baer-Neuhauser-Livshits (BNL) functional [72,[73]
is also based on the range separation of the Coulomb
operator in Eq. 4.45.
Its functional form resembles Eq. 4.47:
EXC = EC + CGGA,X EXGGA, SR + EXHF, LR |
| (4.49) |
where the recommended GGA correlation functional is LYP.
The recommended GGA exchange functional is BNL,
which is described by a local functional [110].
For ground state properties, the optimized value for
CGGA,X (scaling factor for the BNL exchange functional) was found to be 0.9.
The value of ω in BNL calculations can be
chosen in several different ways.
For example, one can use the optimized value ω=0.5 bohr−1.
For calculation of excited states and properties related to orbital energies,
it is strongly recommend to tune ω as described
below[111,[112].
System-specific optimization of
ω is based on Koopmans conditions that would be satisfied for
the exact functional[111], that is, ω is varied
until the Koopmans IE/EA for the
HOMO/LUMO is equal to ∆E IE/EA.
Based on published
benchmarks [73,[113], this system-specific
approach yields the most accurate values of IEs and excitation
energies.
The script that optimizes ω is called
.pl@ and is located in the $QC/bin directory.
The script optimizes ω in the range 0.1-0.8 (100-800).
See the script for the instructions how
to modify the script to optimize in a broader range.
To execute the script, you need to create three inputs for a BNL
job using the same geometry and basis set for a neutral molecule (.in@),
anion (.in@), and cation (.in@), and then type
'OptOmegaIPEA.pl >& optomega'.
The script will run creating outputs for each step (_*@, _*@,
_*@) writing the optimization output into .
A similar script, .pl@, will optimize ω to satisfy
the Koopmans condition for the IP only. This script minimizes
J=(IP+ϵHOMO)2, not the absolute values.
Note:
(i) If the system does not have positive EA, then the tuning should be done
according to the IP condition only. The IPEA script will
yield a wrong value of ω in such cases.
(ii) In order for the scripts to work, one must
specify SCF_FINAL_PRINT=1 in the inputs.
The scripts look for specific regular expressions and will not work correctly
without this keyword.
(iii) When tuning omega we recommend taking the amount of X BNL in the
XC part as 1.0 and not 0.9. |
The $xc_functional keyword for a BNL calculation reads:
$xc_functional
X HF 1.0
X BNL 0.9
C LYP 1.0
$end
and the $rem keyword reads
$rem
EXCHANGE GENERAL
SEPARATE_JK TRUE
OMEGA 500 != 0.5 Bohr$^{-1}$
DERSCREEN FALSE !if performing unrestricted calcn
IDERIV 0 !if performing unrestricted Hessian evaluation
$end
4.3.4.3 LRC-DFT with ωB97, ωB97X, ωB97X-D, and ωB97X-2 Functionals
Also available in Q-Chem are the ωB97 [71], ωB97X [71],
ωB97X-D [107], and ωB97X-2 [40] functionals,
recently developed by Chai and Head-Gordon. These authors have proposed a very simple ansatz to extend any EXGGA to
EXGGA,SR, as long as the SR operator has considerable spatial
extent [71,[108]. With the use of flexible GGAs, such
as Becke97 functional [65], their new LRC hybrid
functionals [71,[107,[108]
outperform the corresponding global hybrid
functionals (i.e., B97) and popular hybrid functionals (e.g., B3LYP) in thermochemistry, kinetics, and non-covalent interactions, which has not been easily
achieved by the previous LRC hybrid functionals. In addition, the qualitative failures of the commonly used hybrid density functionals in
some "difficult problems", such as dissociation of symmetric radical cations and long-range charge-transfer excitations, are significantly reduced
by these new functionals [71,[107,[108]. Analytical gradients and analytical Hessians are available for ωB97, ωB97X, and ωB97X-D.
Example 4.0 Application of ωB97 functional to nitrogen dimer.
$comment
Geometry optimization, followed by a TDDFT calculation.
$end
$molecule
0 1
N1
N2 N1 1.1
$end
$rem
jobtype opt
exchange omegaB97
basis 6-31G*
$end
@@@
$molecule
READ
$end
$rem
jobtype sp
exchange omegaB97
basis 6-31G*
scf_guess READ
cis_n_roots 10
rpa true
$end
Example 4.0 Application of ωB97X functional to nitrogen dimer.
$comment
Frequency calculation (with analytical Hessian methods).
$end
$molecule
0 1
N1
N2 N1 1.1
$end
$rem
jobtype freq
exchange omegaB97X
basis 6-31G*
$end
Among these new LRC hybrid functionals, ωB97X-D is a DFT-D
(density functional theory with empirical dispersion corrections) functional, where
the total energy is computed as the sum of a DFT part and an empirical
atomic-pairwise dispersion correction. Relative to ωB97 and ωB97X,
ωB97X-D is significantly superior for non-bonded interactions,
and very similar in performance for bonded interactions. However, it should be noted
that the remaining short-range self-interaction error is somewhat
larger for ωB97X-D than for ωB97X than for ωB97.
A careful reading of Refs.
is suggested prior to performing any DFT and TDDFT calculations based on variations
of ωB97 functional. ωB97X-D functional automatically involves two keywords for the
dispersion correction, DFT_D and DFT_D_A, which are described in Section 4.3.6.
Example 4.0 Application of ωB97X-D functional to methane dimer.
$comment
Geometry optimization.
$end
$molecule
0 1
C 0.000000 -0.000323 1.755803
H -0.887097 0.510784 1.390695
H 0.887097 0.510784 1.390695
H 0.000000 -1.024959 1.393014
H 0.000000 0.001084 2.842908
C 0.000000 0.000323 -1.755803
H 0.000000 -0.001084 -2.842908
H -0.887097 -0.510784 -1.390695
H 0.887097 -0.510784 -1.390695
H 0.000000 1.024959 -1.393014
$end
$rem
jobtype opt
exchange omegaB97X-D
basis 6-31G*
$end
Similar to the existing double-hybrid density functional theory
(DH-DFT) [39,[114,[115,[116,[94],
which is described in Section 4.3.9,
LRC-DFT can be extended to include non-local orbital correlation energy from second-order
Møller-Plesset perturbation theory (MP2) [117], that includes a same-spin (ss) component
Ecss, and an opposite-spin (os) component Ecos of PT2 correlation energy. The two scaling
parameters, css and cos, are introduced to avoid double-counting
correlation with the LRC hybrid functional.
Etotal = ELRC−DFT + css Ecss + cos Ecos |
| (4.50) |
Among the ωB97 series, ωB97X-2 [40]
is a long-range corrected double-hybrid (DH) functional, which can
greatly reduce the self-interaction errors (due to its
high fraction of Hartree-Fock exchange), and has been shown
significantly superior for systems with bonded and non-bonded interactions. Due to the sensitivity of PT2
correlation energy with respect to the choices of basis sets, ωB97X-2
was parameterized with two different basis sets. ωB97X-2(LP) was parameterized with
the 6-311++G(3df,3pd) basis set (the large Pople type basis set), while
ωB97X-2(TQZ) was parameterized with the TQ extrapolation to the basis set limit.
A careful reading of Ref. is thus highly advised.
ωB97X-2(LP) and ωB97X-2(TQZ) automatically
involve three keywords for the PT2 correlation energy, DH, DH_SS and DH_OS,
which are described in Section 4.3.9. The PT2 correlation
energy can also be computed with the efficient resolution-of-identity
(RI) methods (see Section 5.5).
Example 4.0 Application of ωB97X-2(LP) functional to LiH molecules.
$comment
Geometry optimization and frequency calculation on LiH, followed by
single-point calculations with non-RI and RI approaches.
$end
$molecule
0 1
H
Li H 1.6
$end
$rem
jobtype opt
exchange omegaB97X-2(LP)
correlation mp2
basis 6-311++G(3df,3pd)
$end
@@@
$molecule
READ
$end
$rem
jobtype freq
exchange omegaB97X-2(LP)
correlation mp2
basis 6-311++G(3df,3pd)
$end
@@@
$molecule
READ
$end
$rem
jobtype sp
exchange omegaB97X-2(LP)
correlation mp2
basis 6-311++G(3df,3pd)
$end
@@@
$molecule
READ
$end
$rem
jobtype sp
exchange omegaB97X-2(LP)
correlation rimp2
basis 6-311++G(3df,3pd)
aux_basis rimp2-aug-cc-pvtz
$end
Example 4.0 Application of ωB97X-2(TQZ) functional to LiH molecules.
$comment
Single-point calculations on LiH.
$end
$molecule
0 1
H
Li H 1.6
$end
$rem
jobtype sp
exchange omegaB97X-2(TQZ)
correlation mp2
basis cc-pvqz
$end
@@@
$molecule
READ
$end
$rem
jobtype sp
exchange omegaB97X-2(TQZ)
correlation rimp2
basis cc-pvqz
aux_basis rimp2-cc-pvqz
$end
4.3.4.4 LRC-DFT with the M11 Family of Functionals
The Minnesota family of functional by Truhlar's group has been recently updated
by adding two new functionals: M11-L [89] and M11 [90].
The M11 functional is a long-range corrected meta-GGA,
obtained by using the LRC scheme of Chai and Head-Gordon (see above),
with the successful parameterization of the Minnesota meta-GGA functionals:
EM11xc = | ⎛ ⎝
|
X
100
| ⎞ ⎠
|
ESR−HFx + | ⎛ ⎝
|
1 − |
X
100
| ⎞ ⎠
|
ESR−M11x + ELR−HFx + EM11c |
| (4.51) |
with the percentage of Hartree-Fock exchange at short range X being 42.8.
An extension of the LRC scheme to local functional (no HF exchange) was
introduced in the M11-L functional by means of the dual-range exchange:
EM11−Lxc = ESR−M11x + ELR−M11x + EM11−Lc |
| (4.52) |
The correct long-range scheme is selected automatically with the input keywords.
A careful reading of the references [89,[90]
is suggested prior to performing any calculations with the M11 functionals.
Example 4.0 Application of M11 functional to water molecule
$comment
Optimization of H2O with M11
$end
$molecule
0 1
O 0.000000 0.000000 0.000000
H 0.000000 0.000000 0.956914
H 0.926363 0.000000 -0.239868
$end
$rem
jobtype opt
exchange m11
basis 6-31+G(d,p)
$end
4.3.5 Nonlocal Correlation Functionals
Q-Chem includes four nonlocal correlation functionals that describe long-range
dispersion (i.e. van der Waals) interactions:
- vdW-DF-04, developed by Langreth, Lundqvist, and coworkers [118,[119]
and implemented as described in Ref. [120];
- vdW-DF-10 (also known as vdW-DF2), which is a re-parameterization [121]
of vdW-DF-04, implemented in the same way as its precursor [120];
- VV09, developed [122] and implemented [123] by Vydrov and Van Voorhis;
- VV10 by Vydrov and Van Voorhis [124].
All these functionals are implemented self-consistently and analytic gradients with respect
to nuclear displacements are available [120,[123,[124]. The nonlocal
correlation is governed by the $rem variable NL_CORRELATION, which can be set to
one of the four values: vdW-DF-04, vdW-DF-10, VV09, or VV10.
Note that vdW-DF-04, vdW-DF-10, and VV09 functionals are used in combination with LSDA correlation,
which must be specified explicitly. For instance, vdW-DF-10 is invoked by the following keyword
combination:
CORRELATION PW92
NL_CORRELATION vdW-DF-10
VV10 is used in combination with PBE correlation, which must be added explicitly.
In addition, the values of two parameters, C and b must be specified for VV10.
These parameters are controlled by the $rem variables NL_VV_C and
NL_VV_B, respectively. For instance, to invoke VV10 with C = 0.0093
and b = 5.9, the following input is used:
CORRELATION PBE
NL_CORRELATION VV10
NL_VV_C 93
NL_VV_B 590
The variable NL_VV_C may also be specified for VV09, where it has the same
meaning. By default, C = 0.0089 is used in VV09 (i.e. NL_VV_C is set to
89). However, in VV10 neither C nor b are assigned a default value and must
always be provided in the input.
As opposed to local (LSDA) and semilocal (GGA and meta-GGA) functionals, evaluated as a single 3D
integral over space [see Eq. (4.37)], non-local functionals require double integration over the spatial
variables:
Ecnl = | ⌠ ⌡
|
f(r,r′) dr dr′. |
| (4.53) |
In practice, this double integration is performed numerically on a quadrature
grid [120,[123,[124].
By default, the SG-1 quadrature (described in Section 4.3.13 below) is used
to evaluate Ecnl, but a different grid can be requested via the $rem variable
NL_GRID. The non-local energy is rather insensitive to the fineness of the grid, so that
SG-1 or even SG-0 grids can be used in most cases. However, a finer grid may be required for the (semi)local
parts of the functional, as controlled by the XC_GRID variable.
Example 4.0 Geometry optimization of the methane dimer using VV10 with rPW86 exchange.
$molecule
0 1
C 0.000000 -0.000140 1.859161
H -0.888551 0.513060 1.494685
H 0.888551 0.513060 1.494685
H 0.000000 -1.026339 1.494868
H 0.000000 0.000089 2.948284
C 0.000000 0.000140 -1.859161
H 0.000000 -0.000089 -2.948284
H -0.888551 -0.513060 -1.494685
H 0.888551 -0.513060 -1.494685
H 0.000000 1.026339 -1.494868
$end
$rem
JobType Opt
BASIS aug-cc-pVTZ
EXCHANGE rPW86
CORRELATION PBE
XC_GRID 75000302
NL_CORRELATION VV10
NL_GRID 1
NL_VV_C 93
NL_VV_B 590
$end
In the above example, an EML-(75,302) grid is used to evaluate the rPW86 exchange and PBE
correlation, but a coarser SG-1 grid is used for the non-local part of VV10.
4.3.6 DFT-D Methods
4.3.6.1 Empirical dispersion correction from Grimme
Thanks to the efforts of the Sherrill group, the popular empirical
dispersion corrections due to Grimme [68] are
now available in Q-Chem. Energies, analytic gradients, and analytic
second derivatives are available. Grimme's empirical dispersion
corrections can be added to any of the density functionals
available in Q-Chem.
DFT-D methods add an extra term,
| |
|
−s6 |
∑
A
|
|
∑
B < A
|
|
C6AB
RAB6
|
fdmp(RAB) |
| | (4.54) |
| |
|
| | (4.55) |
| |
|
| | (4.56) |
|
where s6 is a global scaling parameter (near unity), fdmp is a
damping parameter meant to help avoid double-counting correlation effects at
short range, d is a global scaling parameter for the damping function,
and RAB0 is the sum of the van der Waals radii of atoms A and B.
DFT-D using Grimme's parameters may be turned on using
DFT_D EMPIRICAL_GRIMME
Grimme has suggested scaling factors s6 of 0.75 for PBE, 1.2 for BLYP,
1.05 for BP86, and 1.05 for B3LYP; these are the default values of s6 when
those functionals are used. Otherwise, the default value of s6 is 1.0.
It is possible to specify different values of s6, d, the atomic C6
coefficients, or the van der Waals radii by using the
$empirical_dispersion keyword; for example:
$empirical_dispersion
S6 1.1
D 10.0
C6 Ar 4.60 Ne 0.60
VDW_RADII Ar 1.60 Ne 1.20
$end
Any values not specified explicitly will default to the values in Grimme's
model.
4.3.6.2 Empirical dispersion correction from Chai and Head-Gordon
The empirical dispersion correction from Chai and Head-Gordon [107]
employs a different damping function and can be activated by using
DFT_D EMPIRICAL_CHG
It uses another keyword DFT_D_A to control the strength of dispersion corrections.
DFT_D
Controls the application of DFT-D or DFT-D3 scheme. |
TYPE:
DEFAULT:
OPTIONS:
FALSE | (or 0) Do not apply the DFT-D or DFT-D3 scheme |
EMPIRICAL_GRIMME | dispersion correction from Grimme |
EMPIRICAL_CHG | dispersion correction from Chai and Head-Gordon |
EMPIRICAL_GRIMME3 | dispersion correction from Grimme's DFT-D3 method |
| (see Section 4.3.8)
|
RECOMMENDATION:
|
| DFT_D_A
Controls the strength of dispersion corrections in the Chai-Head-Gordon DFT-D scheme in Eq.(3) of Ref. . |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to a = n/100. |
RECOMMENDATION:
|
|
|
4.3.7 XDM DFT Model of Dispersion
While standard DFT functionals describe chemical bonds relatively
well, one major deficiency is their inability
to cope with dispersion interactions, i.e., van der Waals (vdW) interactions.
Becke and Johnson have proposed a conceptually simple yet accurate
dispersion model called the exchange-dipole model (XDM) [33,[125].
In this model the dispersion attraction emerges from the interaction between the instant
dipole moment of the exchange hole in one molecule and the induced
dipole moment in another. It is a conceptually simple but powerful approach
that has been shown to yield very accurate dispersion coefficients without
fitting parameters. This allows the calculation of both intermolecular
and intramolecular dispersion interactions within a single DFT framework.
The implementation and validation of this method in the Q-Chem code
is described in Ref. .
Fundamental to the XDM model is the calculation of the norm of the dipole
moment of the exchange hole at a given point:
dσ(r)=− | ⌠ ⌡
|
hσ(r,r′)r′d3r′−r |
| (4.57) |
where σ labels the spin and hσ(r,r′) is
the exchange-hole function. The XDM version that is implemented
in Q-Chem employs the Becke-Roussel (BR) model exchange-hole function.
It was not given in an analytical form and one had to determine
its value at each grid point numerically.
Q-Chem has developed for the first time an analytical
expression for this function based on non-linear interpolation and spline
techniques, which greatly improves efficiency as well as the numerical
stability [28].
There are two different damping functions used in the XDM model of
Becke and Johnson. One of them uses only the intermolecular C6 dispersion
coefficient. In its Q-Chem implementation it is denoted as "XDM6". In this version
the dispersion energy is computed as
EvdW= |
∑
| EvdW,ij=− |
∑
i > j
|
|
C6,ij
Rij6+kC6,ij/(EiC+EjC)
|
|
| (4.58) |
where k is a universal parameter, Rij is the distance
between atoms i and j, and EijC is the sum of the absolute values of
the correlation energy of free atoms i and j. The dispersion
coefficients C6,ij is computed as
C6,ij= |
〈dX2〉i〈dX2〉jαiαj
〈dX2〉iαj+〈dX2〉jαi
|
|
| (4.59) |
where 〈dX2〉i is the exchange hole dipole moment of
the atom, and αi is the effective polarizability of the atom i in
the molecule.
The XDM6 scheme is further generalized to include higher-order dispersion
coefficients, which leads to the "XDM10" model in Q-Chem implementation. The
dispersion energy damping function used in XDM10 is
EvdW=− |
∑
i > j
|
| ⎛ ⎝
|
C6,ij
RvdW,ij6+Rij6
|
+ |
C8,ij
RvdW,ij8+Rij8
|
+ |
C10,ij
RvdW,ij10+Rij10
| ⎞ ⎠
|
|
| (4.60) |
where C6,ij, C8,ij and C10,ij are dispersion coefficients
computed at higher-order multipole (including dipole, quadrupole and octopole)
moments of the exchange hole [127]. In above,
RvdW,ij is the sum of the effective
vdW radii of atoms i and j, which is a linear function of the
so called critical distance RC,ij between atoms i and j:
The critical distance, RC,ij, is computed by averaging these three distances:
RC,ij = |
1
3
|
| ⎡ ⎣
| ⎛ ⎝
|
C8,ij
C6,ij
| ⎞ ⎠
|
1/2
|
+ | ⎛ ⎝
|
C10,ij
C6,ij
| ⎞ ⎠
|
1/4
|
+ | ⎛ ⎝
|
C10,ij
C8,ij
| ⎞ ⎠
|
1/2
| ⎤ ⎦
|
|
| (4.62) |
In the XDM10 scheme there are two universal parameters, a1 and a2. Their
default values of 0.83 and 1.35, respectively, are
due to Johnson and Becke [125], determined by
least square fitting to the binding energies of a set
of intermolecular complexes. Please keep in mind that these values are not
the only possible optimal set to use with XDM.
Becke's group has suggested later on several
other XC functional combinations with XDM
that employ different a1 and a2
values. The user is advised to consult their recent papers for more details
(e.g., Refs. ).
The computed vdW energy is added as a post-SCF correction. In addition, Q-Chem
also has implemented the first and second nuclear derivatives of vdW energy
correction in both the XDM6 and XDM10 schemes.
Listed below are a number of useful options to customize the vdW calculation
based on the XDM DFT approach.
DFTVDW_JOBNUMBER
TYPE:
DEFAULT:
OPTIONS:
0 | Do not apply the XDM scheme. |
1 | add vdW gradient correction to SCF. |
2 | add VDW as a DFT functional and do full SCF. |
RECOMMENDATION:
This option only works with C6 XDM formula |
|
| DFTVDW_METHOD
Choose the damping function used in XDM |
TYPE:
DEFAULT:
OPTIONS:
1 | use Becke's damping function including C6 term only. |
2 | use Becke's damping function with higher-order (C8,C10) terms. |
RECOMMENDATION:
|
|
|
DFTVDW_MOL1NATOMS
The number of atoms in the first monomer in dimer calculation |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
|
| DFTVDW_KAI
Damping factor K for C6 only damping function |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
|
|
|
DFTVDW_ALPHA1
Parameter in XDM calculation with higher-order terms |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
|
| DFTVDW_ALPHA2
Parameter in XDM calculation with higher-order terms. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
|
|
|
DFTVDW_USE_ELE_DRV
Specify whether to add the gradient correction to the XDM energy.
only valid with Becke's C6 damping function
using the interpolated BR89 model. |
TYPE:
DEFAULT:
OPTIONS:
1 | use density correction when applicable (default). |
0 | do not use this correction (for debugging purpose) |
RECOMMENDATION:
|
| DFTVDW_PRINT
Printing control for VDW code |
TYPE:
DEFAULT:
OPTIONS:
0 no printing. |
1 | minimum printing (default) |
2 | debug printing |
RECOMMENDATION:
|
|
|
Example 4.0 Below is a sample input
illustrating a frequency calculation
of a vdW complex consisted of He atom and N2 molecule.
$molecule
0 1
He .0 .0 3.8
N .000000 .000000 0.546986
N .000000 .000000 -0.546986
$end
$rem
JOBTYPE FREQ
IDERIV 2
EXCHANGE B3LYP
!default SCF setting
INCDFT 0
SCF_CONVERGENCE 8
BASIS 6-31G*
XC_GRID 1
SCF_GUESS SAD
!vdw parameters setting
DFTVDW_JOBNUMBER 1
DFTVDW_METHOD 1
DFTVDW_PRINT 0
DFTVDW_KAI 800
DFTVDW_USE_ELE_DRV 0
$end
One should note that the XDM option can be used in
conjunction with different GGA, meta-GGA pure or hybrid functionals,
even though the original implementation of Becke and Johnson
was in combination with Hartree-Fock exchange, or with a specific
meta-GGA exchange and correlation (the BR89 exchange and the BR94
correlation described in previous sections above). For example,
encouraging results were obtained using the XDM option with the
popular B3LYP [126]. Becke has found more recently
that this model can be efficiently combined with the old GGA
exchange of Perdew 86 (the P86 exchange option in Q-Chem), and
with his hyper-GGA functional B05. Using XDM together
with PBE exchange plus LYP correlation, or PBE exchange plus
BR94 correlation has been also found fruitful.
4.3.8 DFT-D3 Methods
Recently, Grimme proposed DFT-D3 method [130] to
improve his previous DFT-D method [68] (see Section 4.3.6).
Energies and analytic gradients of DFT-D3 methods are available in Q-Chem.
Grimme's DFT-D3 method can be combined with any of the
density functionals available in Q-Chem.
The total DFT-D3 energy is given by
EDFT−D3 = EKS−DFT + Edisp |
| (4.63) |
where EKS-DFT is the total energy from KS-DFT and Edisp is the dispersion correction
as a sum of two- and three-body energies,
DFT-D3 method can be turned on by five keywords, DFT_D, DFT_D3_S6, DFT_D3_RS6, DFT_D3_S8 and DFT_D3_3BODY.
DFT_D
Controls the application of DFT-D3 or DFT-D scheme. |
TYPE:
DEFAULT:
OPTIONS:
FALSE | (or 0) Do not apply the DFT-D3 or DFT-D scheme |
EMPIRICAL_GRIMME3 | dispersion correction from Grimme's DFT-D3 method |
EMPIRICAL_GRIMME | dispersion correction from Grimme (see Section 4.3.6) |
EMPIRICAL_CHG | dispersion correction from Chai and Head-Gordon (see Section 4.3.6)
|
RECOMMENDATION:
|
Grimme suggested three scaling factors s6, sr,6 and s8 that were optimized for several functionals
(see Table IV in Ref. ).
For example, sr,6 of 1.217 and s8 of 0.722 for PBE, 1.094 and 1.682 for BLYP, 1.261 and 1.703 for B3LYP, 1.532 and 0.862 for PW6B95,
0.892 and 0.909 for BECKE97, and 1.287 and 0.928 for PBE0; these are the Q-Chem
default values of sr,6 and s8. Otherwise, the default values
of s6, sr,6 and s8 are 1.0.
DFT_D3_S6
Controls the strength of dispersion corrections, s6, in Grimme's DFT-D3 method (see Table IV in
Ref. ). |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to s6 = n/1000. |
RECOMMENDATION:
|
| DFT_D3_RS6
Controls the strength of dispersion corrections, sr6, in the Grimme's DFT-D3 method (see Table IV in Ref. ). |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to sr6 = n/1000. |
RECOMMENDATION:
|
|
|
DFT_D3_S8
Controls the strength of dispersion corrections, s8, in Grimme's DFT-D3 method (see Table IV in
Ref. ). |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to s8 = n/1000. |
RECOMMENDATION:
|
The three-body interaction term, mentioned in Ref. , can also be turned on, if needed.
DFT_D3_3BODY
Controls whether the three-body interaction in Grimme's DFT-D3 method should be applied
(see Eq. (14) in Ref. ). |
TYPE:
DEFAULT:
OPTIONS:
FALSE | (or 0) Do not apply the three-body interaction term |
TRUE | Apply the three-body interaction term
|
RECOMMENDATION:
|
Example 4.0 Applications of B3LYP-D3 to a methane dimer.
$comment
Geometry optimization, followed by single-point calculations
using a larger basis set.
$end
$molecule
0 1
C 0.000000 -0.000323 1.755803
H -0.887097 0.510784 1.390695
H 0.887097 0.510784 1.390695
H 0.000000 -1.024959 1.393014
H 0.000000 0.001084 2.842908
C 0.000000 0.000323 -1.755803
H 0.000000 -0.001084 -2.842908
H -0.887097 -0.510784 -1.390695
H 0.887097 -0.510784 -1.390695
H 0.000000 1.024959 -1.393014
$end
$rem
jobtype opt
exchange B3LYP
basis 6-31G*
DFT_D EMPIRICAL_GRIMME3
DFT_D3_S6 1000
DFT_D3_RS6 1261
DFT_D3_S8 1703
DFT_D3_3BODY FALSE
$end
@@@
$molecule
READ
$end
$rem
jobtype sp
exchange B3LYP
basis 6-311++G**
DFT_D EMPIRICAL_GRIMME3
DFT_D3_S6 1000
DFT_D3_RS6 1261
DFT_D3_S8 1703
DFT_D3_3BODY FALSE
$end
4.3.9 Double-Hybrid Density Functional Theory
The recent advance in double-hybrid density functional theory
(DH-DFT) [39,[114,[115,[116,[94],
has demonstrated its great potential for approaching the chemical accuracy with a
computational cost comparable to the second-order Møller-Plesset perturbation theory (MP2).
In a DH-DFT, a Kohn-Sham (KS) DFT
calculation is performed first, followed by a treatment of
non-local orbital correlation energy at the level of second-order Møller-Plesset perturbation
theory (MP2) [117]. This MP2 correlation correction includes a
a same-spin (ss) component, Ecss, as well as an
opposite-spin (os) component, Ecos, which are added to the total energy obtained from
the KS-DFT calculation. Two scaling parameters, css and cos, are introduced
in order to avoid double-counting correlation:
EDH−DFT = EKS−DFT + css Ecss + cos Ecos |
| (4.65) |
Among DH functionals, ωB97X-2 [40], a long-range corrected
DH functional, is described in Section 4.3.4.3.
There are three keywords for turning on DH-DFT as below.
DH
Controls the application of DH-DFT scheme. |
TYPE:
DEFAULT:
OPTIONS:
FALSE | (or 0) Do not apply the DH-DFT scheme |
TRUE | (or 1) Apply DH-DFT scheme |
RECOMMENDATION:
|
| DH_SS
Controls the strength of the same-spin component of PT2 correlation energy. |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to css = n/1000000 in Eq. (4.65). |
RECOMMENDATION:
|
|
|
DH_OS
Controls the strength of the opposite-spin component of PT2 correlation energy. |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to cos = n/1000000 in Eq. (4.65). |
RECOMMENDATION:
|
For example, B2PLYP [68], which involves 53% Hartree-Fock exchange,
47% Becke 88 GGA exchange, 73% LYP GGA correlation and 27% PT2
orbital correlation, can be called with the following input file.
The PT2 correlation energy can also be computed with the
efficient resolution-of-identity (RI) methods
(see Section 5.5).
Example 4.0 Applications of B2PLYP functional to LiH molecule.
$comment
Geometry optimization and frequency calculation on LiH, followed by
single-point calculations with non-RI and RI approaches.
$end
$molecule
0 1
H
Li H 1.6
$end
$rem
jobtype opt
exchange general
correlation mp2
basis cc-pvtz
DH 1
DH_SS 270000 !0.27 = 270000/1000000
DH_OS 270000 !0.27 = 270000/1000000
$end
$XC_Functional
X HF 0.53
X B 0.47
C LYP 0.73
$end
@@@
$molecule
READ
$end
$rem
jobtype freq
exchange general
correlation mp2
basis cc-pvtz
DH 1
DH_SS 270000
DH_OS 270000
$end
$XC_Functional
X HF 0.53
X B 0.47
C LYP 0.73
$end
@@@
$molecule
READ
$end
$rem
jobtype sp
exchange general
correlation mp2
basis cc-pvtz
DH 1
DH_SS 270000
DH_OS 270000
$end
$XC_Functional
X HF 0.53
X B 0.47
C LYP 0.73
$end
@@@
$molecule
READ
$end
$rem
jobtype sp
exchange general
correlation rimp2
basis cc-pvtz
aux_basis rimp2-cc-pvtz
DH 1
DH_SS 270000
DH_OS 270000
$end
$XC_Functional
X HF 0.53
X B 0.47
C LYP 0.73
$end
A more detailed gist of one particular class of DH functionals, the
XYG3 & XYGJ-OS functionals follows below thanks to Dr Yousung Jung
who implemented these functionals in Q-Chem.
A starting point of these DH functionals is the adiabatic connection formula
which provides a rigorous way to define them. One considers an adiabatic
path between the fictitious noninteracting Kohn-Sham system (λ= 0)
and the real physical system (λ= 1) while holding the electron
density fixed at its physical state for all λ:
EXC [ρ]= | ⌠ ⌡
|
1
0
|
UXC,λ [ρ]dλ , |
| (4.66) |
where UXC,λ is the exchange correlation potential energy at
a coupling strength λ. If one assumes a linear model of the latter:
one obtains the popular hybrid functional that includes the Hartree-Fock exchange
(or occupied orbitals) such as B3LYP. If one further uses the Gorling-Levy's
perturbation theory (GL2) to define the initial slope at λ= 0,
one obtains the doubly hybrid functional (see Eq. 4.65) that includes
MP2 type perturbative terms (PT2) involving virtual Kohn-Sham orbitals:
UXC,λ = |
∂UXC,λ
λ
| ⎢ ⎢
|
λ = 0
|
=2ECGL2 . |
| (4.68) |
In the DH functional XYG3, as implemented in Q-Chem, the B3LYP orbitals
are used to generate the density and evaluate the PT2 terms. This is different
from P2PLYP, an earlier doubly hybrid functional by Grimme. P2PLYP
uses truncated Kohn-Sham orbitals while XYG3 uses converged KS orbitals
to evaluate the PT2 terms. The performance of XYG3 is not only comparable
to that of the G3 or G2 theory for thermochemistry, but barrier heights
and non-covalent interactions, including stacking interactions,
are also very well described by XYG3 [94].
The recommended basis set for XYG3 is 6-311+G(3df,2p).
Due to the inclusion of PT2 terms, XYG3 or all other forms of doubly
hybrid functionals formally scale as the 5th power of system size as
in conventional MP2, thereby not applicable to large systems and
partly losing DFT's cost advantages. With the success of SOS-MP2 and
local SOS-MP2 algorithms developed in Q-Chem, the natural extension
of XYG3 is to include only opposite-spin correlation contributions,
ignoring the same-spin parts. The resulting DH functional is XYGJ-OS
also implemented in Q-Chem. It has 4 parameters that are optimized
using thermochemistry data. This new functional is both accurate
(comparable or even slightly better than XYG3) and faster. If the local
algorithm is applied, the formal scaling of XYGJ-OS is cubic, without
the locality, it has still 4th order scaling.
Recently, XYGJ-OS becomes the only DH functional with analytical gradient [131].
Example 1: XYG3 calculation of N2. XYG3 invokes automatically
the B3LYP calculation first, and use the resulting orbitals
for evaluating the MP2-type correction terms. One can also
use XYG3 combined with RI approximation for the PT2 terms; use
EXCHANGE = XYG3RI to do so, along with an appropriate
choice of auxiliary basis set.
Example 4.0 XYG3 calculation of N2
$molecule
0 1
N 0.00000000 0.00000000 0.54777500
N 0.00000000 0.00000000 -0.54777500
$end
$rem
exchange xyg3
basis 6-311+G(3df,2p)
$end
Example 2: XYGJ-OS calculation of N2. Since it uses
the RI approximation by default, one must define the auxiliary basis.
Example 4.0 XYGJ-OS calculation of N2
$molecule
0 1
N 0.00000000 0.00000000 0.54777500
N 0.00000000 0.00000000 -0.54777500
$end
$rem
exchange xygjos
basis 6-311+G(3df,2p)
aux_basis rimp2-cc-pVtZ
purecart 1111
time_mp2 true
$end
Example 3: Local XYGJ-OS calculation of N2. The same as XYGJ-OS,
except for the use of the attenuated Coulomb metric to solve
the RI coefficients. Omega determines the locality of the metric.
Example 4.0 Local XYGJ-OS calculation of N2
$molecule
0 1
N 0.000 0.000 0.54777500
N 0.000 0.000 -0.54777500
$end
$rem
exchange lxygjos
omega 200
basis 6-311+G(3df,2p)
aux_basis rimp2-cc-pVtZ
purecart 1111
$end
4.3.10 Asymptotically Corrected Exchange-Correlation Potentials
It is well known that no gradient-corrected exchange functional can simultaneously produce the correct
contribution to the exchange energy density and exchange potential in the
asymptotic region of molecular systems [132]. Existing GGA exchange-correlation
(xc) potentials decay much faster than the correct −1/r xc potential in the asymptotic
region [133]. High-lying occupied orbitals and low-lying virtual orbitals are therefore
too loosely bounded from these GGA functionals, and the minus HOMO energy becomes
much less than the exact ionization potential (as required by the exact
DFT) [134,[135].
Moreover, response properties could be poorly predicted from TDDFT calculations
with GGA functionals [135]. Long-range corrected hybrid DFT (LRC-DFT), described in
Section 4.3.4, has greatly remedied this situation. However, due to the
use of long-range HF exchange, LRC-DFT is computationally more expensive than KS-DFT with GGA functionals.
To circumvent this, van Leeuwen and Baerends proposed an asymptotically corrected (AC) exchange potential [132]:
vxLB = −β |
x2
1+3 βsinh−1(x)
|
|
| (4.69) |
that will reduce to −1/r, for an exponentially decaying density, in the
asymptotic region of molecular systems, where x = [( |∇ρ|)/(ρ4/3)] is the reduced
density gradient. The LB94 xc potential is formed by a linear combination of LDA
xc potential and the LB exchange potential [132]:
The parameter β was determined by fitting the LB94 xc potential to the beryllium atom.
As mentioned in Ref. , for TDDFT and TDDFT/TDA calculations,
it is sufficient to include the AC xc potential for ground-state calculations followed by TDDFT
calculations with an adiabatic LDA xc kernel. The implementation of LB94 xc potential
in Q-Chem thus follows this; using LB94 xc potential for ground-state calculations, followed
by TDDFT calculations with an adiabatic LDA xc kernel. This TDLDA / LB94 approach
has been widely applied to study excited-state properties of large molecules in literature.
Since the LB exchange potential does not come from the functional derivative of some exchange
functional, we use the Levy-Perdew virial relation [138] (implemented in Q-Chem)
to obtain its exchange energy:
ExLB = − | ⌠ ⌡
|
vxLB([ρ],r)[3ρ(r)+r∇ρ(r)]dr |
| (4.71) |
LB94_BETA
Set the β parameter of LB94 xc potential |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to β = n/10000. |
RECOMMENDATION:
Use default, i.e., β = 0.05 |
|
Example 4.0 Applications of LB94 xc potential to N2 molecule.
$comment
TDLDA/LB94 calculation is performed for excitation energies.
$end
$molecule
0 1
N 0.0000 0.0000 0.0000
N 1.0977 0.0000 0.0000
$end
$rem
jobtype = sp
exchange = lb94
basis = 6-311(2+,2+)G**
cis_n_roots = 30
rpa = true
$end
4.3.11 DFT Numerical Quadrature
In practical DFT calculations, the forms of the approximate
exchange-correlation functionals used are quite complicated, such that the
required integrals involving the functionals generally cannot be evaluated
analytically. Q-Chem evaluates these integrals through numerical quadrature
directly applied to the exchange-correlation integrand (i.e., no fitting of
the XC potential in an auxiliary basis is done). Q-Chem provides a standard
quadrature grid by default which is sufficient for most purposes.
The quadrature approach in Q-Chem is generally similar to that found in many
DFT programs. The multi-center XC integrals are first partitioned into
"atomic" contributions using a nuclear weight function. Q-Chem uses the
nuclear partitioning of Becke [139], though without the atomic
size adjustments". The atomic integrals are then evaluated through standard
one-center numerical techniques.
Thus, the exchange-correlation energy EXC is obtained as
EXC = |
∑
A
|
|
∑
i
|
wAi f( rAi ) |
| (4.72) |
where the first summation is over the atoms and the second is over the
numerical quadrature grid points for the current atom. The f function is the
exchange-correlation functional. The wAi are the quadrature weights, and
the grid points rAi are given by
where RA is the position of nucleus A, with the
ri defining a suitable one-center integration grid, which is
independent of the nuclear configuration.
The single-center integrations are further separated into radial and angular
integrations. Within Q-Chem, the radial part is usually treated by the
Euler-Maclaurin scheme proposed by Murry et al. [140]. This scheme
maps the semi-infinite domain [0,∞)→ [0,1) and applies the extended
trapezoidal rule to the transformed integrand. Recently Gill and
Chien [141] proposed a radial scheme based on a Gaussian quadrature on
the interval [0,1] with weight function ln2x. This scheme is exact for
integrands that are a linear combination of a geometric sequence of exponential
functions, and is therefore well suited to evaluating atomic integrals. The
authors refer to this scheme as MultiExp.
4.3.12 Angular Grids
Angular quadrature rules may be characterized by their degree, which is the
highest degree of spherical harmonics for which the formula is exact, and
their efficiency, which is the number of spherical harmonics exactly
integrated per degree of freedom in the formula. Q-Chem supports the
following types of angular grids:
Lebedev
These are specially constructed grids for quadrature on the surface of a
sphere [142,[143,[144] based on the octahedral group.
Lebedev grids of the following degrees are available:
Degree | 3rd | 5th | 7th | 9th | 11th | 15th | 17th | 19th | 23rd | 29th |
Points | 6 | 18 | 26 | 38 | 50 | 86 | 110 | 146 | 194 | 302 |
Additional grids with the following number of points are also available: 74,
170, 230, 266, 350, 434, 590, 770, 974, 1202, 1454, 1730, 2030, 2354, 2702,
3074, 3470, 3890, 4334, 4802, 5294. Lebedev grids typically have
efficiencies near one, with efficiencies greater than one in some cases.
Gauss-Legendre
These are spherical product rules separating the two angular dimensions
θ and ϕ. Integration in the θ dimension is carried out
with a Gaussian quadrature rule derived from the Legendre polynomials
(orthogonal on [−1,1] with weight function unity), while the ϕ
integration is done with equally spaced points.
A Gauss-Legendre grid is selected by specifying the total number of points,
2N2, to be used for the integration. This gives a grid with
2Nϕ ϕ-points, Nθ θ-points, and a degree of 2N−1.
In contrast with Lebedev grids, Gauss-Legendre grids have efficiency of only
2/3 (hence more Gauss-Legendre points are required to attain the same
accuracy as Lebedev). However, since Gauss-Legendre grids of general degree
are available, this is a convenient mechanism for achieving arbitrary
accuracy in the angular integration if desired.
Combining these radial and angular schemes yields an intimidating selection
of three-dimensional quadratures. In practice, is it useful to standardize
the grids used in order to facilitate the comparison of calculations at
different levels of theory.
4.3.13 Standard Quadrature Grids
Both the SG-0 [145] and SG-1 [146] standard quadrature
grids were designed to yield the performance of a large, accurate quadrature
grid, but with as few points as possible for the sake of computational
efficiency. This is accomplished by reducing the number of angular points in
regions where sophisticated angular quadrature is not necessary, such as near
the nuclei where the charge density is nearly spherically symmetric, while
retaining large numbers of angular points in the valence region where angular
accuracy is critical.
The SG-0 grid was derived in this fashion from a MultiExp-Lebedev-(23,170),
(i.e., 23 radial points and 170 angular points per radial point). This grid
was pruned whilst ensuring the error in the computed exchange energies for the
atoms and a selection of small molecules was not larger than the corresponding
error associated with SG-1. In our evaluation, the RMS error associated with
the atomization energies for the molecules in the G1 data set is 72
microhartrees. While relative energies are expected to be reproduced well by
this scheme, if absolute energies are being sought, a larger grid is
recommended.
The SG-0 grid is implemented in Q-Chem from H to micro Hartrees, excepted He and Na; in
this scheme, each atom has around 1400-point, and SG-1 is used for those
their SG-0 grids have not been defined. It should be noted that, since
the SG-0 grid used for H has been re-optimized in this version of Q-Chem
(version 3.0), quantities calculated in this scheme may not reproduce those
generated by the last version (version 2.1).
The SG-1 grid is derived from a Euler-Maclaurin-Lebedev-(50,194) grid
(i.e., 50 radial points, and 194 angular points per radial point). This grid
has been found to give numerical integration errors of the order of 0.2 kcal/mol
for medium-sized molecules, including particularly demanding test
cases such as isomerization energies of alkanes. This error is deemed
acceptable since it is significantly smaller than the accuracy typically
achieved by quantum chemical methods. In SG-1 the total number of points is
reduced to approximately 1/4 of that of the original EML-(50,194) grid, with
SG-1 generally giving the same total energies as EML-(50,194) to within a few
microhartrees (0.01 kcal/mol). Therefore, the SG-1 grid is relatively
efficient while still maintaining the numerical accuracy necessary for chemical
reliability in the majority of applications.
Both the SG-0 and SG-1 grids were optimized so that the error in the energy
when using the grid did not exceed a target threshold. For single point
calculations this criterion is appropriate. However, derivatives of the energy
can be more sensitive to the quality of the integration grid, and it is
recommended that a larger grid be used when calculating these. Special care
is required when performing DFT vibrational calculations as imaginary
frequencies can be reported if the grid is inadequate. This is more of a
problem with low-frequency vibrations. If imaginary frequencies are found, or
if there is some doubt about the frequencies reported by Q-Chem, the
recommended procedure is to perform the calculation again with a larger grid
and check for convergence of the frequencies. Of course the geometry must be
re-optimized, but if the existing geometry is used as an initial guess, the
geometry optimization should converge in only a few cycles.
4.3.14 Consistency Check and Cutoffs for Numerical Integration
Whenever Q-Chem calculates numerical density functional integrals, the
electron density itself is also integrated numerically as a test on the
quality of the quadrature formula used. The deviation of the numerical
result from the number of electrons in the system is an indication of the
accuracy of the other numerical integrals. If the relative error in the
numerical electron count reaches 0.01%, a warning is printed; this is an
indication that the numerical XC results may not be reliable. If the warning
appears at the first SCF cycle, it is probably not serious, because the
initial-guess density matrix is sometimes not idempotent, as is the case
with the SAD guess and the density matrix taken from a different geometry in
a geometry optimization. If that is the case, the problem will be corrected
as the idempotency is restored in later cycles. On the other hand, if the
warning is persistent to the end of SCF iterations, then either a finer grid
is needed, or choose an alternative method for generating the initial guess.
Users should be aware, however, of the potential flaws that have been
discovered in some of the grids currently in use. Jarecki and Davidson [147],
for example, have recently shown that correctly
integrating the density is a necessary, but not sufficient, test of grid
quality.
By default, Q-Chem will estimate the magnitude of various XC contributions on
the grid and eliminate those determined to be numerically insignificant.
Q-Chem uses specially developed cutoff procedures which permits evaluation of
the XC energy and potential in only O(N) work for large molecules, where N
is the size of the system. This is a significant improvement over the formal
O(N3) scaling of the XC cost, and is critical in enabling DFT calculations
to be carried out on very large systems. In very rare cases, however, the
default cutoff scheme can be too aggressive, eliminating contributions that
should be retained; this is almost always signaled by an inaccurate numerical
density integral. An example of when this could occur is in calculating anions
with multiple sets of diffuse functions in the basis. As mentioned above, when
an inaccurate electron count is obtained, it maybe possible to remedy the
problem by increasing the size of the quadrature grid.
Finally we note that early implementations of quadrature-based Kohn-Sham DFT
employing standard basis sets were plagued by lack of rotational invariance.
That is, rotation of the system yielded a significantly energy change.
Clearly, such behavior is highly undesirable. Johnson et al. rectified the
problem of rotational invariance by completing the specification of the grid
procedure [148] to ensure that the computed XC energy is the same
for any orientation of the molecule in any Cartesian coordinate system.
4.3.15 Basic DFT Job Control
Three $rem variables are required to run a DFT job: EXCHANGE,
CORRELATION and BASIS. In addition, all of the basic input
options discussed for Hartree-Fock calculations in Section
4.2.3, and the extended options discussed in Section
4.2.4 are all valid for DFT calculations. Below we list
only the basic DFT-specific options (keywords).
| EXCHANGE
Specifies the exchange functional or exchange-correlation functional for hybrid. |
TYPE:
DEFAULT:
No default exchange functional |
OPTIONS:
NAME | Use EXCHANGE = NAME, where NAME is |
| one of the exchange functionals listed in Table 4.2. |
RECOMMENDATION:
Consult the literature to guide your selection. |
|
|
|
CORRELATION
Specifies the correlation functional. |
TYPE:
DEFAULT:
OPTIONS:
None | No correlation |
VWN | Vosko-Wilk-Nusair parameterization #5 |
LYP | Lee-Yang-Parr (LYP) |
PW91, PW | GGA91 (Perdew-Wang) |
PW92 | LSDA 92 (Perdew and Wang) [44] |
PK09 | LSDA (Proynov-Kong) [45] |
LYP(EDF1) | LYP(EDF1) parameterization |
Perdew86, P86 | Perdew 1986 |
PZ81, PZ | Perdew-Zunger 1981 |
PBE | Perdew-Burke-Ernzerhof 1996 |
TPSS | The correlation component of the TPSS functional |
B94 | Becke 1994 correlation in fully analytic form |
B95 | Becke 1995 correlation |
B94hyb | Becke 1994 correlation as above, but re-adjusted for use only within |
| the hybrid scheme BR89B94hyb |
PK06 | Proynov-Kong 2006 correlation (known also as "tLap" |
(B88)OP | OP correlation [74], optimized for use with B88 exchange |
(PBE)OP | OP correlation [74], optimized for use with PBE exchange |
Wigner | Wigner |
RECOMMENDATION:
Consult the literature to guide your selection. |
|
|
EXCHANGE = | Description | |
|
HF | Fock exchange |
Slater, S | Slater (Dirac 1930) |
Becke86, B86 | Becke 1986 |
Becke, B, B88 | Becke 1988 |
muB88 | Short-range Becke exchange, as formulated by Song et al. [105] |
Gill96, Gill | Gill 1996 |
GG99 | Gilbert and Gill, 1999 |
Becke(EDF1), B(EDF1) | Becke (uses EDF1 parameters) |
PW86, | Perdew-Wang 1986 |
rPW86, | Re-fitted PW86 [49] |
PW91, PW | Perdew-Wang 1991 |
mPW1PW91 | modified PW91 |
mPW1LYP | modified PW91 exchange + LYP correlation |
mPW1PBE | modified PW91 exchange + PBE correlation |
mPW1B95 | modified PW91 exchange + B97 correlation |
mPWB1K | mPWB1K |
PBE | Perdew-Burke-Ernzerhof 1996 |
TPSS | The nonempirical exchange-correlation scheme of Tao, |
| Perdew, Staroverov, and Scuseria (requires also that the user |
| specify "TPSS" for correlation) |
TPSSH | The hybrid version of TPSS (with no input line for correlation) |
PBE0, PBE1PBE | PBE hybrid with 25% HF exchange |
PBE50 | PBE hybrid with 50% HF exchange |
revPBE | revised PBE exchange [58] |
PBEOP | PBE exchange + one-parameter progressive correlation |
wPBE | Short-range ωPBE exchange, as formulated by
Henderson et al. [106] |
muPBE | Short-range μPBE exchange, as formulated by
Song et al. [105] |
LRC-wPBEPBE | long-range corrected pure PBE |
LRC-wPBEhPBE | long-range corrected hybrid PBE |
B1B95 | Becke hybrid functional with B97 correlation |
B97 | Becke97 XC hybrid |
B97-1 | Becke97 re-optimized by Hamprecht et al. (1998) |
B97-2 | Becke97-1 optimized further by Wilson et al. (2001) |
B97-D | Grimme's modified B97 with empirical dispersion |
B3PW91, Becke3PW91, B3P | B3PW91 hybrid |
B3LYP, Becke3LYP | B3LYP hybrid |
B3LYP5 | B3LYP based on correlation functional #5 of Vosko, Wilk, |
| and Nusair (rather than their functional #3) |
CAM-B3LYP | Coulomb-attenuated B3LYP |
HC-O3LYP | O3LYP from Handy |
X3LYP | X3LYP from Xu and Goddard |
B5050LYP | modified B3LYP functional with 50% Hartree-Fock exchange |
BHHLYP | modified BLYP functional with 50% Hartree-Fock exchange |
B3P86 | B3 exchange and Perdew 86 correlation |
B3PW91 | B3 exchange and GGA91 correlation |
B3tLAP | Hybrid Becke exchange and PK06 correlation |
HCTH | HCTH hybrid |
HCTH-120 | HCTH-120 hybrid |
HCTH-147 | HCTH-147 hybrid |
HCTH-407 | HCTH-407 hybrid |
BOP | B88 exchange + one-parameter progressive correlation |
EDF1 | EDF1 |
EDF2 | EDF2 |
VSXC | VSXC meta-GGA, not a hybrid |
BMK | BMK hybrid |
M05 | M05 hybrid |
M052X | M05-2X hybrid |
M06L | M06-L hybrid |
M06HF | M06-HF hybrid |
M06 | M06 hybrid |
M062X | M06-2X hybrid |
M08HX | M08-HX hybrid |
M08SO | M08-SO hybrid |
M11L | M11-L hybrid |
M11 | M11 long-range corrected hybrid |
SOGGA | SOGGA hybrid |
SOGGA11 | SOGGA11 hybrid |
SOGGA11X | SOGGA11-X hybrid |
BR89 | Becke-Roussel 1989 represented in analytic form |
BR89B94h | Hybrid BR89 exchange and B94hyb correlation |
omegaB97 | ωB97 long-range corrected hybrid |
omegaB97X | ωB97X long-range corrected hybrid |
omegaB97X-D | ωB97X-D long-range corrected hybrid with dispersion |
| corrections |
omegaB97X-2(LP) | ωB97X-2(LP) long-range corrected double-hybrid |
omegaB97X-2(TQZ) | ωB97X-2(TQZ) long-range corrected double-hybrid |
MCY2 | The MCY2 hyper-GGA exchange-correlation (with no |
| input line for correlation) |
B05 | Full exact-exchange hyper-GGA functional of Becke 05 with |
| RI approximation for the exact-exchange energy density |
BM05 | Modified B05 hyper-GGA scheme with RI approximation for |
| the exact-exchange energy density used as a variable. |
XYG3 | XYG3 double-hybrid functional |
XYGJOS | XYGJ-OS double-hybrid functional |
LXYGJOS | LXYGJ-OS double-hybrid functional with localized MP2 |
General, Gen | User defined combination of K, X and C (refer to the next |
| section) |
|
Table 4.2: DFT exchange functionals available within Q-Chem. |
|
NL_CORRELATION
Specifies a non-local correlation functional that includes non-empirical dispersion. |
TYPE:
DEFAULT:
None | No non-local correlation. |
OPTIONS:
None | No non-local correlation |
vdW-DF-04 | the non-local part of vdW-DF-04 |
vdW-DF-10 | the nonlocal part of vdW-DF-10 (aka vdW-DF2) |
VV09 | the nonlocal part of VV09 |
VV10 | the nonlocal part of VV10 |
RECOMMENDATION:
Do not forget to add the LSDA correlation (PW92 is recommended) when
using vdW-DF-04, vdW-DF-10, or VV09. VV10 should be used with PBE
correlation. Choose exchange functionals carefully: HF, rPW86, revPBE, and
some of the LRC exchange functionals are among the recommended choices. |
|
| NL_VV_C
Sets the parameter C in VV09 and VV10. This parameter is fitted to asymptotic
van der Waals C6 coefficients. |
TYPE:
DEFAULT:
89 | for VV09 |
No default | for VV10 |
OPTIONS:
n | Corresponding to C = n/10000 |
RECOMMENDATION:
C = 0.0093 is recommended when a semilocal exchange functional is used.
C = 0.0089 is recommended when a long-range corrected (LRC) hybrid functional is used.
See further details in Ref. [124]. |
|
|
|
NL_VV_B
Sets the parameter b in VV10. This parameter controls the short range behavior
of the nonlocal correlation energy. |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to b = n/100 |
RECOMMENDATION:
The optimal value depends strongly on the exchange functional used.
b = 5.9 is recommended for rPW86. See further details in Ref. [124]. |
|
| FAST_XC
Controls direct variable thresholds to accelerate exchange correlation (XC) in
DFT. |
TYPE:
DEFAULT:
OPTIONS:
TRUE | Turn FAST_XC on. |
FALSE | Do not use FAST_XC. |
RECOMMENDATION:
Caution: FAST_XC improves the speed of a DFT calculation, but
may occasionally cause the SCF calculation to diverge. |
|
|
|
XC_GRID
Specifies the type of grid to use for DFT calculations. |
TYPE:
DEFAULT:
OPTIONS:
0 | Use SG-0 for H, C, N, and O, SG-1 for all other atoms. |
1 | Use SG-1 for all atoms. |
2 | Low Quality. |
mn | The first six integers correspond to m radial points and the second six |
| integers correspond to n angular points where possible numbers of Lebedev |
| angular points are listed in section 4.3.11. |
−mn | The first six integers correspond to m radial points and the second six |
| integers correspond to n angular points where the number of Gauss-Legendre |
| angular points n = 2N2. |
RECOMMENDATION:
Use default unless numerical integration problems arise. Larger grids may be
required for optimization and frequency calculations. |
|
| XC_SMART_GRID
Uses SG-0 (where available) for early SCF cycles, and switches to the
(larger) grid specified by XC_GRID (which defaults to SG-1, if not
otherwise specified) for final cycles of the SCF. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
The use of the smart grid can save some time on initial SCF cycles. |
|
|
|
NL_GRID
Specifies the grid to use for non-local correlation. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Use default unless computational cost becomes prohibitive, in which case SG-0 may be used.
XC_GRID should generally be finer than NL_GRID. |
|
4.3.16 Example
Example 4.0 Q-Chem input for a DFT single point energy calculation on
water.
$comment
B-LYP/STO-3G water single point calculation
$end
$molecule
0 1
O
H1 O oh
H2 O oh H1 hoh
oh = 1.2
hoh = 120.0
$end.
$rem
EXCHANGE Becke Becke88 exchange
CORRELATION lyp LYP correlation
BASIS sto-3g Basis set
$end
4.3.17 User-Defined Density Functionals
The format for entering user-defined exchange-correlation density functionals
is one line for each component of the functional. Each line requires three
variables: the first defines whether the component is an exchange or
correlation functional by declaring an X or C, respectively. The second
variable is the symbolic representation of the functional as used for the
EXCHANGE and CORRELATION $rem variables. The final variable
is a real number corresponding to the contribution of the component to the
functional. Hartree-Fock exchange contributions (required for hybrid density
functionals) can be entered using only two variables (K, for HF exchange)
followed by a real number.
$xc_functional
X exchange_symbol coefficient
X exchange_symbol coefficient
...
C correlation_symbol coefficient
C correlation_symbol coefficient
...
K coefficient
$end
Note:
(1) Coefficients are real.
(2) A user-defined functional does not require all X, C and K components. |
Examples of user-defined XCs: these are XC options that
for the time being can only be invoked via the user defined XC input section:
Example 4.0 Q-Chem input of water with B3tLap.
$comment
water with B3tLap
$end
$molecule
0 1
O
H1 O oh
H2 O oh H1 hoh
oh = 0.97
hoh = 120.0
$end
$rem
EXCHANGE gen
CORRELATION none
XC_GRID 000120000194 ! recommended for high accuracy
BASIS G3LARGE ! recommended for high accuracy
THRESH 14 ! recommended for high accuracy and better convergence
$end
$xc_functional
X Becke 0.726
X S 0.0966
C PK06 1.0
K 0.1713
$end
Example 4.0 Q-Chem input of water with BR89B94hyb.
$comment
water with BR89B94hyb
$end
$molecule
0 1
O
H1 O oh
H2 O oh H1 hoh
oh = 0.97
hoh = 120.0
$end
$rem
EXCHANGE gen
CORRELATION none
XC_GRID 000120000194 ! recommended for high accuracy
BASIS G3LARGE ! recommended for high accuracy
THRESH 14 ! recommended for high accuracy and better convergence
$end
$xc_functional
X BR89 0.846
C B94hyb 1.0
K 0.154
$end
More specific is the use of the RI-B05 and RI-PSTS functionals. In this release
we offer only single-point SCF calculations with these functionals.
Both options require a converged LSD or HF solution as initial guess,
which greatly facilitates the convergence. It
also requires specifying a particular auxiliary basis set:
Example 4.0 Q-Chem input of H2 using RI-B05.
$comment
H2, example of SP RI-B05.
First do a well-converged LSD, G3LARGE is the basis of choice
for good accuracy. The input lines
purecar 222
SCF_GUESS CORE
are obligatory for the time being here.
$end
$molecule
0 1
H 0. 0. 0.0
H 0. 0. 0.7414
$end
$rem
JOBTYPE SP
SCF_GUESS CORE
EXCHANGE SLATER
CORRELATION VWN
BASIS G3LARGE
purcar 222
THRESH 14
MAX_SCF_CYCLES 80
PRINT_INPUT TRUE
INCDFT FALSE
XC_GRID 000128000302
SYM_IGNORE TRUE
SYMMETRY FALSE
SCF_CONVERGENCE 9
$end
@@@@
$comment
For the time being the following input lines are obligatory:
purcar 22222
AUX_BASIS riB05-cc-pvtz
dft_cutoffs 0
1415 1
MAX_SCF_CYCLES 0
JOBTYPE SP
$end
$molecule
READ
$end
$rem
JOBTYPE SP
SCF_GUESS READ
EXCHANGE B05
! EXCHANGE PSTS ! use this line for RI-PSTS
purcar 22222
BASIS G3LARGE
AUX_BASIS riB05-cc-pvtz ! The aux basis for RI-B05 and RI-PSTS
THRESH 14
PRINT_INPUT TRUE
INCDFT FALSE
XC_GRID 000128000302
SYM_IGNORE TRUE
SYMMETRY FALSE
MAX_SCF_CYCLES 0
dft_cutoffs 0
1415 1
$end
Besides post-LSD, the RI-B05 option can be used as post-Hartree-Fock
method as well, in which case one first does a well-converged HF
calculation and uses it as a guess read in the consecutive RI-B05
run.
4.4 Large Molecules and Linear Scaling Methods
4.4.1 Introduction
Construction of the effective Hamiltonian, or Fock matrix, has traditionally
been the rate-determining step in self-consistent field calculations, due
primarily to the cost of two-electron integral evaluation, even with the
efficient methods available in Q-Chem (see Appendix B). However, for
large enough molecules, significant speedups are possible by employing
linear-scaling methods for each of the nonlinear terms that can arise. Linear
scaling means that if the molecule size is doubled, then the computational
effort likewise only doubles. There are three computationally significant
terms:
- Electron-electron Coulomb interactions, for which Q-Chem incorporates
the Continuous Fast Multipole Method (CFMM) discussed in section
4.4.2
- Exact exchange interactions, which arise in hybrid DFT calculations and
Hartree-Fock calculations, for which Q-Chem incorporates the LinK
method discussed in section 4.4.3 below.
- Numerical integration of the exchange and correlation functionals in DFT
calculations, which we have already discussed in section 4.3.11.
Q-Chem supports energies and efficient analytical gradients for all three of
these high performance methods to permit structure optimization of large
molecules, as well as relative energy evaluation. Note that analytical second
derivatives of SCF energies do not exploit these methods at present.
For the most part, these methods are switched on automatically by the program
based on whether they offer a significant speedup for the job at hand.
Nevertheless it is useful to have a general idea of the key concepts behind
each of these algorithms, and what input options are necessary to control them.
That is the primary purpose of this section, in addition to briefly describing
two more conventional methods for reducing computer time in large calculations
in Section 4.4.4.
There is one other computationally significant step in SCF calculations, and
that is diagonalization of the Fock matrix, once it has been constructed.
This step scales with the cube of molecular size (or basis set size), with a
small pre-factor. So, for large enough SCF calculations (very roughly in the
vicinity of 2000 basis functions and larger), diagonalization becomes the
rate-determining step. The cost of cubic scaling with a small pre-factor at
this point exceeds the cost of the linear scaling Fock build, which has a
very large pre-factor, and the gap rapidly widens thereafter. This sets an
effective upper limit on the size of SCF calculation for which Q-Chem is
useful at several thousand basis functions.
4.4.2 Continuous Fast Multipole Method (CFMM)
The quantum chemical Coulomb problem, perhaps better known as the DFT
bottleneck, has been at the forefront of many research efforts throughout the
1990s. The quadratic computational scaling behavior conventionally seen in the
construction of the Coulomb matrix in DFT or HF calculations has prevented the
application of ab initio methods to molecules containing many hundreds
of atoms. Q-Chem, Inc., in collaboration with White and Head-Gordon at the
University of California at Berkeley, and Gill now at the Australian National
University, were the first to develop the generalization of Greengard's Fast
Multipole Method (FMM) [149] to Continuous charged matter
distributions in the form of the CFMM, which is the first linear scaling
algorithm for DFT calculations. This initial breakthrough has since lead to an
increasing number of linear scaling alternatives and analogies, but for Coulomb
interactions, the CFMM remains state of the art. There are two computationally
intensive contributions to the Coulomb interactions which we discuss in turn:
- Long-range interactions, which are treated by the CFMM
- Short-range interactions, corresponding to overlapping charge
distributions, which are treated by a specialized "J-matrix engine"
together with Q-Chem's state-of-the art two-electron integral methods.
The Continuous Fast Multipole Method was the first implemented linear scaling
algorithm for the construction of the J matrix. In collaboration with
Q-Chem, Inc., Dr. Chris White began the development of the CFMM by more
efficiently deriving [150] the original Fast Multipole Method
before generalizing it to the CFMM [151]. The generalization
applied by White et al. allowed the principles underlying the success of the
FMM to be applied to arbitrary (subject to constraints in evaluating the
related integrals) continuous, but localized, matter distributions. White and
co-workers further improved the underlying CFMM algorithm [152,[153]
then implemented it efficiently [154],
achieving performance that is an order of magnitude faster than some competing
implementations.
The success of the CFMM follows similarly with that of the FMM, in that the
charge system is subdivided into a hierarchy of boxes. Local charge
distributions are then systematically organized into multipole representations
so that each distribution interacts with local expansions of the potential due
to all distant charge distributions. Local and distant distributions are
distinguished by a well-separated (WS) index, which is the number of boxes that
must separate two collections of charges before they may be considered distant
and can interact through multipole expansions; near-field interactions must be
calculated directly. In the CFMM each distribution is given its own WS index
and is sorted on the basis of the WS index, and the position of their space
centers. The implementation in Q-Chem has allowed the efficiency gains of
contracted basis functions to be maintained.
The CFMM algorithm can be summarized in five steps:
- Form and translate multipoles.
- Convert multipoles to local Taylor expansions.
- Translate Taylor information to the lowest level.
- Evaluate Taylor expansions to obtain the far-field potential.
- Perform direct interactions between overlapping distributions.
Accuracy can be carefully controlled by due consideration of tree depth,
truncation of the multipole expansion and the definition of the extent of
charge distributions in accordance with a rigorous mathematical error bound.
As a rough guide, 10 poles are adequate for single point energy calculations,
while 25 poles yield sufficient accuracy for gradient calculations. Subdivision
of boxes to yield a one-dimensional length of about 8 boxes works quite well
for systems of up to about one hundred atoms. Larger molecular systems, or
ones which are extended along one dimension, will benefit from an increase in
this number. The program automatically selects an appropriate number of boxes
by default.
For the evaluation of the remaining short-range interactions, Q-Chem
incorporates efficient J-matrix engines, originated by White and Head-Gordon [155].
These are analytically exact methods that are based on
standard two-electron integral methods, but with an interesting twist. If one
knows that the two-electron integrals are going to be summed into a Coulomb
matrix, one can ask whether they are in fact the most efficient intermediates
for this specific task. Or, can one instead find a more compact and
computationally efficient set of intermediates by folding the density matrix
into the recurrence relations for the two-electron integrals. For integrals
that are not highly contracted (i.e., are not linear combinations of more than a
few Gaussians), the answer is a dramatic yes. This is the basis of the
J-matrix approach, and Q-Chem includes the latest algorithm developed by
Yihan Shao working with Martin Head-Gordon at Berkeley for this purpose.
Shao's J-engine is employed for both energies [156] and forces [157]
and gives substantial speedups relative to the use of
two-electron integrals without any approximation (roughly a factor of 10
(energies) and 30 (forces) at the level of an uncontracted dddd shell quartet,
and increasing with angular momentum). Its use is automatically selected for
integrals with low degrees of contraction, while regular integrals are employed
when the degree of contraction is high, following the state of the art PRISM
approach of Gill and co-workers [158].
The CFMM is controlled by the following input parameters:
CFMM_ORDER
Controls the order of the multipole expansions in CFMM calculation. |
TYPE:
DEFAULT:
15 | For single point SCF accuracy |
25 | For tighter convergence (optimizations) |
OPTIONS:
n | Use multipole expansions of order n |
RECOMMENDATION:
|
| GRAIN
Controls the number of lowest-level boxes in one dimension for CFMM. |
TYPE:
DEFAULT:
-1 | Program decides best value, turning on CFMM when useful |
OPTIONS:
-1 | Program decides best value, turning on CFMM when useful |
1 | Do not use CFMM |
n ≥ 8 | Use CFMM with n lowest-level boxes in one dimension |
RECOMMENDATION:
This is an expert option; either use the default, or use a value of 1 if CFMM
is not desired. |
|
|
|
4.4.3 Linear Scaling Exchange (LinK) Matrix Evaluation
Hartree-Fock calculations and the popular hybrid density functionals such as
B3LYP also require two-electron integrals to evaluate the exchange energy
associated with a single determinant. There is no useful multipole expansion
for the exchange energy, because the bra and ket of the two-electron integral
are coupled by the density matrix, which carries the effect of exchange.
Fortunately, density matrix elements decay exponentially with distance for
systems that have a HOMO-LUMO gap [159]. The better the
insulator, the more localized the electronic structure, and the faster the rate
of exponential decay. Therefore, for insulators, there are only a linear number
of numerically significant contributions to the exchange energy. With
intelligent numerical thresholding, it is possible to rigorously evaluate the
exchange matrix in linear scaling effort. For this purpose, Q-Chem contains
the linear scaling K (LinK) method [160] to evaluate both
exchange energies and their gradients [161] in linear scaling
effort (provided the density matrix is highly sparse). The LinK method
essentially reduces to the conventional direct SCF method for exchange in the
small molecule limit (by adding no significant overhead), while yielding large
speedups for (very) large systems where the density matrix is indeed highly
sparse. For full details, we refer the reader to the original
papers [160,[161]. LinK can be explicitly requested by the
following option (although Q-Chem automatically switches it on when the
program believes it is the preferable algorithm).
LIN_K
Controls whether linear scaling evaluation of exact exchange (LinK) is used. |
TYPE:
DEFAULT:
Program chooses, switching on LinK whenever CFMM is used. |
OPTIONS:
TRUE | Use LinK |
FALSE | Do not use LinK |
RECOMMENDATION:
Use for HF and hybrid DFT calculations with large numbers of atoms. |
|
4.4.4 Incremental and Variable Thresh Fock Matrix Building
The use of a variable integral threshold, operating for the first few cycles of
an SCF, is justifiable on the basis that the MO coefficients are usually of
poor quality in these cycles. In Q-Chem, the integrals in the first iteration
are calculated at a threshold of 10−6 (for an anticipated final integral
threshold greater than, or equal to 10−6 to ensure the error in the first
iteration is solely sourced from the poor MO guess. Following this, the
integral threshold used is computed as
tmp_thresh = varthresh×DIIS_error |
| (4.74) |
where the DIIS_error is that calculated from the previous cycle, varthresh
is the variable threshold set by the program (by default) and tmp_thresh is
the temporary threshold used for integral evaluation. Each cycle requires
recalculation of all integrals. The variable integral threshold procedure has
the greatest impact in early SCF cycles.
In an incremental Fock matrix build [162], F is computed
recursively as
where m is the SCF cycle, and ∆Jm and ∆Km are computed using the difference density
Using Schwartz integrals and elements of the difference density, Q-Chem is
able to determine at each iteration which ERIs are required, and if necessary,
recalculated. As the SCF nears convergence, ∆Pm becomes sparse and
the number of ERIs that need to be recalculated declines dramatically, saving
the user large amounts of computational time.
Incremental Fock matrix builds and variable thresholds are only used when the
SCF is carried out using the direct SCF algorithm and are clearly complementary
algorithms. These options are controlled by the following input parameters,
which are only used with direct SCF calculations.
INCFOCK
Iteration number after which the incremental Fock matrix algorithm is
initiated |
TYPE:
DEFAULT:
1 | Start INCFOCK after iteration number 1 |
OPTIONS:
User-defined (0 switches INCFOCK off) |
RECOMMENDATION:
May be necessary to allow several iterations before switching on INCFOCK. |
|
| VARTHRESH
Controls the temporary integral cut-off threshold. tmp_thresh = 10−VARTHRESH×DIIS_error |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
3 has been found to be a practical level, and can slightly speed up SCF
evaluation. |
|
|
|
4.4.5 Incremental DFT
Incremental DFT (IncDFT) uses the difference density and functional values to improve the
performance of the DFT quadrature procedure by providing a better screening of negligible
values. Using this option will yield improved efficiency at each successive iteration
due to more effective screening.
INCDFT
Toggles the use of the IncDFT procedure for DFT energy calculations. |
TYPE:
DEFAULT:
OPTIONS:
FALSE | Do not use IncDFT |
TRUE | Use IncDFT |
RECOMMENDATION:
Turning this option on can lead to faster SCF calculations, particularly
towards the end of the SCF. Please note that for some systems use of this
option may lead to convergence problems. |
|
| INCDFT_DENDIFF_THRESH
Sets the threshold for screening density matrix values in the IncDFT procedure. |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to a threshold of 10−n. |
RECOMMENDATION:
If the default value causes convergence problems, set this value higher to
tighten the threshold. |
|
|
|
INCDFT_GRIDDIFF_THRESH
Sets the threshold for screening functional values in the IncDFT procedure |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to a threshold of 10−n. |
RECOMMENDATION:
If the default value causes convergence problems, set this value higher to
tighten the threshold. |
|
| INCDFT_DENDIFF_VARTHRESH
Sets the lower bound for the variable threshold for screening density matrix
values in the IncDFT procedure. The threshold will begin at this value and
then vary depending on the error in the current SCF iteration until the value
specified by INCDFT_DENDIFF_THRESH is reached. This means this
value must be set lower than INCDFT_DENDIFF_THRESH. |
TYPE:
DEFAULT:
0 | Variable threshold is not used. |
OPTIONS:
n | Corresponding to a threshold of 10−n. |
RECOMMENDATION:
If the default value causes convergence problems, set this value higher
to tighten accuracy. If this fails, set to 0 and use a static threshold. |
|
|
|
INCDFT_GRIDDIFF_VARTHRESH
Sets the lower bound for the variable threshold for screening the functional
values in the IncDFT procedure. The threshold will begin at this value and
then vary depending on the error in the current SCF iteration until the value
specified by INCDFT_GRIDDIFF_THRESH is reached. This means that
this value must be set lower than INCDFT_GRIDDIFF_THRESH. |
TYPE:
DEFAULT:
0 | Variable threshold is not used. |
OPTIONS:
n | Corresponding to a threshold of 10−n. |
RECOMMENDATION:
If the default value causes convergence problems, set this value higher
to tighten accuracy. If this fails, set to 0 and use a static threshold. |
|
4.4.6 Fourier Transform Coulomb Method
The Coulomb part of the DFT calculations using `ordinary' Gaussian
representations can be sped up dramatically using plane waves as a secondary
basis set by replacing the most costly analytical electron repulsion integrals
with numerical integration techniques. The main advantages to keeping the
Gaussians as the primary basis set is that the diagonalization step is much
faster than using plane waves as the primary basis set, and all electron
calculations can be performed analytically.
The Fourier Transform Coulomb (FTC) technique [163,[164] is
precise and tunable and all results are practically identical with the
traditional analytical integral calculations. The FTC technique is at least
2-3 orders of magnitude more accurate then other popular plane wave based
methods using the same energy cutoff. It is also at least 2-3 orders of
magnitude more accurate than the density fitting (resolution of identity)
technique. Recently, an efficient way to implement the forces of the Coulomb
energy was introduced [165], and a new technique to localize
filtered core functions. Both of these features have been implemented within
Q-Chem and contribute to the efficiency of the method.
The FTC method achieves these spectacular results by replacing the analytical
integral calculations, whose computational costs scales as O(N4) (where
N is the number of basis function) with procedures that scale as only
O(N2). The asymptotic scaling of computational costs with system size is
linear versus the analytical integral evaluation which is quadratic. Research
at Q-Chem Inc. has yielded a new, general, and very efficient implementation
of the FTC method which work in tandem with the J-engine and the CFMM
(Continuous Fast Multipole Method) techniques [166].
In the current implementation the speed-ups arising from the FTC technique are
moderate when small or medium Pople basis sets are used. The reason is that the
J-matrix engine and CFMM techniques provide an already highly efficient
solution to the Coulomb problem. However, increasing the number of
polarization functions and, particularly, the number of diffuse functions
allows the FTC to come into its own and gives the most significant
improvements. For instance, using the 6-311G+(df,pd) basis set for a medium-to-large
size molecule is more affordable today then before. We found also significant
speed ups when non-Pople basis sets are used such as cc-pvTZ. The FTC energy
and gradients calculations are implemented to use up to f-type basis
functions.
FTC
Controls the overall use of the FTC. |
TYPE:
DEFAULT:
OPTIONS:
0 | Do not use FTC in the Coulomb part |
1 | Use FTC in the Coulomb part |
RECOMMENDATION:
Use FTC when bigger and/or diffuse basis sets are used. |
|
| FTC_SMALLMOL
Controls whether or not the operator is evaluated on a large grid and stored in
memory to speed up the calculation. |
TYPE:
DEFAULT:
OPTIONS:
1 | Use a big pre-calculated array to speed up the FTC calculations |
0 | Use this option to save some memory |
RECOMMENDATION:
Use the default if possible and use 0 (or buy some more memory) when
needed. |
|
|
|
FTC_CLASS_THRESH_ORDER
Together with FTC_CLASS_THRESH_MULT, determines the cutoff
threshold for included a shell-pair in the dd class, i.e., the class that
is expanded in terms of plane waves. |
TYPE:
DEFAULT:
5 | Logarithmic part of the FTC classification threshold. Corresponds to 10−5 |
OPTIONS:
RECOMMENDATION:
|
| FTC_CLASS_THRESH_MULT
Together with FTC_CLASS_THRESH_ORDER, determines the cutoff
threshold for included a shell-pair in the dd class, i.e., the class that
is expanded in terms of plane waves. |
TYPE:
DEFAULT:
5 | Multiplicative part of the FTC classification threshold. Together with |
| the default value of the FTC_CLASS_THRESH_ORDER this leads to |
| the 5×10−5 threshold value. |
OPTIONS:
RECOMMENDATION:
Use the default. If diffuse basis sets are used and the molecule is relatively
big then tighter FTC classification threshold has to be used. According to our
experiments using Pople-type diffuse basis sets, the default 5×10−5 value provides accurate result for an alanine5 molecule while 1×10−5 threshold value for alanine10 and 5×10−6 value for
alanine15 has to be used. |
|
|
|
4.4.7 Multiresolution Exchange-Correlation (mrXC) Method
MrXC (multiresolution exchange-correlation) [167,[168,[169]
is a new method developed by the Q-Chem development
team for the accelerating the computation of exchange-correlation
(XC) energy and matrix originated from the XC functional.
As explained in 4.4.6, the XC
functional is so complicated that the integration of it is usually
done on a numerical quadrature. There are two basic types of
quadrature. One is the atom-centered grid (ACG), a superposition of
atomic quadrature described in 4.4.6.
ACG has high density of points near the nucleus to handle the
compact core density and low density of points in the valence and
nonbonding region where the electron density is smooth. The other
type is even-spaced cubic grid (ESCG), which is typically used
together with pseudopotentials and planewave basis functions where
only the e electron density is assumed smooth. In quantum chemistry,
ACG is more often used as it can handle accurately all-electron
calculations of molecules. MrXC combines those two integration
schemes seamlessly to achieve an optimal computational efficiency
by placing the calculation of the smooth part of the density and XC
matrix onto the ESCG. The computation associated with the smooth
fraction of the electron density is the
major bottleneck of the XC part of a DFT
calculation and can be done at a much faster rate on the ESCG due
to its low resolution. Fast Fourier transform and B-spline
interpolation are employed for the accurate transformation between
the two types of grids such that the final results remain the
same as they would be on the ACG alone. Yet, a speed-up of several times for
the calculations of electron-density and XC matrix is achieved. The smooth
part of the calculation with mrXC can also be combined with FTC
(see section 4.4.6) to achieve further gain of efficiency.
MRXC
Controls the use of MRXC. |
TYPE:
DEFAULT:
OPTIONS:
0 | Do not use MRXC |
1 | Use MRXC in the evaluation of the XC part |
RECOMMENDATION:
MRXC is very efficient for medium and large molecules,
especially when medium and large basis sets are used. |
|
The following two keywords control the smoothness precision.
The default value is carefully selected to maintain high accuracy.
MRXC_CLASS_THRESH_MULT
Controls the of smoothness precision |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
a prefactor in the threshold for mrxc error control:
im*10.0−io |
|
| MRXC_CLASS_THRESH_ORDER
Controls the of smoothness precision |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
The exponent in the threshold of the mrxc error control:
im*10.0−io |
|
|
|
The next keyword controls the order of the
B-spline interpolation:
LOCAL_INTERP_ORDER
Controls the order of the B-spline |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
The default value is sufficiently accurate |
|
4.4.8 Resolution-of-the-Identity Fock Matrix Methods
Evaluation of the Fock matrix (both Coulomb, J, and exchange, K, pieces) can be sped up by an approximation known as the resolution-of-the-identity approximation (RI-JK).
Essentially, the full complexity in common basis sets required to describe chemical bonding is not necessary to describe the mean-field Coulomb and exchange interactions between electrons. That is, ρ in the left side of
( - ) = _ ( - ) _
is much less complicated than an individual λσ function pair.
The same principle applies to the FTC method in subsection 4.4.6, in which case the slowly varying piece of the electron density is replaced with a plane-wave expansion.
With the RI-JK approximation, the Coulomb interactions of the function pair ρ(r)=λσ(r) Pλσ are fit by a smaller set of atom-centered basis functions. In terms of J:
_ d^3 _1 P_ (_1) 1 _K d^3 _1 P_K K(_1) 1
The coefficients PK must be determined to accurately represent the potential.
This is done by performing a least-squared minimization of the difference between Pλσ λσ(r1) and PK K(r1), with differences measured by the Coulomb metric.
This requires a matrix inversion over the space of auxiliary basis functions, which may be done rapidly by Cholesky decomposition.
The RI method applied to the Fock matrix may be further enhanced by performing local fitting of a density or function pair element. This is the basis of the atomic-RI method (ARI), which has been developed for
both Coulomb (J) matrix [170] and exchange (K) matrix evaluation [171].
In ARI, only nearby auxiliary functions K(r) are employed to fit the target function.
This reduces the asymptotic scaling of the matrix-inversion step as well as that of many intermediate steps in the digestion of RI integrals.
Briefly, atom-centered auxiliary functions on nearby atoms are only used if they are within the "outer" radius (R1) of the fitting region.
Between R1 and the "inner" radius (R0), the amplitude of interacting auxiliary functions is smoothed by a function that goes from zero to one and has continuous derivatives.
To optimize efficiency, the van der Waals radius of the atom is included in the cutoff so that smaller atoms are dropped from the fitting radius sooner.
The values of R0 and R1 are specified as REM variables as described below.
RI_J
Toggles the use of the RI algorithm to compute J. |
TYPE:
DEFAULT:
FALSE | RI will not be used to compute J. |
OPTIONS:
RECOMMENDATION:
For large (especially 1D and 2D) molecules the approximation may yield significant improvements in Fock evaluation time when used with ARI. |
|
| RI_K
Toggles the use of the RI algorithm to compute K. |
TYPE:
DEFAULT:
FALSE | RI will not be used to compute K. |
OPTIONS:
RECOMMENDATION:
For large (especially 1D and 2D) molecules the approximation may yield significant improvements in Fock evaluation time when used with ARI. |
|
|
|
ARI
Toggles the use of the atomic resolution-of-the-identity (ARI) approximation. |
TYPE:
DEFAULT:
FALSE | ARI will not be used by default for an RI-JK calculation. |
OPTIONS:
RECOMMENDATION:
For large (especially 1D and 2D) molecules the approximation may yield significant improvements in Fock evaulation time. |
|
| ARI_R0
Determines the value of the inner fitting radius (in Å ngstroms) |
TYPE:
DEFAULT:
4 | A value of 4 Å will be added to the atomic van der Waals radius. |
OPTIONS:
RECOMMENDATION:
For some systems the default value may be too small and the calculation will become unstable. |
|
|
|
ARI_R1
Determines the value of the outer fitting radius (in Å ngstroms) |
TYPE:
DEFAULT:
5 | A value of 5 Å will be added to the atomic van der Waals radius. |
OPTIONS:
RECOMMENDATION:
For some systems the default value may be too small and the calculation will become unstable. This value also determines, in part, the smoothness of the potential energy surface. |
|
4.4.9 Examples
Example 4.0 Q-Chem input for a large single point energy calculation. The
CFMM is switched on automatically when LinK is requested.
$comment
HF/3-21G single point calculation on a large molecule
read in the molecular coordinates from file
$end
$molecule
read dna.inp
$end
$rem
EXCHANGE HF HF exchange
BASIS 3-21G Basis set
LIN_K TRUE Calculate K using LinK
$end
Example 4.0 Q-Chem input for a large single point energy calculation. This
would be appropriate for a medium-sized molecule, but for truly large
calculations, the CFMM and LinK algorithms are far more efficient.
$comment
HF/3-21G single point calculation on a large molecule
read in the molecular coordinates from file
$end
$molecule
read dna.inp
$end
$rem
exchange hf HF exchange
basis 3-21G Basis set
incfock 5 Incremental Fock after 5 cycles
varthresh 3 1.0d-03 variable threshold
$end
4.5 SCF Initial Guess
4.5.1 Introduction
The Roothaan-Hall and Pople-Nesbet equations of SCF theory are non-linear in
the molecular orbital coefficients. Like many mathematical problems involving
non-linear equations, prior to the application of a technique to search for a
numerical solution, an initial guess for the solution must be generated. If the
guess is poor, the iterative procedure applied to determine the numerical
solutions may converge very slowly, requiring a large number of iterations, or
at worst, the procedure may diverge.
Thus, in an ab initio SCF procedure, the quality of the initial guess
is of utmost importance for (at least) two main reasons:
- To ensure that the SCF converges to an appropriate ground state. Often
SCF calculations can converge to different local minima in wavefunction
space, depending upon which part of that space the initial guess places
the system in.
- When considering jobs with many basis functions requiring the
recalculation of ERIs at each iteration, using a good initial guess that
is close to the final solution can reduce the total job time
significantly by decreasing the number of SCF iterations.
For these reasons, sooner or later most users will find it helpful to have some
understanding of the different options available for customizing the initial
guess. Q-Chem currently offers five options for the initial guess:
- Superposition of Atomic Density (SAD)
- Core Hamiltonian (CORE)
- Generalized Wolfsberg-Helmholtz (GWH)
- Reading previously obtained MOs from disk. (READ)
- Basis set projection (BASIS2)
The first three of these guesses are built-in, and are briefly described in
Section 4.5.2. The option of reading MOs from disk is described in
Section 4.5.3. The initial guess MOs can be modified, either by
mixing, or altering the order of occupation. These options are discussed in
Section 4.5.4. Finally, Q-Chem's novel basis set projection
method is discussed in Section 4.5.5.
4.5.2 Simple Initial Guesses
There are three simple initial guesses available in Q-Chem. While they are
all simple, they are by no means equal in quality, as we discuss below.
- Superposition of Atomic Densities (SAD): The SAD guess is almost
trivially constructed by summing together atomic densities that have been
spherically averaged to yield a trial density matrix. The SAD guess is far
superior to the other two options below, particularly when large basis
sets and/or large molecules are employed. There are three issues
associated with the SAD guess to be aware of:
- No molecular orbitals are obtained, which means that SCF algorithms
requiring orbitals (the direct minimization methods discussed in
Section 4.6) cannot directly use the SAD guess,
and,
- The SAD guess is not available for general (read-in) basis sets. All
internal basis sets support the SAD guess.
- The SAD guess is not idempotent and thus requires at least
two SCF iterations to ensure proper SCF convergence (idempotency of
the density).
- Generalized Wolfsberg-Helmholtz (GWH): The GWH guess
procedure [172] uses a combination of the overlap matrix elements
in Eq. (4.12), and the diagonal elements of the Core Hamiltonian matrix
in Eq. (4.18). This initial guess is most satisfactory in small basis
sets for small molecules. It is constructed according to the relation
given below, where cx is a constant.
Hμυ = cx Sμυ (Hμμ +Hυυ ) | / |
(Hμμ +Hυυ ) 2 2 |
| (4.77) |
- Core Hamiltonian: The core Hamiltonian guess simply obtains the
guess MO coefficients by diagonalizing the core Hamiltonian matrix in
Eq. (4.18). This approach works best with small basis sets, and
degrades as both the molecule size and the basis set size are increased.
The selection of these choices (or whether to read in the orbitals) is
controlled by the following $rem variables:
SCF_GUESS
Specifies the initial guess procedure to use for the SCF. |
TYPE:
DEFAULT:
SAD | Superposition of atomic density (available only with standard basis
sets) |
GWH | For ROHF where a set of orbitals are required. |
FRAGMO | For a fragment MO calculation |
OPTIONS:
CORE | Diagonalize core Hamiltonian |
SAD | Superposition of atomic density |
GWH | Apply generalized Wolfsberg-Helmholtz approximation |
READ | Read previous MOs from disk |
FRAGMO | Superimposing converged fragment MOs |
RECOMMENDATION:
SAD guess for standard basis sets. For general basis sets, it is best to use
the BASIS2 $rem. Alternatively, try the GWH or core Hamiltonian
guess. For ROHF it can be useful to READ guesses from an SCF calculation on the
corresponding cation or anion. Note that because the density is made spherical,
this may favor an undesired state for atomic systems, especially transition
metals. Use FRAGMO in a fragment MO calculation. |
|
| SCF_GUESS_ALWAYS
Switch to force the regeneration of a new initial guess for each series of
SCF iterations (for use in geometry optimization). |
TYPE:
DEFAULT:
OPTIONS:
False | Do not generate a new guess for each series of SCF iterations in an |
| optimization; use MOs from the previous SCF calculation for the guess, |
| if available. |
True | Generate a new guess for each series of SCF iterations in a geometry |
| optimization. |
RECOMMENDATION:
Use default unless SCF convergence issues arise |
|
|
|
4.5.3 Reading MOs from Disk
There are two methods by which MO coefficients can be used from a previous
job by reading them from disk:
- Running two independent jobs sequentially invoking qchem with
three command line variables:.
localhost-1> qchem job1.in job1.out save
localhost-2> qchem job2.in job2.out save
Note:
(1) The $rem variable SCF_GUESS must be set to READ
in job2.in.
(2) Scratch files remain in $QCSCRATCH/save on exit. |
- Running a batch job where two jobs are placed into a single input file
separated by the string @@@ on a single line.
Note:
(1) SCF_GUESS must be set to
READ in the second job of the batch file.
(2) A third qchem command line variable is not necessary.
(3) As for the SAD guess, Q-Chem requires at least two SCF cycles to
ensure proper SCF convergence (idempotency of the density). |
Note:
It is up to the user to make sure that the basis
sets match between the two jobs. There is no internal checking for this,
although the occupied orbitals are re-orthogonalized in the current basis after
being read in. If you want to project from a smaller basis into a larger basis,
consult section 4.5.5. |
4.5.4 Modifying the Occupied Molecular Orbitals
It is sometimes useful for the occupied guess orbitals to be other than the
lowest Nα (or Nβ) orbitals. Reasons why one may need
to do this include:
- To converge to a state of different symmetry or orbital occupation.
- To break spatial symmetry.
- To break spin symmetry, as in unrestricted calculations on molecules with
an even number of electrons.
There are two mechanisms for modifying a set of guess orbitals: either by
SCF_GUESS_MIX, or by specifying the orbitals to occupy. Q-Chem
users may define the occupied guess orbitals using the $occupied or
$swap_occupied_virtual
keywords. In the former, occupied guess orbitals are defined by listing the
alpha orbitals to be occupied on the first line and beta on the second. In the
former, only pair of orbitals that needs to be swapped is specified.
Note:
To prevent Q-Chem to change orbital occupation during SCF procedure,
MOMSTART option is often used in combination with
$occupied or $swap_occupied_virtual keywords. |
Note:
The need for orbitals renders these options incompatible with the SAD
guess. Most often, they are used with SCF_GUESS=READ. |
Example 4.0 Format for modifying occupied guess orbitals.
$occupied
1 2 3 4 ... nalpha
1 2 3 4 ... nbeta
$end
Example 4.0 Alternative format for modifying occupied guess orbitals.
$swap_occupied_virtual
<spin> <io1> <iv1>
<spin> <io2> <iv2>
$end
Example 4.0 Example of swapping guess orbitals.
$swap_occupied_virtual
alpha 5 6
beta 6 7
$end
This is identical to:
Example 4.0 Example of specifying occupied guess orbitals.
$occupied
1 2 3 4 6 5 7
1 2 3 4 5 7 6
$end
The other $rem variables related to altering the orbital occupancies are:
SCF_GUESS_PRINT
Controls printing of guess MOs, Fock and density matrices. |
TYPE:
DEFAULT:
OPTIONS:
0 | Do not print guesses. |
SAD | |
1 | Atomic density matrices and molecular matrix. |
2 | Level 1 plus density matrices. |
CORE and GWH | |
1 | No extra output. |
2 | Level 1 plus Fock and density matrices and, MO coefficients and |
| eigenvalues. |
READ | |
1 | No extra output |
2 | Level 1 plus density matrices, MO coefficients and eigenvalues. |
RECOMMENDATION:
|
| SCF_GUESS_MIX
Controls mixing of LUMO and HOMO to break symmetry in the initial guess. For
unrestricted jobs, the mixing is performed only for the alpha orbitals. |
TYPE:
DEFAULT:
0 (FALSE) | Do not mix HOMO and LUMO in SCF guess. |
OPTIONS:
0 (FALSE) | Do not mix HOMO and LUMO in SCF guess. |
1 (TRUE) | Add 10% of LUMO to HOMO to break symmetry. |
n | Add n×10% of LUMO to HOMO (0 < n < 10). |
RECOMMENDATION:
When performing unrestricted calculations on molecules with an even number of
electrons, it is often necessary to break alpha / beta symmetry in the initial
guess with this option, or by specifying input for $occupied. |
|
|
|
4.5.5 Basis Set Projection
Q-Chem also includes a novel basis set projection method developed by Dr Jing
Kong of Q-Chem Inc. It permits a calculation in a large basis set to
bootstrap itself up via a calculation in a small basis set that is
automatically spawned when the user requests this option. When basis set
projection is requested (by providing a valid small basis for BASIS2),
the program executes the following steps:
- A simple DFT calculation is performed in the small basis,
BASIS2, yielding a converged density matrix in this basis.
- The large basis set SCF calculation (with different values of
EXCHANGE and CORRELATION set by the input) begins by
constructing the DFT Fock operator in the large basis but with the
density matrix obtained from the small basis set.
- By diagonalizing this matrix, an accurate initial guess for the density
matrix in the large basis is obtained, and the target SCF calculation
commences.
Two different methods of projection are available and can be set using the
BASISPROJTYPE $rem. The OVPROJECTION option expands the MOs
from the BASIS2 calculation in the larger basis, while the
FOPPROJECTION option constructs the Fock matrix in the larger basis
using the density matrix from the initial, smaller basis set calculation. Basis
set projection is a very effective option for general basis sets, where the SAD
guess is not available. In detail, this initial guess is controlled by the
following $rem variables:
BASIS2
Sets the small basis set to use in basis set projection. |
TYPE:
DEFAULT:
No second basis set default. |
OPTIONS:
Symbol. Use standard basis sets as per Chapter 7. |
BASIS2_GEN | General BASIS2 |
BASIS2_MIXED | Mixed BASIS2 |
RECOMMENDATION:
BASIS2 should be smaller than BASIS. There is little advantage to using
a basis larger than a minimal basis when BASIS2 is used for initial guess purposes.
Larger, standardized BASIS2 options are available for dual-basis calculations
(see Section 4.7). |
|
| BASISPROJTYPE
Determines which method to use when projecting the density matrix of
BASIS2 |
TYPE:
DEFAULT:
FOPPROJECTION (when DUAL_BASIS_ENERGY=false) |
OVPROJECTION (when DUAL_BASIS_ENERGY=true) |
OPTIONS:
FOPPROJECTION | Construct the Fock matrix in the second basis |
OVPROJECTION | Projects MO's from BASIS2 to BASIS. |
RECOMMENDATION:
|
|
|
Note:
BASIS2 sometimes messes up post-Hartree-Fock calculations. It is recommended
to split such jobs into two subsequent one, such that in the first job a desired Hartree-Fock solution is found using BASIS2, and in the second job, which performs a
post-HF calculation, SCF_GUESS=READ is invoked. |
4.5.6 Examples
Example 4.0 Input where basis set projection is used to generate a good
initial guess for a calculation employing a general basis set, for which the
default initial guess is not available.
$molecule
0 1
O
H 1 r
H 1 r 2 a
r 0.9
a 104.0
$end
$rem
EXCHANGE hf
CORRELATION mp2
BASIS general
BASIS2 sto-3g
$end
$basis
O 0
S 3 1.000000
3.22037000E+02 5.92394000E-02
4.84308000E+01 3.51500000E-01
1.04206000E+01 7.07658000E-01
SP 2 1.000000
7.40294000E+00 -4.04453000E-01 2.44586000E-01
1.57620000E+00 1.22156000E+00 8.53955000E-01
SP 1 1.000000
3.73684000E-01 1.00000000E+00 1.00000000E+00
SP 1 1.000000
8.45000000E-02 1.00000000E+00 1.00000000E+00
****
H 0
S 2 1.000000
5.44717800E+00 1.56285000E-01
8.24547000E-01 9.04691000E-01
S 1 1.000000
1.83192000E-01 1.00000000E+00
****
$end
Example 4.0 Input for an ROHF calculation on the OH radical. One SCF cycle
is initially performed on the cation, to get reasonably good initial guess
orbitals, which are then read in as the guess for the radical. This avoids the
use of Q-Chem's default GWH guess for ROHF, which is often poor.
$comment
OH radical, part 1. Do 1 iteration of cation orbitals.
$end
$molecule
1 1
O 0.000 0.000 0.000
H 0.000 0.000 1.000
$end
$rem
BASIS = 6-311++G(2df)
EXCHANGE = hf
MAX_SCF_CYCLES = 1
THRESH = 10
$end
@@@
$comment
OH radical, part 2. Read cation orbitals, do the radical
$end
$molecule
0 2
O 0.000 0.000 0.000
H 0.000 0.000 1.000
$end
$rem
BASIS = 6-311++G(2df)
EXCHANGE = hf
UNRESTRICTED = false
SCF_ALGORITHM = dm
SCF_CONVERGENCE = 7
SCF_GUESS = read
THRESH = 10
$end
Example 4.0 Input for an unrestricted HF calculation on H2 in the
dissociation limit, showing the use of SCF_GUESS_MIX = 2
(corresponding to 20% of the alpha LUMO mixed with the alpha HOMO).
Geometric direct minimization with DIIS is used to converge the SCF, together
with MAX_DIIS_CYCLES = 1 (using the default value for
MAX_DIIS_CYCLES, the DIIS procedure just oscillates).
$molecule
0 1
H 0.000 0.000 0.0
H 0.000 0.000 -10.0
$end
$rem
UNRESTRICTED = true
EXCHANGE = hf
BASIS = 6-31g**
SCF_ALGORITHM = diis_gdm
MAX_DIIS_CYCLES = 1
SCF_GUESS = gwh
SCF_GUESS_MIX = 2
$end
4.6 Converging SCF Calculations
4.6.1 Introduction
As for any numerical optimization procedure, the rate of convergence of the SCF
procedure is dependent on the initial guess and on the algorithm used to step
towards the stationary point. Q-Chem features a number of alternative SCF
optimization algorithms, which are discussed in the following sections, along
with the $rem variables that are used to control the calculations. The main
options are discussed in sections which follow and are, in brief:
- The highly successful DIIS procedures, which are the default, except for
restricted open-shell SCF calculations.
- The new geometric direct minimization (GDM) method, which is highly
robust, and the recommended fall-back when DIIS fails. It can also be
invoked after a few initial iterations with DIIS to improve the initial
guess. GDM is the default algorithm for restricted open-shell SCF
calculations.
- The older and less robust direct minimization method (DM). As for GDM,
it can also be invoked after a few DIIS iterations (except for RO jobs).
- The maximum overlap method (MOM) which ensures that DIIS always occupies
a continuous set of orbitals and does not oscillate between different
occupancies.
- The relaxed constraint algorithm (RCA) which guarantees that the energy
goes down at every step.
4.6.2 Basic Convergence Control Options
See also more detailed options in the following sections, and note that the SCF
convergence criterion and the integral threshold must be set in a compatible
manner, (this usually means THRESH should be set to at least 3 higher
than SCF_CONVERGENCE).
MAX_SCF_CYCLES
Controls the maximum number of SCF iterations permitted. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Increase for slowly converging systems such as those containing transition
metals. |
|
| SCF_ALGORITHM
Algorithm used for converging the SCF. |
TYPE:
DEFAULT:
OPTIONS:
DIIS | Pulay DIIS. |
DM | Direct minimizer. |
DIIS_DM | Uses DIIS initially, switching to direct minimizer for later iterations |
| (See THRESH_DIIS_SWITCH, MAX_DIIS_CYCLES). |
DIIS_GDM | Use DIIS and then later switch to geometric direct minimization |
| (See THRESH_DIIS_SWITCH, MAX_DIIS_CYCLES). |
GDM | Geometric Direct Minimization. |
RCA | Relaxed constraint algorithm |
RCA_DIIS | Use RCA initially, switching to DIIS for later iterations (see |
| THRESH_RCA_SWITCH and MAX_RCA_CYCLES described |
| later in this chapter) |
ROOTHAAN | Roothaan repeated diagonalization. |
RECOMMENDATION:
Use DIIS unless performing a restricted open-shell calculation, in which case GDM is recommended.
If DIIS fails to find a reasonable approximate solution in the initial iterations,
RCA_DIIS is the recommended fallback option.
If DIIS approaches the correct solution but fails to finally converge,
DIIS_GDM is the recommended fallback. |
|
|
|
SCF_CONVERGENCE
SCF is considered converged when the wavefunction error is less that
10−SCF_CONVERGENCE. Adjust the value of THRESH at the same
time. Note that in Q-Chem 3.0 the DIIS error is measured by the maximum error
rather than the RMS error. |
TYPE:
DEFAULT:
5 | For single point energy calculations. |
7 | For geometry optimizations and vibrational analysis. |
8 | For SSG calculations, see Chapter 5. |
OPTIONS:
RECOMMENDATION:
Tighter criteria for geometry optimization and vibration analysis. Larger
values provide more significant figures, at greater computational cost. |
|
In some cases besides the total SCF energy, one needs its separate energy components, like
kinetic energy, exchange energy, correlation energy, etc. The values of these
components are printed at each SCF cycle if one specifies in the input:
SCF_PRINT 1 .
4.6.3 Direct Inversion in the Iterative Subspace (DIIS)
The SCF implementation of the Direct Inversion in the Iterative Subspace
(DIIS) method [173,[174] uses the property of
an SCF solution that requires the density matrix to commute with the Fock matrix:
During the SCF cycles, prior to achieving self-consistency, it is therefore possible
to define an error vector ei, which is non-zero except at convergence:
Here, Pi is obtained from diagonalization of ∧Fi , and
The DIIS coefficients ck, are obtained by a least-squares constrained
minimization of the error vectors, viz
Z= | ⎛ ⎝
|
∑
k
|
ck ek | ⎞ ⎠
|
· | ⎛ ⎝
|
∑
k
|
ck ek | ⎞ ⎠
|
|
| (4.81) |
where the constraint
is imposed to yield a set of linear equations, of dimension N+1:
| ⎛ ⎜ ⎜ ⎜
⎜ ⎜ ⎝
|
|
| ⎞ ⎟ ⎟ ⎟
⎟ ⎟ ⎠
|
| ⎛ ⎜ ⎜ ⎜
⎜ ⎜ ⎝
|
|
| ⎞ ⎟ ⎟ ⎟
⎟ ⎟ ⎠
|
= | ⎛ ⎜ ⎜ ⎜
⎜ ⎜ ⎝
|
|
| ⎞ ⎟ ⎟ ⎟
⎟ ⎟ ⎠
|
|
| (4.83) |
Convergence criteria requires the largest element of the Nth error vector
to be below a cutoff threshold, usually 10−5 for single point energies,
often increased to 10−8 for optimizations and frequency calculations.
The rate of convergence may be improved by restricting the number of previous
Fock matrices (size of the DIIS subspace, $rem variable
DIIS_SUBSPACE_SIZE) used for determining the DIIS coefficients:
|
^
F
|
k
|
= |
k−1 ∑
j=k−(L+1)
|
cj Fj |
| (4.84) |
where L is the size of the DIIS subspace. As the Fock matrix nears
self-consistency, the linear matrix equations in Eq. (4.85) tend to become
severely ill-conditioned and it is often necessary to reset the DIIS subspace
(this is automatically carried out by the program).
Finally, on a practical note, we observe that DIIS has a tendency to converge
to global minima rather than local minima when employed for SCF calculations.
This seems to be because only at convergence is the density matrix in the DIIS
iterations idempotent. On the way to convergence, one is not on the "true"
energy surface, and this seems to permit DIIS to "tunnel" through barriers in
wavefunction space. This is usually a desirable property, and is the motivation
for the options that permit initial DIIS iterations before switching to direct
minimization to converge to the minimum in difficult cases.
The following $rem variables permit some customization of the DIIS iterations:
DIIS_SUBSPACE_SIZE
Controls the size of the DIIS and/or RCA subspace during the SCF. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
|
| DIIS_PRINT
Controls the output from DIIS SCF optimization. |
TYPE:
DEFAULT:
OPTIONS:
0 | Minimal print out. |
1 | Chosen method and DIIS coefficients and solutions. |
2 | Level 1 plus changes in multipole moments. |
3 | Level 2 plus Multipole moments. |
4 | Level 3 plus extrapolated Fock matrices. |
RECOMMENDATION:
|
|
|
Note:
In Q-Chem 3.0 the DIIS error is determined by the maximum error rather
than the RMS error. For backward compatibility the RMS error can be forced by
using the following $rem |
| DIIS_ERR_RMS
Changes the DIIS convergence metric from the maximum to the RMS error. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Use default, the maximum error provides a more reliable criterion. |
|
|
|
4.6.4 Geometric Direct Minimization (GDM)
Troy Van Voorhis, working at Berkeley with Martin Head-Gordon, has developed a
novel direct minimization method that is extremely robust, and at the same time
is only slightly less efficient than DIIS. This method is called geometric
direct minimization (GDM) because it takes steps in an orbital rotation space
that correspond properly to the hyper-spherical geometry of that space. In other
words, rotations are variables that describe a space which is curved like a
many-dimensional sphere. Just like the optimum flight paths for airplanes are
not straight lines but great circles, so too are the optimum steps in orbital
rotation space. GDM takes this correctly into account, which is the origin of
its efficiency and its robustness. For full details, we refer the reader to
Ref. . GDM is a good alternative to DIIS
for SCF jobs that exhibit convergence difficulties with DIIS.
Recently, Barry Dunietz, also working at Berkeley with Martin Head-Gordon, has
extended the GDM approach to restricted open-shell SCF calculations. Their
results indicate that GDM is much more efficient than the older
direct minimization method (DM).
In section 4.6.3, we discussed the fact that DIIS can efficiently
head towards the global SCF minimum in the early iterations. This can be true
even if DIIS fails to converge in later iterations. For this reason, a hybrid
scheme has been implemented which uses the DIIS minimization procedure to
achieve convergence to an intermediate cutoff threshold. Thereafter, the
geometric direct minimization algorithm is used. This scheme combines the
strengths of the two methods quite nicely: the ability of DIIS to recover from
initial guesses that may not be close to the global minimum, and the ability of
GDM to robustly converge to a local minimum, even when the local surface
topology is challenging for DIIS. This is the recommended procedure with which
to invoke GDM (i.e., setting SCF_ALGORITHM = DIIS_GDM). This
hybrid procedure is also compatible with the SAD guess, while GDM itself is
not, because it requires an initial guess set of orbitals. If one wishes to
disturb the initial guess as little as possible before switching on GDM, one
should additionally specify MAX_DIIS_CYCLES = 1 to obtain only a
single Roothaan step (which also serves up a properly orthogonalized set of
orbitals).
$rem options relevant to GDM are SCF_ALGORITHM which should be
set to either GDM or DIIS_GDM and the following:
MAX_DIIS_CYCLES
The maximum number of DIIS iterations before switching to (geometric) direct
minimization when SCF_ALGORITHM is DIIS_GDM or
DIIS_DM. See also THRESH_DIIS_SWITCH. |
TYPE:
DEFAULT:
OPTIONS:
1 | Only a single Roothaan step before switching to (G)DM |
n | n DIIS iterations before switching to (G)DM. |
RECOMMENDATION:
|
| THRESH_DIIS_SWITCH
The threshold for switching between DIIS extrapolation and direct minimization
of the SCF energy is 10−THRESH_DIIS_SWITCH when
SCF_ALGORITHM is DIIS_GDM or DIIS_DM. See
also MAX_DIIS_CYCLES |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
|
|
|
4.6.5 Direct Minimization (DM)
Direct minimization (DM) is a less sophisticated forerunner of the geometric
direct minimization (GDM) method discussed in the previous section. DM does not
properly step along great circles in the hyper-spherical space of orbital
rotations, and therefore converges less rapidly and less robustly than GDM, in
general. It is retained for legacy purposes, and because it is at present the
only method available for restricted open shell (RO) SCF calculations in
Q-Chem. In general, the input options are the same as for GDM, with the
exception of the specification of SCF_ALGORITHM, which can be either
DIIS_DM (recommended) or DM.
PSEUDO_CANONICAL
When SCF_ALGORITHM = DM, this controls the way the initial
step, and steps after subspace resets are taken. |
TYPE:
DEFAULT:
OPTIONS:
FALSE | Use Roothaan steps when (re)initializing |
TRUE | Use a steepest descent step when (re)initializing |
RECOMMENDATION:
The default is usually more efficient, but choosing TRUE sometimes
avoids problems with orbital reordering. |
|
4.6.6 Maximum Overlap Method (MOM)
In general, the DIIS procedure is remarkably successful. One difficulty that
is occasionally encountered is the problem of an SCF that occupies two
different sets of orbitals on alternating iterations, and therefore
oscillates and fails to converge. This can be overcome by choosing orbital
occupancies that maximize the overlap of the new occupied orbitals with the set
previously occupied. Q-Chem contains the maximum overlap method (MOM) [176],
developed by Andrew Gilbert and Peter Gill now at the
Australian National University.
MOM is therefore is a useful adjunct to DIIS in convergence problems involving
flipping of orbital occupancies. It is controlled by the $rem variable
MOM_START, which specifies the SCF iteration on which the MOM
procedure is first enabled. There are two strategies that are useful in setting
a value for MOM_START. To help maintain an initial configuration it
should be set to start on the first cycle. On the other hand, to assist
convergence it should come on later to avoid holding on to an initial
configuration that may be far from the converged one.
The MOM-related $rem variables in full are the following:.
MOM_PRINT
Switches printing on within the MOM procedure. |
TYPE:
DEFAULT:
OPTIONS:
FALSE | Printing is turned off |
TRUE | Printing is turned on. |
RECOMMENDATION:
|
| MOM_START
Determines when MOM is switched on to stabilize DIIS iterations. |
TYPE:
DEFAULT:
OPTIONS:
0 (FALSE) | MOM is not used |
n | MOM begins on cycle n. |
RECOMMENDATION:
Set to 1 if preservation of initial orbitals is desired. If MOM is to be
used to aid convergence, an SCF without MOM should be run to determine when
the SCF starts oscillating. MOM should be set to start just before the
oscillations. |
|
|
|
4.6.7 Relaxed Constraint Algorithm (RCA)
The relaxed constraint algorithm (RCA) is an ingenious and simple means of minimizing the SCF energy
that is particularly effective in cases where the initial guess is poor.
The latter is true, for example, when employing a user-specified basis
(when the Core or GWH guess must be employed) or when near-degeneracy effects imply
that the initial guess will likely occupy the wrong orbitals relative to the desired converged solution.
Briefly, RCA begins with the SCF problem as a constrained minimization of the energy
as a function of the density matrix, E(P) [177,[178].
The constraint is that the density matrix be idempotent, P ·P=P,
which basically forces the occupation numbers to be either zero or one.
The fundamental realization of RCA is that this constraint can be relaxed to
allow sub-idempotent density matrices, P ·P ≤ P.
This condition forces the occupation numbers to be between zero and one.
Physically, we expect that any state with fractional occupations can
lower its energy by moving electrons from higher energy orbitals to lower ones.
Thus, if we solve for the minimum of E(P) subject to the relaxed sub-idempotent constraint,
we expect that the ultimate solution will nonetheless be idempotent.
In fact, for Hartree-Fock this can be rigorously proven.
For density functional theory, it is possible that the minimum will have
fractional occupation numbers but these occupations have a physical interpretation
in terms of ensemble DFT.
The reason the relaxed constraint is easier to deal with is that it is easy to prove
that a linear combination of sub-idempotent matrices is also
sub-idempotent as long as the linear coefficients are between zero and one.
By exploiting this property, convergence can be accelerated in a way
that guarantees the energy will go down at every step.
The implementation of RCA in Q-Chem closely follows the "Energy DIIS" implementation of
the RCA algorithm [179].
Here, the current density matrix is written as a linear combination of the previous density matrices:
To a very good approximation (exact for Hartree-Fock) the energy for P(x)
can be written as a quadratic function of x:
E(x) = |
∑
i
|
Ei xi+ |
1
2
|
|
∑
i
|
xi(Pi− Pj) ·(Fi− Fj) xj |
| (4.86) |
At each iteration, x is chosen to minimize E(x) subject to the constraint
that all of the xi are between zero and one.
The Fock matrix for P(x) is further written as a linear combination of the previous Fock matrices,
F(x) = |
∑
i
|
xi Fi + δFxc(x) |
| (4.87) |
where δFxc(x) denotes a (usually quite small) change in the exchange-correlation part
that is computed once x has been determined.
We note that this extrapolation is very similar to that used by DIIS.
However, this procedure is guaranteed to reduce the energy E(x) at every iteration, unlike DIIS.
In practice, the RCA approach is ideally suited to difficult convergence situations
because it is immune to the erratic orbital swapping that can occur in DIIS.
On the other hand, RCA appears to perform relatively poorly near convergence,
requiring a relatively large number of steps to improve the precision of a "good" approximate solution.
It is thus advantageous in many cases to run RCA for the initial steps and
then switch to DIIS either after some specified number of iterations or
after some target convergence threshold has been reached.
Finally, note that by its nature RCA considers the energy as a function of the density matrix.
As a result, it cannot be applied to restricted open shell calculations which are explicitly orbital-based.
Note: RCA interacts poorly with INCDFT, so INCDFT is disabled by default
when an RCA or RCA_DIIS calculation is requested. To enable INCDFT with
such a calculation, set INCDFT = 2 in the $rem section. RCA may also have
poor interactions with INCFOCK; if RCA fails to converge, disabling INCFOCK
may improve convergence in some cases.
RCA options are:
RCA_PRINT
Controls the output from RCA SCF optimizations. |
TYPE:
DEFAULT:
OPTIONS:
0 | No print out |
1 | RCA summary information |
2 | Level 1 plus RCA coefficients |
3 | Level 2 plus RCA iteration details |
RECOMMENDATION:
|
| MAX_RCA_CYCLES
The maximum number of RCA iterations before switching to DIIS when SCF_ALGORITHM is RCA_DIIS. |
TYPE:
DEFAULT:
OPTIONS:
N | N RCA iterations before switching to DIIS |
RECOMMENDATION:
|
|
|
THRESH_RCA_SWITCH
The threshold for switching between RCA and DIIS when SCF_ALGORITHM is RCA_DIIS. |
TYPE:
DEFAULT:
OPTIONS:
N | Algorithm changes from RCA to DIIS when Error is less than 10−N. |
RECOMMENDATION:
|
Please see next section for an example using RCA.
4.6.8 Examples
Example 4.0 Input for a UHF calculation using geometric direct minimization
(GDM) on the phenyl radical, after initial iterations with DIIS. This example
fails to converge if DIIS is employed directly.
$molecule
0 2
c1
x1 c1 1.0
c2 c1 rc2 x1 90.0
x2 c2 1.0 c1 90.0 x1 0.0
c3 c1 rc3 x1 90.0 c2 tc3
c4 c1 rc3 x1 90.0 c2 -tc3
c5 c3 rc5 c1 ac5 x1 -90.0
c6 c4 rc5 c1 ac5 x1 90.0
h1 c2 rh1 x2 90.0 c1 180.0
h2 c3 rh2 c1 ah2 x1 90.0
h3 c4 rh2 c1 ah2 x1 -90.0
h4 c5 rh4 c3 ah4 c1 180.0
h5 c6 rh4 c4 ah4 c1 180.0
rc2 = 2.672986
rc3 = 1.354498
tc3 = 62.851505
rc5 = 1.372904
ac5 = 116.454370
rh1 = 1.085735
rh2 = 1.085342
ah2 = 122.157328
rh4 = 1.087216
ah4 = 119.523496
$end
$rem
BASIS = 6-31G*
EXCHANGE = hf
INTSBUFFERSIZE = 15000000
SCF_ALGORITHM = diis_gdm
SCF_CONVERGENCE = 7
THRESH = 10
$end
Example 4.0 An example showing how to converge a ROHF calculation on the 3A2
state of DMX. Note the use of reading in orbitals from a previous closed-shell
calculation and the use of MOM to maintain the orbital occupancies. The 3B1 is
obtained if MOM is not used.
$molecule
+1 1
C 0.000000 0.000000 0.990770
H 0.000000 0.000000 2.081970
C -1.233954 0.000000 0.290926
C -2.444677 0.000000 1.001437
H -2.464545 0.000000 2.089088
H -3.400657 0.000000 0.486785
C -1.175344 0.000000 -1.151599
H -2.151707 0.000000 -1.649364
C 0.000000 0.000000 -1.928130
C 1.175344 0.000000 -1.151599
H 2.151707 0.000000 -1.649364
C 1.233954 0.000000 0.290926
C 2.444677 0.000000 1.001437
H 2.464545 0.000000 2.089088
H 3.400657 0.000000 0.486785
$end
$rem
UNRESTRICTED false
EXCHANGE hf
BASIS 6-31+G*
SCF_GUESS core
$end
@@@
$molecule
read
$end
$rem
UNRESTRICTED false
EXCHANGE hf
BASIS 6-31+G*
SCF_GUESS read
MOM_START 1
$end
$occupied
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 28
$end
@@@
$molecule
-1 3
... <as above> ...
$end
$rem
UNRESTRICTED false
EXCHANGE hf
BASIS 6-31+G*
SCF_GUESS read
$end
Example 4.0 RCA_DIIS algorithm applied a radical
$molecule
0 2
H 1.004123 -0.180454 0.000000
O -0.246002 0.596152 0.000000
O -1.312366 -0.230256 0.000000
$end
$rem
UNRESTRICTED true
EXCHANGE hf
BASIS cc-pVDZ
SCF_GUESS gwh
SCF_ALGORITHM RCA_DIIS
DIIS_SUBSPACE_SIZE 15
THRESH 9
$end
4.7 Dual-Basis Self-Consistent Field Calculations
The dual-basis approximation [180,[181,[182,[183,[184,[185]
to self-consistent field (HF or DFT) energies provides an
efficient means for obtaining large basis set effects at vastly less cost
than a full SCF calculation in a large basis set.
First, a full SCF calculation is performed in a
chosen small basis (specified by BASIS2). Second, a single SCF-like
step in the larger, target basis (specified, as usual, by BASIS) is used to
perturbatively approximate the large basis energy. This correction amounts to a
first-order approximation in the change in density matrix, after the single
large-basis step:
Etotal = Esmall basis + Tr[(∆P)·F]large basis |
| (4.88) |
where F (in the large basis) is built from the converged (small basis)
density matrix. Thus, only a single Fock build is required in the large basis
set. Currently, HF and DFT energies (SP) as well as analytic first derivatives
(FORCE or OPT) are available. [Note: As of version 4.0,
first derivatives of unrestricted dual-basis DFT energies-though correct-require a
code-efficiency fix. We do not recommend use of these derivatives until
this improvement has been made.]
Across the G3 set [186,[187,[188] of 223 molecules, using cc-pVQZ, dual-basis
errors for B3LYP are 0.04 kcal/mol (energy) and 0.03 kcal/mol (atomization
energy per bond) and are at least an order of magnitude less than using a smaller
basis set alone. These errors are obtained at roughly an order of magnitude savings
in cost, relative to the full, target-basis calculation.
4.7.1 Dual-Basis MP2
The dual-basis approximation can also be used for the reference energy
of a correlated second-order Møller-Plesset (MP2) calculation [181,[185].
When activated, the dual-basis HF energy is first calculated as described above;
subsequently, the MO coefficients and orbital energies are used to calculate
the correlation energy in the large basis. This technique is particularly
effective for RI-MP2 calculations (see Section 5.5), in which the
cost of the underlying SCF calculation often dominates.
Furthermore, efficient analytic gradients
of the DB-RI-MP2 energy have been developed [183] and added to Q-Chem.
These gradients allow for the optimization of molecular structures with RI-MP2 near the
basis set limit. Typical computational savings are on the order of 50% (aug-cc-pVDZ) to 71% (aug-cc-pVTZ).
Resulting dual-basis errors are only 0.001 Å in molecular structures and are, again,
significantly less than use of a smaller basis set alone.
4.7.2 Basis Set Pairings
We recommend using basis pairings in which the small basis set is a proper subset of the target basis
(6-31G into 6-31G*, for example).
They not only produce more accurate results; they also lead to more efficient integral
screening in both energies and gradients. Subsets for many standard basis sets (including Dunning-style
cc-pVXZ basis sets and their augmented analogs)
have been developed and thoroughly tested for these purposes. A summary of the
pairings is provided in Table 4.7.2; details of these truncations are provided in
Figure 4.1.
A new pairing for 6-31G*-type calculations is also available. The 6-4G subset (named r64G in Q-Chem)
is a subset by primitive functions and provides a smaller, faster alternative for this
basis set regime [184]. A case-dependent switch in the projection code
(still OVPROJECTION) properly handles 6-4G. For DB-HF, the calculations proceed as described
above. For DB-DFT, empirical scaling factors (see Ref. for details) are applied
to the dual-basis correction. This scaling is handled automatically by the code and prints accordingly.
As of Q-Chem version 3.2, the basis set projection code has also been adapted to properly account for
linear dependence [185], which can often be problematic for large, augmented
(aug-cc-pVTZ, etc..) basis set calculations. The same standard keyword (LINDEPTHRESH)
is utilized for linear dependence in the projection code. Because of the scheme utilized to account
for linear dependence, only proper-subset pairings are now allowed.
Like single-basis calculations, user-specified general or mixed basis sets may be
employed (see Chapter 7) with dual-basis calculations. The target basis specification
occurs in the standard $basis section. The smaller, secondary basis is placed in a similar
$basis2 section; the syntax within this section is the same as the syntax for $basis.
General and mixed small
basis sets are activated by BASIS2=BASIS2_GEN and BASIS2=BASIS2_MIXED, respectively.
BASIS | BASIS2 | |
cc-pVTZ | rcc-pVTZ |
cc-pVQZ | rcc-pVQZ |
aug-cc-pVDZ | racc-pVDZ |
aug-cc-pVTZ | racc-pVTZ |
aug-cc-pVQZ | racc-pVQZ |
6-31G* | r64G, 6-31G |
6-31G** | r64G, 6-31G |
6-31++G** | 6-31G* |
6-311++G(3df,3pd) | 6-311G*, 6-311+G* |
Table 4.3: Summary and nomenclature of recommended dual-basis pairings
#1Structure of the truncated basis set pairings for cc-pV(T,Q)Z and aug-cc-pV(D,T,Q)Z.
The most compact functions are listed at the top. Primed functions depict aug (diffuse) functions.
Dashes indicate eliminated functions, relative to the paired standard basis set. In each case, the
truncations for hydrogen and heavy atoms are shown, along with the nomenclature used in Q-Chem.
4.7.3 Job Control
Dual-Basis calculations are controlled with the following $rem.
DUAL_BASIS_ENERGY turns on the Dual-Basis approximation. Note that
use of BASIS2 without DUAL_BASIS_ENERGY only uses
basis set projection to generate the initial guess and does not invoke the
Dual-Basis approximation (see Section 4.5.5). OVPROJECTION is used as the default
projection mechanism for Dual-Basis calculations; it is not recommended that
this be changed. Specification of SCF variables
(e.g., THRESH) will apply to calculations in both basis sets.
DUAL_BASIS_ENERGY
Activates dual-basis SCF (HF or DFT) energy correction. |
TYPE:
DEFAULT:
OPTIONS:
Analytic first derivative available for HF and DFT (see JOBTYPE) |
Can be used in conjunction with MP2 or RI-MP2 |
See BASIS, BASIS2, BASISPROJTYPE |
RECOMMENDATION:
Use Dual-Basis to capture large-basis effects at smaller basis cost.
Particularly useful with RI-MP2, in which HF often dominates. Use only proper
subsets for small-basis calculation. |
|
4.7.4 Examples
Example 4.0 Input for a Dual-Basis B3LYP single-point calculation.
$molecule
0 1
H
H 1 0.75
$end
$rem
JOBTYPE sp
EXCHANGE b3lyp
BASIS 6-311++G(3df,3pd)
BASIS2 6-311G*
DUAL_BASIS_ENERGY true
$end
Example 4.0 Input for a Dual-Basis B3LYP single-point calculation with a minimal 6-4G small basis.
$molecule
0 1
H
H 1 0.75
$end
$rem
JOBTYPE sp
EXCHANGE b3lyp
BASIS 6-31G*
BASIS2 r64G
DUAL_BASIS_ENERGY true
$end
Example 4.0 Input for a Dual-Basis RI-MP2 single-point calculation.
$molecule
0 1
H
H 1 0.75
$end
$rem
JOBTYPE sp
EXCHANGE hf
CORRELATION rimp2
AUX_BASIS rimp2-cc-pVQZ
BASIS cc-pVQZ
BASIS2 rcc-pVQZ
DUAL_BASIS_ENERGY true
$end
Example 4.0 Input for a Dual-Basis RI-MP2 geometry optimization.
$molecule
0 1
H
H 1 0.75
$end
$rem
JOBTYPE opt
EXCHANGE hf
CORRELATION rimp2
AUX_BASIS rimp2-aug-cc-pVDZ
BASIS aug-cc-pVDZ
BASIS2 racc-pVDZ
DUAL_BASIS_ENERGY true
$end
Example 4.0 Input for a Dual-Basis RI-MP2 single-point calculation with mixed basis sets.
$molecule
0 1
H
O 1 1.1
H 2 1.1 1 104.5
$end
$rem
JOBTYPE opt
EXCHANGE hf
CORRELATION rimp2
AUX_BASIS aux_mixed
BASIS mixed
BASIS2 basis2_mixed
DUAL_BASIS_ENERGY true
$end
$basis
H 1
cc-pVTZ
****
O 2
aug-cc-pVTZ
****
H 3
cc-pVTZ
****
$end
$basis2
H 1
rcc-pVTZ
****
O 2
racc-pVTZ
****
H 3
rcc-pVTZ
****
$end
$aux_basis
H 1
rimp2-cc-pVTZ
****
O 2
rimp2-aug-cc-pVTZ
****
H 3
rimp2-cc-pVTZ
****
$end
4.7.5 Dual-Basis Dynamics
The ability to compute SCF and MP2 energies and forces at reduced cost makes dual-basis calculations
attractive for ab initio molecular dynamics simulations. Dual-basis BOMD has
demonstrated [189]
savings of 58%, even relative to state-of-the-art, Fock-extrapolated BOMD. Savings are further
increased to 71% for dual-basis RI-MP2 dynamics. Notably, these timings outperform estimates
of extended-Lagrangian (Car-Parrinello) dynamics, without detrimental energy conservation
artifacts that are sometimes observed in the latter [190].
Two algorithmic factors make modest but worthwhile improvements to dual-basis dynamics. First,
the iterative, small-basis calculation can benefit from Fock matrix extrapolation [190].
Second,
extrapolation of the response equations (the so-called "Z-vector" equations) for
nuclear forces further increases efficiency [191] . Both sets of keywords
are described in Section 9.9, and the code automatically
adjusts to extrapolate in the proper basis set when DUAL_BASIS_ENERGY
is activated.
4.8 Hartree-Fock and Density-Functional Perturbative Corrections
4.8.1 Hartree-Fock Perturbative Correction
An HFPC [192,[193] calculation consists of an iterative HF calculation in a small primary
basis followed by a single Fock matrix formation, diagonalization, and energy
evaluation in a larger, secondary basis. We denote a conventional HF
calculation by HF / basis, and a HFPC calculation by HFPC / primary / secondary.
Using a primary basis of n functions, the restricted HF matrix elements for a
2m-electron system are
Fμν = hμν + |
n ∑
λσ
|
Pλσ | ⎡ ⎣
|
(μν|λσ) − |
1
2
|
(μλ|νσ) | ⎤ ⎦
|
|
| (4.89) |
Solving the Roothaan-Hall equation in the primary basis results in
molecular orbitals and an associated density matrix, P. In an HFPC
calculation, P is subsequently used to build a new Fock matrix,
F[1], in a larger secondary basis of N functions
Fab[1] = hab + |
n ∑
λσ
|
Pλσ | ⎡ ⎣
|
(ab|λσ) − |
1
2
|
(aλ|bσ) | ⎤ ⎦
|
|
| (4.90) |
where λ, σ indicate primary basis functions and a, b
represent secondary basis functions. Diagonalization of F[1] yields
improved molecular orbitals and an associated density matrix P[1]. The
HFPC energy is given by
EHFPC = |
N ∑
ab
|
P[1]ab hab + |
1
2
|
|
N ∑
abcd
|
P[1]abP[1]cd [2(ab|cd) − (ac|bd)] |
| (4.91) |
where a, b, c and d represent secondary basis functions. This
differs from the DBHF energy evaluation where P P[1], rather than
P[1]P[1], is used. The inclusion of contributions that are
quadratic in P[1] is the key reason for the fact that HFPC is more
accurate than DBHF.
Unlike DBHF, HFPC does not require proper subset/superset
basis set combinations and is therefore able to jump between
any two basis sets. Benchmark study of HFPC on a large and diverse data set of
total and reaction energies show that, for a range of primary/secondary basis set
combinations the HFPC scheme can reduce the error of the primary calculation by
around two orders of magnitude at a cost of about one third that of the full
secondary calculation.
4.8.2 Density Functional Perturbative Correction (Density Functional "Triple Jumping")
Density Functional Perturbation Theory (DFPC) [194] seeks to combine the low cost of pure calculations using small bases and grids with the high accuracy of hybrid calculations using large bases and grids. Our method is motivated by the dual functional method of Nakajima and
Hirao [195] and the dual grid scheme of Tozer et al. [196]
We combine these with dual basis ideas to obtain a triple perturbation in the functional,
grid and basis directions.
4.8.3 Job Control
HFPC/DFPC calculations are controlled with the following $rem.
HFPT turns on the HFPC/DFPC approximation. Note that
HFPT_BASIS specifies the secondary basis set.
HFPT
Activates HFPC/DFPC calculation. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Use Dual-Basis to capture large-basis effects at smaller basis cost. See reference for recommended basis set, functional, and grid pairings. |
|
| HFPT_BASIS
Specifies the secondary basis in a HFPC/DFPC calculation. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
See reference for recommended basis set, functional, and grid pairings. |
|
|
|
DFPT_XC_GRID
Specifies the secondary grid in a HFPC/DFPC calculation. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
See reference for recommended basis set, functional, and grid pairings. |
|
| DFPT_EXCHANGE
Specifies the secondary functional in a HFPC/DFPC calculation. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
See reference for recommended basis set, functional, and grid pairings. |
|
|
|
4.8.4 Examples
Example 4.0 Input for a HFPC single-point calculation.
$molecule
0 1
H
H 1 0.75
$end
$rem
JOBTYPE sp
EXCHANGE hf
BASIS cc-pVDZ !primary basis
HFPT_BASIS cc-pVQZ !secondary basis
PURECART 1111 ! set to purecart of the target basis
HFPT true
$end
Example 4.0 Input for a DFPC single-point calculation.
$molecule
0 1
H
H 1 0.75
$end
$rem
JOBTYPE sp
EXCHANGE blyp !primary functional
DFPT_EXCHANGE b3lyp !secondary functional
DFPT_XC_GRID 00075000302 !secondary grid
XC_GRID 0 !primary grid
HFPT_BASIS 6-311++G(3df,3pd) !secondary basis
BASIS 6-311G* !primary basis
PURECART 1111
HFPT true
$end
4.9 Constrained Density Functional Theory (CDFT)
Under certain circumstances,
it is desirable to apply constraints to the electron density during a self-consistent calculation.
For example, in a transition metal complex it may be desirable to constrain the net spin density
on a particular metal atom to integrate to a value consistent with the MS value expected from ligand field theory.
Similarly, in a donor-acceptor complex one may be interested in constraining the total density
on the acceptor group so that the formal charge on the acceptor is either neutral or negatively charged,
depending as the molecule is in its neutral or charge transfer configuration.
In these situations, one is interested in controlling the average value of some density observable,
O(r), to take on a given value, N:
There are of course many states that satisfy such a constraint,
but in practice one is usually looking for the lowest energy such state.
To solve the resulting constrained minimization problem,
one introduces a Lagrange multiplier, V, and solves for the stationary point of
V[ρ, V] = E[ρ] − V( | ⌠ ⌡
|
ρ(r) O(r) d3r − N ) |
| (4.93) |
where E[ρ] is the energy of the system described using density functional theory (DFT).
At convergence, the functional W gives the density, ρ, that satisfies the constraint exactly
(i.e., it has exactly the prescribed number of electrons on the acceptor or spins on the metal center)
but has the lowest energy possible.
The resulting self-consistent procedure can be efficiently solved by ensuring at every SCF step the constraint is satisfied exactly.
The Q-Chem implementation of these equations closely parallels those in Ref. .
The first step in any constrained DFT calculation is the specification of the constraint operator, O(r).
Within Q-Chem, the user is free to specify any constraint operator
that consists of a linear combination of the Becke's atomic partitioning functions:
Here the summation runs over the atoms in the system (A) and over the electron spin
(σ = α, β).
Note that each weight function is designed to be nearly 1 near the nucleus of atom A
and rapidly fall to zero near the nucleus of any other atom in the system.
The specification of the CAσ coefficients is accomplished using
$cdft
CONSTRAINT_VALUE_X
COEFFICIENT1_X FIRST_ATOM1_X LAST_ATOM1_X TYPE1_X
COEFFICIENT2_X FIRST_ATOM2_X LAST_ATOM2_X TYPE2_X
...
CONSTRAINT_VALUE_Y
COEFFICIENT1_Y FIRST_ATOM1_Y LAST_ATOM1_Y TYPE1_Y
COEFFICIENT2_Y FIRST_ATOM2_Y LAST_ATOM2_Y TYPE2_Y
...
...
$end
Here, each CONSTRAINT_VALUE is a real number that specifies the desired average value (N) of
the ensuing linear combination of atomic partition functions.
Each COEFFICIENT specifies the coefficient (Cα) of a partition function
or group of partition functions in the constraint operator O.
For each coefficient, all the atoms between the integers FIRST_ATOM and LAST_ATOM
contribute with the specified weight in the constraint operator.
Finally, TYPE specifies the type of constraint being applied-either "CHARGE" or "SPIN".
For a CHARGE constraint the spin up and spin down densities contribute equally
(CAα=CAβ = CA) yielding the total number of electrons on the atom A.
For a SPIN constraint, the spin up and spin down densities contribute with opposite sign
(CAα−CAβ = CA) resulting in a measure of the net spin on the atom A.
Each separate CONSTRAINT_VALUE creates a new operator whose average is to be
constrained-for instance, the example above includes several independent constraints:
X, Y, …. Q-Chem can handle an arbitrary number of constraints
and will minimize the energy subject to all of these constraints simultaneously.
In addition to the $cdft input section of the input file,
a constrained DFT calculation must also set the CDFT flag to TRUE for the calculation to run.
If an atom is not included in a particular operator,
then the coefficient of that atoms partition function is set to zero for that operator.
The TYPE specification is optional, and the default is to perform a charge constraint.
Further, note that any charge constraint is on the net atomic charge.
That is, the constraint is on the difference between the average number of electrons
on the atom and the nuclear charge.
Thus, to constrain CO to be negative, the constraint value would be 1 and not 15.
The choice of which atoms to include in different constraint regions
is left entirely to the user and in practice must be based somewhat on chemical intuition.
Thus, for example, in an electron transfer reaction the user must specify which atoms
are in the "donor" and which are in the "acceptor".
In practice, the most stable choice is typically to make the constrained region
as large as physically possible.
Thus, for the example of electron transfer again, it is best to assign every atom
in the molecule to one or the other group (donor or acceptor),
recognizing that it makes no sense to assign any atoms to both groups.
On the other end of the spectrum, constraining the formal charge on a single atom
is highly discouraged.
The problem is that while our chemical intuition tells us that the lithium atom in LiF
should have a formal charge of +1, in practice the quantum mechanical charge is much closer
to +0.5 than +1.
Only when the fragments are far enough apart do our intuitive pictures of formal charge
actually become quantitative.
Finally, we note that SCF convergence is typically more challenging in constrained DFT calculations
as compared to their unconstrained counterparts.
This effect arises because applying the constraint typically leads to a broken symmetry, diradical-like state.
As SCF convergence for these cases is known to be difficult even for unconstrained states,
it is perhaps not surprising that there are additional convergence difficulties in this case.
Please see the section on SCF convergence for ideas on how to improve convergence for constrained calculations.
[Special Note: The direct minimization methods are not available for constrained calculations.
Hence, some combination of DIIS and RCA must be used to obtain convergence.
Further, it is often necessary to break symmetry in the initial guess (using SCF_GUESS_MIX)
to ensure that the lowest energy solution is obtained.]
Analytic gradients are available for constrained DFT calculations [198].
Second derivatives are only available by finite difference of gradients.
For details on how to apply constrained DFT to compute magnetic exchange couplings,
see Ref. .
For details on using constrained DFT to compute electron transfer parameters,
see Ref. .
CDFT options are:
CDFT
Initiates a constrained DFT calculation |
TYPE:
DEFAULT:
OPTIONS:
TRUE | Perform a Constrained DFT Calculation |
FALSE | No Density Constraint |
RECOMMENDATION:
Set to TRUE if a Constrained DFT calculation is desired. |
|
| CDFT_POSTDIIS
Controls whether the constraint is enforced after DIIS extrapolation. |
TYPE:
DEFAULT:
OPTIONS:
TRUE | Enforce constraint after DIIS |
FALSE | Do not enforce constraint after DIIS |
RECOMMENDATION:
Use default unless convergence problems arise,
in which case it may be beneficial to experiment with setting CDFT_POSTDIIS to FALSE.
With this option set to TRUE, energies should be variational after the first iteration. |
|
|
|
CDFT_PREDIIS
Controls whether the constraint is enforced before DIIS extrapolation. |
TYPE:
DEFAULT:
OPTIONS:
TRUE | Enforce constraint before DIIS |
FALSE | Do not enforce constraint before DIIS |
RECOMMENDATION:
Use default unless convergence problems arise, in which case it may be beneficial to experiment with setting
CDFT_PREDIIS to TRUE. Note that it is possible to enforce the constraint
both before and after DIIS by setting both CDFT_PREDIIS and CDFT_POSTDIIS to TRUE. |
|
| CDFT_THRESH
Threshold that determines how tightly the constraint must be satisfied. |
TYPE:
DEFAULT:
OPTIONS:
N | Constraint is satisfied to within 10−N. |
RECOMMENDATION:
Use default unless problems occur. |
|
|
|
CDFT_CRASHONFAIL
Whether the calculation should crash or not if the constraint iterations do not converge. |
TYPE:
DEFAULT:
OPTIONS:
TRUE | Crash if constraint iterations do not converge. |
FALSE | Do not crash. |
RECOMMENDATION:
|
| CDFT_BECKE_POP
Whether the calculation should print the Becke atomic charges at convergence |
TYPE:
DEFAULT:
OPTIONS:
TRUE | Print Populations |
FALSE | Do not print them |
RECOMMENDATION:
Use default. Note that the Mulliken populations printed at the end of an SCF run will not typically add up to the prescribed constraint value. Only the Becke populations are guaranteed to satisfy the user-specified constraints. |
|
|
|
Example 4.0 Charge separation on FAAQ
$molecule
0 1
C -0.64570736 1.37641945 -0.59867467
C 0.64047568 1.86965826 -0.50242683
C 1.73542663 1.01169939 -0.26307089
C 1.48977850 -0.39245666 -0.15200261
C 0.17444585 -0.86520769 -0.27283957
C -0.91002699 -0.02021483 -0.46970395
C 3.07770780 1.57576311 -0.14660056
C 2.57383948 -1.35303134 0.09158744
C 3.93006075 -0.78485926 0.20164558
C 4.16915637 0.61104948 0.08827557
C 5.48914671 1.09087541 0.20409492
H 5.64130588 2.16192921 0.11315072
C 6.54456054 0.22164774 0.42486947
C 6.30689287 -1.16262761 0.53756193
C 5.01647654 -1.65329553 0.42726664
H -1.45105590 2.07404495 -0.83914389
H 0.85607395 2.92830339 -0.61585218
H 0.02533661 -1.93964850 -0.19096085
H 7.55839768 0.60647405 0.51134530
H 7.13705743 -1.84392666 0.71043613
H 4.80090178 -2.71421422 0.50926027
O 2.35714021 -2.57891545 0.20103599
O 3.29128460 2.80678842 -0.23826460
C -2.29106231 -0.63197545 -0.53957285
O -2.55084900 -1.72562847 -0.95628300
N -3.24209015 0.26680616 0.03199109
H -2.81592456 1.08883943 0.45966550
C -4.58411403 0.11982669 0.15424004
C -5.28753695 1.14948617 0.86238753
C -5.30144592 -0.99369577 -0.39253179
C -6.65078185 1.06387425 1.01814801
H -4.73058059 1.98862544 1.26980479
C -6.66791492 -1.05241167 -0.21955088
H -4.76132422 -1.76584307 -0.92242502
C -7.35245187 -0.03698606 0.47966072
H -7.18656323 1.84034269 1.55377875
H -7.22179827 -1.89092743 -0.62856041
H -8.42896369 -0.10082875 0.60432214
$end
$rem
JOBTYPE FORCE
EXCHANGE B3LYP
BASIS 6-31G*
SCF_PRINT TRUE
CDFT TRUE
$end
$cdft
2
1 1 25
-1 26 38
$end
Example 4.0 Cu2-Ox High Spin
$molecule
2 3
Cu 1.4674 1.6370 1.5762
O 1.7093 0.0850 0.3825
O -0.5891 1.3402 0.9352
C 0.6487 -0.3651 -0.1716
N 1.2005 3.2680 2.7240
N 3.0386 2.6879 0.6981
N 1.3597 0.4651 3.4308
H 2.1491 -0.1464 3.4851
H 0.5184 -0.0755 3.4352
H 1.3626 1.0836 4.2166
H 1.9316 3.3202 3.4043
H 0.3168 3.2079 3.1883
H 1.2204 4.0865 2.1499
H 3.8375 2.6565 1.2987
H 3.2668 2.2722 -0.1823
H 2.7652 3.6394 0.5565
Cu -1.4674 -1.6370 -1.5762
O -1.7093 -0.0850 -0.3825
O 0.5891 -1.3402 -0.9352
C -0.6487 0.3651 0.1716
N -1.2005 -3.2680 -2.7240
N -3.0386 -2.6879 -0.6981
N -1.3597 -0.4651 -3.4308
H -2.6704 -3.4097 -0.1120
H -3.6070 -3.0961 -1.4124
H -3.5921 -2.0622 -0.1485
H -0.3622 -3.1653 -3.2595
H -1.9799 -3.3721 -3.3417
H -1.1266 -4.0773 -2.1412
H -0.5359 0.1017 -3.4196
H -2.1667 0.1211 -3.5020
H -1.3275 -1.0845 -4.2152
$end
$rem
JOBTYPE SP
EXCHANGE B3LYP
BASIS 6-31G*
SCF_PRINT TRUE
CDFT TRUE
$end
$cdft
2
1 1 3 s
-1 17 19 s
$end
4.10 Configuration Interaction with Constrained Density Functional Theory (CDFT-CI)
There are some situations in which a system is not well-described by a
DFT calculation on a single configuration. For example, transition
states are known to be poorly described by most functionals, with
the computed barrier being too low. We can, in particular, identify
homolytic dissociation of diatomic species as situations where static
correlation becomes extremely important. Existing DFT functionals
have proved to be very effective in capturing dynamic correlation,
but frequently exhibit difficulties in the presence of strong
static correlation. Configuration Interaction, well known in
wavefunction methods, is a multireference method that is quite
well-suited for capturing static correlation; the CDFT-CI technique
allows for CI calculations on top of DFT calculations, harnessing
both static and dynamic correlation methods.
Constrained DFT is used to compute densities (and Kohn-Sham wavefunctions)
for two or more diabatic-like states; these states are then used to
build a CI matrix. Diagonalizing this matrix yields energies
for the ground and excited states within the configuration space.
The coefficients of the initial diabatic states are printed, to
show the characteristics of the resultant states.
Since Density-Functional Theory only gives converged densities,
not actual wavefunctions, computing the off-diagonal coupling
elements H12 is not completely straightforward, as the physical
meaning of the Kohn-Sham wavefunction is not entirely clear.
We can, however, perform the following manipulation [201]:
| |
|
|
1
2
|
[〈1|H+VC1ωC1−VC1ωC1 |2〉+ 〈1|H+VC2ωC2−VC2ωC2|2〉] |
| |
| |
|
|
1
2
|
[(E1+VC1NC1+E2+VC2NC2) 〈1|2〉−VC1〈1|ωC1|2〉 −VC2〈1|ωC2|2〉] |
| |
|
(where the converged states |i〉 are assumed to be the
ground state of H+VCiωCi with eigenvalue Ei+VCiNCi).
This manipulation eliminates the two-electron integrals from the
expression, and experience has shown that the use of Slater determinants
of Kohn-Sham orbitals is a reasonable approximation for the
quantities 〈1|2〉 and 〈1|ωCi|2〉.
We note that since these constrained states are eigenfunctions
of different Hamiltonians (due to different constraining potentials),
they are not orthogonal states, and we must set up our
CI matrix as a generalized eigenvalue problem. Symmetric orthogonalization
is used by default, though the overlap matrix and Hamiltonian
in non-orthogonal basis are also printed at higher print levels
so that other orthogonalization schemes can be used after-the-fact.
In a limited number of cases, it is possible to find an orthogonal
basis for the CDFT-CI Hamiltonian, where a physical interpretation
can be assigned to the orthogonal states. In such cases, the
matrix representation of the Becke weight operator is diagonalized,
and the (orthogonal) eigenstates can be characterized [202].
This matrix is printed as the "CDFT-CI Population Matrix" at
increased print levels.
In order to perform a CDFT-CI calculation, the N interacting
states must be defined; this is done in a very similar fashion
to the specification for CDFT states:
$cdft
STATE_1_CONSTRAINT_VALUE_X
COEFFICIENT1_X FIRST_ATOM1_X LAST_ATOM1_X TYPE1_X
COEFFICIENT2_X FIRST_ATOM2_X LAST_ATOM2_X TYPE2_X
...
STATE_1_CONSTRAINT_VALUE_Y
COEFFICIENT1_Y FIRST_ATOM1_Y LAST_ATOM1_Y TYPE1_Y
COEFFICIENT2_Y FIRST_ATOM2_Y LAST_ATOM2_Y TYPE2_Y
...
...
---
STATE_2_CONSTRAINT_VALUE_X
COEFFICIENT1_X FIRST_ATOM1_X LAST_ATOM1_X TYPE1_X
COEFFICIENT2_X FIRST_ATOM2_X LAST_ATOM2_X TYPE2_X
...
STATE_2_CONSTRAINT_VALUE_Y
COEFFICIENT1_Y FIRST_ATOM1_Y LAST_ATOM1_Y TYPE1_Y
COEFFICIENT2_Y FIRST_ATOM2_Y LAST_ATOM2_Y TYPE2_Y
...
...
...
$end
Each state is specified with the CONSTRAINT_VALUE and the
corresponding weights on sets of atoms whose average value should
be the constraint value.
Different states are separated by a single line containing three or more
dash characters.
If it is desired to use an unconstrained state as one of the
interacting configurations, charge and spin constraints of
zero may be applied to the atom range from 0 to 0.
It is MANDATORY to specify a spin constraint corresponding
to every charge constraint (and it must be immediately following
that charge constraint in the input deck), for reasons described below.
In addition to the $cdft input section of the input file,
a CDFT-CI calculation must also set the CDFTCI flag
to TRUE for the calculation to run. Note, however, that the
CDFT flag is used internally by CDFT-CI, and should
not be set in the input deck. The variable CDFTCI_PRINT
may also be set manually to control the level of output. The default
is 0, which will print the energies and weights (in the diabatic
basis) of the N CDFT-CI states. Setting it to 1 or above will
also print the CDFT-CI overlap matrix, the CDFT-CI Hamiltonian matrix
before the change of basis, and the CDFT-CI Population matrix.
Setting it to 2 or above
will also print the eigenvectors and eigenvalues of the CDFT-CI
Population matrix. Setting it to 3 will produce more output
that is only useful during application debugging.
For convenience, if CDFTCI_PRINT is not set in the
input file, it will be set to the value of SCF_PRINT.
As mentioned in the previous section, there is a disparity
between our chemical intuition of what charges should be
and the actual quantum-mechanical charge. The example was given
of LiF, where our intuition gives the lithium atom a formal
charge of +1; we might similarly imagine performing a
CDFT-CI calculation on H2, with two ionic states
and two spin-constrained states. However, this would result
in attempting to force both electrons of H2 onto
the same nucleus, and this calculation is impossible to converge
(since by the nature of the Becke weight operators, there will
be some non-zero amount of the density that gets proportioned
onto the other atom, at moderate internuclear separations).
To remedy problems such as this, we have adopted a mechanism by
which to convert the formal charges of our chemical intuition
into reasonable quantum-mechanical charge constraints.
We use the formalism of "promolecule" densities, wherein
the molecule is divided into fragments (based on the partitioning
of constraint operators), and a DFT calculation is performed on
these fragments, completely isolated from each other [202].
(This step is why both spin and charge constraints are required, so
that the correct partitioning of electrons for each fragment
may be made.) The resulting promolecule densities, converged
for the separate fragments, are then added together, and the
value of the various weight operators as applied to this
new density, is used as a constraint for the actual CDFT
calculations on the interacting states.
The promolecule density method compensates for the effect
of nearby atoms on the actual density that will be constrained.
The comments about SCF convergence for CDFT calculations also
apply to the calculations used for CDFT-CI, with the addition
that if the SCF converges but CDFT does not, it may be necessary
to use a denser integration grid or reduce the value of CDFT_THRESH.
Analytic gradients are not available. For details on using CDFT-CI
to calculate reaction barrier heights, see Ref. .
CDFT-CI options are:
| CDFTCI
Initiates a constrained DFT-configuration interaction calculation |
TYPE:
DEFAULT:
OPTIONS:
TRUE | Perform a CDFT-CI Calculation |
FALSE | No CDFT-CI |
RECOMMENDATION:
Set to TRUE if a CDFT-CI calculation is desired. |
|
|
|
CDFTCI_PRINT
Controls level of output from CDFT-CI procedure to Q-Chem output file. |
TYPE:
DEFAULT:
OPTIONS:
0 | Only print energies and coefficients of CDFT-CI final states |
1 | Level 0 plus CDFT-CI overlap, Hamiltonian, and population matrices |
2 | Level 1 plus eigenvectors and eigenvalues of the CDFT-CI population matrix |
3 | Level 2 plus promolecule orbital coefficients and energies |
RECOMMENDATION:
Level 3 is primarily for program debugging; levels 1 and 2 may be useful
for analyzing the coupling elements |
|
| CDFT_LAMBDA_MODE
Allows CDFT potentials to be specified directly, instead of being
determined as Lagrange multipliers. |
TYPE:
DEFAULT:
OPTIONS:
FALSE | Standard CDFT calculations are used. |
TRUE | Instead of specifying target charge and spin constraints, use the values |
| from the input deck as the value of the Becke weight potential
|
RECOMMENDATION:
Should usually be set to FALSE. Setting to TRUE can be useful to
scan over different strengths of charge or spin localization, as
convergence properties are improved compared to regular CDFT(-CI) calculations. |
|
|
|
CDFTCI_SKIP_PROMOLECULES
Skips promolecule calculations and allows fractional charge and spin
constraints to be specified directly. |
TYPE:
DEFAULT:
OPTIONS:
FALSE | Standard CDFT-CI calculation is performed. |
TRUE | Use the given charge/spin constraints directly, with no
promolecule calculations. |
RECOMMENDATION:
Setting to TRUE can be useful for scanning over constraint values. |
|
Note that CDFT_LAMBDA_MODE and CDFTCI_SKIP_PROMOLECULES
are mutually incompatible.
CDFTCI_SVD_THRESH
By default, a symmetric orthogonalization is performed on the CDFT-CI
matrix before diagonalization. If the CDFT-CI overlap matrix is nearly
singular (i.e., some of the diabatic states are nearly degenerate), then
this orthogonalization can lead to numerical instability. When computing
→S−1/2, eigenvalues smaller than 10−CDFTCI_SVD_THRESH
are discarded. |
TYPE:
DEFAULT:
OPTIONS:
n | for a threshold of 10−n. |
RECOMMENDATION:
Can be decreased if numerical instabilities are encountered in the
final diagonalization. |
|
| CDFTCI_STOP
The CDFT-CI procedure involves performing independent SCF calculations
on distinct constrained states. It sometimes occurs that the same
convergence parameters are not successful for all of the states of
interest, so that a CDFT-CI calculation might converge one of these
diabatic states but not the next. This variable allows a user to
stop a CDFT-CI calculation after a certain number of states have
been converged, with the ability to restart later on the next state,
with different convergence options. |
TYPE:
DEFAULT:
OPTIONS:
n | stop after converging state n (the first state is state 1) |
0 | do not stop early |
RECOMMENDATION:
Use this setting if some diabatic states converge but others do not. |
|
|
|
CDFTCI_RESTART
To be used in conjunction with CDFTCI_STOP, this variable
causes CDFT-CI to read already-converged states from disk and begin
SCF convergence on later states. Note that the same $cdft section
must be used for the stopped calculation and the restarted calculation. |
TYPE:
DEFAULT:
OPTIONS:
n | start calculations on state n+1 |
RECOMMENDATION:
Use this setting in conjunction with CDFTCI_STOP. |
|
Many of the CDFT-related rem variables are also applicable to CDFT-CI calculations.
4.11 Unconventional SCF Calculations
4.11.1 CASE Approximation
The Coulomb Attenuated Schrödinger Equation (CASE) [204]
approximation follows from the KWIK [205] algorithm in which
the Coulomb operator is separated into two pieces using the error
function, Eq. (4.45). Whereas in Section 4.3.4
this partition of the Coulomb operator was used to incorporate long-range
Hartree-Fock exchange into DFT, within the CASE approximation it is used
to attenuate all occurrences of the Coulomb operator in
Eq. (4.2), by
neglecting the long-range portion of the identity in
Eq. (4.45). The parameter ω in
Eq. (4.45) is used to tune the level of attenuation.
Although the
total energies from Coulomb attenuated calculations are significantly different
from non-attenuated energies, it is found that relative energies, correlation
energies and, in particular, wavefunctions, are not, provided a reasonable
value of ω is chosen.
By virtue of the exponential decay of the attenuated operator, ERIs can be
neglected on a proximity basis yielding a rigorous O(N) algorithm for single
point energies. CASE may also be applied in geometry optimizations and
frequency calculations.
OMEGA
Controls the degree of attenuation of the Coulomb operator. |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to ω = n/1000, in units of bohr−1 |
RECOMMENDATION:
|
| INTEGRAL_2E_OPR
Determines the two-electron operator. |
TYPE:
DEFAULT:
OPTIONS:
-1 | Apply the CASE approximation. |
-2 | Coulomb Operator. |
RECOMMENDATION:
Use default unless the CASE operator is desired. |
|
|
|
4.11.2 Polarized Atomic Orbital (PAO) Calculations
Polarized atomic orbital (PAO) calculations are an interesting unconventional
SCF method, in which the molecular orbitals and the density matrix are not
expanded directly in terms of the basis of atomic orbitals. Instead, an
intermediate molecule-optimized minimal basis of polarized atomic orbitals
(PAOs) is used [206]. The polarized atomic orbitals are defined by
an atom-blocked linear transformation from the fixed atomic orbital basis,
where the coefficients of the transformation are optimized to minimize the
energy, at the same time as the density matrix is obtained in the PAO
representation. Thus a PAO-SCF calculation is a constrained variational
method, whose energy is above that of a full SCF calculation in the same basis.
However, a molecule optimized minimal basis is a very compact and useful
representation for purposes of chemical analysis, and it also has potential
computational advantages in the context of MP2 or local MP2 calculations, as
can be done after a PAO-HF calculation is complete to obtain the PAO-MP2
energy.
PAO-SCF calculations tend to systematically underestimate binding energies
(since by definition the exact result is obtained for atoms, but not for
molecules). In tests on the G2 database, PAO-B3LYP/6-311+G(2df,p) atomization
energies deviated from full B3LYP/6-311+G(2df,p) atomization energies by
roughly 20 kcal/mol, with the error being essentially extensive with the number
of bonds. This deviation can be reduced to only 0.5 kcal/mol
with the use of a simple non-iterative second order
correction for "beyond-minimal basis" effects [207]. The second
order correction is evaluated at the end of each PAO-SCF calculation, as it
involves negligible computational cost. Analytical gradients are available
using PAOs, to permit structure optimization. For additional discussion of the
PAO-SCF method and its uses, see the references cited above.
Calculations with PAOs are determined controlled by the following $rem
variables. PAO_METHOD = PAO invokes PAO-SCF calculations, while the
algorithm used to iterate the PAO's can be controlled with
PAO_ALGORITHM.
PAO_ALGORITHM
Algorithm used to optimize polarized atomic orbitals (see PAO_METHOD) |
TYPE:
DEFAULT:
OPTIONS:
0 | Use efficient (and riskier) strategy to converge PAOs. |
1 | Use conservative (and slower) strategy to converge PAOs. |
RECOMMENDATION:
|
| PAO_METHOD
Controls evaluation of polarized atomic orbitals (PAOs). |
TYPE:
DEFAULT:
EPAO | For local MP2 calculations Otherwise no default. |
OPTIONS:
PAO | Perform PAO-SCF instead of conventional SCF. |
EPAO | Obtain EPAO's after a conventional SCF. |
RECOMMENDATION:
|
|
|
4.12 SCF Metadynamics
As the SCF equations are non-linear in the electron density, there are in
theory very many solutions (i.e., sets of orbitals where the energy is stationary
with respect to changes in the orbital subset). Most often sought is the
solution with globally minimal energy as this is a variational upper bound
to the true eigenfunction in this basis.
The SCF methods available in Q-Chem allow the user to converge upon an
SCF solution, and (using STABILITY_ANALYSIS) ensure it is a minimum,
but there is no known method of ensuring that the found solution is a global
minimum; indeed in systems with many low-lying energy levels the solution
converged upon may vary considerably with initial guess.
SCF metadynamics [208] is a technique which can be used to
locate multiple SCF solutions, and thus gain some confidence that
the calculation has converged upon the global minimum.
It works by searching out a solution to the SCF equations. Once found,
the solution is stored, and a biasing potential added so as
to avoid re-converging to the same solution.
More formally, the distance between two solutions, w and x,
can be expressed as dwx2=〈wΨ| w∧ρ− x∧ρ | wΨ〉,
where wΨ is a Slater determinant formed from the orthonormal orbitals,
wϕi, of solution w, and w∧ρ is the one-particle
density operator for wΨ. This definition is equivalent to
dwx2=N−wPμνSνσ·xPστSτμ. and is easily calculated.
dwx2 is bounded by 0 and the number of electrons, and can be taken as the
distance between two solutions. As an example, any singly excited
determinant from an SCF determinant (which will not in general be
another SCF solution), would be a distance 1 away from it.
In a manner analogous to classical metadynamics, to bias against the set of
previously located solutions, x, we create a new Lagrangian,
where 0 represents the present density.
From this we may derive a new effective Fock matrix,
| |
~
F
|
μν
|
=Fμν+ |
x ∑
x
|
Pμν Nx λx e−λx d0x2 |
| | (4.96) |
|
This may be used with very little modification within a standard DIIS procedure to locate multiple solutions.
When close to a new solution, the biasing potential is removed so the location of that solution is not affected by it.
If the calculation ends up re-converging to the same solution, Nx and λx can be modified to avert this.
Once a solution is found it is added to the list of solutions, and the orbitals mixed
to provide a new guess for locating a different solution.
This process can be customized by the REM variables below.
Both DIIS and GDM methods can be used, but it is advisable
to turn on MOM when using DIIS to maintain the orbital ordering.
Post-HF correlation methods can also be applied. By default
they will operate for the last solution located, but this can be changed with the
SCF_MINFIND_RUNCORR variable.
The solutions found through metadynamics also appear to be good approximations to diabatic surfaces
where the electronic structure does not significantly change with geometry.
In situations where there are such multiple electronic states close in energy, an adiabatic state
may be produced by diagonalizing a matrix of these states - Configuration Interaction. As they are distinct solutions of the
SCF equations, these states are non-orthogonal (one cannot be constructed as a single determinant
made out of the orbitals of another), and so the CI is a little more complicated and is a Non-Orthogonal CI.
For more information see the NOCI section in Chapter 6
SCF_SAVEMINIMA
Turn on SCF Metadynamics and specify how many solutions to locate. |
TYPE:
DEFAULT:
OPTIONS:
0 | Do not use SCF Metadynamics |
n | Attempt to find n distinct SCF solutions. |
RECOMMENDATION:
Perform SCF Orbital metadynamics and attempt to locate
n different SCF solutions. Note that these may not all be minima. Many saddle points are often located.
The last one located will be the one used in any post-SCF treatments.
In systems where there are infinite point groups, this procedure
cannot currently distinguish between spatial rotations of different
densities, so will likely converge on these multiply. |
|
| SCF_READMINIMA
Read in solutions from a previous SCF Metadynamics calculation |
TYPE:
DEFAULT:
OPTIONS:
n | Read in n previous solutions and attempt to locate them all. |
−n | Read in n previous solutions, but only attempt to locate solution n. |
RECOMMENDATION:
This may not actually locate all solutions required and will probably
locate others too. The SCF will also stop when the number of
solutions specified in SCF_SAVEMINIMA are found.
Solutions from other geometries may also be read in and used as starting orbitals.
If a solution is found and matches one that is read in within
SCF_MINFIND_READDISTTHRESH, its orbitals are saved in
that position for any future calculations.
The algorithm works by restarting from the orbitals and density
of a the minimum it is attempting to find. After 10 failed
restarts (defined by SCF_MINFIND_RESTARTSTEPS), it moves
to another previous minimum and attempts to locate that instead.
If there are no minima to find, the restart does random mixing
(with 10 times the normal random mixing parameter).
|
|
|
|
SCF_MINFIND_WELLTHRESH
Specify what SCF_MINFIND believes is the basin of a solution |
TYPE:
DEFAULT:
OPTIONS:
n for a threshold of 10−n |
RECOMMENDATION:
When the DIIS error is less than 10−n, penalties are switched
off to see whether it has converged to a new solution. |
|
| SCF_MINFIND_RESTARTSTEPS
Restart with new orbitals if no minima have been found within this many steps |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
If the SCF calculation spends many steps not finding a
solution, lowering this number may speed up solution-finding.
If the system converges to solutions very
slowly, then this number may need to be raised. |
|
|
|
SCF_MINFIND_INCREASEFACTOR
Controls how the height of the penalty function
changes when repeatedly trapped at the same solution |
TYPE:
DEFAULT:
OPTIONS:
abcde | corresponding to a.bcde |
RECOMMENDATION:
If the algorithm converges to a solution which corresponds
to a previously located solution, increase both the
normalization N and the width lambda of the penalty function there. Then do a restart. |
|
| SCF_MINFIND_INITLAMBDA
Control the initial width of the penalty function. |
TYPE:
DEFAULT:
OPTIONS:
abcde | corresponding to ab.cde |
RECOMMENDATION:
The initial inverse-width (i.e., the inverse-variance) of the
Gaussian to place to fill solution's well. Measured in electrons(−1).
Increasing this will repeatedly converging on the same solution. |
|
|
|
SCF_MINFIND_INITNORM
Control the initial height of the penalty function. |
TYPE:
DEFAULT:
OPTIONS:
abcde corresponding to ab.cde |
RECOMMENDATION:
The initial normalization of the Gaussian to place to fill a well. Measured in Hartrees. |
|
| SCF_MINFIND_RANDOMMIXING
Control how to choose new orbitals after locating a solution |
TYPE:
DEFAULT:
00200 meaning .02 radians |
OPTIONS:
abcde corresponding to a.bcde radians |
RECOMMENDATION:
After locating an SCF solution, the orbitals are mixed
randomly to move to a new position in orbital space. For each
occupied and virtual orbital pair picked at random and rotate
between them by a random angle between 0 and this. If this
is negative then use exactly this number, e.g., −15708 will
almost exactly swap orbitals. Any number < −15708 will cause the orbitals to be swapped exactly. |
|
|
|
SCF_MINFIND_NRANDOMMIXES
Control how many random mixes to do to generate new orbitals |
TYPE:
DEFAULT:
OPTIONS:
n | Perform n random mixes. |
RECOMMENDATION:
This is the number of occupied/virtual pairs to attempt to mix,
per separate density (i.e., for unrestricted calculations both
alpha and beta space will get this many rotations). If this
is negative then only mix the highest 25% occupied and lowest 25% virtuals. |
|
| SCF_MINFIND_READDISTTHRESH
The distance threshold at which to consider two solutions the same |
TYPE:
DEFAULT:
OPTIONS:
abcde corresponding to ab.cde |
RECOMMENDATION:
The threshold to regard a minimum as the same as a read in
minimum. Measured in electrons. If two minima are closer
together than this, reduce the threshold to distinguish them. |
|
|
|
SCF_MINFIND_MIXMETHOD
Specify how to select orbitals for random mixing |
TYPE:
DEFAULT:
OPTIONS:
0 | Random mixing: select from any orbital to any orbital. |
1 | Active mixing: select based on energy, decaying with distance from the Fermi level. |
2 | Active Alpha space mixing: select based on energy, decaying with distance from the |
| Fermi level only in the alpha space. |
RECOMMENDATION:
Random mixing will often find very high energy solutions.
If lower energy solutions are desired, use 1 or 2. |
|
| SCF_MINFIND_MIXENERGY
Specify the active energy range when doing Active mixing |
TYPE:
DEFAULT:
OPTIONS:
abcde corresponding to ab.cde |
RECOMMENDATION:
The standard deviation of the Gaussian distribution used
to select the orbitals for mixing (centered on the Fermi level). Measured in Hartree.
To find less-excited solutions, decrease this value |
|
|
|
SCF_MINFIND_RUNCORR
Run post-SCF correlated methods on multiple SCF solutions |
TYPE:
DEFAULT:
OPTIONS:
If this is set > 0, then run correlation methods for all found SCF solutions. |
RECOMMENDATION:
Post-HF correlation methods should function correctly with excited
SCF solutions, but their convergence is often much more difficult owing to intruder states. |
|
4.13 Ground State Method Summary
To summarize the main features of Q-Chem's ground state self-consistent field
capabilities, the user needs to consider:
- Input a molecular geometry ($molecule keyword)
- Cartesian
- Z-matrix
- Read from prior calculations
- Declare the job specification ($remkeyword)
-
JOBTYPE
- Single point
- Optimization
- Frequency
- See Table 4.1 for further options
- BASIS
- Refer to Chapter 7 (note: $basis keyword for user defined basis sets)
- Effective core potentials, as described in Chapter 8
- EXCHANGE
- Linear scaling algorithms for all methods
- Arsenal of exchange density functionals
- User definable functionals and hybrids
- CORRELATION
- DFT or wavefunction-based methods
- Linear scaling (CPU and memory) incorporation of correlation with DFT
- Arsenal of correlation density functionals
- User definable functionals and hybrids
- See Chapter 5 for wavefunction-based correlation methods.
- Exploit Q-Chem's special features
- CFMM, LinK large molecule options
- SCF rate of convergence increased through improved guesses and
alternative minimization algorithms
- Explore novel methods if
desired: CASE approximation, PAOs.
Chapter 5 Wavefunction-Based Correlation Methods
5.1 Introduction
The Hartree-Fock procedure, while often qualitatively correct, is frequently
quantitatively deficient. The deficiency is due to the underlying assumption of
the Hartree-Fock approximation: that electrons move independently
within molecular orbitals subject to an averaged field imposed by the remaining
electrons. The error that this introduces is called the correlation energy and
a wide variety of procedures exist for estimating its magnitude. The purpose of
this Chapter is to introduce the main wavefunction-based methods available in
Q-Chem to describe electron correlation.
Wavefunction-based electron correlation methods concentrate on the design of
corrections to the wavefunction beyond the mean-field Hartree-Fock
description. This is to be contrasted with the density functional theory
methods discussed in the previous Chapter. While density functional methods
yield a description of electronic structure that accounts for electron
correlation subject only to the limitations of present-day functionals (which,
for example, omit dispersion interactions), DFT cannot be systematically
improved if the results are deficient. Wavefunction-based approaches for
describing electron correlation [211,[212] offer this main
advantage. Their main disadvantage is relatively high computational cost,
particularly for the higher-level theories.
There are four broad classes of models for describing electron correlation that
are supported within Q-Chem. The first three directly approximate the full
time-independent Schrödinger equation. In order of increasing accuracy, and
also increasing cost, they are:
- Perturbative treatment of pair correlations between electrons, typically
capable of recovering 80% or so of the correlation energy in stable
molecules.
- Self-consistent treatment of pair correlations between electrons (most often
based on coupled-cluster theory),
capable of recovering on the order of 95% or so of the correlation
energy.
- Non-iterative corrections for higher than double substitutions, which
can account for more than 99% of the correlation energy. They are the
basis of many modern methods that are capable of yielding chemical
accuracy for ground state reaction energies, as exemplified by the
G2 [186] and G3 methods [187].
These methods are discussed in the following subsections.
There is also a fourth class of methods supported in Q-Chem, which have a
different objective. These active space methods aim to obtain a balanced
description of electron correlation in highly correlated systems, such as
diradicals, or along bond-breaking coordinates. Active space methods are
discussed in Section 5.9. Finally, equation-of-motion (EOM)
methods provide tools for describing open-shell and electronically excited
species. Selected configuration interaction (CI) models are also available.
In order to carry out a wavefunction-based electron correlation calculation
using Q-Chem, three $rem variables need to be set:
-
BASIS to specify the basis set (see Chapter 7)
- CORRELATION method for treating Correlation (defaults to
NONE)
- N_FROZEN_CORE frozen core electrons (0 default, optionally
FC, or n)
Additionally, for EOM or CI calculations the number of target states of each type
(excited, spin-flipped, ionized, attached, etc.) in each
irreducible representation (irrep) should be specified (see Section
6.6.7). The level of correlation of the target EOM states
may be different from that used for the reference, and can be specified by
EOM_CORR keyword.
Note that for wavefunction-based correlation methods, the default option for
EXCHANGE is HF (Hartree-Fock). It can therefore be omitted
from the input. If desired, correlated calculations can employ DFT
orbitals by setting EXCHANGE to a specific DFT method (see
Section 5.11).
The full range of ground state wavefunction-based correlation methods
available (i.e. the recognized options to the CORRELATION keyword)
are as follows:.
CORRELATION
Specifies the correlation level of theory, either DFT or wavefunction-based. |
TYPE:
DEFAULT:
OPTIONS:
MP2 | Sections 5.2 and 5.3 |
Local_MP2 | Section 5.4 |
RILMP2 | Section 5.5.1 |
ATTMP2 | Section 5.6.1 |
ATTRIMP2 | Section 5.6.1 |
ZAPT2 | A more efficient restricted open-shell MP2 method [213]. |
MP3 | Section 5.2 |
MP4SDQ | Section 5.2 |
MP4 | Section 5.2 |
CCD | Section 5.7 |
CCD(2) | Section 5.8 |
CCSD | Section 5.7 |
CCSD(T) | Section 5.8 |
CCSD(2) | Section 5.8 |
CCSD(fT) | Section 5.8.3 |
CCSD(dT) | Section 5.8.3 |
QCISD | Section 5.7 |
QCISD(T) | Section 5.8 |
OD | Section 5.7 |
OD(T) | Section 5.8 |
OD(2) | Section 5.8 |
VOD | Section 5.9 |
VOD(2) | Section 5.9 |
QCCD | Section 5.7 |
QCCD(T) | |
QCCD(2) | |
VQCCD | Section 5.9 |
RECOMMENDATION:
Consult the literature for guidance. |
|
5.2 Møller-Plesset Perturbation Theory
5.2.1 Introduction
Møller-Plesset Perturbation Theory [117] is a widely used
method for approximating the correlation energy of molecules. In particular,
second order Møller-Plesset perturbation theory (MP2) is one of the
simplest and most useful levels of theory beyond the Hartree-Fock
approximation. Conventional and local MP2 methods available in Q-Chem are
discussed in detail in Sections 5.3 and 5.4
respectively. The MP3 method is still occasionally used, while MP4 calculations
are quite commonly employed as part of the G2 and G3 thermochemical
methods [186,[187]. In the remainder of this section, the
theoretical basis of Møller-Plesset theory is reviewed.
5.2.2 Theoretical Background
The Hartree-Fock wavefunction Ψ0 and energy E0 are
approximate solutions (eigenfunction and eigenvalue) to the exact
Hamiltonian eigenvalue problem or Schrödinger's electronic wave equation,
Eq. (4.5). The HF wavefunction and energy are, however, exact solutions for the
Hartree-Fock Hamiltonian H0 eigenvalue problem. If we assume that the
Hartree-Fock wavefunction Ψ0 and energy E0 lie near the exact wave
function Ψ and energy E, we can now write the exact Hamiltonian
operator as
where V is the small perturbation and λ is a dimensionless parameter.
Expanding the exact wavefunction and energy in terms of the HF wavefunction
and energy yields
E=E(0)+λE(1)+λ2E(2)+λ3E(3)+… |
| (5.2) |
and
Ψ = Ψ0 +λΨ(1)+λ2Ψ(2)+λ3Ψ(3)+… |
| (5.3) |
Substituting these expansions into the Schrödinger equation and collecting terms according
to powers of λ yields
H0 Ψ(1)+VΨ0 = E(0)Ψ(1)+E(1)Ψ0 |
| (5.5) |
H0 Ψ(2)+VΨ(1)=E(0)Ψ(2)+E(1)Ψ(1)+E(2)Ψ0 |
| (5.6) |
and so forth. Multiplying each of the above equations by Ψ0 and
integrating over all space yields the following expression for the nth-order
(MPn) energy:
Thus, the Hartree-Fock energy
is simply the sum of the zeroth- and first- order energies
The correlation energy can then be written
Ecorr = E0(2) +E0(3) +E0(4) +… |
| (5.12) |
of which the first term is the MP2 energy.
It can be shown that the MP2 energy can be written (in terms of spin-orbitals) as
E0(2) = − |
1
4
|
|
virt ∑
ab
|
|
occ ∑
ij
|
|
| 〈 ab || ij 〉 |2
εa +εb −εi −εj
|
|
| (5.13) |
where
〈 ab|| ij 〉 = 〈 ab | ab ij ij 〉 −〈 ab | ab ji ji 〉 |
| (5.14) |
and
〈 ab | ab cd cd 〉 = | ⌠ ⌡
|
ψa (r1 )ψc (r1 ) | ⎡ ⎣
|
1
r12
| ⎤ ⎦
|
ψb (r2 )ψd (r2 )dr1 dr2 |
| (5.15) |
which can be written in terms of the two-electron repulsion integrals
〈 ab | ab cd cd 〉 = |
∑
μ
|
|
∑
ν
|
|
∑
λ
|
|
∑
σ
|
Cμa Cνc Cλb Cσd ( μν|λσ ) |
| (5.16) |
Expressions for higher order terms follow similarly, although with much greater
algebraic and computational complexity. MP3 and particularly MP4 (the third and
fourth order contributions to the correlation energy) are both occasionally
used, although they are increasingly supplanted by the coupled-cluster methods
described in the following sections. The disk and memory requirements for MP3
are similar to the self-consistent pair correlation methods discussed in
Section 5.7 while the computational cost of MP4 is similar to the
"(T)" corrections discussed in Section 5.8.
5.3 Exact MP2 Methods
5.3.1 Algorithm
Second order Møller-Plesset theory (MP2) [117] probably the
simplest useful wavefunction-based electron correlation method. Revived in
the mid-1970s, it remains highly popular today, because it offers systematic
improvement in optimized geometries and other molecular properties relative to
Hartree-Fock (HF) theory [6]. Indeed, in a recent comparative
study of small closed-shell molecules [214], MP2 outperformed
much more expensive singles and doubles coupled-cluster theory for such
properties! Relative to state-of-the-art Kohn-Sham density functional
theory (DFT) methods, which are the most economical methods to account for
electron correlation effects, MP2 has the advantage of properly incorporating
long-range dispersion forces. The principal weaknesses of MP2 theory are for
open shell systems, and other cases where the HF determinant is a poor starting
point.
Q-Chem contains an efficient conventional semi-direct method to evaluate the
MP2 energy and gradient [215]. These methods require OVN memory
(O, V, N are the numbers of occupied, virtual and total orbitals,
respectively), and disk space which is bounded from above by OVN2/2. The
latter can be reduced to IVN2/2 by treating the occupied orbitals in batches
of size I, and re-evaluating the two-electron integrals O/I times. This
approach is tractable on modern workstations for energy and gradient
calculations of at least 500 basis functions or so, or molecules of between 15
and 30 first row atoms, depending on the basis set size. The computational cost
increases between the 3rd and 5th power of the size of the molecule,
depending on which part of the calculation is time-dominant.
The algorithm and implementation in Q-Chem is improved over earlier
methods [216,[217], particularly in the following areas:
- Uses pure functions, as opposed to Cartesians, for all fifth-order steps.
This leads to large computational savings for basis sets containing pure
functions.
- Customized loop unrolling for improved efficiency.
- The sortless semi-direct method avoids a read and write operation
resulting in a large I/O savings.
- Reduction in disk and memory usage.
- No extra integral evaluation for gradient calculations.
- Full exploitation of frozen core approximation.
The implementation offers the user the following alternatives:
- Direct algorithm (energies only).
- Disk-based sortless semi-direct algorithm (energies and gradients).
- Local occupied orbital method (energies only).
The semi-direct algorithm is the only choice for gradient calculations. It is
also normally the most efficient choice for energy calculations. There are two
classes of exceptions:
- If the amount of disk space available is not significantly larger than
the amount of memory available, then the direct algorithm is preferred.
- If the calculation involves a very large basis set, then the local
orbital method may be faster, because it performs the transformation in a
different order. It does not have the large memory requirement (no
OVN array needed), and always evaluates the integrals four times. The
AO2MO_DISK option is also ignored in this algorithm, which
requires up to O2VN megabytes of disk space.
There are three important options that should be wisely chosen by the user in
order to exploit the full efficiency of Q-Chem's direct and semi-direct MP2
methods (as discussed above, the LOCAL_OCCUPIED method has different
requirements).
-
MEM_STATIC : The value specified for this $rem variable must be
sufficient to permit efficient integral evaluation (10-80Mb) and to hold
a large temporary array whose size is OVN, the product of the number of
occupied, virtual and total numbers of orbitals.
- AO2MO_DISK: The value specified for this $rem variable should be
as large as possible (i.e., perhaps 80% of the free space on your
$QCSCRATCH partition where temporary job files are held). The
value of this variable will determine how many times the two-electron
integrals in the atomic orbital basis must be re-evaluated, which is a
major computational step in MP2 calculations.
- N_FROZEN_CORE: The computational requirements for MP2 are
proportional to the number of occupied orbitals for some steps, and the
square of that number for other steps. Therefore the CPU time can be
significantly reduced if your job employs the frozen core approximation.
Additionally the memory and disk requirements are reduced when the frozen
core approximation is employed.
5.3.2 The Definition of Core Electron
The number of core electrons in an atom is relatively well defined, and
consists of certain atomic shells, (note that ECPs are available in
`small-core' and `large-core' varieties, see Chapter 8 for
further details). For example, in phosphorus the core consists of 1s, 2s,
and 2p shells, for a total of ten electrons. In molecular systems, the core
electrons are usually chosen as those occupying the n/2 lowest energy
orbitals, where n is the number of core electrons in the constituent atoms.
In some cases, particularly in the lower parts of the periodic table, this
definition is inappropriate and can lead to significant errors in the
correlation energy. Vitaly Rassolov has implemented an alternative definition
of core electrons within Q-Chem which is based on a Mulliken population
analysis, and which addresses this problem [218].
The current implementation is restricted to n-kl type basis sets such as
3-21 or 6-31, and related bases such as 6-31+G(d). There are essentially two
cases to consider, the outermost 6G functions (or 3G in the case of the 3-21G
basis set) for Na, Mg, K and Ca, and the 3d functions for the elements Ga-Kr.
Whether or not these are treated as core or valence is determined by the
CORE_CHARACTER $rem, as summarized in Table 5.3.2.
CORE_CHARACTER | Outermost 6G (3G) | 3d (Ga-Kr) |
| for Na, Mg, K, Ca | | |
1 | valence | valence |
2 | valence | core |
3 | core | core |
4 | core | valence |
Table 5.1: A summary of the effects of different core definitions
5.3.3 Algorithm Control and Customization
The direct and semi-direct integral transformation algorithms used by Q-Chem
(e.g., MP2, CIS(D)) are limited by available disk space, D, and memory, C,
the number of basis functions, N, the number of virtual orbitals, V and the
number of occupied orbitals, O, as discussed above. The generic description
of the key $rem variables are:
MEM_STATIC
Sets the memory for Fortran AO integral calculation and transformation modules. |
TYPE:
DEFAULT:
64 | corresponding to 64 Mb. |
OPTIONS:
n | User-defined number of megabytes. |
RECOMMENDATION:
For direct and semi-direct MP2 calculations, this must exceed OVN +
requirements for AO integral evaluation (32-160 Mb), as discussed above. |
|
| MEM_TOTAL
Sets the total memory available to Q-Chem, in megabytes. |
TYPE:
DEFAULT:
OPTIONS:
n | User-defined number of megabytes. |
RECOMMENDATION:
Use default, or set to the physical memory of your machine. Note that if more
than 1GB is specified for a CCMAN job, the memory is allocated as
follows |
12% | MEM_STATIC |
50% | CC_MEMORY |
35% | Other memory requirements:
|
|
|
|
|
AO2MO_DISK
Sets the amount of disk space (in megabytes) available for MP2 calculations. |
TYPE:
DEFAULT:
2000 | Corresponding to 2000 Mb. |
OPTIONS:
n | User-defined number of megabytes. |
RECOMMENDATION:
Should be set as large as possible, discussed in Section 5.3.1. |
|
| CD_ALGORITHM
Determines the algorithm for MP2 integral transformations. |
TYPE:
DEFAULT:
OPTIONS:
DIRECT | Uses fully direct algorithm (energies only). |
SEMI_DIRECT | Uses disk-based semi-direct algorithm. |
LOCAL_OCCUPIED | Alternative energy algorithm (see 5.3.1). |
RECOMMENDATION:
Semi-direct is usually most efficient, and will normally be chosen by default. |
|
|
|
N_FROZEN_CORE
Sets the number of frozen core orbitals in a post-Hartree-Fock calculation. |
TYPE:
DEFAULT:
OPTIONS:
FC | Frozen Core approximation (all core orbitals frozen). |
n | Freeze n core orbitals. |
RECOMMENDATION:
While the default is not to freeze orbitals, MP2 calculations are more
efficient with frozen core orbitals. Use FC if possible. |
|
| N_FROZEN_VIRTUAL
Sets the number of frozen virtual orbitals in a post-Hartree-Fock
calculation. |
TYPE:
DEFAULT:
OPTIONS:
n | Freeze n virtual orbitals. |
RECOMMENDATION:
|
|
|
CORE_CHARACTER
Selects how the core orbitals are determined in the frozen-core
approximation. |
TYPE:
DEFAULT:
OPTIONS:
0 | Use energy-based definition. |
1-4 | Use Mulliken-based definition (see Table 5.3.2 for details). |
RECOMMENDATION:
Use default, unless performing calculations on molecules with heavy elements. |
|
| PRINT_CORE_CHARACTER
Determines the print level for the CORE_CHARACTER option. |
TYPE:
DEFAULT:
OPTIONS:
0 | No additional output is printed. |
1 | Prints core characters of occupied MOs. |
2 | Print level 1, plus prints the core character of AOs. |
RECOMMENDATION:
Use default, unless you are uncertain about what the core character is. |
|
|
|
5.3.4 Example
Example 5.0 Example of an MP2/6-31G* calculation employing the frozen core
approximation. Note that the EXCHANGE $rem variable will default to
HF
$molecule
0 1
O
H1 O oh
H2 O oh H1 hoh
oh = 1.01
hoh = 105
$end
$rem
CORRELATION mp2
BASIS 6-31g*
N_FROZEN_CORE fc
$end
5.4 Local MP2 Methods
5.4.1 Local Triatomics in Molecules (TRIM) Model
The development of what may be called "fast methods" for evaluating electron
correlation is a problem of both fundamental and practical importance, because
of the unphysical increases in computational complexity with molecular size
which afflict "exact" implementations of electron correlation methods.
Ideally, the development of fast methods for treating electron correlation
should not impact either model errors or numerical errors associated with the
original electron correlation models. Unfortunately this is not possible at
present, as may be appreciated from the following rough argument. Spatial
locality is what permits re-formulations of electronic structure methods that
yield the same answer as traditional methods, but faster. The one-particle
density matrix decays exponentially with a rate that relates to the HOMO-LUMO
gap in periodic systems. When length scales longer than this characteristic
decay length are examined, sparsity will emerge in both the one-particle
density matrix and also pair correlation amplitudes expressed in terms of
localized functions. Very roughly, such a length scale is about 5 to 10 atoms
in a line, for good insulators such as alkanes. Hence sparsity emerges beyond
this number of atoms in 1-D, beyond this number of atoms squared in 2-D, and
this number of atoms cubed in 3-D. Thus for three-dimensional systems,
locality only begins to emerge for systems of between hundreds and thousands of
atoms.
If we wish to accelerate calculations on systems below this size regime, we
must therefore introduce additional errors into the calculation, either as
numerical noise through looser tolerances, or by modifying the theoretical
model, or perhaps both. Q-Chem's approach to local electron correlation is
based on modifying the theoretical models describing correlation with an
additional well-defined local approximation. We do not attempt to accelerate
the calculations by introducing more numerical error because of the
difficulties of controlling the error as a function of molecule size, and the
difficulty of achieving reproducible significant results. From this
perspective, local correlation becomes an integral part of specifying the
electron correlation treatment. This means that the considerations necessary
for a correlation treatment to qualify as a well-defined theoretical model
chemistry apply equally to local correlation modeling. The local approximations
should be
- Size-consistent: meaning that the energy of a super-system of two
non-interacting molecules should be the sum of the energy obtained from
individual calculations on each molecule.
- Uniquely defined: Require no input beyond nuclei, electrons, and
an atomic orbital basis set. In other words, the model should be uniquely
specified without customization for each molecule.
- Yield continuous potential energy surfaces: The model
approximations should be smooth, and not yield energies that exhibit
jumps as nuclear geometries are varied.
To ensure that these model chemistry criteria are met, Q-Chem's local MP2
methods [219,[220] express the double substitutions (i.e., the
pair correlations) in a redundant basis of atom-labeled functions. The
advantage of doing this is that local models satisfying model chemistry
criteria can be defined by performing an atomic truncation of the double
substitutions. A general substitution in this representation will then involve
the replacement of occupied functions associated with two given atoms by empty
(or virtual) functions on two other atoms, coupling together four different
atoms. We can force one occupied to virtual substitution (of the two that
comprise a double substitution) to occur only between functions on the same
atom, so that only three different atoms are involved in the double
substitution. This defines the triatomics in molecules (TRIM) local
model for double substitutions. The TRIM model offers the potential for
reducing the computational requirements of exact MP2 theory by a factor
proportional to the number of atoms. We could also force each occupied to
virtual substitution to be on a given atom, thereby defining a more drastic
diatomics in molecules (DIM) local correlation model.
The simplest atom-centered basis that is capable of spanning the occupied
space is a minimal basis of core and valence atomic orbitals on each
atom. Such a basis is necessarily redundant because it also contains sufficient
flexibility to describe the empty valence anti-bonding orbitals necessary to
correctly account for non-dynamical electron correlation effects such as
bond-breaking. This redundancy is actually important for the success of the
atomic truncations because occupied functions on adjacent atoms to some extent
describe the same part of the occupied space. The minimal functions we use to
span the occupied space are obtained at the end of a large basis set
calculation, and are called extracted polarized atomic orbitals
(EPAOs) [221]. We discuss them briefly below. It is even possible to
explicitly perform an SCF calculation in terms of a molecule-optimized minimal
basis of polarized atomic orbitals (PAOs) (see Chapter 4).
To span the virtual space, we use the full set of atomic orbitals,
appropriately projected into the virtual space.
We summarize the situation. The number of functions spanning the occupied
subspace will be the minimal basis set dimension, M, which is greater than
the number of occupied orbitals, O, by a factor of up to about two. The
virtual space is spanned by the set of projected atomic orbitals whose number
is the atomic orbital basis set size N, which is fractionally greater than
the number of virtuals VNO. The number of double substitutions in such a
redundant representation will be typically three to five times larger than the
usual total. This will be more than compensated by reducing the number of
retained substitutions by a factor of the number of atoms, A, in the local
triatomics in molecules model, or a factor of A2 in the diatomics in
molecules model.
The local MP2 energy in the TRIM and DIM models are given by the following
expressions, which can be compared against the full MP2 expression given
earlier in Eq. (5.13). First, for the DIM model:
EDIM MP2 = − |
1
2
|
|
∑
―P,―Q
|
|
( |
-
P
|
| |
-
Q
|
) ( |
-
P
|
|| |
-
Q
|
) |
∆―P + ∆―Q
|
|
| (5.17) |
The sums run over the linear number of atomic single excitations after they
have been canonicalized. Each term in the denominator is thus an energy
difference between occupied and virtual levels in this local basis.
Similarly, the TRIM model corresponds to the following local MP2 energy:
ETRIM MP2 = − |
∑
―P,jb
|
|
∆―P + εb − εj
|
− EDIM MP2 |
| (5.18) |
where the sum is now mixed between atomic substitutions ―P, and nonlocal
occupied j to virtual b substitutions. See
Refs. for a full derivation and discussion.
The accuracy of the local TRIM and DIM models has been tested in a series of
calculations [219,[220]. In particular, the TRIM model
has been shown to be quite faithful to full MP2 theory via the following tests:
- The TRIM model recovers around 99.7% of the MP2 correlation energy for
covalent bonding. This is significantly higher than the roughly 98-99%
correlation energy recovery typically exhibited by the Saebo-Pulay local
correlation method [222]. The DIM model recovers around
95% of the correlation energy.
- The performance of the TRIM model for relative energies is very robust,
as shown in Ref. for the challenging case of
torsional barriers in conjugated molecules. The RMS error in these
relative energies is only 0.031 kcal/mol, as compared to around 1
kcal/mol when electron correlation effects are completely neglected.
- For the water dimer with the aug-cc-pVTZ basis, 96% of the MP2
contribution to the binding energy is recovered with the TRIM model, as
compared to 62% with the Saebo-Pulay local correlation method.
- For calculations of the MP2 contribution to the G3 and G3(MP2) energies
with the larger molecules in the G3-99 database [188],
introduction of the TRIM approximation results in an RMS error relative
to full MP2 theory of only 0.3 kcal/mol, even though the absolute
magnitude of these quantities is on the order of tens of kcal/mol.
5.4.2 EPAO Evaluation Options
When a local MP2 job (requested by the LOCAL_MP2 option for
CORRELATION) is performed, the first new step after the SCF
calculation is converged is to extract a minimal basis of polarized atomic
orbitals (EPAOs) that spans the occupied space. There are three valid choices
for this basis, controlled by the PAO_METHOD and
EPAO_ITERATE keywords described below.
- Uniterated EPAOs: The initial guess EPAOs are the default for
local MP2 calculations, and are defined as follows. For each atom, the
covariant density matrix (SPS) is diagonalized, giving eigenvalues which
are approximate natural orbital occupancies, and eigenvectors which are
corresponding atomic orbitals. The m eigenvectors with largest
populations are retained (where m is the minimal basis dimension for
the current atom). This nonorthogonal minimal basis is symmetrically
orthogonalized, and then modified as discussed in
Ref. to ensure that these functions rigorously span the
occupied space of the full SCF calculation that has just been performed.
These orbitals may be denoted as EPAO(0) to indicate that no iterations
have been performed after the guess. In general, the quality of the local
MP2 results obtained with this option is very similar to the EPAO option
below, but it is much faster and fully robust. For the example of the
torsional barrier calculations discussed above [219], the
TRIM RMS deviations of 0.03 kcal/mol from full MP2 calculations are
increased to only 0.04 kcal/mol when EPAO(0) orbitals are employed rather
than EPAOs.
- EPAOs: EPAOs are defined by minimizing a localization functional
as described in Ref. . These functions were designed
to be suitable for local MP2 calculations, and have yielded excellent
results in all tests performed so far. Unfortunately the functional is
difficult to converge for large molecules, at least with the algorithms
that have been developed to this stage. Therefore it is not the default,
but is switched on by specifying a (large) value for
EPAO_ITERATE, as discussed below.
- PAO: If the SCF calculation is performed in terms of a
molecule-optimized minimal basis, as described in Chapter 4, then the
resulting PAO-SCF calculation can be corrected with either conventional
or local MP2 for electron correlation. PAO-SCF calculations alter the
SCF energy, and are therefore not the default. This can be enabled by
specifying PAO_METHOD as PAO, in a job which also requests
CORRELATION as LOCAL_MP2.
PAO_METHOD
Controls the type of PAO calculations requested. |
TYPE:
DEFAULT:
EPAO | For local MP2, EPAOs are chosen by default. |
OPTIONS:
EPAO | Find EPAOs by minimizing delocalization function. |
PAO | Do SCF in a molecule-optimized minimal basis. |
RECOMMENDATION:
|
| EPAO_ITERATE
Controls iterations for EPAO calculations (see PAO_METHOD). |
TYPE:
DEFAULT:
0 | Use uniterated EPAOs based on atomic blocks of SPS. |
OPTIONS:
n | Optimize the EPAOs for up to n iterations. |
RECOMMENDATION:
Use default. For molecules that are not too large, one can test the
sensitivity of the results to the type of minimal functions by the use of
optimized EPAOs in which case a value of n=500 is reasonable. |
|
|
|
EPAO_WEIGHTS
Controls algorithm and weights for EPAO calculations (see PAO_METHOD). |
TYPE:
DEFAULT:
115 | Standard weights, use 1st and 2nd order optimization |
OPTIONS:
15 | Standard weights, with 1st order optimization only. |
RECOMMENDATION:
Use default, unless convergence failure is encountered. |
|
5.4.3 Algorithm Control and Customization
A local MP2 calculation (requested by the LOCAL_MP2 option for
CORRELATION) consists of the following steps:
- After the SCF is converged, a minimal basis of EPAOs are obtained.
- The TRIM (and DIM) local MP2 energies are then evaluated (gradients are
not yet available).
Details of the efficient implementation of the local MP2 method described above
are reported in the recent thesis of Dr. Michael Lee [223]. Here we
simply summarize the capabilities of the program. The computational advantage
associated with these local MP2 methods varies depending upon the size of
molecule and the basis set. As a rough general estimate, TRIM MP2 calculations
are feasible on molecule sizes about twice as large as those for which
conventional MP2 calculations are feasible on a given computer, and this is
their primary advantage. Our implementation is well suited for large basis set
calculations. The AO basis two-electron integrals are evaluated four times.
DIM MP2 calculations are performed as a by-product of TRIM MP2 but no
separately optimized DIM algorithm has been implemented.
The resource requirements for local MP2 calculations are as follows:
- Memory: The memory requirement for the integral transformation
does not exceed OON, and is thresholded so that it asymptotically grows
linearly with molecule size. Additional memory of approximately 32N2
is required to complete the local MP2 energy evaluation.
- Disk: The disk space requirement is only about 8OVN, but is
not governed by a threshold. This is a very large reduction from the case
of a full MP2 calculation, where, in the case of four integral
evaluations, OVN2/4 disk space is required. As the local MP2 disk
space requirement is not adjustable, the AO2MO_DISK keyword is
ignored for LOCAL_MP2 calculations.
The evaluation of the local MP2 energy does not require any further
customization. An adequate amount of MEM_STATIC (80 to 160 Mb) should
be specified to permit efficient AO basis two-electron integral evaluation,
but all large scratch arrays are allocated from MEM_TOTAL.
5.4.4 Examples
Example 5.0 A relative energy evaluation using the local TRIM model for MP2
with the 6-311G** basis set. The energy difference is the internal rotation
barrier in propenal, with the first geometry being planar trans, and the second
the transition structure.
$molecule
0 1
C
C 1 1.32095
C 2 1.47845 1 121.19
O 3 1.18974 2 123.83 1 180.00
H 1 1.07686 2 121.50 3 0.00
H 1 1.07450 2 122.09 3 180.00
H 2 1.07549 1 122.34 3 180.00
H 3 1.09486 2 115.27 4 180.00
$end
$rem
CORRELATION local_mp2
BASIS 6-311g**
$end
@@@
$molecule
0 1
C
C 1 1.31656
C 2 1.49838 1 123.44
O 3 1.18747 2 123.81 1 92.28
H 1 1.07631 2 122.03 3 -0.31
H 1 1.07484 2 121.43 3 180.28
H 2 1.07813 1 120.96 3 180.34
H 3 1.09387 2 115.87 4 179.07
$end
$rem
CORRELATION local_mp2
BASIS 6-311g**
$end
5.5 Auxiliary Basis Set (Resolution-of-Identity) MP2 Methods
For a molecule of fixed size, increasing the number of basis functions
per atom, n, leads to O(n4) growth in the number of significant
four-center two-electron integrals, since the number of non-negligible
product charge distributions, |μν〉, grows as O(n2). As a result,
the use of large (high-quality) basis expansions is computationally costly.
Perhaps the most practical way around this "basis set quality" bottleneck is
the use of auxiliary basis expansions [224,[225,[226].
The ability to use auxiliary
basis sets to accelerate a variety of electron correlation methods, including
both energies and analytical gradients, is a major feature of
Q-Chem.
The auxiliary basis {|K〉} is used to approximate products of Gaussian
basis functions:
|μν〉 ≈ | |
~
μν
|
〉 = |
∑
K
|
|K〉CμνK |
| (5.19) |
Auxiliary basis expansions were introduced long ago, and are now widely
recognized as an effective and powerful approach, which is sometimes
synonymously called resolution of the identity (RI) or density fitting (DF).
When using auxiliary basis expansions, the rate of growth of computational cost
of large-scale electronic structure calculations with n is reduced to
approximately n3.
If n is fixed and molecule size increases, auxiliary basis expansions reduce
the pre-factor associated with the computation, while not altering the
scaling. The important point is that the pre-factor can be reduced by 5 or 10
times or more. Such large speedups are possible because the number of
auxiliary functions required to obtain reasonable accuracy, X, has been shown
to be only about 3 or 4 times larger than N.
The auxiliary basis expansion coefficients, C, are determined by
minimizing the deviation between the fitted distribution and the actual
distribution, 〈μν−~μν | μν−~μν〉, which leads to the following set of linear equations:
|
∑
L
|
〈 K| L 〉 CμνL = 〈 K| μν 〉 |
| (5.20) |
Evidently solution of the fit equations requires only two- and three-center
integrals, and as a result the (four-center) two-electron integrals can be
approximated as the following optimal expression for a given choice of
auxiliary basis set:
〈μν|λσ〉 ≈ 〈 |
~
μν
|
| |
~
λσ
|
〉 = |
∑
| K,LCμL〈L|K 〉CλσK |
| (5.21) |
In the limit where the auxiliary basis is complete (i.e. all products of
AOs are included), the fitting procedure described above will be exact.
However, the auxiliary basis is invariably incomplete (as mentioned above,
X ≈ 3N) because this is essential for obtaining increased computational
efficiency.
Standardized auxiliary basis sets have been developed by the
Karlsruhe group for second order perturbation (MP2) calculations [227,[228]
of the correlation energy. With these basis
sets, small absolute errors (e.g., below 60 μHartree per atom in MP2) and
even smaller relative errors in computed energies are found, while the
speed-up can be 3-30 fold. This development has made the routine use of
auxiliary basis sets for electron correlation calculations possible.
Correlation calculations that can take advantage of auxiliary basis expansions
are described in the remainder of this section (MP2, and MP2-like methods) and
in Section 5.14 (simplified active space coupled cluster methods
such as PP, PP(2), IP, RP). These methods automatically employ auxiliary basis
expansions when a valid choice of auxiliary basis set is supplied using the
AUX_BASIS keyword which is used in the same way as the BASIS
keyword.
The PURECART $rem is no longer needed here, even if using
a auxiliary basis that does not have a predefined value. There
is a built-in automatic procedure that provides the effect
of the PURECART $rem in these cases by default.
5.5.1 RI-MP2 Energies and Gradients.
Following common convention, the MP2 energy evaluated approximately using an
auxiliary basis is referred to as "resolution of the identity" MP2, or RI-MP2
for short. RI-MP2 energy and gradient calculations are enabled simply by
specifying the AUX_BASIS keyword discussed above. As discussed above,
RI-MP2 energies [224] and gradients [229,[230]
are significantly faster than the best
conventional MP2 energies and gradients, and cause negligible loss of accuracy,
when an appropriate standardized auxiliary basis set is employed. Therefore
they are recommended for jobs where turnaround time is an issue. Disk
requirements are very modest; one merely needs to hold various 3-index
arrays. Memory requirements grow more slowly than our conventional MP2
algorithms-only quadratically with molecular size. The minimum memory
requirement is approximately 3X2, where X is the number of auxiliary
basis functions, for both energy and analytical gradient evaluations, with some
additional memory being necessary for integral evaluation and other small
arrays.
In fact, for molecules that are not too large (perhaps no more than 20 or 30
heavy atoms) the RI-MP2 treatment of electron correlation is so efficient that
the computation is dominated by the initial Hartree-Fock calculation. This is
despite the fact that as a function of molecule size, the cost of the RI-MP2
treatment still scales more steeply with molecule size (it is just that the
pre-factor is so much smaller with the RI approach). Its scaling remains
5th order with the size of the molecule, which only dominates the
initial SCF calculation for larger molecules. Thus, for RI-MP2 energy
evaluation on moderate size molecules (particularly in large basis sets), it is
desirable to use the dual basis HF method to further improve execution times
(see Section 4.7).
5.5.2 Example
Example 5.0 Q-Chem input for an RI-MP2 geometry optimization.
$molecule
0 1
O
H 1 0.9
F 1 1.4 2 100.
$end
$rem
JOBTYPE opt
CORRELATION rimp2
BASIS cc-pvtz
AUX_BASIS rimp2-cc-pvtz
SYMMETRY false
$end
For the size of required memory, the followings need to be considered.
| MEM_STATIC
Sets the memory for AO-integral evaluations and their transformations. |
TYPE:
DEFAULT:
64 | corresponding to 64 Mb. |
OPTIONS:
n | User-defined number of megabytes. |
RECOMMENDATION:
For RI-MP2 calculations, 150(ON + V) of MEM_STATIC is required.
Because a number of matrices with N2 size also need to be
stored, 32-160 Mb of additional MEM_STATIC is needed. |
|
|
|
MEM_TOTAL
Sets the total memory available to Q-Chem, in megabytes. |
TYPE:
DEFAULT:
OPTIONS:
n | User-defined number of megabytes. |
RECOMMENDATION:
Use default, or set to the physical memory of your machine.
The minimum requirement is 3X2. |
|
5.5.3 OpenMP Implementation of RI-MP2
An OpenMP RI-MP2 energy algorithm is used by default in Q-Chem 4.1 onward. This can be invoked by using CORR=primp2 for older versions, but note that in 4.01 and below, only RHF / RI-MP2 was supported. Now UHF / RI-MP2 is supported, and the formation of the `B' matrices as well as three center integrals are parallelized. This algorithm uses the remaining memory from the MEM_TOTAL allocation for all computation, which can drastically reduce hard drive reads in the formation of t-amplitudes.
Example 5.0 Example of OpenMP-parallel RI-MP2 job.
$molecule
0 1
C1
H1 C1 1.0772600000
H2 C1 1.0772600000 H1 131.6082400000
$end
$rem
jobtype SP
exchange HF
correlation pRIMP2
basis cc-pVTZ
aux_basis rimp2-cc-pVTZ
purecart 11111
symmetry false
thresh 12
scf_convergence 8
max_sub_file_num 128
!time_mp2 true
$end
5.5.4 GPU Implementation of RI-MP2
5.5.4.1 Requirements
Q-Chem currently offers the possibility of accelerating RI-MP2 calculations
using graphics processing units (GPUs).
Currently, this is implemented for CUDA-enabled NVIDIA graphics
cards only, such as (in historical order from 2008) the GeForce,
Quadro, Tesla and Fermi cards. More information about
CUDA-enabled cards is available at
- ://www.nvidia.com/object/cuda_gpus.html@
-
://www.nvidia.com/object/cuda_gpus.html@
It should be noted that these GPUs have specific power and motherboard requirements.
Software requirements include the installation of the appropriate NVIDIA
CUDA driver (at least version 1.0, currently 3.2) and linear algebra library,
CUBLAS (at least version 1.0, currently 2.0). These can be downloaded jointly
in NVIDIA's developer website:
- ://developer.nvidia.com/object/cuda_3_2_downloads.html@
-
://developer.nvidia.com/object/cuda_3_2_downloads.html@
We have implemented a mixed-precision algorithm in order to
get better than single precision when users only have
single-precision GPUs. This is accomplished by noting that RI-MP2 matrices
have a large fraction of numerically "small" elements and a
small fraction of numerically "large" ones. The latter can
greatly affect the accuracy of the calculation in single-precision only
calculations, but calculation
involves a relatively small number of compute cycles. So, given a threshold
value δ, we perform a separation between "small" and "large"
elements and accelerate the former compute-intensive operations
using the GPU (in single-precision) and compute the latter
on the CPU (using double-precision). We are thus able to
determine how much "double-precision" we desire by tuning
the δ parameter, and tailoring the balance between computational speed and accuracy.
5.5.4.2 Options
CUDA_RI-MP2
Enables GPU implementation of RI-MP2 |
TYPE:
DEFAULT:
OPTIONS:
FALSE | GPU-enabled MGEMM off |
TRUE | GPU-enabled MGEMM on |
RECOMMENDATION:
Necessary to set to 1 in order to run GPU-enabled RI-MP2 |
|
| USECUBLAS_THRESH
Sets threshold of matrix size sent to GPU
(smaller size not worth sending to GPU). |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Use the default value. Anything less can
seriously hinder the GPU acceleration |
|
|
|
USE_MGEMM
Use the mixed-precision matrix scheme (MGEMM)
if you want to make calculations in your card in single-precision
(or if you have a single-precision-only GPU), but leave some parts
of the RI-MP2 calculation in double precision) |
TYPE:
DEFAULT:
OPTIONS:
0 | MGEMM disabled |
1 | MGEMM enabled |
RECOMMENDATION:
Use when having single-precision cards |
|
| MGEMM_THRESH
Sets MGEMM threshold to determine the separation
between "large" and "small" matrix elements.
A larger threshold value will result in a value closer
to the single-precision result. Note that the desired factor
should be multiplied by 10000 to ensure an integer value. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
For small molecules and basis sets up to triple-ζ, the
default value suffices to not deviate too much from the
double-precision values. Care should be taken to reduce
this number for larger molecules and also larger basis-sets. |
|
|
|
5.5.4.3 Input examples
Example 5.0 RI-MP2 double-precision calculation
$comment
RI-MP2 double-precision example
$end
$molecule
0 1
c
h1 c 1.089665
h2 c 1.089665 h1 109.47122063
h3 c 1.089665 h1 109.47122063 h2 120.
h4 c 1.089665 h1 109.47122063 h2 -120.
$end
$rem
jobtype sp
exchange hf
correlation rimp2
basis cc-pvdz
aux_basis rimp2-cc-pvdz
cuda_rimp2 1
$end
Example 5.0 RI-MP2 calculation with MGEMM
$comment
MGEMM example
$end
$molecule
0 1
c
h1 c 1.089665
h2 c 1.089665 h1 109.47122063
h3 c 1.089665 h1 109.47122063 h2 120.
h4 c 1.089665 h1 109.47122063 h2 -120.
$end
$rem
jobtype sp
exchange hf
correlation rimp2
basis cc-pvdz
aux_basis rimp2-cc-pvdz
cuda_rimp2 1
USE_MGEMM 1
mgemm_thresh 10000
$end
5.5.5 Opposite-Spin (SOS-MP2, MOS-MP2, and O2) Energies and Gradients
The accuracy of MP2 calculations can be significantly improved by
semi-empirically scaling the opposite-spin and same-spin correlation components
with separate scaling factors, as shown by Grimme [231]. Results
of similar quality can be obtained by just scaling the opposite spin
correlation (by 1.3), as was recently demonstrated [232].
Furthermore this SOS-MP2 energy can be evaluated using the RI approximation
together with a Laplace transform technique, in effort that scales only with
the 4th power of molecular size. Efficient algorithms for the energy [232]
and the analytical gradient [233] of this method
are available in Q-Chem 3.0, and offer advantages in speed over MP2 for
larger molecules, as well as statistically significant improvements in
accuracy.
However, we note that the SOS-MP2 method does systematically underestimate
long-range dispersion (for which the appropriate scaling factor is 2 rather
than 1.3) but this can be accounted for by making the scaling factor
distance-dependent, which is done in the modified opposite spin variant
(MOS-MP2) that has recently been proposed and tested [234]. The
MOS-MP2 energy and analytical gradient are also available in Q-Chem 3.0 at a
cost that is essentially identical with SOS-MP2. Timings show that the
4th-order implementation of SOS-MP2 and MOS-MP2 yields substantial
speedups over RI-MP2 for molecules in the 40 heavy atom regime and larger. It is
also possible to customize the scale factors for particular applications, such
as weak interactions, if required.
A fourth order scaling SOS-MP2 / MOS-MP2 energy calculation can be invoked by
setting the CORRELATION keyword to either SOSMP2 or
MOSMP2. MOS-MP2 further requires the specification of the $rem
variable OMEGA, which tunes the level of attenuation of the MOS
operator [234]:
gω(r12) = |
1
r12
|
+cMOS |
erf( ωr12 )
r12
|
|
| (5.22) |
The recommended OMEGA value is ω = 0.6 a.u. [234].
The fast algorithm makes use of auxiliary basis expansions
and therefore, the keyword AUX_BASIS should be
set consistently with the user's choice of BASIS. Fourth-order
scaling analytical gradient for both SOS-MP2 and MOS-MP2 are also available and
is automatically invoked when JOBTYPE is set to OPT or
FORCE. The minimum memory requirement is 3X2, where X = the
number of auxiliary basis functions, for both energy and analytical gradient
evaluations. Disk space requirement for closed shell calculations is ∼ 2OVX for energy evaluation and ∼ 4OVX for analytical gradient evaluation.
More recently, Brueckner orbitals (BO) are introduced into SOSMP2 and MOSMP2 methods to
resolve the problems of symmetry breaking and spin contamination
that are often associated with Hartree-Fock orbitals.
So the molecular orbitals are optimized with the mean-field energy
plus a correlation energy taken as the opposite-spin component of the second-order
many-body correlation energy, scaled by an empirically chosen parameter.
This "optimized second-order opposite-spin" abbreviated as O2 method [235]
requires fourth-order computation on each orbital iteration. O2 is shown to yield predictions of
structure and frequencies for closed-shell molecules that are very similar to scaled MP2
methods. However, it yields substantial improvements for open-shell molecules,
where problems with spin contamination and symmetry breaking are shown to be greatly
reduced.
Summary of key $rem variables to be specified:
CORRELATION | SOSMP2 |
| MOSMP2 |
JOBTYPE | sp (default) single point energy evaluation |
| opt geometry optimization with analytical gradient |
| force force evaluation with analytical gradient |
BASIS | user's choice (standard or user-defined: GENERAL or
MIXED) |
AUX_BASIS | corresponding auxiliary basis (standard or user-defined: |
| AUX_GENERAL or AUX_MIXED |
OMEGA | no default n; use ω = n/1000. The recommended value is |
| n=600 (ω = 0.6 a.u.) |
N_FROZEN_CORE | Optional |
N_FROZEN_VIRTUAL | Optional
|
5.5.6 Examples
Example 5.0 Example of SOS-MP2 geometry optimization
$molecule
0 3
C1
H1 C1 1.07726
H2 C1 1.07726 H1 131.60824
$end
$rem
JOBTYPE opt
CORRELATION sosmp2
BASIS cc-pvdz
AUX_BASIS rimp2-cc-pvdz
UNRESTRICTED true
SYMMETRY false
$end
Example 5.0 Example of MOS-MP2 energy evaluation with frozen core
approximation
$molecule
0 1
Cl
Cl 1 2.05
$end
$rem
JOBTYPE sp
CORRELATION mosmp2
OMEGA 600
BASIS cc-pVTZ
AUX_BASIS rimp2-cc-pVTZ
N_FROZEN_CORE fc
THRESH 12
SCF_CONVERGENCE 8
$end
Example 5.0 Example of O2 methodology applied to O(N4) SOSMP2
$molecule
1 2
F
H 1 1.001
$end
$rem
UNRESTRICTED TRUE
JOBTYPE FORCE Options are SP/FORCE/OPT
EXCHANGE HF
DO_O2 1 O2 with O(N^4) SOS-MP2 algorithm
SOS_FACTOR 100 Opposite Spin scaling factor = 100/100 = 1.0
SCF_ALGORITHM DIIS_GDM
SCF_GUESS GWH
BASIS sto-3g
AUX_BASIS rimp2-vdz
SCF_CONVERGENCE 8
THRESH 14
SYMMETRY FALSE
PURECART 1111
$end
Example 5.0 Example of O2 methodology applied to O(N4) MOSMP2
$molecule
1 2
F
H 1 1.001
$end
$rem
UNRESTRICTED TRUE
JOBTYPE FORCE Options are SP/FORCE/OPT
EXCHANGE HF
DO_O2 2 O2 with O(N^4) MOS-MP2 algorithm
OMEGA 600 Omega = 600/1000 = 0.6 a.u.
SCF_ALGORITHM DIIS_GDM
SCF_GUESS GWH
BASIS sto-3g
AUX_BASIS rimp2-vdz
SCF_CONVERGENCE 8
THRESH 14
SYMMETRY FALSE
PURECART 1111
$end
5.5.7 RI-TRIM MP2 Energies
The triatomics in molecules (TRIM) local correlation approximation to MP2
theory [219] was described in detail in Section 5.4.1 which
also discussed our implementation of this approach based on conventional
four-center two-electron integrals. Q-Chem 3.0 also includes an auxiliary
basis implementation of the TRIM model. The new RI-TRIM MP2 energy algorithm [236]
greatly accelerates these local correlation calculations
(often by an order of magnitude or more for the correlation part), which scale
with the 4th power of molecule size. The electron correlation part of
the calculation is speeded up over normal RI-MP2 by a factor proportional to
the number of atoms in the molecule. For a hexadecapeptide, for instance, the
speedup is approximately a factor of 4 [236]. The TRIM model
can also be applied to the scaled opposite spin models discussed above. As for
the other RI-based models discussed in this section, we recommend using
RI-TRIM MP2 instead of the conventional TRIM MP2 code whenever run-time of the
job is a significant issue. As for RI-MP2 itself, TRIM MP2 is invoked by
adding AUX_BASIS $rems to the input deck,
in addition to requesting CORRELATION = RILMP2.
Example 5.0 Example of RI-TRIM MP2 energy evaluation
$molecule
0 3
C1
H1 C1 1.07726
H2 C1 1.07726 H1 131.60824
$end
$rem
CORRELATION rilmp2
BASIS cc-pVDZ
AUX_BASIS rimp2-cc-pVDZ
PURECART 1111
UNRESTRICTED true
SYMMETRY false
$end
5.5.8 Dual-Basis MP2
The successful computational cost speedups of the previous sections often leave the
cost of the underlying SCF calculation dominant. The dual-basis method provides a means
of accelerating the SCF by roughly an order of magnitude, with minimal associated error
(see Section 4.7). This dual-basis reference energy may be combined
with RI-MP2 calculations for both energies [181,[185] and
analytic first derivatives [183]. In the latter case, further savings
(beyond the SCF alone) are demonstrated in the gradient due to the ability to solve
the response (Z-vector) equations in the smaller basis set. Refer to
Section 4.7 for details and job control options.
5.6 Short-Range Correlation Methods
5.6.1 Attenuated MP2
MP2(attenuator, basis) approximates MP2 by splitting the Coulomb operator in two pieces and preserving only short-range two-electron interactions, akin to the CASE approximation[205,[204], but without modification of the underlying SCF calculation. While MP2 is a comparatively efficient method for estimating the correlation energy, it converges slowly with basis set size - and, even in the complete basis limit, contains fundamentally inaccurate physics for long-range interactions. Basis set superposition error and the MP2-level treatment of long-range interactions both typically artificially increase correlation energies for noncovalent interactions. Attenuated MP2 improves upon MP2 for inter- and intramolecular interactions, with significantly better performance for relative and binding energies of noncovalent complexes, frequently outperforming complete basis set estimates of MP2[237,[238].
Attenuated MP2, denoted MP2(attenuator, basis) is implemented in Q-Chem based on the complementary terf function, below.
s(r)=terfc(r,r0)= |
1
2
|
{ erfc [ ω(r−r0) ] + erfc [ ω(r+r0) ] } |
| (5.23) |
By choosing the terfc short-range operator, we optimally preserve the short-range behavior of the Coulomb operator while smoothly and rapidly switching off around the distance r0. Since this directly addresses basis set superposition error, parametrization must be done for specific basis sets. This has been performed for the basis sets, aug-cc-pVDZ[237] and aug-cc-pVTZ[238]. Other basis sets are not recommended for general use until further testing has been done.
Energies and gradients are functional with and without the resolution of the identity approximation using correlation keywords ATTMP2 and ATTRIMP2.
5.6.2 Examples
Example 5.0 Example of RI-MP2(terfc, aug-cc-pVDZ) energy evaluation
$molecule
0 1
O -1.551007 -0.114520 0.000000
H -1.934259 0.762503 0.000000
H -0.599677 0.040712 0.000000
$end
$rem
jobtype sp
exchange hf
correlation attrimp2
basis aug-cc-pvdz
aux_basis rimp2-aug-cc-pvdz
n_frozen_core fc
$end
Example 5.0 Example of MP2(terfc, aug-cc-pVTZ) geometry optimization
$molecule
0 1
H 0.0 0.0 0.0
H 0.0 0.0 0.9
$end
$rem
jobtype opt
exchange hf
correlation attmp2
basis aug-cc-pvtz
n_frozen_core fc
$end
5.7 Coupled-Cluster Methods
The following sections give short summaries of the various coupled-cluster based
methods
available in Q-Chem, most of which are variants of coupled-cluster
theory. The basic object-oriented tools necessary to permit the implementation
of these methods in Q-Chem was accomplished by Profs. Anna Krylov and David
Sherrill, working at Berkeley with Martin Head-Gordon, and then continuing
independently at the University of Southern California and Georgia Tech,
respectively. While at Berkeley, Krylov and Sherrill also developed the
optimized orbital coupled-cluster method, with additional assistance from Ed
Byrd. The extension of this code to MP3, MP4, CCSD and QCISD is the work of Prof.
Steve Gwaltney at Berkeley, while the extensions to QCCD were implemented by Ed
Byrd at Berkeley.
The original tensor library and CC / EOM suite of methods are
handled by the CCMAN module of Q-Chem. Recently, a new code (termed CCMAN2)
has been developed in Krylov group by Evgeny Epifanovsky and others,
and a gradual transition from CCMAN to CCMAN2 has began.
During the transition time, both
codes will be available for users via the CCMAN2 keyword.
CORRELATION
Specifies the correlation level of theory handled by CCMAN/CCMAN2. |
TYPE:
DEFAULT:
OPTIONS:
CCMP2 | Regular MP2 handled by CCMAN/CCMAN2 |
MP3 | CCMAN |
MP4SDQ | CCMAN |
MP4 | CCMAN |
CCD | CCMAN |
CCD(2) | CCMAN |
CCSD | CCMAN and CCMAN2 |
CCSD(T) | CCMAN and CCMAN2 |
CCSD(2) | CCMAN |
CCSD(fT) | CCMAN |
CCSD(dT) | CCMAN |
QCISD | CCMAN |
QCISD(T) | CCMAN |
OD | CCMAN |
OD(T) | CCMAN |
OD(2) | CCMAN |
VOD | CCMAN |
VOD(2) | CCMAN |
QCCD | CCMAN |
QCCD(T) | CCMAN |
QCCD(2) | CCMAN |
VQCCD | CCMAN |
VQCCD(T) | CCMAN |
VQCCD(2) | CCMAN |
RECOMMENDATION:
Consult the literature for guidance. |
|
5.7.1 Coupled Cluster Singles and Doubles (CCSD)
The standard approach for treating pair correlations self-consistently are
coupled-cluster methods where the cluster operator contains all single and
double substitutions [239], abbreviated as CCSD. CCSD yields
results that are only slightly superior to MP2 for structures and frequencies
of stable closed-shell molecules. However, it is far superior for reactive
species, such as transition structures and radicals, for which the performance
of MP2 is quite erratic.
A full textbook presentation of CCSD is beyond the scope of this manual, and
several comprehensive references are available. However, it may be useful to
briefly summarize the main equations. The CCSD wavefunction is:
| ΨCCSD 〉 = exp | ⎛ ⎝
|
^
T
|
1
|
+ |
^
T
|
2
| ⎞ ⎠
|
| Φ0 〉 |
| (5.24) |
where the single and double excitation operators may be defined by their
actions on the reference single determinant (which is normally taken as the
Hartree-Fock determinant in CCSD):
|
^
T
|
1
|
| Φ0 〉 = |
occ ∑
i
|
|
virt ∑
a
|
tia | Φia 〉 |
| (5.25) |
|
^
T
|
2
|
| Φ0 〉 = |
1
4
|
|
occ ∑
ij
|
|
virt ∑
ab
|
tijab | Φijab 〉 |
| (5.26) |
It is not feasible to determine the CCSD energy by variational minimization of
〈E 〉CCSD with respect to the singles and doubles amplitudes
because the expressions terminate at the same level of complexity as full
configuration interaction (!). So, instead, the Schrödinger equation is
satisfied in the subspace spanned by the reference determinant, all single
substitutions, and all double substitutions. Projection with these functions
and integration over all space provides sufficient equations to determine the
energy, the singles and doubles amplitudes as the solutions of sets of
nonlinear equations. These equations may be symbolically written as follows:
| |
|
| |
| |
|
|
|
Φ0 | ⎢ ⎢
|
^
H
| ⎢ ⎢
|
| ⎛ ⎝
|
1+ |
^
T
|
1
|
+ |
1
2
|
|
^
T
|
2 1
|
+ |
^
T
|
2
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| | (5.27) |
| |
|
|
|
Φia | ⎢ ⎢
|
^
H
|
−ECCSD | ⎢ ⎢
|
ΨCCSD |
|
|
| |
| |
|
|
|
Φia | ⎢ ⎢
|
^
H
| ⎢ ⎢
|
| ⎛ ⎝
|
1+ |
^
T
|
1
|
+ |
1
2
|
|
^
T
|
2 1
|
+ |
^
T
|
2
|
+ |
^
T
|
1
|
|
^
T
|
2
|
+ |
1
3!
|
|
^
T
|
3 1
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| | (5.28) |
| |
|
|
|
Φijab | ⎢ ⎢
|
^
H
|
−ECCSD | ⎢ ⎢
|
ΨCCSD |
|
|
| |
| |
|
|
|
Φijab | ⎢ ⎢
|
^
H
| ⎢ ⎢
|
| ⎛ ⎝
|
1+ |
^
T
|
1
|
+ |
1
2
|
|
^
T
|
2 1
|
+ |
^
T
|
2
|
+ |
^
T
|
1
|
|
^
T
|
2
|
+ |
1
3!
|
|
^
T
|
3 1
|
|
| |
| |
|
+ |
1
2
|
|
^
T
|
2 2
|
+ |
1
2
|
|
^
T
|
2 1
|
|
^
T
|
2
|
+ |
1
4!
|
|
^
T
|
4 1
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| | (5.29) |
|
The result is a set of equations which yield an energy that is not necessarily
variational (i.e., may not be above the true energy), although it is strictly
size-consistent. The equations are also exact for a pair of electrons, and, to
the extent that molecules are a collection of interacting electron pairs, this
is the basis for expecting that CCSD results will be of useful accuracy.
The computational effort necessary to solve the CCSD equations can be shown to
scale with the 6th power of the molecular size, for fixed choice of basis
set. Disk storage scales with the 4th power of molecular size, and
involves a number of sets of doubles amplitudes, as well as two-electron
integrals in the molecular orbital basis. Therefore the improved accuracy
relative to MP2 theory comes at a steep computational cost. Given these
scalings it is relatively straightforward to estimate the feasibility (or
non feasibility) of a CCSD calculation on a larger molecule (or with a larger
basis set) given that a smaller trial calculation is first performed.
Q-Chem supports both energies and analytic gradients for CCSD for
RHF and UHF references (including frozen-core). For ROHF, only energies and
unrelaxed properties are available.
5.7.2 Quadratic Configuration Interaction (QCISD)
Quadratic configuration interaction with singles and doubles (QCISD) [240]
is a widely used alternative to CCSD, that shares its main
desirable properties of being size-consistent, exact for pairs of electrons,
as well as being also non variational. Its computational cost also scales in the
same way with molecule size and basis set as CCSD, although with slightly
smaller constants. While originally proposed independently of CCSD based on
correcting configuration interaction equations to be size-consistent, QCISD is
probably best viewed as approximation to CCSD. The defining equations are given
below (under the assumption of Hartree-Fock orbitals, which should always be
used in QCISD). The QCISD equations can clearly be viewed as the CCSD equations
with a large number of terms omitted, which are evidently not very numerically
significant:
EQCISD = |
|
Φ0 | ⎢ ⎢
|
^
H
| ⎢ ⎢
|
| ⎛ ⎝
|
1+ |
^
T
|
2
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| (5.30) |
0= |
|
Φia | ⎢ ⎢
|
^
H
| ⎢ ⎢
|
| ⎛ ⎝
|
^
T
|
1
|
+ |
^
T
|
2
|
+ |
^
T
|
1
|
|
^
T
|
2
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| (5.31) |
0= |
|
Φijab | ⎢ ⎢
|
^
H
| ⎢ ⎢
|
| ⎛ ⎝
|
1+ |
^
T
|
1
|
+ |
^
T
|
2
|
+ |
1
2
|
|
^
T
|
2
2
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| (5.32) |
QCISD energies are available in Q-Chem, and are requested with the QCISD
keyword. As discussed in Section 5.8, the non iterative QCISD(T)
correction to the QCISD solution is also available to approximately incorporate
the effect of higher substitutions.
5.7.3 Optimized Orbital Coupled Cluster Doubles (OD)
It is possible to greatly simplify the CCSD equations by omitting the single
substitutions (i.e., setting the T1 operator to zero). If the same single
determinant reference is used (specifically the Hartree-Fock determinant),
then this defines the coupled-cluster doubles (CCD) method, by the following
equations:
| |
|
|
|
Φ0 | ⎢ ⎢
|
^
H
| ⎢ ⎢
|
| ⎛ ⎝
|
1+ |
^
T
|
2
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| | (5.33) |
| |
|
|
|
Φijab | ⎢ ⎢
|
^
H
| ⎢ ⎢
|
| ⎛ ⎝
|
1+ |
^
T
|
2
|
+ |
1
2
|
|
^
T
|
2 2
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| | (5.34) |
|
The CCD method cannot itself usually be recommended because while pair
correlations are all correctly included, the neglect of single substitutions
causes calculated energies and properties to be significantly less reliable
than for CCSD. Single substitutions play a role very similar to orbital
optimization, in that they effectively alter the reference determinant to be
more appropriate for the description of electron correlation (the Hartree-Fock
determinant is optimized in the absence of electron correlation).
This suggests an alternative to CCSD and QCISD that has some additional
advantages. This is the optimized orbital CCD method (OO-CCD), which we
normally refer to as simply optimized doubles (OD) [241]. The
OD method is defined by the CCD equations above, plus the additional set of
conditions that the cluster energy is minimized with respect to orbital
variations. This may be mathematically expressed by
where the rotation angle θia mixes the ith occupied orbital
with the ath virtual (empty) orbital. Thus the orbitals that define
the single determinant reference are optimized to minimize the coupled-cluster
energy, and are variationally best for this purpose. The resulting orbitals are
approximate Brueckner orbitals.
The OD method has the advantage of formal simplicity (orbital variations and
single substitutions are essentially redundant variables). In cases where
Hartree-Fock theory performs poorly (for example artificial symmetry
breaking, or non-convergence), it is also practically advantageous to use the OD
method, where the HF orbitals are not required, rather than CCSD or QCISD.
Q-Chem supports both energies and analytical gradients using the OD method.
The computational cost for the OD energy is more than twice that of the CCSD or
QCISD method, but the total cost of energy plus gradient is roughly similar,
although OD remains more expensive. An additional advantage of the OD method is
that it can be performed in an active space, as discussed later, in
Section 5.9.
5.7.4 Quadratic Coupled Cluster Doubles (QCCD)
The non variational determination of the energy in the CCSD, QCISD, and OD
methods discussed in the above subsections is not normally a practical problem.
However, there are some cases where these methods perform poorly. One such
example are potential curves for homolytic bond dissociation, using closed
shell orbitals, where the calculated energies near dissociation go
significantly below the true energies, giving potential curves with unphysical
barriers to formation of the molecule from the separated fragments [242].
The Quadratic Coupled Cluster Doubles (QCCD) method [243]
recently proposed by Troy Van Voorhis at Berkeley uses a
different energy functional to yield improved behavior in problem cases of this
type. Specifically, the QCCD energy functional is defined as
EQCCD = |
|
Φ0 | ⎛ ⎝
|
1+ |
^
Λ
|
2
|
+ |
1
2
|
|
^
Λ
|
2
2
| ⎞ ⎠
|
| ⎢ ⎢
|
^
H
| ⎢ ⎢
|
exp | ⎛ ⎝
|
^
T
|
2
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| (5.36) |
where the amplitudes of both the ∧T2 and ∧Λ 2
operators are determined by minimizing the QCCD energy functional.
Additionally, the optimal orbitals are determined by minimizing the QCCD
energy functional with respect to orbital rotations mixing occupied and
virtual orbitals.
To see why the QCCD energy should be an improvement on the OD energy, we first
write the latter in a different way than before. Namely, we can write a CCD
energy functional which when minimized with respect to the ∧T2 and
∧Λ2 operators, gives back the same CCD equations defined earlier.
This energy functional is
ECCD = |
|
Φ0 | ⎛ ⎝
|
1+ |
^
Λ
|
2
| ⎞ ⎠
|
| ⎢ ⎢
|
^
H
| ⎢ ⎢
|
exp | ⎛ ⎝
|
^
T
|
2
| ⎞ ⎠
|
Φ0 |
|
C
|
|
| (5.37) |
Minimization with respect to the ∧Λ2 operator gives the equations
for the ∧T2 operator presented previously, and, if those equations are
satisfied then it is clear that we do not require knowledge of the ∧Λ2 operator itself to evaluate the energy.
Comparing the two energy functionals, Eqs. (5.36) and (5.37), we see
that the QCCD functional includes up through quadratic terms of the Maclaurin
expansion of exp(∧Λ2) while the conventional CCD functional
includes only linear terms. Thus the bra wavefunction and the ket wavefunction
in the energy expression are treated more equivalently in QCCD than in CCD.
This makes QCCD closer to a true variational treatment [242]
where the bra and ket wavefunctions are treated precisely equivalently, but
without the exponential cost of the variational method.
In practice QCCD is a dramatic improvement relative to any of the conventional
pair correlation methods for processes involving more than two active electrons
(i.e., the breaking of at least a double bond, or, two spatially close single
bonds). For example calculations, we refer to the original paper [243],
and the follow-up paper describing the full implementation [244].
We note that these improvements carry a computational price.
While QCCD scales formally with the 6th power of molecule size like
CCSD, QCISD, and OD, the coefficient is substantially larger. For this reason,
QCCD calculations are by default performed as OD calculations until they are
partly converged. Q-Chem also contains some configuration interaction models
(CISD and CISDT). The CI methods are inferior to CC due to size-consistency
issues, however, these models may be useful for benchmarking and development
purposes.
5.7.5 Resolution-of-identity with CC (RI-CC)
The RI approximation (see Section 5.5)
can be used in coupled-cluster calculations, which substantially
reduces the cost of integral transformation and disk storage requirements.
The RI approximations may be used for integrals only such that integrals
are generated in conventional MO form and canonical CC/EOM
calculations are performed, or in a more complete version when
modified CC/EOM equations are used such that the integrals are used in their RI
representation. The latter version allows for more substantial
savings in storage and in computational speed-up.
The RI for integrals is invoked when AUX_BASIS is specified.
All two-electron integrals are used in RI decomposed form in
CC when AUX_BASIS is specified.
By default, the integrals will be stored in the RI form and special CC/EOM code
will be invoked. Keyword DIRECT_RI allows one to use RI generated integrals
in conventional form (by transforming RI integrals back to the standard format)
invoking conventional CC procedures.
Note:
RI for integrals is available for all CCMAN/CCMAN2 methods. CCMAN requires that the
unrestricted reference be used, CCMAN2 does not have this limitation.
In addition, while RI is available for jobs that need analytical gradients,
only energies and properties are computed using RI. Energy derivatives are calculated
using regular electron repulsion integral derivatives. Full RI implementation
(with integrals used in decomposed form) is only
available for CCMAN2. For maximum computational efficiency,
combine with FNO (see Sections
5.10 and 6.6.6)
when appropriate. |
5.7.6 Cholesky decomposition with CC (CD-CC)
Two-electron integrals can be decomposed using Cholesky
decomposition [245] giving rise to the same representation as
in RI and substantially reducing the cost of integral transformation,
disk storage requirements, and improving parallel performance:
(μν|λσ) ≈ |
M ∑
P=1
|
BμνP BλσP, |
| (5.38) |
The rank of Cholesky decomposition, M, is typically 3-10 times larger than
the number of basis functions N [246]; it depends on the
decomposition threshold δ and is considerably smaller than the full rank of the
matrix,
N(N+1)/2 [246,[247,[248].
Cholesky decomposition removes linear dependencies in product densities [246] (μν| allowing one to obtain compact approximation to the original matrix
with accuracy, in principle, up to machine precision.
Decomposition threshold δ is the only parameter that controls
accuracy and the rank of the decomposition. Cholesky decomposition is invoked by
specifying CHOLESKY_TOL that defines the accuracy with which decomposition
should be performed. For most calculations tolerance of δ = 10−3 gives a good
balance between accuracy and compactness of the rank. Tolerance of δ = 10−2 can
be used for exploratory calculations and δ = 10−4 for high-accuracy calculations. Similar to RI, Cholesky-decomposed integrals can be transformed back, into
the canonical MO form, using DIRECT_RI keyword.
Note:
Cholesky decomposition is available for all CCMAN2 methods.
Analytic gradients are not yet available;
only energies and properties are computed using CD.
For maximum computational efficiency, combine with FNO (see Sections
5.10 and 6.6.6)
when appropriate. |
5.7.7 Job Control Options
There are a large number of options for the coupled-cluster singles and
doubles methods. They are documented in Appendix C, and, as the reader will
find upon following this link, it is an extensive list indeed. Fortunately,
many of them are not necessary for routine jobs. Most of the options for
non-routine jobs concern altering the default iterative procedure, which is
most often necessary for optimized orbital calculations (OD, QCCD), as well as
the active space and EOM methods discussed later in Section
5.9. The more common options relating to convergence control
are discussed there, in Section 5.9.5. Below we list the options
that one should be aware of for routine calculations.
For memory options and parallel execution, see Section 5.13.
CC_CONVERGENCE
Overall convergence criterion for the coupled-cluster codes. This is designed
to ensure at least n significant digits in the calculated energy, and
automatically sets the other convergence-related variables
(CC_E_CONV, CC_T_CONV, CC_THETA_CONV,
CC_THETA_GRAD_CONV) [10−n]. |
TYPE:
DEFAULT:
OPTIONS:
n | Corresponding to 10−n convergence criterion. Amplitude convergence is set |
| automatically to match energy convergence. |
RECOMMENDATION:
|
Note:
For single point calculations, CC_E_CONV=6 and CC_T_CONV=4.
Tighter amplitude convergence (CC_T_CONV=5) is used for gradients and EOM
calculations. |
| CC_DOV_THRESH
Specifies minimum allowed values for the coupled-cluster energy denominators.
Smaller values are replaced by this constant during early iterations only, so
the final results are unaffected, but initial convergence is improved when the
HOMO-LUMO gap is small or when non-conventional references are used. |
TYPE:
DEFAULT:
OPTIONS:
abcde | Integer code is mapped to abc×10−de, e.g.,
2502 corresponds to 0.25 |
RECOMMENDATION:
Increase to 0.25, 0.5 or 0.75 for non convergent coupled-cluster calculations. |
|
|
|
CC_SCALE_AMP
If not 0, scales down the step for updating coupled-cluster amplitudes in cases of problematic convergence. |
TYPE:
DEFAULT:
OPTIONS:
abcd | Integer code is mapped to abcd×10−2, e.g.,
90 corresponds to 0.9 |
RECOMMENDATION:
Use 0.9 or 0.8 for non convergent coupled-cluster calculations. |
|
| CC_MAX_ITER
Maximum number of iterations to optimize the coupled-cluster energy. |
TYPE:
DEFAULT:
OPTIONS:
n | up to n iterations to achieve convergence. |
RECOMMENDATION:
|
|
|
CC_PRINT
Controls the output from post-MP2 coupled-cluster module of Q-Chem |
TYPE:
DEFAULT:
OPTIONS:
0→7 | higher values can lead to deforestation... |
RECOMMENDATION:
Increase if you need more output and don't like trees |
|
| CHOLESKY_TOL
Tolerance of Cholesky decomposition of two-electron integrals |
TYPE:
DEFAULT:
OPTIONS:
n to define tolerance of 10−n |
RECOMMENDATION:
2 - qualitative calculations, 3 - appropriate for most cases, 4 - quantitative
(error in total energy typically less than 1e-6 hartree) |
|
|
|
DIRECT_RI
Controls use of RI and Cholesky integrals in conventional (undecomposed) form |
TYPE:
DEFAULT:
OPTIONS:
FALSE - use all integrals in decomposed format |
TRUE - transform all RI or Cholesky integral back to conventional format |
RECOMMENDATION:
By default all integrals are used in decomposed format allowing significant reduction of
memory use. If all integrals are transformed back (TRUE option) no memory reduction is
achieved and decomposition error is introduced, however, the integral transformation
is performed significantly faster and conventional CC/EOM algorithms are used. |
|
5.7.8 Examples
Example 5.0 A series of jobs evaluating the correlation energy (with core
orbitals frozen) of the ground state of the NH2 radical with three methods
of coupled-cluster singles and doubles type: CCSD itself, OD, and QCCD.
$molecule
0 2
N
H1 N 1.02805
H2 N 1.02805 H1 103.34
$end
$rem
CORRELATION ccsd
BASIS 6-31g*
N_FROZEN_CORE fc
$end
@@@
$molecule
read
$end
$rem
CORRELATION od
BASIS 6-31g*
N_FROZEN_CORE fc
$end
@@@
$molecule
read
$end
$rem
CORRELATION qccd
BASIS 6-31g*
N_FROZEN_CORE fc
$end
Example 5.0 A job evaluating CCSD energy of water using RI-CCSD
$molecule
0 1
O
H1 O OH
H2 O OH H1 HOH
OH = 0.947
HOH = 105.5
$end
$rem
CORRELATION ccsd
BASIS aug-cc-pvdz
max_sub_file_num 256
cc_memory 20000
mem_static 2000
AUX_BASIS rimp2-aug-cc-pvdz
$end
Example 5.0 A job evaluating CCSD energy of water using CD-CCSD (tolerance = 10−3)
$molecule
0 1
O
H1 O OH
H2 O OH H1 HOH
OH = 0.947
HOH = 105.5
$end
$rem
CORRELATION ccsd
BASIS aug-cc-pvdz
max_sub_file_num 256
cc_memory 20000
mem_static 2000
cholesky_tol 3
$end
Example 5.0 A job evaluating CCSD energy of water using CD-CCSD (tolerance = 10−3) with FNO
$molecule
0 1
O
H1 O OH
H2 O OH H1 HOH
OH = 0.947
HOH = 105.5
$end
$rem
CORRELATION ccsd
BASIS aug-cc-pvdz
max_sub_file_num 256
cc_memory 20000
mem_static 2000
cholesky_tol 3
CC_fno_thresh 9950
$end
5.8 Non-iterative Corrections to Coupled Cluster Energies
5.8.1 (T) Triples Corrections
To approach chemical accuracy in reaction energies and related properties, it
is necessary to account for electron correlation effects that involve three
electrons simultaneously, as represented by triple substitutions relative to
the mean field single determinant reference, which arise in MP4. The best
standard methods for including triple substitutions are the CCSD(T) [249]
and QCISD(T) methods [240] The accuracy of
these methods is well-documented for many cases [250], and in
general is a very significant improvement relative to the starting point
(either CCSD or QCISD). The cost of these corrections scales with the
7th power of molecule size (or the 4th power of the number of
basis functions, for a fixed molecule size), although no additional disk resources
are required relative to the starting coupled-cluster calculation. Q-Chem
supports the evaluation of CCSD(T) and QCISD(T) energies, as well as the
corresponding OD(T) correction to the optimized doubles method discussed in the
previous subsection. Gradients and properties are not yet available for
any of these (T) corrections.
5.8.2 (2) Triples and Quadruples Corrections
While the (T) corrections discussed above have been extraordinarily successful,
there is nonetheless still room for further improvements in accuracy, for at
least some important classes of problems. They contain judiciously chosen terms
from 4th- and 5th-order Møller-Plesset perturbation
theory, as well as higher order terms that result from the fact that the
converged cluster amplitudes are employed to evaluate the 4th- and 5th-order
order terms. The (T) correction therefore depends upon the bare
reference orbitals and orbital energies, and in this way its effectiveness
still depends on the quality of the reference determinant. Since we are
correcting a coupled-cluster solution rather than a single determinant, this is
an aspect of the (T) corrections that can be improved. Deficiencies of the (T)
corrections show up computationally in cases where there are near-degeneracies
between orbitals, such as stretched bonds, some transition states, open shell
radicals, and diradicals.
Prof. Steve Gwaltney, while working at Berkeley with Martin Head-Gordon, has
suggested a new class of non iterative correction that offers the prospect of
improved accuracy in problem cases of the types identified above [251].
Q-Chem contains Gwaltney's implementation of this new
method, for energies only. The new correction is a true second order correction
to a coupled-cluster starting point, and is therefore denoted as (2). It is
available for two of the cluster methods discussed above, as OD(2) and
CCSD(2) [251,[252]. Only energies are available at present.
The basis of the (2) method is to partition not the regular Hamiltonian into
perturbed and unperturbed parts, but rather to partition a
similarity-transformed Hamiltonian, defined as ~H=e−∧T∧He∧T. In the truncated space (call it the p-space)
within which the cluster problem is solved (e.g., singles and doubles for
CCSD), the coupled-cluster wavefunction is a true eigenvalue of ~H.
Therefore we take the zero order Hamiltonian, ~H(0),
to be the full ~H in the p-space, while in the space of
excluded substitutions (the q-space) we take only the one-body part of ~H
(which can be made diagonal). The fluctuation potential describing
electron correlations in the q-space is ~H−~H(0),
and the (2) correction then follows from second order perturbation
theory.
The new partitioning of terms between the perturbed and unperturbed
Hamiltonians inherent in the (2) correction leads to a correction that shows
both similarities and differences relative to the existing (T) corrections.
There are two types of higher correlations that enter at second order: not only
triple substitutions, but also quadruple substitutions. The quadruples are
treated with a factorization ansatz, that is exact in 5th order
Møller-Plesset theory [253], to reduce their computational
cost from N9 to N6. For large basis sets this can still be larger
than the cost of the triples terms, which scale as the 7th power of
molecule size, with a factor twice as large as the usual (T) corrections.
These corrections are feasible for molecules containing between four and ten
first row atoms, depending on computer resources, and the size of the basis set
chosen. There is early evidence that the (2) corrections are superior to the
(T) corrections for highly correlated systems [251]. This shows
up in improved potential curves, particularly at long range and may also extend
to improved energetic and structural properties at equilibrium in problematical
cases. It will be some time before sufficient testing on the new (2)
corrections has been done to permit a general assessment of the performance of
these methods. However, they are clearly very promising, and for this reason
they are available in Q-Chem.
5.8.3 (dT) and (fT) corrections
Alternative inclusion of non-iterative N7 triples corrections is described in
Section 6.6.17. These methods called (dT) and (fT) are of similar
accuracy to other triples corrections. CCSD(dT) and CCSD(fT) are equivalent to
the CR-CCSD(T)L and CR-CCSD(T)2 methods of Piecuch and co-workers.
5.8.4 Job Control Options
The evaluation of a non iterative (T) or (2) correction after a coupled-cluster
singles and doubles level calculation (either CCSD, QCISD or OD) is controlled
by the correlation keyword, and the specification of any frozen orbitals via
N_FROZEN_CORE (and possibly N_FROZEN_VIRTUAL).
There is only one additional job control option. For the (2) correction, it is
possible to apply the frozen core approximation in the reference coupled
cluster calculation, and then correlate all orbitals in the (2) correction.
This is controlled by CC_INCL_CORE_CORR, described below.
The default is to include core and core-valence correlation automatically in
the CCSD(2) or OD(2) correction, if the reference CCSD or OD calculation was
performed with frozen core orbitals. The reason for this choice is that core
correlation is economical to include via this method (the main cost increase is
only linear in the number of core orbitals), and such effects are important to
account for in accurate calculations. This option should be made false if a job
with explicitly frozen core orbitals is desired. One good reason for freezing
core orbitals in the correction is if the basis set is physically inappropriate
for describing core correlation (e.g., standard Pople basis sets, and Dunning
cc-pVxZ basis sets are designed to describe valence-only correlation effects).
Another good reason is if a direct comparison is desired against another method
such as CCSD(T) which is always used in the same orbital window as the CCSD
reference.
CC_INCL_CORE_CORR
Whether to include the correlation contribution from frozen core orbitals in
non iterative (2) corrections, such as OD(2) and CCSD(2). |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Use default unless no core-valence or core correlation is desired (e.g., for
comparison with other methods or because the basis used cannot describe core
correlation). |
|
5.8.5 Example
Example 5.0 Two jobs that compare the correlation energy calculated via the
standard CCSD(T) method with the new CCSD(2) approximation, both using the
frozen core approximation. This requires that CC_INCL_CORE_CORR
must be specified as FALSE in the CCSD(2) input.
$molecule
0 2
O
H O 0.97907
$end
$rem
CORRELATION ccsd(t)
BASIS cc-pvtz
N_FROZEN_CORE fc
$end
@@@
$molecule
read
$end
$rem
CORRELATION ccsd(2)
BASIS cc-pvtz
N_FROZEN_CORE fc
CC_INCL_CORE_CORR false
$end
Example 5.0 Water: Ground state CCSD(dT) calculation using RI
$molecule
0 1
O
H1 O OH
H2 O OH H1 HOH
OH = 0.957
HOH = 104.5
$end
$rem
JOBTYPE SP
BASIS cc-pvtz
AUX_BASIS rimp2-cc-pvtz
CORRELATION CCSD(dT)
$end
5.9 Coupled Cluster Active Space Methods
5.9.1 Introduction
Electron correlation effects can be qualitatively divided into two classes.
The first class is static or nondynamical correlation: long wavelength
low-energy correlations associated with other electron configurations that are
nearly as low in energy as the lowest energy configuration. These correlation
effects are important for problems such as homolytic bond breaking, and are the
hardest to describe because by definition the single configuration
Hartree-Fock description is not a good starting point. The second class is
dynamical correlation: short wavelength high-energy correlations associated
with atomic-like effects. Dynamical correlation is essential for
quantitative accuracy, but a reasonable description of static
correlation is a prerequisite for a calculation being qualitatively
correct.
In the methods discussed in the previous several subsections, the objective was
to approximate the total correlation energy. However, in some cases, it is
useful to model directly the nondynamical and dynamical correlation
energies separately. The reasons for this are pragmatic: with approximate
methods, such a separation can give a more balanced treatment of electron
correlation along bond-breaking coordinates, or reaction coordinates that
involve diradicaloid intermediates. The nondynamical correlation energy is
conveniently defined as the solution of the Schrödinger equation within a
small basis set composed of valence bonding, antibonding and lone pair
orbitals: the so-called full valence active space. Solved exactly, this is
the so-called full valence complete active space SCF (CASSCF) [254],
or equivalently, the fully optimized reaction space (FORS) method [255].
Full valence CASSCF and FORS involve computational complexity which increases
exponentially with the number of atoms, and is thus unfeasible beyond systems
of only a few atoms, unless the active space is further restricted on a
case-by-case basis. Q-Chem includes two relatively economical methods that
directly approximate these theories using a truncated coupled-cluster doubles
wavefunction with optimized orbitals [256]. They are active space
generalizations of the OD and QCCD methods discussed previously in
Sections 5.7.3 and 5.7.4, and are discussed in the following two
subsections. By contrast with the exponential growth of computational cost with
problem size associated with exact solution of the full valence CASSCF problem,
these cluster approximations have only 6th-order growth of computational
cost with problem size, while often providing useful accuracy.
The full valence space is a well-defined theoretical chemical model. For these
active space coupled-cluster doubles methods, it consists of the union of
valence levels that are occupied in the single determinant reference,
and those that are empty. The occupied levels that are to be replaced can only
be the occupied valence and lone pair orbitals, whose number is defined by the
sum of the valence electron counts for each atom (i.e., 1 for H, 2 for He, 1 for
Li, etc..). At the same time, the empty virtual orbitals to which the double
substitutions occur are restricted to be empty (usually antibonding) valence
orbitals. Their number is the difference between the number of valence atomic
orbitals, and the number of occupied valence orbitals given above. This
definition (the full valence space) is the default when either of the
"valence" active space methods are invoked (VOD or VQCCD)
There is also a second useful definition of a valence active space, which we
shall call the 1:1 or perfect pairing active space. In this definition, the
number of occupied valence orbitals remains the same as above. The number of
empty correlating orbitals in the active space is defined as being exactly the
same number, so that each occupied orbital may be regarded as being associated
1:1 with a correlating virtual orbital. In the water molecule,
for example, this means that the lone pair electrons as well as the
bond-orbitals are correlated. Generally the 1:1 active space recovers more
correlation for molecules dominated by elements on the right of the periodic
table, while the full valence active space recovers more correlation for
molecules dominated by atoms to the left of the periodic table.
If you wish to specify either the 1:1 active space as described above, or
some other choice of active space based on your particular chemical problem,
then you must specify the numbers of active occupied and virtual orbitals.
This is done via the standard "window options", documented earlier in the
Chapter.
Finally we note that the entire discussion of active spaces here leads only
to specific numbers of active occupied and virtual orbitals. The orbitals
that are contained within these spaces are optimized by minimizing the trial
energy with respect to all the degrees of freedom previously discussed: the
substitution amplitudes, and the orbital rotation angles mixing occupied and
virtual levels. In addition, there are new orbital degrees of freedom to be
optimized to obtain the best active space of the chosen size, in the sense
of yielding the lowest coupled-cluster energy. Thus rotation angles mixing
active and inactive occupied orbitals must be varied until the energy is
stationary. Denoting inactive orbitals by primes and active orbitals without
primes, this corresponds to satisfying
Likewise, the rotation angles mixing active and inactive virtual orbitals
must also be varied until the coupled-cluster energy is minimized with
respect to these degrees of freedom:
5.9.2 VOD and VOD(2) Methods
The VOD method is the active space version of the OD method described earlier
in Section 5.7.3. Both energies and gradients are available for VOD, so
structure optimization is possible. There are a few important comments to make
about the usefulness of VOD. First, it is a method that is capable of
accurately treating problems that fundamentally involve 2 active electrons in a
given local region of the molecule. It is therefore a good alternative for
describing single bond-breaking, or torsion around a double bond, or some
classes of diradicals. However it often performs poorly for problems where
there is more than one bond being broken in a local region, with the
non variational solutions being quite possible. For such problems the newer
VQCCD method is substantially more reliable.
Assuming that VOD is a valid zero order description for the electronic
structure, then a second order correction, VOD(2), is available for energies
only. VOD(2) is a version of OD(2) generalized to valence active spaces. It
permits more accurate calculations of relative energies by accounting for
dynamical correlation.
5.9.3 VQCCD
The VQCCD method is the active space version of the QCCD method described
earlier in Section 5.7.3. Both energies and gradients are available for
VQCCD, so that structure optimization is possible. VQCCD is applicable to a
substantially wider range of problems than the VOD method, because the modified
energy functional is not vulnerable to non variational collapse. Testing to
date suggests that it is capable of describing double bond breaking to similar
accuracy as full valence CASSCF, and that potential curves for triple
bond-breaking are qualitatively correct, although quantitatively in error by a
few tens of kcal/mol. The computational cost scales in the same manner with
system size as the VOD method, albeit with a significantly larger prefactor.
5.9.4 Local Pair Models for Valence Correlations Beyond Doubles
Working with Prof. Head-Gordon at Berkeley, John Parkhill has developed
implementations for pair models which couple 4 and 6 electrons together
quantitatively. Because these truncate the coupled cluster equations at
quadruples and hextuples respectively they have been termed the "Perfect Quadruples"
and "Perfect Hextuples" models. These can be viewed as local approximations
to CASSCF. The PQ and PH models are executed through an extension of Q-Chem's
coupled cluster code, and several options defined for those models will
have the same effects although the mechanism may be different
(CC_DIIS_START, CC_DIIS_SIZE, CC_DOV_THRESH, CC_CONV, etc..).
In the course of implementation, the non-local coupled cluster models
were also implemented up to ∧T6. Because the algorithms are
explicitly sparse their costs relative to the existing implementations
of CCSD are much higher (and should never be used in lieu
of an existing CCMAN code), but this capability may be useful for
development purposes, and when computable, models above CCSDTQ are
highly accurate.
To use PQ, PH, their dynamically correlated "+SD"
versions or this machine generated cluster code set: "CORRELATION MGC".
MGC_AMODEL
Choice of approximate cluster model. |
TYPE:
DEFAULT:
Determines | how the CC equations are approximated: |
OPTIONS:
0% | Local Active-Space Amplitude iterations. |
| (pre-calculate GVB orbitals with |
| your method of choice (RPP is good)). |
| |
7% | Optimize-Orbitals using the VOD 2-step solver. |
| (Experimental only use with MGC_AMPS = 2, 24 ,246) |
| |
8% | Traditional Coupled Cluster up to CCSDTQPH. |
9% | MR-CC version of the Pair-Models. (Experimental) |
RECOMMENDATION:
|
| MGC_NLPAIRS
Number of local pairs on an amplitude. |
TYPE:
DEFAULT:
OPTIONS:
Must be greater than 1, which corresponds to the PP model.
2 for PQ, and 3 for PH. |
RECOMMENDATION:
|
|
|
MGC_AMPS
Choice of Amplitude Truncation |
TYPE:
DEFAULT:
OPTIONS:
2 ≤ n ≤ 123456, a sorted list of integers for every amplitude |
which will be iterated. Choose 1234 for PQ and 123456 for PH |
RECOMMENDATION:
|
| MGC_LOCALINTS
Pair filter on an integrals. |
TYPE:
DEFAULT:
OPTIONS:
Enforces a pair filter on the 2-electron integrals, significantly |
reducing computational cost. Generally useful. for more than 1 pair locality. |
RECOMMENDATION:
|
|
|
MGC_LOCALINTER
Pair filter on an intermediate. |
TYPE:
DEFAULT:
OPTIONS:
Any nonzero value enforces the pair constraint on intermediates, |
significantly reducing computational cost. Not recommended for ≤ 2 pair locality |
RECOMMENDATION:
|
5.9.5 Convergence Strategies and More Advanced Options
These optimized orbital coupled-cluster active space methods enable the use
of the full valence space for larger systems than is possible with
conventional complete active space codes. However, we should note at the
outset that often there are substantial challenges in converging valence
active space calculations (and even sometimes optimized orbital coupled
cluster calculations without an active space). Active space calculations
cannot be regarded as "routine" calculations in the same way as SCF
calculations, and often require a considerable amount of computational trial
and error to persuade them to converge. These difficulties are largely
because of strong coupling between the orbital degrees of freedom and the
amplitude degrees of freedom, as well as the fact that the energy surface is
often quite flat with respect to the orbital variations defining the active
space.
Being aware of this at the outset, and realizing that the program has nothing
against you personally is useful information for the uninitiated user of these
methods. What the program does have, to assist in the struggle to achieve a
converged solution, are accordingly many convergence options, fully documented
in Appendix C. In this section, we describe the basic options and the ideas
behind using them as a starting point. Experience plays a critical role,
however, and so we encourage you to experiment with toy jobs that give rapid
feedback in order to become proficient at diagnosing problems.
If the default procedure fails to converge, the first useful option to employ
is CC_PRECONV_T2Z, with a value of between 10 and 50. This is useful
for jobs in which the MP2 amplitudes are very poor guesses for the converged
cluster amplitudes, and therefore initial iterations varying only the
amplitudes will be beneficial:
CC_PRECONV_T2Z
Whether to pre-converge the cluster amplitudes before beginning orbital
optimization in optimized orbital cluster methods. |
TYPE:
DEFAULT:
0 | (FALSE) |
10 | If CC_RESTART, CC_RESTART_NO_SCF or
CC_MP2NO_GUESS are TRUE |
OPTIONS:
0 | No pre-convergence before orbital optimization. |
n | Up to n iterations in this pre-convergence procedure. |
RECOMMENDATION:
Experiment with this option in cases of convergence failure. |
|
Other options that are useful include those that permit some damping of step
sizes, and modify or disable the standard DIIS procedure. The main choices are
as follows.
CC_DIIS
Specify the version of Pulay's Direct Inversion of the Iterative Subspace
(DIIS) convergence accelerator to be used in the coupled-cluster code. |
TYPE:
DEFAULT:
OPTIONS:
0 | Activates procedure 2 initially, and procedure 1 when gradients are smaller |
| than DIIS12_SWITCH. |
1 | Uses error vectors defined as differences between parameter vectors from |
| successive iterations. Most efficient near convergence. |
2 | Error vectors are defined as gradients scaled by square root of the |
| approximate diagonal Hessian. Most efficient far from convergence. |
RECOMMENDATION:
DIIS1 can be more stable. If DIIS problems are encountered in the early stages
of a calculation (when gradients are large) try DIIS1. |
|
| CC_DIIS_START
Iteration number when DIIS is turned on. Set to a large number to disable
DIIS. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
Occasionally DIIS can cause optimized orbital coupled-cluster calculations to
diverge through large orbital changes. If this is seen, DIIS should be
disabled. |
|
|
|
CC_DOV_THRESH
Specifies minimum allowed values for the coupled-cluster energy denominators.
Smaller values are replaced by this constant during early iterations only, so
the final results are unaffected, but initial convergence is improved when the
guess is poor. |
TYPE:
DEFAULT:
2502 | Corresponding to 0.25 |
OPTIONS:
abcde | Integer code is mapped to abc×10−de |
RECOMMENDATION:
Increase to 0.5 or 0.75 for non convergent coupled-cluster calculations. |
|
| CC_THETA_STEPSIZE
Scale factor for the orbital rotation step size. The optimal rotation steps
should be approximately equal to the gradient vector. |
TYPE:
DEFAULT:
OPTIONS:
abcde | Integer code is mapped to abc×10−de |
| If the initial step is smaller than 0.5, the program will increase step |
| when gradients are smaller than the value of THETA_GRAD_THRESH, |
| up to a limit of 0.5. |
RECOMMENDATION:
Try a smaller value in cases of poor convergence and very large orbital
gradients. For example, a value of 01001 translates to 0.1 |
|
|
|
An even stronger-and more-or-less last resort-option permits iteration of the
cluster amplitudes without changing the orbitals:
CC_PRECONV_T2Z_EACH
Whether to pre-converge the cluster amplitudes before each change of the
orbitals in optimized orbital coupled-cluster methods. The maximum number of
iterations in this pre-convergence procedure is given by the value of this
parameter. |
TYPE:
DEFAULT:
OPTIONS:
0 | No pre-convergence before orbital optimization. |
n | Up to n iterations in this pre-convergence procedure. |
RECOMMENDATION:
A very slow last resort option for jobs that do not converge. |
|
5.9.6 Examples
Example 5.0 Two jobs that compare the correlation energy of the water
molecule with partially stretched bonds, calculated via the two coupled-cluster
active space methods, VOD, and VQCCD. These are relatively "easy" jobs to
converge, and may be contrasted with the next example, which is not easy to
converge. The orbitals are restricted.
$molecule
0 1
O
H 1 r
H 1 r a
r = 1.5
a = 104.5
$end
$rem
CORRELATION vod
EXCHANGE hf
BASIS 6-31G
$end
@@@
$molecule
read
$end
$rem
CORRELATION vqccd
EXCHANGE hf
BASIS 6-31G
$end
Example 5.0 The water molecule with highly stretched bonds, calculated via
the two coupled-cluster active space methods, VOD, and VQCCD. These are
"difficult" jobs to converge. The convergence options shown permitted the job
to converge after some experimentation (thanks due to Ed Byrd for this!). The
difficulty of converging this job should be contrasted with the previous
example where the bonds were less stretched. In this case, the VQCCD method
yields far better results than VOD!.
$molecule
0 1
O
H 1 r
H 1 r a
r = 3.0
a = 104.5
$end
$rem
CORRELATION vod
EXCHANGE hf
BASIS 6-31G
SCF_CONVERGENCE 9
THRESH 12
CC_PRECONV_T2Z 50
CC_PRECONV_T2Z_EACH 50
CC_DOV_THRESH 7500
CC_THETA_STEPSIZE 3200
CC_DIIS_START 75
$end
@@@
$molecule
read
$end
$rem
CORRELATION vqccd
EXCHANGE hf
BASIS 6-31G
SCF_CONVERGENCE 9
THRESH 12
CC_PRECONV_T2Z 50
CC_PRECONV_T2Z_EACH 50
CC_DOV_THRESH 7500
CC_THETA_STEPSIZE 3200
CC_DIIS_START 75
$end
5.10 Frozen Natural Orbitals in CCD, CCSD, OD, QCCD, and QCISD Calculations
Large computational savings are possible if the virtual space is truncated
using the frozen natural orbital (FNO) approach.
For example, using a fraction f of the full virtual space results in a 1/(1−f)4-fold speed up for each CCSD iteration
(CCSD scales with the forth power of the virtual space size).
FNO-based truncation for ground-states CC methods was introduced by Bartlett
and co-workers [257,[258,[259].
Extension of the FNO approach to ionized states within
EOM-CC formalism was recently introduced and benchmarked [260]
(see Section 6.6.6).
The FNOs are computed as the eigenstates of the virtual-virtual block of the MP2 density matrix
[O(N5) scaling], and the eigenvalues are the occupation numbers associated with the respective FNOs.
By using a user-specified threshold, the FNOs with the smallest
occupations are frozen in CC calculations. This could be done in
CCSD, CCSD(T), CCSD(2), CCSD(dT), CCSD(fT) as well as CCD, OD,QCCD, VQCCD, and all
possible triples corrections for these wavefunctions.
The truncation can be performed using two different schemes.
The first approach is to simply specify the total number of virtual
orbitals to retain, e.g., as the percentage of total virtual orbitals,
as was done in Refs. .
The second approach is to specify the percentage of total
natural occupation (in the virtual space) that
needs to be recovered in the truncated space.
These two criteria are referred to as the
POVO (percentage of virtual orbitals) and OCCT (occupation threshold)
cutoffs, respectively [260].
Since the OCCT criterion is based on the correlation in a specific molecule,
it yields more consistent results than POVO.
For ionization energy calculations employing 99-99.5% natural occupation
threshold should yields errors (relative to the full virtual space values)
below 1 kcal/mol [260].
The errors decrease linearly as a function of
the total natural occupation recovered, which
can be exploited by extrapolating truncated calculations to the full virtual space values.
This extrapolation scheme is called the extrapolated FNO
(XFNO) procedure [260].
The linear behavior is exhibited by the total energies of the ground
and the ionized states as a function of OCCT.
Therefore, the XFNO scheme can be employed even when the two states are not
calculated on the same level, e.g., in adiabatic energy differences and EOM-IP-CC(2,3)
calculations (more on this in Ref. ).
The FNO truncation often causes slower convergence of the CCSD and EOM procedures.
Nevertheless, despite larger number of iterations, the FNO-based truncation of orbital space
reduces computational cost considerably, with a negligible decline in accuracy [260].
5.10.1 Job Control Options
| CC_FNO_THRESH
Initialize the FNO truncation and sets the threshold to be used for both cutoffs (OCCT and POVO) |
TYPE:
DEFAULT:
OPTIONS:
range | 0000-10000 |
abcd | Corresponding to ab.cd% |
RECOMMENDATION:
|
|
|
CC_FNO_USEPOP
Selection of the truncation scheme |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
|
5.10.2 Example
Example 5.0 CCSD(T) calculation using FNO with POVO=65%
$molecule
0 1
O
H 1 1.0
H 1 1.0 2 100.
$end
$rem
correlation = CCSD(T)
basis = 6-311+G(2df,2pd)
CC_fno_thresh 6500 65% of the virtual space
CC_fno_usepop 0
$end
5.11 Non-Hartree-Fock Orbitals in Correlated Calculations
In cases of problematic open-shell references, e.g., strongly spin-contaminated doublet radicals,
one may choose to use DFT orbitals, which can yield significantly improved results [261]. This can be achieved by first doing DFT calculation and then
reading the orbitals and turning the Hartree-Fock procedure off. A more convenient way is just to
specify EXCHANGE, e.g., EXCHANGE=B3LYP means that B3LYP orbitals will be
computed and used in the CCMAN / CCMAN2 module.
5.11.1 Example
Example 5.0 CCSD calculation of triplet methylene using B3LYP orbitals
$molecule
0 3
C
H 1 CH
H 1 CH 2 HCH
CH = 1.07
HCH = 111.0
$end
$rem
jobtype SP single point
exchange b3lyp
LEVCOR ccsd
BASIS cc-pVDZ
N_FROZEN_CORE 1
$end
5.12 Analytic Gradients and Properties for Coupled-Cluster Methods
Analytic gradients are available for CCSD, OO-CCD/VOD, CCD, and QCCD/VQCCD methods for
both closed- and open-shell references (UHF and RHF only), including frozen
core and / or virtual functionality. In addition, gradients for selected GVB models are
available.
For the CCSD and OO-CCD wavefunctions, Q-Chem can also calculate
dipole moments, 〈R2〉 (as well as XX, YY and ZZ components separately, which is
useful for assigning different Rydberg states, e.g., 3px vs. 3s, etc.), and the
〈S2〉 values. Interface of the CCSD and (V)OO-CCD codes with the NBO 5.0
package is also available.
This code is closely related to EOM-CCSD properties / gradient calculations
(Section 6.6.10).
Solvent models available for CCSD are described in Chapter 10.2.
Limitations: Gradients and fully relaxed properties
for ROHF and non-HF (e.g., B3LYP) orbitals as well as RI approximation are not yet available.
Note:
If gradients or properties are computed with frozen core / virtual, the algorithm will
replace frozen orbitals to restricted. This will not affect the energies, but will change the
orbital numbering in the CCMAN printout. |
5.12.1 Job Control Options
CC_REF_PROP
Whether or not the non-relaxed (expectation value) or full response (including
orbital relaxation terms) one-particle CCSD
properties will be calculated. The properties currently include permanent
dipole moment, the second moments 〈X2〉, 〈Y2〉, and
〈Z2〉 of electron density, and the total
〈R2〉
= 〈X2〉+〈Y2〉+〈Z2〉 (in atomic units).
Incompatible with JOBTYPE=FORCE, OPT, FREQ. |
TYPE:
DEFAULT:
FALSE | (no one-particle properties will be calculated) |
OPTIONS:
RECOMMENDATION:
Additional equations need to be solved (lambda CCSD equations) for properties
with the cost approximately the same as CCSD equations. Use default if you do
not need properties. The cost of the properties calculation itself is low. The
CCSD one-particle density can be analyzed with NBO package by specifying
NBO=TRUE, CC_REF_PROP=TRUE and JOBTYPE=FORCE.
|
|
| CC_REF_PROP_TE
Request for calculation of non-relaxed two-particle CCSD properties. The
two-particle properties currently include 〈S2〉. The one-particle
properties also will be calculated, since the additional cost of the
one-particle properties calculation is inferior compared to the cost of
〈S2〉. The variable CC_REF_PROP must be also set to
TRUE. |
TYPE:
DEFAULT:
FALSE | (no two-particle properties will be calculated) |
OPTIONS:
RECOMMENDATION:
The two-particle properties are computationally expensive, since
they require calculation and use of the two-particle density matrix (the cost
is approximately the same as the cost of an analytic gradient calculation). Do
not request the two-particle properties unless you really need them. |
|
|
|
CC_FULLRESPONSE
Fully relaxed properties (including orbital relaxation terms) will be computed.
The variable CC_REF_PROP must be also set to TRUE. |
TYPE:
DEFAULT:
FALSE | (no orbital response will be calculated) |
OPTIONS:
RECOMMENDATION:
Not available for non UHF/RHF references and for the methods that do not have
analytic gradients (e.g., QCISD). |
|
5.12.2 Examples
Example 5.0 CCSD geometry optimization
of HHeF followed up by properties calculations
$molecule
0 1
H .000000 .000000 -1.886789
He .000000 .000000 -1.093834
F .000000 .000000 .333122
$end
$rem
JOBTYPE OPT
CORRELATION CCSD
BASIS aug-cc-pVDZ
GEOM_OPT_TOL_GRADIENT 1
GEOM_OPT_TOL_DISPLACEMENT 1
GEOM_OPT_TOL_ENERGY 1
$end
@@@
$molecule
READ
$end
$rem
JOBTYPE SP
CORRELATION CCSD
BASIS aug-cc-pVDZ
SCF_GUESS READ
CC_REF_PROP 1
CC_FULLRESPONSE 1
$end
Example 5.0 CCSD on 1,2-dichloroethane gauche conformation using SCRF solvent model
$molecule
0 1
C 0.6541334418569877 -0.3817051480045552 0.8808840579322241
C -0.6541334418569877 0.3817051480045552 0.8808840579322241
Cl 1.7322599856434779 0.0877596094659600 -0.4630557359272908
H 1.1862455146007043 -0.1665749506296433 1.7960750032785453
H 0.4889356972641761 -1.4444403797631731 0.8058465784063975
Cl -1.7322599856434779 -0.0877596094659600 -0.4630557359272908
H -1.1862455146007043 0.1665749506296433 1.7960750032785453
H -0.4889356972641761 1.4444403797631731 0.8058465784063975
$end
$rem
JOBTYPE SP
EXCHANGE HF
CORRELATION CCSD
BASIS 6-31g**
N_FROZEN_CORE FC
CC_SAVEAMPL 1 Save CC amplitudes on disk
SOLVENT_METHOD SCRF
SOL_ORDER 15 L=15 Multipole moment order
SOLUTE_RADIUS 36500 3.65 Angstrom Solute Radius
SOLVENT_DIELECTRIC 89300 8.93 Dielectric (Methylene Chloride)
$end
5.13 Memory Options and Parallelization of Coupled-Cluster Calculations
The coupled-cluster suite of methods, which includes ground-state methods
mentioned earlier in this Chapter and excited-state methods in the next Chapter,
has been parallelized to take advantage of the multi-core architecture.
The code is parallelized at the level of the tensor library such that
the most time consuming operation, tensor contraction, is performed on
different processors (or different cores of the same processor) using
shared memory and shared scratch disk space[262].
Parallelization on multiple CPUs or CPU cores is achieved by breaking down
tensor operations into batches and running each batch in a separate thread.
Because each thread occupies one CPU core entirely, the maximum number of
threads must not exceed the total available number of CPU cores. If multiple
computations are performed simultaneously, they together should not run
more threads than available cores. For example, an eight-core node can
accommodate one eight-thread calculation, two four-thread calculations,
and so on.
The number of threads to be used in the calculation is specified as a command
line option ( -nt nthreads) Here nthreads should be given a
positive integer value. If this option is not specified, the job will run
in serial mode using single thread only.
Note:
The use of $QCTHREADS environment variable to specify the number of parallel
threads in coupled-cluster calculations is obsolete. For Q-Chem release 4.0.1 and above,
the number of threads to be used in coupled-cluster calculations must be explicitly
specified with command line option `-nt' or it defaults to single-thread execution. |
Setting the memory limit correctly is also very important for high performance
when running larger jobs. To estimate the amount of memory required for
coupled-clusters and related calculations, one can use the following formula:
Memory = |
(Number of basis set functions)4
131072
|
Mb |
| (5.41) |
If the new code (CCMAN2) is used and the calculation is based on a RHF reference,
the amount of memory needed is a half of that given by the formula.
In addition, if gradients are calculated, the amount should be multiplied
by two.
Because the size of data increases steeply with the size of the molecule
computed, both CCMAN and CCMAN2 are able to use disk space to supplement
physical RAM if so required. The strategies of memory management in older
CCMAN and newer CCMAN2 slightly differ, and that should be taken into account
when specifying memory related keywords in the input file.
The MEM_STATIC keyword specifies the amount of memory in megabytes
to be made available to routines that run prior to coupled-clusters
calculations: Hartree-Fock and electronic repulsion integrals evaluation.
A safe recommended value is 500 Mb.
The value of MEM_STATIC should rarely exceed 1000-2000 Mb even
for relatively large jobs.
The memory limit for coupled-clusters calculations is set by
CC_MEMORY. When running older CCMAN, its value is used as
the recommended amount of memory, and the calculation can in fact use less
or run over the limit. If the job is to run exclusively on a node,
CC_MEMORY should be given 50% of all RAM. If the calculation runs
out of memory, the amount of CC_MEMORY should be reduced
forcing CCMAN to use memory saving algorithms.
CCMAN2 uses a different strategy. It allocates the entire amount of RAM given
by CC_MEMORY before the calculation and treats that as a strict
memory limit. While that significantly improves the stability of larger jobs,
it also requires the user to set the correct value of CC_MEMORY
to ensure high performance.
The default value of approximately 1.5 Gb is not appropriate for large
calculations, especially if the node has more resources available. When running
CCMAN2 exclusively on a node, CC_MEMORY should be set to
75-80% of the total available RAM.
Note:
When running small jobs, using too large CC_MEMORY in CCMAN2
is not recommended because Q-Chem will allocate more resources than needed for
the calculation, which will affect
other jobs that you may wish to run on the same node. |
In addition, the user should verify
that the disk and RAM together have enough space by using the above formula.
In cases when CC_MEMORY set up is in conflict with the
available space on a particular platform, the CC job may segfault
at run time. In such cases readjusting the CC_MEMORY
value in the input is necessary so as to eliminate the segfaulting.
In addition to memory settings, the user may need to adjust
MAX_SUB_FILE_NUM which determines the maximum size
of tmp files.
MEM_STATIC
Sets the memory for individual Fortran program modules |
TYPE:
DEFAULT:
240 | corresponding to 240 Mb or 12% of MEM_TOTAL |
OPTIONS:
n | User-defined number of megabytes. |
RECOMMENDATION:
For direct and semi-direct MP2 calculations, this must exceed OVN +
requirements for AO integral evaluation (32-160 Mb). Up to 2000 Mb for large
coupled-clusters calculations. |
|
| CC_MEMORY
Specifies the maximum size, in Mb, of the buffers for in-core storage of
block-tensors in CCMAN and CCMAN2. |
TYPE:
DEFAULT:
50% of MEM_TOTAL. If MEM_TOTAL is not set, use 1.5 Gb.
A minimum of |
192 Mb is hard-coded. |
OPTIONS:
RECOMMENDATION:
Larger values can give better I/O performance and are recommended for systems
with large memory (add to your .qchemrc file. When running
CCMAN2 exclusively on a node, CC_MEMORY should be set to
75-80% of the total available RAM. ) |
|
|
|
MAX_SUB_FILE_NUM
Sets the maximum number of sub files allowed. |
TYPE:
DEFAULT:
16 Corresponding to a total of 32Gb for a given file. |
OPTIONS:
n | User-defined number of gigabytes. |
RECOMMENDATION:
Leave as default, or adjust according to your system limits. |
|
5.14 Simplified Coupled-Cluster Methods Based on a Perfect-Pairing Active Space
The methods described below are related to valence bond theory and are handled by
the GVBMAN module. The following models are available:
CORRELATION
Specifies the correlation level in GVB models handled by GVBMAN. |
TYPE:
DEFAULT:
OPTIONS:
PP | |
CCVB | |
GVB_IP | |
GVB_SIP | |
GVB_DIP | |
OP | |
NP | |
2P | |
RECOMMENDATION:
As a rough guide, use PP for biradicaloids, and CCVB for polyradicaloids involving strong spin correlations. Consult the literature for further guidance. |
|
Molecules where electron correlation is strong are characterized by small
energy gaps between the nominally occupied orbitals (that would comprise the
Hartree-Fock wavefunction, for example) and nominally empty orbitals. Examples
include so-called diradicaloid molecules [263], or molecules with
partly broken chemical bonds (as in some transition-state structures). Because the
energy gap is small, electron configurations other than the reference
determinant contribute to the molecular wavefunction with considerable
amplitude, and omitting them leads to a significant error.
Including all possible configurations however, is a vast overkill. It is common to
restrict the configurations that one generates to be constructed not from all
molecular orbitals, but just from orbitals that are either "core" or
"active". In this section, we consider just one type of active space, which
is composed of two orbitals to represent each electron pair: one nominally
occupied (bonding or lone pair in character) and the other nominally empty, or
correlating (it is typically antibonding in character). This is usually called
the perfect pairing active space, and it clearly is well-suited to represent
the bonding-antibonding correlations that are associated with bond-breaking.
The quantum chemistry within this (or any other) active space is given by a
Complete Active Space SCF (CASSCF) calculation, whose exponential cost growth
with molecule size makes it prohibitive for systems with more than about 14
active orbitals. One well-defined coupled cluster (CC) approximation based
on CASSCF is to include only double substitutions in the valence space
whose orbitals are then optimized. In the framework of conventional
CC theory, this defines the valence optimized doubles (VOD) model [256],
which scales as O(N6) (see Section 5.9.2).
This is still too expensive to be readily applied to large molecules.
The methods described in this section bridge the gap between sophisticated but
expensive coupled cluster methods and inexpensive methods such as DFT, HF and
MP2 theory that may be (and indeed often are) inadequate for describing
molecules that exhibit strong electron correlations such as diradicals. The
coupled cluster perfect pairing (PP) [264,[265], imperfect
pairing (IP) [266] and restricted coupled cluster
(RCC) [267] models are local approximations to VOD that include only a
linear and quadratic number of double substitution amplitudes respectively.
They are close in spirit to generalized valence bond (GVB)-type
wavefunctions [268], because in fact they are all coupled cluster models for
GVB that share the same perfect pairing active space. The most powerful method in the family, the Coupled Cluster Valence Bond (CCVB) method [269,[270,[271], is a valence bond approach that goes well beyond the power of GVB-PP and related methods, as discussed below in Sec. 5.14.2.
5.14.1 Perfect pairing (PP)
To be more specific, the coupled cluster PP wavefunction is written as
|Ψ〉 = exp | ⎛ ⎝
|
nactive ∑
i=1
|
ti |
^
a
|
† i∗
|
|
^
a
|
† ―i∗
|
|
^
a
|
―i
|
|
^
a
|
i
| ⎞ ⎠
|
| Φ〉 |
| (5.42) |
where nactive is the number of active electrons, and the ti are the
linear number of unknown cluster amplitudes, corresponding to exciting the two
electrons in the ith electron pair from their bonding orbital pair to their
antibonding orbital pair. In addition to ti, the core and the active orbitals
are optimized as well to minimize the PP energy. The algorithm used for this is
a slight modification of the GDM method, described for SCF calculations in
Section 4.6.4. Despite the simplicity of the PP wavefunction, with
only a linear number of correlation amplitudes, it is still a useful
theoretical model chemistry for exploring strongly correlated systems.
This is because it is exact for a single electron pair in the PP active space,
and it is also exact for a collection of non-interacting electron pairs in
this active space. Molecules, after all, are in a sense a collection of
interacting electron pairs! In practice, PP on molecules recovers between 60%
and 80% of the correlation energy in its active space.
If the calculation is perfect pairing (CORRELATION = PP), it is
possible to look for unrestricted solutions in addition to restricted ones.
Unrestricted orbitals are the default for molecules with odd
numbers of electrons, but can also be specified for molecules with even numbers
of electrons. This is accomplished by setting GVB_UNRESTRICTED =
TRUE. Given a restricted guess, this will, however usually converge to a
restricted solution anyway, so additional REM variables should be specified to
ensure an initial guess that has broken spin symmetry. This can be accomplished
by using an unrestricted SCF solution as the initial guess, using the
techniques described in Chapter 4. Alternatively a restricted set
of guess orbitals can be explicitly symmetry broken just before the calculation
starts by using GVB_GUESS_MIX, which is described below.
There is also the implementation of Unrestricted-in-Active Pairs (UAP) [272]
which is the default unrestricted implementation
for GVB methods. This method simplifies the process of unrestriction by
optimizing only one set of ROHF MO coefficients and a single rotation
angle for each occupied-virtual pair. These angles are used to construct
a series of 2x2 Given's rotation matrices which are applied to the ROHF
coefficients to determine the α spin MO coefficients and their
transpose is applied to the ROHF coefficients to determine the β
spin MO coefficients. This algorithm is fast and eliminates many of the
pathologies of the unrestricted GVB methods near the dissociation limit.
To generate a full potential curve we find it is best to start at the
desired UHF dissociation solution as a guess for GVB and follow it
inwards to the equilibrium bond distance.
GVB_UNRESTRICTED
Controls restricted versus unrestricted PP jobs. Usually handled
automatically. |
TYPE:
DEFAULT:
same value as UNRESTRICTED |
OPTIONS:
RECOMMENDATION:
Set this variable explicitly only to do a UPP job from an RHF
or ROHF initial guess. Leave this variable alone and specify
UNRESTRICTED=TRUE to access the new Unrestricted-in-Active-Pairs
GVB code which can return an RHF or ROHF solution if used with GVB_DO_ROHF |
|
| GVB_DO_ROHF
Sets the number of Unrestricted-in-Active Pairs to be kept restricted. |
TYPE:
DEFAULT:
OPTIONS:
RECOMMENDATION:
If n is the same value as GVB_N_PAIRS returns the ROHF solution
for GVB, only works with the UNRESTRICTED=TRUE
implementation of GVB with GVB_OLD_UPP=0 (it's default value) |
|
|
|
GVB_OLD_UPP
Which unrestricted algorithm to use for GVB. |
TYPE:
DEFAULT:
OPTIONS:
0 | Use Unrestricted-in-Active Pairs |
1 | Use Unrestricted Implementation described in Ref. |
RECOMMENDATION:
Only works for Unrestricted PP and no other GVB model. |
|
| GVB_GUESS_MIX
Similar to SCF_GUESS_MIX, it breaks alpha / beta symmetry for UPP by
mixing the alpha HOMO and LUMO orbitals according to the user-defined fraction
of LUMO to add the HOMO. 100 corresponds to a 1:1 ratio of HOMO and LUMO in
the mixed orbitals. |
TYPE:
DEFAULT:
OPTIONS:
n | User-defined, 0 ≤ n ≤ 100 |
RECOMMENDATION:
25 often works well to break symmetry without overly
impeding convergence. |
|
|
|
Whilst all of the description in this section refers to PP solved projectively, it is also possible, as described in Sec. 5.14.2 below, to solve variationally for the PP energy. This variational PP solution is the reference wavefunction for the CCVB method. In most cases use of spin-pure CCVB is preferable to attempting to improve restricted PP by permitting the orbitals to spin polarize.
5.14.2 Coupled Cluster Valence Bond (CCVB)
Cases where PP needs improvement include molecules with several strongly
correlated electron pairs that are all localized in the same region of space,
and therefore involve significant inter-pair, as well as intra-pair
correlations. For some systems of this type,
Coupled Cluster Valence Bond (CCVB) [269,[270] is an
appropriate method. CCVB is designed to
qualitatively treat
the breaking of covalent bonds. At the most basic theoretical level, as a molecular system dissociates into a collection
of open-shell fragments, the energy should approach the sum of the ROHF energies of the fragments. CCVB is able to
reproduce this for a wide class of problems, while maintaining proper spin symmetry. Along with this, CCVB's main
strength, come many of the spatial symmetry breaking issues common to the GVB-CC methods.
Like the other methods discussed in this section, the leading contribution to the CCVB wavefunction
is the perfect pairing wavefunction, which is shown in eqn. . One important difference is that CCVB uses the PP
wavefunction as a reference in the same way that other GVBMAN methods use a reference determinant.
The PP wavefunction is a product of simple, strongly orthogonal singlet geminals. Ignoring normalizations, two equivalent
ways of displaying these geminals are
(_i _i + t_i _i^* _i^*) ( - ) (Natural-orbital form)
_i _i^ ( - ) (Valence-bond form),
where on the left and right we have the spatial part (involving ϕ and χ orbitals) and the spin coupling,
respectively.
The VB-form orbitals are non-orthogonal within a pair and are generally AO-like.
The VB form is used in CCVB and the NO form is used in the other GVBMAN methods. It turns out that occupied UHF
orbitals can also be rotated (without affecting the energy) into the VB form (here the spin part would be just
αβ), and as such
we store the CCVB orbital coefficients in the same way as is done in UHF (even though no one spin is assigned to an orbital
in CCVB).
These geminals are uncorrelated
in the same way that molecular orbitals are uncorrelated in a HF calculation. Hence, they are able to describe
uncoupled, or independent, single-bond-breaking processes, like that found in C2H6 → 2 CH3,
but not coupled multiple-bond-breaking processes, such as the dissociation of N2. In the latter system the three bonds
may be described by three singlet geminals, but this picture must somehow translate into the coupling of two spin-quartet
N atoms into an overall singlet, as found at dissociation.
To achieve this sort of thing in a GVB context, it is necessary to correlate the geminals. The part of this correlation
that is essential to bond breaking is
obtained by replacing clusters of singlet geminals with triplet geminals, and recoupling the triplets to an overall
singlet. A triplet geminal is obtained from a singlet by simply modifying the spin component accordingly. We thus
obtain the CCVB wavefunction:
-
= - _0 + _k<l t_kl - _(kl)
+ _k<l<m<n + .
In this expansion, the summations go over the active singlet pairs, and the indices shown in the labellings of the kets
correspond to pairs that are being coupled as described just above. We see that this wavefunction couples clusters
composed of even numbers of geminals. In addition, we see that the amplitudes for clusters containing more than 2
geminals are parameterized by the amplitudes for the 2-pair clusters. This approximation is important for computational
tractability, but actually is just one in a family of CCVB methods: it is possible to include coupled clusters of odd
numbers of pairs, and also to introduce independent parameters for the higher-order amplitudes. At present, only the
simplest level is included in Q-Chem.
Older methods which attempt to describe substantially the same electron correlation effects as CCVB are the IP [266] and RCC [267] wavefunctions. In general CCVB should be used preferentially. It turns out that CCVB relates to the GVB-IP model. In fact, if we were to expand the CCVB wavefunction relative to a
set of determinants, we would see that for each pair of singlet pairs, CCVB contains only one of the two pertinent
GVB-IP doubles
amplitudes. Hence, for CCVB the various computational requirements and timings are very similar to those for GVB-IP.
The main difference between the two models lies in how the doubles amplitudes are used to parameterize the
quadruples, sextuples, etc., and this is what allows CCVB to give correct energies at full bond dissociation.
A CCVB calculation is invoked by setting CORRELATION = CCVB. The number of activ
|