mirror of
https://github.com/TREX-CoE/trexio.git
synced 2024-08-24 22:21:43 +02:00
Integrated amplitudes
This commit is contained in:
parent
cc27375b15
commit
899d64d5bf
73
trex.org
73
trex.org
@ -943,6 +943,79 @@ power = [
|
||||
#+end_src
|
||||
:end:
|
||||
|
||||
** Amplitudes (amplitude group)
|
||||
|
||||
The wave function may be expressed in terms of action of the cluster
|
||||
operator $\hat{T}$:
|
||||
|
||||
\[
|
||||
\hat{T} = \hat{T}_1 + \hat{T}_2 + \hat{T}_3 + \dots
|
||||
\]
|
||||
|
||||
on a reference wave function $\Psi$, where $\hat{T}_1$ is the single excitation operator,
|
||||
|
||||
\[
|
||||
\hat{T}_1 = \sum_{ia} t_{i}^{a}\, \hat{a}^\dagger_a \hat{a}_i
|
||||
\],
|
||||
|
||||
$\hat{T}_2$ is the double excitation operator,
|
||||
|
||||
\[
|
||||
\hat{T}_2 = \frac{1}{4} \sum_{ijab} t_{ij}^{ab}\, \hat{a}^\dagger_a \hat{a}^\dagger_b \hat{a}_j \hat{a}_i
|
||||
\],
|
||||
|
||||
/etc/. Indices $i,j,a,b$ denote molecular orbital indices.
|
||||
|
||||
Wave functions obtained with perturbation theory of configuration
|
||||
interaction are of the form
|
||||
|
||||
\[ |\Phi\rangle = \hat{T}|\Psi\rangle \]
|
||||
|
||||
and coupled-cluster wave functions are of the form
|
||||
|
||||
\[ |\Phi\rangle = e^{\hat{T}}| \Psi \rangle \]
|
||||
|
||||
The reference wave function is stored using the ~determinant~ and/or
|
||||
~csf~ groups, and the amplitudes are stored using the current group.
|
||||
The attributes with the ~exp~ suffix correspond to exponentialized operators.
|
||||
|
||||
The order of the indices is chosen such that
|
||||
- ~t(i,a)~ = $t_{i}^{a}$.
|
||||
- ~t(i,j,a,b)~ = $t_{ij}^{ab}$,
|
||||
- ~t(i,j,k,a,b,c)~ = $t_{ijk}^{abc}$,
|
||||
- ~t(i,j,k,l,a,b,c,d)~ = $t_{ijkl}^{abcd}$,
|
||||
- $\dots$
|
||||
|
||||
#+NAME: amplitude
|
||||
| Variable | Type | Dimensions | Description |
|
||||
|-----------------+----------------+-------------------------------------------------------------+-------------------------------------------------|
|
||||
| ~single~ | ~float sparse~ | ~(mo.num,mo.num)~ | Single excitation amplitudes |
|
||||
| ~single_exp~ | ~float sparse~ | ~(mo.num,mo.num)~ | Exponentialized single excitation amplitudes |
|
||||
| ~double~ | ~float sparse~ | ~(mo.num,mo.num,mo.num,mo.num)~ | Double excitation amplitudes |
|
||||
| ~double_exp~ | ~float sparse~ | ~(mo.num,mo.num,mo.num,mo.num)~ | Exponentialized double excitation amplitudes |
|
||||
| ~triple~ | ~float sparse~ | ~(mo.num,mo.num,mo.num,mo.num,mo.num,mo.num)~ | Triple excitation amplitudes |
|
||||
| ~triple_exp~ | ~float sparse~ | ~(mo.num,mo.num,mo.num,mo.num,mo.num,mo.num)~ | Exponentialized triple excitation amplitudes |
|
||||
| ~quadruple~ | ~float sparse~ | ~(mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num)~ | Quadruple excitation amplitudes |
|
||||
| ~quadruple_exp~ | ~float sparse~ | ~(mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num)~ | Exponentialized quadruple excitation amplitudes |
|
||||
|
||||
#+CALL: json(data=amplitude, title="amplitude")
|
||||
|
||||
#+RESULTS:
|
||||
:results:
|
||||
#+begin_src python :tangle trex.json
|
||||
"amplitude": {
|
||||
"single" : [ "float sparse", [ "mo.num", "mo.num" ] ]
|
||||
, "single_exp" : [ "float sparse", [ "mo.num", "mo.num" ] ]
|
||||
, "double" : [ "float sparse", [ "mo.num", "mo.num", "mo.num", "mo.num" ] ]
|
||||
, "double_exp" : [ "float sparse", [ "mo.num", "mo.num", "mo.num", "mo.num" ] ]
|
||||
, "triple" : [ "float sparse", [ "mo.num", "mo.num", "mo.num", "mo.num", "mo.num", "mo.num" ] ]
|
||||
, "triple_exp" : [ "float sparse", [ "mo.num", "mo.num", "mo.num", "mo.num", "mo.num", "mo.num" ] ]
|
||||
, "quadruple" : [ "float sparse", [ "mo.num", "mo.num", "mo.num", "mo.num", "mo.num", "mo.num", "mo.num", "mo.num" ] ]
|
||||
, "quadruple_exp" : [ "float sparse", [ "mo.num", "mo.num", "mo.num", "mo.num", "mo.num", "mo.num", "mo.num", "mo.num" ] ]
|
||||
} ,
|
||||
#+end_src
|
||||
:end:
|
||||
|
||||
** Reduced density matrices (rdm group)
|
||||
|
||||
The reduced density matrices are defined in the basis of molecular
|
||||
|
Loading…
Reference in New Issue
Block a user