mirror of
https://github.com/TREX-CoE/trexio.git
synced 2024-11-03 20:54:07 +01:00
CC amplitudes
This commit is contained in:
parent
932e403ad2
commit
afd4936df7
85
trex.org
85
trex.org
@ -679,7 +679,7 @@ prim_factor =
|
|||||||
The Cholesky decomposition of the integrals can also be stored:
|
The Cholesky decomposition of the integrals can also be stored:
|
||||||
|
|
||||||
\[
|
\[
|
||||||
\A_{ijkl} = \sum_{\alpha} G_{il\alpha} G_{jl\alpha}
|
A_{ijkl} = \sum_{\alpha} G_{il\alpha} G_{jl\alpha}
|
||||||
\]
|
\]
|
||||||
|
|
||||||
#+NAME: mo_2e_int
|
#+NAME: mo_2e_int
|
||||||
@ -792,6 +792,81 @@ prim_factor =
|
|||||||
#+end_src
|
#+end_src
|
||||||
:end:
|
: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/.
|
||||||
|
|
||||||
|
Wave functions obtained with perturbation theory of configuration
|
||||||
|
interaction are of the form
|
||||||
|
[\
|
||||||
|
\Phi = \hat{T} \Psi
|
||||||
|
\]
|
||||||
|
|
||||||
|
and coupled-cluster wave functions are of the form
|
||||||
|
[\
|
||||||
|
\Phi = e^{\hat{T}} \Psi
|
||||||
|
\]
|
||||||
|
|
||||||
|
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~ | ~(mo.num,mo.num)~ | Single excitation amplitudes |
|
||||||
|
| ~single_exp~ | ~float~ | ~(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" , [ "mo.num", "mo.num" ] ]
|
||||||
|
, "single_exp" : [ "float" , [ "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:
|
||||||
|
|
||||||
* Excited states (state group)
|
* Excited states (state group)
|
||||||
|
|
||||||
This group contains information about excited states. Since only a
|
This group contains information about excited states. Since only a
|
||||||
@ -967,10 +1042,10 @@ prim_factor =
|
|||||||
defined in this group.
|
defined in this group.
|
||||||
|
|
||||||
#+NAME: pbc
|
#+NAME: pbc
|
||||||
| Variable | Type | Dimensions | Description |
|
| Variable | Type | Dimensions | Description |
|
||||||
|---------------+---------+------------+-------------------------|
|
|------------+---------+------------+-------------------------|
|
||||||
| ~periodic~ | ~int~ | | ~1~: true or ~0~: false |
|
| ~periodic~ | ~int~ | | ~1~: true or ~0~: false |
|
||||||
| ~k_point~ | ~float~ | ~(3)~ | $k$-point sampling |
|
| ~k_point~ | ~float~ | ~(3)~ | $k$-point sampling |
|
||||||
|
|
||||||
#+CALL: json(data=pbc, title="pbc")
|
#+CALL: json(data=pbc, title="pbc")
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user