mirror of
https://github.com/TREX-CoE/trexio.git
synced 2025-01-03 18:16:22 +01:00
Merge branch 'master' into swig-python
This commit is contained in:
commit
04c4b8806c
87
trex.org
87
trex.org
@ -107,54 +107,43 @@ arrays are 0-based. Hence, we introduce the ~index~ type which is an
|
|||||||
#+end_src
|
#+end_src
|
||||||
:end:
|
:end:
|
||||||
|
|
||||||
* TODO Effective core potentials (ecp group)
|
* Effective core potentials (ecp group)
|
||||||
|
|
||||||
An effective core potential (ECP) $V_A^{\text{pp}}$ replacing the
|
|
||||||
core electrons of atom $A$ is the sum of a local component
|
|
||||||
$V_A^{\text{l}}$ and a non-local component $V_A^{\text{nl}}$.
|
|
||||||
The local component is given by
|
|
||||||
|
|
||||||
|
An effective core potential (ECP) $V_A^{\text{ECP}}$ replacing the
|
||||||
|
core electrons of atom $A$ is expressed as
|
||||||
\[
|
\[
|
||||||
\hat{V}_A^{\text{l}}(r) = -\frac{Z_A^{\text{eff}}}{r} +
|
V_A^{\text{ECP}} =
|
||||||
\frac{Z_A^{\text{eff}}}{r}\, \exp\left( -\alpha_A\, r^2\right) +
|
V_{A \ell_{\max}} +
|
||||||
Z_{\text{eff}}\, \alpha_A\, r\, \exp\left( -\beta_A\, r^2\right) +
|
\sum_{\ell=0}^{\ell_{\max} -1}
|
||||||
\gamma_A \exp\left( -\delta_A\, r^2\right),
|
\sum_{m=-\ell}^{\ell} | Y_{\ell m} \rangle \left[
|
||||||
|
V_{A \ell} - V_{A \ell_{\max}} \right] \langle Y_{\ell m} |
|
||||||
\]
|
\]
|
||||||
|
|
||||||
and the component obtained after localizing the non-local operator is
|
The functions $V_{A\ell}$ are parameterized as:
|
||||||
|
|
||||||
\[
|
\[
|
||||||
\hat{V}_A^{\text{nl}}(r) =
|
V_{A \ell}(\mathbf{r}) =
|
||||||
\zeta_A\, \exp\left( -\eta_A\, r^2\right) |0\rangle \langle 0| +
|
\sum_{q=1}^{N_{q \ell}}
|
||||||
\mu_A \, \exp\left( -\nu_A \, r^2\right) |1\rangle \langle 1|
|
\beta_{A q \ell}\, |\mathbf{r}-\mathbf{R}_{A}|^{n_{A q \ell}}\,
|
||||||
|
e^{-\alpha_{A q \ell} |\mathbf{r}-\mathbf{R}_{A}|^2 }
|
||||||
\]
|
\]
|
||||||
|
|
||||||
where $r=|\mathbf{r-R}_A|$ is the distance to the nucleus on which the
|
See http://dx.doi.org/10.1063/1.4984046 for more info.
|
||||||
potential is centered, $Z_A^{\text{eff}}$ is the effective charge
|
|
||||||
due to the removed electrons, $|0\rangle \langle 0|$
|
|
||||||
and $|1\rangle \langle 1|$ are projections over zero and one principal angular
|
|
||||||
momenta, respectively (generalization to higher angular momenta is
|
|
||||||
straightforward), and all the parameters labeled by Greek
|
|
||||||
letters are parameters.
|
|
||||||
|
|
||||||
- $\hat{V}_\text{ecp,l} = \sum_A \hat{V}_A^{\text{l}}$ : local component
|
|
||||||
- $\hat{V}_\text{ecp,nl} = \sum_A \hat{V}_A^{\text{nl}}$ : non-local component
|
|
||||||
|
|
||||||
#+NAME: ecp
|
#+NAME: ecp
|
||||||
| Variable | Type | Dimensions | Description |
|
| Variable | Type | Dimensions | Description |
|
||||||
|-----------------------+---------+------------------------------------------+----------------------------|
|
|-----------------------+---------+------------------------------------------+----------------------------------------------------------------------------------------------|
|
||||||
| ~lmax_plus_1~ | ~int~ | ~(nucleus.num)~ | $l_{\max} + 1$ |
|
| ~lmax_plus_1~ | ~int~ | ~(nucleus.num)~ | $\ell_{\max} + 1$, one higher than the maximum angular momentum in the removed core orbitals |
|
||||||
| ~z_core~ | ~float~ | ~(nucleus.num)~ | Charges to remove |
|
| ~z_core~ | ~float~ | ~(nucleus.num)~ | Charges to remove |
|
||||||
| ~local_n~ | ~int~ | ~(nucleus.num)~ | Number of local function |
|
| ~local_n~ | ~int~ | ~(nucleus.num)~ | Number of local functions $N_{q \ell}$ |
|
||||||
| ~local_num_n_max~ | ~int~ | | Maximum value of ~local_n~ |
|
| ~local_num_n_max~ | ~int~ | | Maximum value of ~local_n~, used for dimensioning arrays |
|
||||||
| ~local_exponent~ | ~float~ | ~(ecp.local_num_n_max, nucleus.num)~ | |
|
| ~local_exponent~ | ~float~ | ~(ecp.local_num_n_max, nucleus.num)~ | $\alpha_{A q \ell_{\max}}$ |
|
||||||
| ~local_coef~ | ~float~ | ~(ecp.local_num_n_max, nucleus.num)~ | |
|
| ~local_coef~ | ~float~ | ~(ecp.local_num_n_max, nucleus.num)~ | $\beta_{A q \ell_{\max}}$ |
|
||||||
| ~local_power~ | ~int~ | ~(ecp.local_num_n_max, nucleus.num)~ | |
|
| ~local_power~ | ~int~ | ~(ecp.local_num_n_max, nucleus.num)~ | $n_{A q \ell_{\max}}$ |
|
||||||
| ~non_local_n~ | ~int~ | ~(nucleus.num)~ | |
|
| ~non_local_n~ | ~int~ | ~(nucleus.num)~ | $N_{q \ell_{\max}}$ |
|
||||||
| ~non_local_num_n_max~ | ~int~ | | |
|
| ~non_local_num_n_max~ | ~int~ | | Maximum value of ~non_local_n~, used for dimensioning arrays |
|
||||||
| ~non_local_exponent~ | ~float~ | ~(ecp.non_local_num_n_max, nucleus.num)~ | |
|
| ~non_local_exponent~ | ~float~ | ~(ecp.non_local_num_n_max, nucleus.num)~ | $\alpha_{A q \ell}$ |
|
||||||
| ~non_local_coef~ | ~float~ | ~(ecp.non_local_num_n_max, nucleus.num)~ | |
|
| ~non_local_coef~ | ~float~ | ~(ecp.non_local_num_n_max, nucleus.num)~ | $\beta_{A q \ell}$ |
|
||||||
| ~non_local_power~ | ~int~ | ~(ecp.non_local_num_n_max, nucleus.num)~ | |
|
| ~non_local_power~ | ~int~ | ~(ecp.non_local_num_n_max, nucleus.num)~ | $n_{A q \ell}$ |
|
||||||
|
|
||||||
#+CALL: json(data=ecp, title="ecp")
|
#+CALL: json(data=ecp, title="ecp")
|
||||||
|
|
||||||
@ -461,14 +450,14 @@ prim_factor =
|
|||||||
* Molecular orbitals (mo group)
|
* Molecular orbitals (mo group)
|
||||||
|
|
||||||
#+NAME: mo
|
#+NAME: mo
|
||||||
| Variable | Type | Dimensions | Description |
|
| Variable | Type | Dimensions | Description |
|
||||||
|---------------+---------+--------------------+------------------------------------------|
|
|---------------+---------+--------------------+--------------------------------------------------------------------------|
|
||||||
| ~type~ | ~str~ | | String identify the set of MOs |
|
| ~type~ | ~str~ | | Free text to identify the set of MOs (HF, Natural, Local, CASSCF, /etc/) |
|
||||||
| ~num~ | ~int~ | | Number of MOs |
|
| ~num~ | ~int~ | | Number of MOs |
|
||||||
| ~coefficient~ | ~float~ | ~(ao.num, mo.num)~ | MO coefficients |
|
| ~coefficient~ | ~float~ | ~(ao.num, mo.num)~ | MO coefficients |
|
||||||
| ~class~ | ~str~ | ~(mo.num)~ | Core, Inactive, Active, Virtual, Deleted |
|
| ~class~ | ~str~ | ~(mo.num)~ | Choose among: Core, Inactive, Active, Virtual, Deleted |
|
||||||
| ~symmetry~ | ~str~ | ~(mo.num)~ | Symmetry in the point group |
|
| ~symmetry~ | ~str~ | ~(mo.num)~ | Symmetry in the point group |
|
||||||
| ~occupation~ | ~float~ | ~(mo.num)~ | Occupation number |
|
| ~occupation~ | ~float~ | ~(mo.num)~ | Occupation number |
|
||||||
|
|
||||||
#+CALL: json(data=mo, title="mo")
|
#+CALL: json(data=mo, title="mo")
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user