![]() |
(git:936074a)
|
Minimax-Ewald (MME) method for calculating 2-center and 3-center electron repulsion integrals (ERI) of periodic systems using a Hermite Gaussian basis. The method relies on analytical Fourier transforms of Cartesian and Hermite Gaussian functions and Poisson summation formula to represent ERIs as a discrete sum over direct lattice vectors or reciprocal lattice vectors. The reciprocal space potential 1/G^2 is approximated by a linear combination of Gaussians employing minimax approximation. Not yet implemented: 3c ERIs for nonorthogonal cells. More...
Functions/Subroutines | |
| subroutine, public | eri_mme_2c_integrate (param, la_min, la_max, lb_min, lb_max, zeta, zetb, rab, hab, o1, o2, g_count, r_count, normalize, potential, pot_par) |
| Low-level integration routine for 2-center ERIs. | |
| subroutine, public | eri_mme_3c_integrate (param, la_min, la_max, lb_min, lb_max, lc_min, lc_max, zeta, zetb, zetc, ra, rb, rc, habc, o1, o2, o3, gg_count, gr_count, rr_count) |
| Low-level integration routine for 3-center ERIs. | |
Minimax-Ewald (MME) method for calculating 2-center and 3-center electron repulsion integrals (ERI) of periodic systems using a Hermite Gaussian basis. The method relies on analytical Fourier transforms of Cartesian and Hermite Gaussian functions and Poisson summation formula to represent ERIs as a discrete sum over direct lattice vectors or reciprocal lattice vectors. The reciprocal space potential 1/G^2 is approximated by a linear combination of Gaussians employing minimax approximation. Not yet implemented: 3c ERIs for nonorthogonal cells.
| subroutine, public eri_mme_integrate::eri_mme_2c_integrate | ( | type(eri_mme_param), intent(in) | param, |
| integer, intent(in) | la_min, | ||
| integer, intent(in) | la_max, | ||
| integer, intent(in) | lb_min, | ||
| integer, intent(in) | lb_max, | ||
| real(kind=dp), intent(in) | zeta, | ||
| real(kind=dp), intent(in) | zetb, | ||
| real(kind=dp), dimension(3), intent(in) | rab, | ||
| real(kind=dp), dimension(:, :), intent(inout) | hab, | ||
| integer, intent(in) | o1, | ||
| integer, intent(in) | o2, | ||
| integer, intent(inout), optional | g_count, | ||
| integer, intent(inout), optional | r_count, | ||
| logical, intent(in), optional | normalize, | ||
| integer, intent(in), optional | potential, | ||
| real(kind=dp), intent(in), optional | pot_par | ||
| ) |
Low-level integration routine for 2-center ERIs.
| param | ... |
| la_min | ... |
| la_max | ... |
| lb_min | ... |
| lb_max | ... |
| zeta | ... |
| zetb | ... |
| rab | ... |
| hab | ... |
| o1 | ... |
| o2 | ... |
| G_count | ... |
| R_count | ... |
| normalize | calculate integrals w.r.t. normalized Hermite-Gaussians |
| potential | use exact potential instead of minimax approx. (for testing only) |
| pot_par | potential parameter |
Definition at line 70 of file eri_mme_integrate.F.
| subroutine, public eri_mme_integrate::eri_mme_3c_integrate | ( | type(eri_mme_param), intent(in) | param, |
| integer, intent(in) | la_min, | ||
| integer, intent(in) | la_max, | ||
| integer, intent(in) | lb_min, | ||
| integer, intent(in) | lb_max, | ||
| integer, intent(in) | lc_min, | ||
| integer, intent(in) | lc_max, | ||
| real(kind=dp), intent(in) | zeta, | ||
| real(kind=dp), intent(in) | zetb, | ||
| real(kind=dp), intent(in) | zetc, | ||
| real(kind=dp), dimension(3), intent(in) | ra, | ||
| real(kind=dp), dimension(3), intent(in) | rb, | ||
| real(kind=dp), dimension(3), intent(in) | rc, | ||
| real(kind=dp), dimension(:, :, :), intent(inout) | habc, | ||
| integer, intent(in) | o1, | ||
| integer, intent(in) | o2, | ||
| integer, intent(in) | o3, | ||
| integer, intent(inout), optional | gg_count, | ||
| integer, intent(inout), optional | gr_count, | ||
| integer, intent(inout), optional | rr_count | ||
| ) |
Low-level integration routine for 3-center ERIs.
| param | ... |
| la_min | ... |
| la_max | ... |
| lb_min | ... |
| lb_max | ... |
| lc_min | ... |
| lc_max | ... |
| zeta | ... |
| zetb | ... |
| zetc | ... |
| RA | ... |
| RB | ... |
| RC | ... |
| habc | ... |
| o1 | ... |
| o2 | ... |
| o3 | ... |
| GG_count | ... |
| GR_count | ... |
| RR_count | ... |
Definition at line 272 of file eri_mme_integrate.F.