![]() |
(git:08825b9)
|
Local UPF matrix elements from the original radial potential. The Gaussian core electrostatics supplies -Z erf(sqrt(alpha)*r)/r. Its complement is integrated with analytic angles and radial quadrature. Gaussian products, center derivatives and RI integrals share this operator. More...
Data Types | |
| type | upf_local_type |
Functions/Subroutines | |
| subroutine, public | upf_local_init (pot, alpha, degree, local, eps) |
| Prepare the short-range local potential outside parallel regions. | |
| subroutine, public | upf_local_matrix (local, la, alpha, lb, beta, rab, rac, v, da, db) |
| Evaluate primitive three-center local integrals by the Gaussian product theorem. | |
| subroutine, public | upf_local_ri (local, la, zeta, rac, v, dv) |
| Local potential against a single Cartesian Gaussian for RI. | |
Local UPF matrix elements from the original radial potential. The Gaussian core electrostatics supplies -Z erf(sqrt(alpha)*r)/r. Its complement is integrated with analytic angles and radial quadrature. Gaussian products, center derivatives and RI integrals share this operator.
| subroutine, public upf_local_integrals::upf_local_init | ( | type(atom_upfpot_type), intent(in) | pot, |
| real(kind=dp), intent(in) | alpha, | ||
| integer, intent(in) | degree, | ||
| type(upf_local_type), intent(inout) | local, | ||
| real(kind=dp), intent(in), optional | eps ) |
Prepare the short-range local potential outside parallel regions.
| pot | Original UPF data, with PP_LOCAL already converted to Hartree. |
| alpha | Gaussian core-charge exponent, not its screening radius. |
| degree | Largest Gaussian product degree, including derivatives or moments. |
| local | Immutable integration data. Reinitialization retains its threshold. |
| eps | Optional threshold for estimating the potential's neighbor-list radius. This is NOT an integration tolerance: EPS_PPL is normally 1e-2. All original radial samples, including the tail, enter the quadrature. |
Definition at line 51 of file upf_local_integrals.F.
| subroutine, public upf_local_integrals::upf_local_matrix | ( | type(upf_local_type), intent(in) | local, |
| integer, intent(in) | la, | ||
| real(kind=dp), dimension(:), intent(in) | alpha, | ||
| integer, intent(in) | lb, | ||
| real(kind=dp), dimension(:), intent(in) | beta, | ||
| real(kind=dp), dimension(3), intent(in) | rab, | ||
| real(kind=dp), dimension(3), intent(in) | rac, | ||
| real(kind=dp), dimension(:, :), intent(out) | v, | ||
| real(kind=dp), dimension(:, :, :), intent(out), optional | da, | ||
| real(kind=dp), dimension(:, :, :), intent(out), optional | db ) |
Evaluate primitive three-center local integrals by the Gaussian product theorem.
| local | Prepared radial potential. |
| la | Largest Cartesian degree at A; all degrees 0..la are returned. |
| alpha | Primitive exponents at A. |
| lb | Largest Cartesian degree at B; all degrees 0..lb are returned. |
| beta | Primitive exponents at B. |
| rab | B minus A. |
| rac | Potential center C minus A. |
| v | Matrix elements in primitive-major Cartesian order. |
| da | Optional derivatives with respect to A, at fixed B and C. |
| db | Optional derivatives with respect to B, at fixed A and C. The derivative with respect to C is -(da+db). |
Definition at line 114 of file upf_local_integrals.F.
| subroutine, public upf_local_integrals::upf_local_ri | ( | type(upf_local_type), intent(in) | local, |
| integer, intent(in) | la, | ||
| real(kind=dp), dimension(:), intent(in) | zeta, | ||
| real(kind=dp), dimension(3), intent(in) | rac, | ||
| real(kind=dp), dimension(:), intent(out) | v, | ||
| real(kind=dp), dimension(:, :), intent(out), optional | dv ) |
Local potential against a single Cartesian Gaussian for RI.
| local | Prepared radial potential. |
| la | Largest Cartesian degree. |
| zeta | Primitive exponents. |
| rac | Potential center minus Gaussian center. |
| v | Primitive-major Cartesian integrals. |
| dv | Optional Gaussian-center derivatives, in x,y,z order. |
Definition at line 238 of file upf_local_integrals.F.