mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-12-21 19:13:29 +01:00
Minor changes
This commit is contained in:
parent
f3078ed2e2
commit
61a9c8d29f
@ -1,11 +1,14 @@
|
|||||||
#+TITLE: CFG CIPSI
|
#+TITLE: CFG CIPSI
|
||||||
#+AUTHOR: Vijay Gopal Chilkuri (vijay.gopal.c@gmail.com)
|
#+AUTHOR: Vijay Gopal Chilkuri
|
||||||
|
#+EMAIL: vijay.gopal.c@gmail.com
|
||||||
#+DATE: 2020-12-08 Tue 08:27
|
#+DATE: 2020-12-08 Tue 08:27
|
||||||
#+startup: latexpreview
|
#+startup: latexpreview
|
||||||
|
#+STARTUP: inlineimages
|
||||||
|
|
||||||
|
|
||||||
#+LATEX_HEADER: \usepackage{braket}
|
#+LATEX_HEADER: \usepackage{braket}
|
||||||
|
|
||||||
* Biblio
|
* Biblio
|
||||||
* Theoretical background
|
* Theoretical background
|
||||||
|
|
||||||
Here we describe the main theoretical background and definitions of the
|
Here we describe the main theoretical background and definitions of the
|
||||||
@ -14,7 +17,7 @@
|
|||||||
definitions of the overlap, one-particle, and two-particle matrix-elements. Finally,
|
definitions of the overlap, one-particle, and two-particle matrix-elements. Finally,
|
||||||
an algorithm is presented for the sigma-vector (\( \sigma \)-vector defined later) calculation using
|
an algorithm is presented for the sigma-vector (\( \sigma \)-vector defined later) calculation using
|
||||||
the CFG basis.
|
the CFG basis.
|
||||||
|
|
||||||
|
|
||||||
** Definitinon of CI basis
|
** Definitinon of CI basis
|
||||||
|
|
||||||
@ -41,7 +44,7 @@
|
|||||||
\(\ket{^S\Phi_i}\).
|
\(\ket{^S\Phi_i}\).
|
||||||
The coefficients \(O^b_{a,k}\) depend only on the number of SOMOs
|
The coefficients \(O^b_{a,k}\) depend only on the number of SOMOs
|
||||||
in \(\Phi_i\).
|
in \(\Phi_i\).
|
||||||
|
|
||||||
Each CFG contains a list of CSFs related to it which describes the
|
Each CFG contains a list of CSFs related to it which describes the
|
||||||
spin part of the wavefunction (see Eq: [[Eq:definebasis3]]) which is
|
spin part of the wavefunction (see Eq: [[Eq:definebasis3]]) which is
|
||||||
encoded in the BFs as shown below in Eq: [[Eq:definebasis5]].
|
encoded in the BFs as shown below in Eq: [[Eq:definebasis5]].
|
||||||
@ -52,7 +55,7 @@
|
|||||||
\ket{^S\Phi_i} = \left\{ \ket{^S\Phi^1_i}, \ket{^S\Phi^2_i}, \dots, \ket{^s\Phi^{\Ncsf}_i} \right\}
|
\ket{^S\Phi_i} = \left\{ \ket{^S\Phi^1_i}, \ket{^S\Phi^2_i}, \dots, \ket{^s\Phi^{\Ncsf}_i} \right\}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#+NAME: Eq:definebasis4
|
#+NAME: Eq:definebasis4
|
||||||
\begin{equation}
|
\begin{equation}
|
||||||
@ -130,52 +133,52 @@
|
|||||||
The matrix-element (ME) evaluation follows a similar logic as the evalulation of
|
The matrix-element (ME) evaluation follows a similar logic as the evalulation of
|
||||||
the overlap. However, here the metric is the one-, or two-particle operator \(\hat{E}_{pq}\)
|
the overlap. However, here the metric is the one-, or two-particle operator \(\hat{E}_{pq}\)
|
||||||
or \(\hat{E}_{pq}\hat{E}_{rs}\) as shown in Eq: [[Eq:defineme1]] and Eq: [[Eq:defineme2]].
|
or \(\hat{E}_{pq}\hat{E}_{rs}\) as shown in Eq: [[Eq:defineme1]] and Eq: [[Eq:defineme2]].
|
||||||
|
|
||||||
#+NAME: Eq:defineme1
|
#+NAME: Eq:defineme1
|
||||||
\begin{equation}
|
\begin{equation}
|
||||||
\braket{^S\Phi^k_i|\hat{O}_{pq}|^S\Phi^l_j} = \left( C_{i,1} \right)^{\dagger} \mathbf{O}_i\cdot\mathbf{A}^{pq}_{ij}\cdot\mathbf{O}_j C_{j,1}
|
\braket{^S\Phi^k_i|\hat{O}_{pq}|^S\Phi^l_j} = \left( C_{i,1} \right)^{\dagger} \mathbf{O}_i\cdot\mathbf{A}^{pq}_{ij}\cdot\mathbf{O}_j C_{j,1}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
#+NAME: Eq:defineme2
|
#+NAME: Eq:defineme2
|
||||||
\begin{equation}
|
\begin{equation}
|
||||||
\braket{^S\Phi^k_i|\hat{O}_{pq,rs}|^S\Phi^l_j} = \sum_K \left( C_{i,1} \right)^{\dagger} \mathbf{O}_i\cdot\mathbf{A}^{pq}_{ik}\cdot\mathbf{O}_k \mathbf{O}_k\cdot\mathbf{A}^{rs}_{kj}\cdot\mathbf{O}_j C_{j,1}
|
\braket{^S\Phi^k_i|\hat{O}_{pq,rs}|^S\Phi^l_j} = \sum_K \left( C_{i,1} \right)^{\dagger} \mathbf{O}_i\cdot\mathbf{A}^{pq}_{ik}\cdot\mathbf{O}_k \mathbf{O}_k\cdot\mathbf{A}^{rs}_{kj}\cdot\mathbf{O}_j C_{j,1}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
|
|
||||||
Where, \(\hat{O}_{pq}\) and \(hat{O}_{pq,rs}\) represent an arbitrary one-, and
|
Where, \(\hat{O}_{pq}\) and \(hat{O}_{pq,rs}\) represent an arbitrary one-, and
|
||||||
two-particle operators respectively. Importantly, the one-, and two-particle
|
two-particle operators respectively. Importantly, the one-, and two-particle
|
||||||
matrix-element evaluation can be recast into an effecient matrix multiplication
|
matrix-element evaluation can be recast into an effecient matrix multiplication
|
||||||
form which is crucial for a fast evaluation of the action of the operators
|
form which is crucial for a fast evaluation of the action of the operators
|
||||||
\(\hat{O}_{pq}\) and \(hat{O}_{pq,rs}\). The matrix \(\mathbf{A}^{pq}_{ij}\) contains
|
\(\hat{O}_{pq}\) and \(hat{O}_{pq,rs}\). The matrix \(\mathbf{A}^{pq}_{ij}\) contains
|
||||||
the result of the operation \(\braket{^S\Phi^k_i|\hat{O}_{pq}|^S\Phi^l_j}\) in terms
|
the result of the operation \(\braket{^S\Phi^k_i|\hat{O}_{pq}|^S\Phi^l_j}\) in terms
|
||||||
of BFs and is therefore of size \(NCSF(i) \textit{x} NBF(i)\). In this formulation, the determinant basis is entirely avoided.
|
of BFs and is therefore of size \(NCSF(i) \textit{x} NBF(i)\). In this formulation, the determinant basis is entirely avoided.
|
||||||
Note that the size and contents of the matrix \(\mathbf{A}^{pq}_{ij}\) depends
|
Note that the size and contents of the matrix \(\mathbf{A}^{pq}_{ij}\) depends
|
||||||
only on the total number of SOMOs and the total spin \(S\), therefore, an optimal
|
only on the total number of SOMOs and the total spin \(S\), therefore, an optimal
|
||||||
prototyping scheme can be deviced for a rapid calculaiton of these matrix contractions.
|
prototyping scheme can be deviced for a rapid calculaiton of these matrix contractions.
|
||||||
The resolution of identity (RI) is used to evaluate the two-particle operator since
|
The resolution of identity (RI) is used to evaluate the two-particle operator since
|
||||||
this alleviates the necessacity to explicity construct two-particle matrix-elements
|
this alleviates the necessacity to explicity construct two-particle matrix-elements
|
||||||
\(\braket{^S\Phi^k_i|\hat{O}_{pq,rs}|^S\Phi^l_j}\) directly.
|
\(\braket{^S\Phi^k_i|\hat{O}_{pq,rs}|^S\Phi^l_j}\) directly.
|
||||||
|
|
||||||
** Sigma-vector evaluation
|
** Sigma-vector evaluation
|
||||||
|
|
||||||
Once the \(\mathbf{A}^{pq}_{ij}\) matrices have been constructed for the given
|
Once the \(\mathbf{A}^{pq}_{ij}\) matrices have been constructed for the given
|
||||||
selected list of CFGs, the prototype lists for the \(\mathbf{A}^{pq}_{ij}\) matrices
|
selected list of CFGs, the prototype lists for the \(\mathbf{A}^{pq}_{ij}\) matrices
|
||||||
can be constructed. Following this, one can proceede to the evaluation of the sigma-vector
|
can be constructed. Following this, one can proceede to the evaluation of the sigma-vector
|
||||||
as defined in the Eq [[Eq:definesigma1]].
|
as defined in the Eq [[Eq:definesigma1]].
|
||||||
|
|
||||||
|
|
||||||
#+NAME: Eq:definesigma1
|
#+NAME: Eq:definesigma1
|
||||||
\begin{equation}
|
\begin{equation}
|
||||||
\sigma = \sum_{pq} \tilde{h}_{pq}\hat{E}_{pq}|\ket{^S\Phi^l_j} + \frac{1}{2}\sum_{pq,rs} g_{pq,rs} \hat{E}_{pq}\hat{E}_{rs}|\ket{^S\Phi^l_j}
|
\sigma = \sum_{pq} \tilde{h}_{pq}\hat{E}_{pq}|\ket{^S\Phi^l_j} + \frac{1}{2}\sum_{pq,rs} g_{pq,rs} \hat{E}_{pq}\hat{E}_{rs}|\ket{^S\Phi^l_j}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
The one-electron part of the sigma-vector can be calculated as shown in Eq: [[Eq:defineme1]]
|
The one-electron part of the sigma-vector can be calculated as shown in Eq: [[Eq:defineme1]]
|
||||||
and the two-electron part can be calculated using the RI as shown in Eq: [[Eq:defineme2]].
|
and the two-electron part can be calculated using the RI as shown in Eq: [[Eq:defineme2]].
|
||||||
The most expensive part involves the two-particle operator as shown on the RHS of Eq: [[Eq:definesigma1]].
|
The most expensive part involves the two-particle operator as shown on the RHS of Eq: [[Eq:definesigma1]].
|
||||||
In this CFG formulation, the cost intensive part of the sigma-vector evaluation has been recast
|
In this CFG formulation, the cost intensive part of the sigma-vector evaluation has been recast
|
||||||
into an efficient BLAS matrix multiplication operation. Therefore, this formulation is the most efficient
|
into an efficient BLAS matrix multiplication operation. Therefore, this formulation is the most efficient
|
||||||
albeit at the cost of storing the prototype matrices \(\mathbf{A}^{pq}_{ij}\). However, where the total spin
|
albeit at the cost of storing the prototype matrices \(\mathbf{A}^{pq}_{ij}\). However, where the total spin
|
||||||
is small and the largest number of SOMOs does not exceed 14, the \(\mathbf{A}^{pq}_{ij}\) matrices
|
is small and the largest number of SOMOs does not exceed 14, the \(\mathbf{A}^{pq}_{ij}\) matrices
|
||||||
can be stored in memory.
|
can be stored in memory.
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user