ct_analysis

By Pierre Beaujean (pierre.beaujean@unamur.be).

Version 0.2 (Development).

Synopsis

ct_analysis - Compute charge transfer (CT) quantities

usage: ct_analysis [-h] [-v] -g GROUND -e EXCITED [-S] [-o OUTPUT] [-D]
                   [-d DUMMY]

Required arguments:

-g, --ground

Ground state density

-e, --excited

Excited state density

Optional arguments:

-h, --help

show this help message and exit

-v, --version

show program’s version number and exit

-S, --square

square cube before make the difference

-o, --output

difference cube

-D, --output-with-diff

Store all the densities (total, positive, negative)

-d, --dummy

Create an xyz file with dummy atoms in positions of both barycenters (negative then positive)

More information

Theory

Based on an implementation of this theory by D. Jacquemin (see supporting informations of the corresponding paper).

The charge in a given region of the space, located by \(\mathbf{r}\) and in an element of volume \(d\mathbf{r}\), is given by

\[q(\mathbf{r}) = \int \rho(\mathbf{r})\,d\mathbf{r}.\]

Charges at different point of the space (a “density”) can be obtained by using the cubegen utility provided by Gaussian. In particular,

  • cubegen 0 density=scf x.fchk out.cub permit to obtain the “density” of the ground state, and

  • cubegen 0 density=ci x.fchk out.cub permit to obtain the “density” of the excited state.

Note that you need to launch the Gaussian calculations with Density=(all) so that it stores the CI density (if you use solvatation, please make sure to use TD=(NonEqSolv)!).

Let \(\delta q(r)\) be the difference between the charge of the excited and the ground state. This quantity can be splitted into increasing areas and decreasing ones, \(\delta q_+(\mathbf{r})\) and \(\delta q_-(\mathbf{r})\), where

\[\begin{split}\delta q_+(\mathbf{r}) = \left\{ \begin{array}{ll} \delta q(\mathbf{r}) & \text{if }\delta q(\mathbf{r}) > 0, \\ 0 & \text{otherwise.} \end{array} \right.\end{split}\]

and,

\[\begin{split}\delta q_-(\mathbf{r}) = \left\{ \begin{array}{ll} \delta q(\mathbf{r}) & \text{if }\delta q(\mathbf{r}) < 0, \\ 0 & \text{otherwise.} \end{array} \right.\end{split}\]

One can therefore compute:

  • The transferred charge between ground and excited state:

    \[q_{CT} = \frac{1}{2}\,\sum_{\mathbf{r}_i} \delta q_+(\mathbf{r}_i) - \delta q_-(\mathbf{r}_i).\]

    Note that the original papers states that

    \[q_{CT} =\sum_{\mathbf{r}_i} \delta q_+(\mathbf{r}_i) =-\sum_{\mathbf{r}_i} \delta q_-(\mathbf{r}_i),\]

    but the implementation of D. Jacquemin reports and uses the average.

  • The starting and ending point of the charge transfer, \(\mathbf{r}_+\) and \(\mathbf{r}_-\):

    \[ \begin{align}\begin{aligned}\mathbf{r}_+ = \sum_{\mathbf{r}_i} \frac{\mathbf{r}_i\,q_+(\mathbf{r}_i)}{q_{CT}},\\\mathbf{r}_- = \sum_{\mathbf{r}_i} \frac{\mathbf{r}_i\,q_-(\mathbf{r}_i)}{q_{CT}}.\end{aligned}\end{align} \]

    Those are the barycenters of the positive and the negative densities. The vector between those two barycenter is the charge transfer vector, defined as

    \[\mathbf{v}_{CT} = \mathbf{r}_--\mathbf{r}_+.\]

    In particular, the charge transfer distance is the norm of this vector, \(d_{CT} = |\mathbf{v}_{CT}|\). Notice the usage of the so called chemist convention, where the dipole is defined from positive to negative positions.

  • The norm of variation of dipole moment between the ground and excited state:

    \[|\mu_{CT}| = q_{CT}\,d_{CT}.\]

Implementation

Only works with gaussian cube. Note that external programs may be abble to generate those as well (if this is not a density but a probability, like with MO, squaring it gives the density, so use the -S option).

The program reports \(\mathbf{v}_{CT}\) as well as \(q_{CT}\), \(d_{CT}\), and \(|\mu_{CT}|\).

It allows to save the difference cube (for visualization) and an xyz file containing two dummy atoms (one for each barycenter, first \(\mathbf{r}_-\) and then \(\mathbf{r}_+\)).

Warning

Vector and \(d_{CT}\) are given in Angstrom, \(q_{CT}\) is in |e| (electron charge), and \(|\mu_{CT}|\) is therefore in Angstrom |e|.

Source