Using density-corrected DFT to understand density-driven and functional-dependent errors in ab initio simulations of the hydrated electron
Data files
Apr 20, 2026 version files 4.56 MB
-
charge_transfer.zip
83.28 KB
-
first_shell.zip
2.47 MB
-
kev_pes.zip
17.73 KB
-
README.md
13.76 KB
-
xyz_files.zip
1.98 MB
Abstract
The hydrated electron, an excess electron in liquid water, plays a crucial role in a plethora of chemical processes, motivating extensive research efforts to characterize its structure, dynamics, and reactivity in solution. Recent theoretical approaches for understanding this intriguing object have involved ab initio simulations based on density functional theory (DFT). Although ab initio DFT methods allow for the study of hydrated electron reactivity, they also suffer from significant self-interaction error (SIE). Density-corrected DFT (DC-DFT) provides a framework to mitigate SIE; the method minimizes density-driven errors by replacing the self-consistent density associated with a given density functional with the Hartree-Fock (HF) density. Here, we investigate how the use of density correction affects the calculated properties of DFT-simulated hydrated electrons. First, we analyzed charge delocalization in a system consisting of a model octahedral hydrated electron water cluster (the so-called Kevan structure) along with a spatially separated sulfur atom. We show that the use of density correction indeed reduces SIE in comparison to a standard DFT global hybrid functional. We then propagate molecular dynamics trajectories of the hydrated electron using DC-DFT, where we find that DC further localizes electron density in the cavity region, a signature of reduced charge delocalization. Unfortunately, the decreased radiation of gyration of the spin density and corresponding tightening of the local solvation structure from density correction causes predicted observables to deviate further from experimental measurements than when density correction is not employed. This indicates that the difficulties with DFT to simulate hydrated electrons are primarily due to the inherent approximations in DFT rather than density-driven errors due to SIE.
Dataset DOI: 10.5061/dryad.80gb5mm32
Data set Overview
The Folders in this repository contain many sample inputs using various density functional approximations (DFAs) to investigate charge delocalization of both the Kevan water structure and our first-shell snapshots of our hydrated electron trajectories for both the combined system made up of waters, a ghost atom, and a sulfur atom and subsystems where charge delocalization is studied with sulfur plus the ghost atom and waters plus the ghost atom giving two separate calculations. The trajectories were obtained using the CP2K package and charge delocalization calculations were conducted with QCHEM software package. The following files helped elucidate our aim to determine whether applying DC-DFT reduces density-driven errors and if this improves the accuracy of our calculations. All these inputs work with the Q-CHEM software and are meant for single-point calculations. To obtain more information on the various Q-Chem keywords and have a better understanding of what the software offers, please visit https://www.q-chem.com/.
Files and variables
File: kev_pes.zip
Description: This contains the inputs used to determine the minimum of the Kevan structure and then using this configuration to further optimize it. The "sp" subfolder contains all input files with 6 waters in an octahedral structure surrounding the ghost atom for single-point calculations. the folders are named by the oxygen-ghost atom distance so for example, the folder "1_8.in" in the input containing waters with the oxygens 1.8 ansgtroms away from the ghost atom. Here we sampled the energies at various distances keeping the O-H bond lengths and water angles constrained. We then chose the configuration that gave the lowest energy and used in in the folder "opt" under kev_pes.zip. In here, the input "2_85.in" is the input with an O-ghost atom distance of 2.85 angstroms which showed to give the lowest energy. To maintain, the octahedral configuration, water angles and dihedrals were constrained (see input) but O-H bonds were allowed to relax. The optimized Kevan water structure is then used in charge_transfer.zip as "opt_kev".
File: first_shell.zip
General Description: This folder contains scripts used to extract first shell waters for select configurations and input files for both the combined and subsystem calculation using snapshots from our PBEh(25%), DC-PBEh(25%), PBEh(40%), and DC-PBEh(40%) trajectories. All inputs here contain D3, dispersion correction, with parameters obtained from https://www.chemie.uni-bonn.de/grimme/de/software/dft-d3.
Combined system: The combined system uses an input file including a sulfur atom 20 angstroms away from the ghost atom that is surrounded by first-shell waters. These folders are found under the subdirectories "dc" and "nodc" of "pbeh25" and "pbeh40" In the combined folders, there are scripts "make_input_fs_wrap.py" used to extract the first-shell waters of a selected configurations and the mol#.xyz files are the coordinated of the selected configurations. Those #s in the mol file names are then used to create folders where the respective qchem input is located.
Isolated system: The isolated system conducts two calculations: one with first shell waters surrounding the electron (ghost atom) and one with just sulfur. Like with the combined system the "isolated" folder is found in the "dc" and "nodc" subdirectories. The "isolated" folder contains two folders "hexamer", "s". The hexamer folder contains the input file of first-shell waters, in the neutral state under "neutral", an input file with an excess charge under "anion", as well as inputs used to investigate how sensitive our configurations are to density error under "sensitivity". These inputs are located in subdirectories named by the number of the snapshot chosen, in the same manner as in the combined system. The "s" folder has inputs for the neutral and anionic sulfur calculations.
Detailed Breakdown:
- Folder: pbe040
- Folder: dc (DC-PBE0 (40%))
- Folder: isolated
- Folder: s
- Folder: anion
- Input file for anionic sulfur using DC-PBE0 (40%).
- Folder: neutral
- Input file for neutral sulfur using DC-PBE0 (40%)
- Folder: anion
- Folder: hexamer
- Folder: neutral
- eqb_64_298K_dc.xyz: xyz file containing equilibrated atomic coordinates from equilibrated timesteps of the original trajectory which used DC-PBE0 (40%).
- make_input_fs_wrap.py: script used to extract the hydrated electron’s first shell waters based on periodic boundary conditions. We extracted uncorrelated configurations.
- mol#.xyz: extracted first-shell water coordinates with the # representing the chronological value of timestep extracted. So the first extracted timestep would have a file name of mol0.xyz.
- mol#.out: extracted first-shell water coordinates along with atomic basis sets. The # representing the chronological value of timestep extracted. So the first extracted timestep would have a file name of mol0.out.
- Folders 0-4: each contains an input file “qchem.in” to perform a single point calculation based on the first-shell coordinates with respect to the extracted timestep.
- Folder: anion
- Folders 0-4: each contains an input file “qchem.in” to perform a single point calculation based on the first-shell coordinates with respect to the extracted timestep. These inputs contain an excess charge.
- Folder: sensitivity
- Folders 0-4: contain inputs, for extracted first-shell waters with respect to the extracted timesteps. Each folder has two inputs; one using HF “qchem_hf_an.in” and one using LDA “qchem_lda_in” where “an” means anion since the calculation is performed with the first-shell waters and an excess electron (ghost atom). The resulting energies can be used for sensitivity analyses as explained in the paper.
- Folder: neutral
- Folder: s
- Folder: combined
- Folder: anion
- add_dc.sh is a script that adds the dc keyword to the input files that are located in the 0-4 folders.
- eqb_64_298K_dc: same as in the isolated folder.
- head_in contains the general keywords needed for the input file.
- make_dirs uses the resulting mol#.out files and the head_in file to generate input files and create folders named after the chronological extracted number of the xyz file. So the first extracted timestep would have a file name of mol0.out and the generated input file would be found in folder “0”.
- make_input_fs_wrap.py is the same as in the isolated folder.
- mol#.xyz and mol#.out are the same as in the isolated folder.
- qchem.sh is a sample job submission file needed to run inputs.
- Folders 0-4: each contains an input file “qchem.in” to perform a single point calculation based on the first-shell coordinates with respect to the extracted timestep. These inputs contain an excess charge and the sulfur atom.
- Folder: neutral
- Folders 0-4: each contains an input file “qchem.in” to perform a single point calculation based on the first-shell coordinates with respect to the extracted timestep. These inputs are for the neutral state with the sulfur atom.
- Folder: anion
- Folder: isolated
- Folder: nodc (with only PBE0 (40%))
- Folder: isolated
- Folder: s
- Folder: anion
- Input file for anionic sulfur using PBE0 (40%).
- Folder: neutral
- Input file for neutral sulfur using PBE0 (40%)
- Folder: anion
- Folder: hexamer
- Folder: neutral
- head_in contains the general keywords needed for the input file.
- make_input_fs_wrap.py: script used to extract the hydrated electron’s first shell waters based on periodic boundary conditions. We extracted uncorrelated configurations.
- make_dirs.sh uses the resulting mol#.out files and the head_in file to generate input files and create folders named after the chronological extracted number of the xyz file. So the first extracted timestep would have a file name of mol0.out and the generated input file would be found in folder “0”.
- pbe040_spin_eqb.xyz is an xyz file containing equilibrated atomic coordinates from equilibrated timesteps of the original trajectory which used PBE0 (40%).
- Folders 0-4: each contains an input file “qchem.in” to perform a single point calculation based on the first-shell coordinates with respect to the extracted timestep. These inputs are for the neutral state.
- Folder: anion
- Folders 0-4: each contains an input file “qchem.in” to perform a single point calculation based on the first-shell coordinates with respect to the extracted timestep. These inputs contain an excess charge.
- Folder: sensitivity
- Folders 0-4: contain inputs, for extracted first-shell waters with respect to the extracted timesteps. Each folder has two inputs; one using HF “qchem_hf_an.in” and one using LDA “qchem_lda_in” where “an” means anion since the calculation is performed with the first-shell waters and an excess electron (ghost atom). The resulting energies can be used for sensitivity analyses as explained in the paper.
- Folder: neutral
- Folder: s
- Folder: combined
- Folder: anion
- head_in contains the general keywords needed for the input file.
- make_dirs.sh is the same as in the isolated folder.
- make_input_fs_wrap.py is the same as in the isolated folder.
- mol#.xyz and mol#.out are the same as in the isolated folder.
- pbe040_spin_eqb.xyz is the same as in the isolated folder.
- Folders 0-4: each contains an input file “qchem.in” to perform a single point calculation based on the first-shell coordinates with respect to the extracted timestep. These inputs contain an excess charge and the sulfur atom.
- Folder: neutral
- Folders 0-4: each contains an input file “qchem.in” to perform a single point calculation based on the first-shell coordinates with respect to the extracted timestep. These inputs are for the neutral state with the sulfur atom.
- Folder: anion
- Folder: isolated
- Folder: dc (DC-PBE0 (40%))
- Folder: pbe025. This folder only contains the combined system data (first-shell waters, ghost atom, and sulfur atom), respective xyz files (for with and without DC), and with scripts that were also used in the pbe040 folders. Explanation for how these mol files and scripts work, can be found under the pbe040 section. Additionally, unlike with pbeo40, here we only show the inputs for the combined system with an excess charge. To generate inputs in the neutral state changes charge and multiplicity need to be made from -1 2 to 0 3 under the $molecule section in the qchem.in files.
File: xyz_files.zip
Description: The xyz from our trajectories using the different PBEh (25% and 40%) trajectories with and without DC. We used uncorrelated configurations of equilibrated time steps from these files as our snapshots to conduct charge delocalization studies. DC xyz files start with "dc" and are followed by the exchange percentage used in the PBEh DFA such as "pbeh25" for 25% exchange. Finally, "eqb" means that the xyz file only contains equilibrated time steps from the original trajectory. The other two xyz files, without DC, follow the same description except "dc" is not included in the file name. The file "dcpbeh25_all_xyz.xyz" contains timesteps including nonequilibrated ones.
File: charge_transfer.zip
Description: Sample input files for our optimized Kevan structure, under "opt_kev", as well as inputs using the Kevan configuration by Johnson (https://doi.org/10.1063/1.4829642), under the directory of "j_kevan" in both the combined systems (including a sulfur atom) and subsystems. We studied these Kevan structures using different levels of theory which we name in the subdirectories: B3LYP "b3lyp", DC for PBEh (25% and 40%) "dc-pbeh", only using Hartree-Fock (HF) as "hf", "lrc" for long-range corrected PBE, and PBEh (25% and 40%) as "pbeh".
j_kev contains inputs using Johnson’s Kevan configuration as referenced in the paper using various levels of theory. Inside each folder, named after the level of theory, are two subfolders named after the approach where the sulfur atom is included in the Kevan structure along with the ghost atom (combined) or treating each separately (isolated). In the combined folders we have two other folders “anion” and “neutral” containing input files, named qchem.in, where the system contains an excess charge and when it is in its neutral state, respectively. The isolated folders have two subfolders, one for the Kevan structure plus ghost atom labeled as “hexamer” and the other for the sulfur as “s”. Each of these folders containing inputs with an excess charge and without are named as qchem_an.in and qchem_neu.in, respectively.
The opt_kev follows the same layout as that in j_kev except this is using our optimized Kevan structure. The main changes are that there are no "s" folders here because the inputs for sulfur would be the same as the ones found in j_kev and the addition of another functional called "blyp". If one were to try a different level of theory or different DFA, one would just need to modify the input file by adding the desired DFA to the line that starts with "EXCHANGE" or in the "blyp" case, "METHOD".
