User Tools

Site Tools


howto:cdft

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
howto:cdft [2020/08/21 10:15] – external edit 127.0.0.1howto:cdft [2022/05/18 20:24] – Update for new CDFT forces based on Hirshfeld partitioning of the electron density (CP2K version 10 #2111) cahart
Line 7: Line 7:
 <note important> <note important>
  
-CP2K version 5.1 or higher is needed to perform CDFT simulations.+CP2K version 5.1 or higher is needed to perform CDFT simulations. CP2K version 10 or higher is needed to perform CDFT force calculations with Hirshfeld based constraints.
  
 </note> </note>
 +
  
 ---- ----
Line 40: Line 41:
   * spin specific constraint ($\rho^{\uparrow/\downarrow}$): $w^{\uparrow/\downarrow} = w, w^{\downarrow/\uparrow} = 0$   * spin specific constraint ($\rho^{\uparrow/\downarrow}$): $w^{\uparrow/\downarrow} = w, w^{\downarrow/\uparrow} = 0$
  
-The Becke and Hirshfeld space partitioning schemes can be used as constraint weight functions in CP2K. The main differences between these two constraints will be explained in a subsequent section. Please note that Becke constraints have been tested much more extensively+The Becke and Hirshfeld space partitioning schemes can be used as constraint weight functions in CP2K. The main differences between these two constraints will be explained in a subsequent section. 
  
-When CDFT is used in a molecular dynamics or a geometry optimization simulation, additional force terms arising from the constraints are calculated (currently only implemented for Becke constraints)+When CDFT is used in a molecular dynamics or a geometry optimization simulation, additional force terms arising from the constraints are calculated
  
 \begin{equation} \begin{equation}
Line 168: Line 169:
 ==== Available constraints ===== ==== Available constraints =====
  
-The CDFT module in CP2K currently supports using Becke or Hirshfeld (no forces) based constraints. The main aspects of these weight functions and their use as CDFT constraints will be explained in this section. Weight function specific settings are defined in the sections [[inp>FORCE_EVAL/DFT/QS/CDFT/BECKE_CONSTRAINT|BECKE_CONSTRAINT]] [[inp>FORCE_EVAL/DFT/QS/CDFT/HIRSHFELD_CONSTRAINT|HIRSHFELD_CONSTRAINT]]. If you want to visualize the weight functions to e.g. see the effects of using different parameters, you can use the section [[inp>FORCE_EVAL/DFT/QS/CDFT/PROGRAM_RUN_INFO/WEIGHT_FUNCTION|WEIGHT_FUNCTION]] to print the CDFT weight function to a cube file. +The CDFT module in CP2K currently supports using Becke or Hirshfeld based constraints. The main aspects of these weight functions and their use as CDFT constraints will be explained in this section. Weight function specific settings are defined in the sections [[inp>FORCE_EVAL/DFT/QS/CDFT/BECKE_CONSTRAINT|BECKE_CONSTRAINT]] [[inp>FORCE_EVAL/DFT/QS/CDFT/HIRSHFELD_CONSTRAINT|HIRSHFELD_CONSTRAINT]]. If you want to visualize the weight functions to e.g. see the effects of using different parameters, you can use the section [[inp>FORCE_EVAL/DFT/QS/CDFT/PROGRAM_RUN_INFO/WEIGHT_FUNCTION|WEIGHT_FUNCTION]] to print the CDFT weight function to a cube file. 
  
  
Line 207: Line 208:
 == Hirshfeld constraints == == Hirshfeld constraints ==
  
-Hirshfeld constraints are cheaper to construct than Becke constraints in large systems because Hirshfeld constraints are essentially just weighted sums of spherical Gaussian functions. The keywords [[inp>FORCE_EVAL/DFT/QS/CDFT/HIRSHFELD_CONSTRAINT#SHAPE_FUNCTION|SHAPE_FUNCTION]] and [[inp>FORCE_EVAL/DFT/QS/CDFT/HIRSHFELD_CONSTRAINT#GAUSSIAN_SHAPE|GAUSSIAN_SHAPE]] define which type of Hirshfeld constraint to apply to the system. The shape function keyword accepts two values: Gaussian or Density. +Hirshfeld constraints are cheaper to construct than Becke constraints in large systems because Hirshfeld constraints are essentially just weighted sums of spherical Gaussian functions. The keywords [[inp>FORCE_EVAL/DFT/QS/CDFT/HIRSHFELD_CONSTRAINT#SHAPE_FUNCTION|SHAPE_FUNCTION]] and [[inp>FORCE_EVAL/DFT/QS/CDFT/HIRSHFELD_CONSTRAINT#GAUSSIAN_SHAPE|GAUSSIAN_SHAPE]] define which type of Hirshfeld constraint to apply to the system, consistent with the options for printing of Hirshfeld atomic charges (see [[inp>FORCE_EVAL/DFT/PRINT/HIRSHFELD#SHAPE_FUNCTION|SHAPE_FUNCTION]]) 
 + 
 +The shape function keyword accepts two values: Gaussian or Density. 
   * The first choice implies that the CDFT weight function for each atom is a single Gaussian function whose radius is controlled by the GAUSSIAN_SHAPE keyword. By default, tabulated covalent radii are used as the radii of the Gaussian, but it is also possible to select van der Waals radii or to define custom radii.    * The first choice implies that the CDFT weight function for each atom is a single Gaussian function whose radius is controlled by the GAUSSIAN_SHAPE keyword. By default, tabulated covalent radii are used as the radii of the Gaussian, but it is also possible to select van der Waals radii or to define custom radii. 
-  * The latter choice implies that the atomic weight function are constructed from isolated atomic densities which are expanded in terms of multiple spherical Gaussians. This choice is affected by the selected basis set and pseudopotential but not by the Gaussian shape keyword +  * The latter choice implies that the atomic weight function are constructed from isolated atomic densities which are expanded in terms of multiple spherical Gaussians. This choice avoids the introduction of any empirical parameters, and generally provides a more robust description of atomic charges than either Becke or Gaussian based Hirshfeld charge partitioning
  
 ==== Selected examples  ===== ==== Selected examples  =====
howto/cdft.txt · Last modified: 2024/01/03 13:20 by oschuett