|
pure real(kind=cfp) function | gto_routines_gbl::dngto (l, alpha) |
|
real(kind=cfp) function | gto_routines_gbl::cart_gto_int (alp, bet, i, j, k) |
| This function calculates \( I = \int\int\int x^{i}y^{j}z^{k}\exp[-(\alpha+\beta)r^2] = {\frac{\Gamma(i/2+1/2)\Gamma(j/2+1/2)\Gamma(k/2+1/2)}{((\alpha+\beta)^{1/2(i+j+k+3)})}} \). In particular, this function can be used to calculate overlap of two primitive GTOs centered on the same nucleus. More...
|
|
real(kind=cfp) function | gto_routines_gbl::norm_cart_gto (alp, i, j, k) |
| Calculates the normalization factor for the primitive cartesian GTO function. More...
|
|
real(kind=cfp) function | gto_routines_gbl::contr_cart_gto_norm (i, j, k, alp, ccf) |
| This function calculates the normalization factor for a contracted cartesian GTO. The cartesian exponents are i,j,k. The contraction coefficients and exponents of the primitives are in the arrays alp(:) and ccf(:). More...
|
|
real(kind=cfp) function | gto_routines_gbl::olap_ccart_csph (i, j, k, l, m, alp, ccf) |
| This function calculates overlap of a contracted cartesian GTO with a contracted spherical GTO (both sitting on the same nucleus). The exponents of the contracted cartesian GTO are: i,j,k. The L,M values of the spherical GTO are: l,m. The exponents and contraction coefficients of the primitives are in the arrays alp(:), ccf(:). More...
|
|
subroutine | gto_routines_gbl::cart_cf_sph_cf (l, ix, iy, iz, alp, ccf, sph_cgto_norm, cart_cf, sph_cf) |
| This routine performs the conversion of the orbital coefficients (for one shell) for the cartesian contracted GTOs to the basis of contracted spherical GTOs. The input are the data for the cartesian GTOs (l,ix,iy,iz,alp,ccf) and the corresponding orbital coefficients (cart_cf) and the overall norm of the spherical contracted GTO (sph_cgto_norm). It is assumed that the coefficients correspond to normalized contracted cartesian GTOs. The output are the orbital coefficients sph_cf for the corresponding shell of contracted spherical GTOs with the overall norm given by sph_cgto_norm. More...
|
|
subroutine | gto_routines_gbl::sph_cf_cart_cf (l, ix, iy, iz, alp, ccf, sph_cgto_norm, sph_cf, cart_cf) |
| This routine performs the conversion of the orbital coefficients (for one shell) for the spherical contracted GTOs to the basis of contracted cartesian GTOs. The input are the data for the cartesian GTOs (l,ix,iy,iz,alp,ccf) and the orbital coefficients for the spherical GTOs (sph_cf). It is assumed that the coefficients correspond to contracted spherical GTOs normalized with sph_cgto_norm. The output are the orbital coefficients cart_cf for the corresponding shell of normalized contracted cartesian GTOs. More...
|
|
real(kind=cfp) function | gto_routines_gbl::cms_gto_norm (rmat_radius, l, np, alp, ccf, cnorm, norms) |
| Computes the normalization factor for a CMS-centered contracted spherical GTO and radius given by rmat_radius. This is computed from the self-overlap of the GTO inside the sphere of radius rmat_radius. More...
|
|
real(kind=cfp) function | gto_routines_gbl::CGTO_amplitude (r, l, number_of_primitives, norm, norms, contractions, exponents) |
| Calculates the reduced boundary amplitude of a CGTO shell. More...
|
|
subroutine | gto_routines_gbl::olap_kei_tail (l, np_a, np_b, alp_a, alp_b, ccf_a, ccf_b, cnorm_a, norms_a, cnorm_b, norms_b, rmat_radius, olap_tail, kei_tail, bloch_ab) |
| Overlap and kinetic energy tail integrals for the normalized contracted spherical GTOs centered on the CMS. These integrals are given by: More...
|
|
subroutine | gto_routines_gbl::prop_cms_tail (l_c, l_a, l_b, np_a, np_b, alp_a, alp_b, ccf_a, ccf_b, cnorm_a, norms_a, cnorm_b, norms_b, rmat_radius, prop_tail) |
| Multipole property tail integrals for a pair of shells of contracted spherical GTOs centered on the CMS. We assume that the multipole is centered on CMS just like the two GTO shells. More...
|
|
subroutine | gto_routines_gbl::nari_tail (xc, yc, zc, l_a, l_b, np_a, np_b, alp_a, alp_b, ccf_a, ccf_b, cnorm_a, norms_a, cnorm_b, norms_b, rmat_radius, na_tail) |
| Calculates nuclear attraction tail integrals for a pair of shells of spherical CGTOs centered on the CMS. More...
|
|
subroutine | gto_routines_gbl::eri_tail (tgt_prop, tgt_pair, l_a_tgt, l_b_tgt, l_a, l_b, np_a, np_b, alp_a, alp_b, ccf_a, ccf_b, norms_a, norms_b, rmat_radius, swap_ab_cd, eri_tail_int) |
| Calculates 2-electron tail integrals for 1 electron in the continuum for a pair of shells of spherical CGTOs centered on the CMS and a pair of shells of target CGTOs. This is the driver routine for eri_tail_shell. This routine ensures that the parameters are passed to eri_tail_shell in such an order to ensure that the tail integrals on output are ordered in the same way as the integrals calculated by eri. This allows for easy subtraction of the tails. l_a_tgt,l_b_tgt are angular momenta in the pair of shells of target CGTOs, tgt_prop and tgt_pair specify the property integrals for the pair of shells of the target CGTOs. The rest of the input parameters are related to the continuum and the R-matrix radius. More...
|
|
subroutine | gto_routines_gbl::eri_tail_shell (tgt_prop, tgt_pair, l_a_tgt, l_b_tgt, l_a, l_b, np_a, np_b, alp_a, alp_b, ccf_a, ccf_b, norms_a, norms_b, rmat_radius, swap_ab_cd, eri_tail_int) |
| Calculates 2-electron tail integrals for 1 electron in the continuum for a pair of shells of spherical CGTOs centered on the CMS and a pair of shells of target CGTOs. More...
|
|
subroutine | gto_routines_gbl::abcd_to_cdab (batch_in, batch_t, na, nb, nc, nd) |
| This routine takes on input the batch of integrals [ab|cd] with dimensions given by na,nb,nc,nd and returns in batch_t the transposed batch [cd|ab]. Note that this procedure is equivalent to transposition of a matrix M with dimensions na*nb,nc*nd. More...
|
|
integer function | gto_routines_gbl::check_real_array_size (a, d) |
| Takes on input the linear array 'a' and the dimension 'd' which the array should AT LEAST have, i.e. not exactly. If the array is smaller it is reallocated (loosing its contents) to the size 'd'. More...
|
|
subroutine | gto_routines_gbl::index_1el (la, lb, ind_a, ind_b, np, int_index) |
| Calculates indices of 1-electron integrals output in the linear arrays from the integral routines given the starting indices of functions in the a and b shells. ind_a corresponds to the function with m=-la, same for ind_b. We assume that indices of the rest of the functions in the shell are sequential. The indices for each integral are reordered in such a way that the index of the a function is always .ge. index of the b function. Since the 1-electron integrals are symmetrical there is no problem. The number np denotes the number of passive indices which don't enter the ordering, i.e. we think of the integral batch as being a 3d array (2*la+1,2*lb+1,np). The third dimension useded to be used in the ordering of the multipole moment integrals where the first two dimensions run over the GTOs A,B and the third dimension over the components of the multipole moments. The requirement to index all multipole integrals separately has been dropped so this option is effectively not being used in the whole library. More...
|
|
subroutine | gto_routines_gbl::index_2el (la, lb, lc, ld, ind_a, ind_b, ind_c, ind_d, int_index, keep_ab_cd_order, swap_ab_cd) |
| Calculates indices corresponding to the 2-electron integrals (ab|cd) in the linear array sph_ints (calculated by the routine eri_shell) given the starting indices of the functions in the a,b,c,d shells. ind_a must correspond to the function with m=-la, same for the b,c,d shells. We assume that indices of the rest of the functions in each shell are sequential. The indices of the functions are ordered, exploiting the permutational symmetry of the (ab|cd) integrals, so that: If keep_ab_cd_order .eq. .false. then the input variable swap_ab_cd is ignored and: ind_a .ge. ind_b, ind_c .ge. ind_d, ind_a+ind_b .ge. ind_c+ind_d, ind_a .ge. ind_c. This order of the functions is needed for the integral indexing scheme. If keep_ab_cd_order .eq. .true.: indices of the pairs of shells (ab|, |cd) are swapped or not depending on the value of the logical variable swap_ab_cd. Within the (ab| and |cd) shells the indices are ordered so that a.ge.b, c.ge.d. More...
|
|
subroutine | gto_routines_gbl::index_2el_drv (la, lb, lc, ld, ind_a, ind_b, ind_c, ind_d, ind, keep_ab_cd_order) |
| Orders the shells according to the angular momentum in the same way it is done in eri and then computes the indices for each quartet of (ab|cd) integrals. See index_2el for description of the ordering option given by the input variable keep_ab_cd_order. More...
|
|
subroutine | gto_routines_gbl::find_mapping (ind_orig, n, n_map, map) |
| Determine the mapping of indices ind_a,ind_b,ind_c,ind_d in the array ind_orig so that ind_ap.ge.ind_bp, ind_cp.ge.ind_dp, ind_ap.ge.ind_cp. More...
|
|
subroutine | gto_routines_gbl::reorder_and_index_2el (la, lb, lc, ld, ind_a, ind_b, ind_c, ind_d, column, ind, ints) |
| Reorder the integrals ints in columns a,b,c,d so that ap.ge.bp,cp.ge.dp,ap.ge.cp. The input values are the angular momenta and the starting indices in columns 1,2,3,4 of the ints and ind arrays. On output the indices in ind(1:4,i) are not ordered from the largest to the smallest as the original ones (a.ge.b,c.ge.d,a.ge.c) but that's OK since they're not needed to save the integrals in the MPI mode when this routine is used. More...
|
|
pure integer function | gto_routines_gbl::index_1p_continuum (ordered_pairs, ind1, ind2, ind3, ind4, is_CCTT, last_CT, n_prec, n_TT_pairs) |
| This is an index for two-electron integral keeping only 1p in the continuum. It works also for 2p in the continuum in which case is_CCTT must be set to .false. More...
|
|
subroutine | gto_routines_gbl::normalize_cgto (number_of_primitives, l, exponents, contractions, norms, norm) |
|
integer function | gto_routines_gbl::check_cgto_data (number_of_primitives, l, exponents, contractions, norms, number_of_functions) |
|
subroutine | gto_routines_gbl::read_cgto (number_of_primitives, l, exponents, contractions, norms, norm, center, non_zero_at_boundary, number_of_functions, lunit, posit, pos_after_rw) |
|
subroutine | gto_routines_gbl::write_cgto (number_of_primitives, l, exponents, contractions, norms, norm, center, non_zero_at_boundary, number_of_functions, lunit, posit, pos_after_rw) |
|
subroutine | gto_routines_gbl::print_cgto_data (number_of_primitives, l, exponents, contractions, norms, norm, center, non_zero_at_boundary) |
|
subroutine | gto_routines_gbl::eval_cgto (r, n_points, number_of_primitives, l, exponents, contractions, norms, norm, center, eval_CGTO_shell) |
|
subroutine | gto_routines_gbl::compare_print_1el_ints (tag, integrals_1, int_index_1, integrals_2, int_index_2, n_integrals, column) |
| Only for debugging. More...
|
|
subroutine | gto_routines_gbl::compare_print_2el_ints (tag, integrals_1, int_index_1, integrals_2, int_index_2, n_integrals, column) |
| Only for debugging. More...
|
|