## Documentation for module lri_integrals

Calculates integrals for LRIGPW method lri : local resolution of the identity

source: lri_integrals.F

dint_type
...
int_type
...

#### public Subroutines/Functions:

...
...
...
...
calcuates the lri integrals using solid harmonic Gaussians
calcuates the lri integrals using solid harmonic Gaussians

#### TYPE :: dint_type^

...

 REAL(dp), DIMENSION(:,:,:), ALLOCATABLE :: dsabint ... REAL(dp), DIMENSION(:,:,:), ALLOCATABLE :: dsooint ... REAL(dp), DIMENSION(:,:,:,:), ALLOCATABLE :: dabaint ... REAL(dp), DIMENSION(:,:,:,:), ALLOCATABLE :: dabbint ...

#### TYPE :: int_type^

...

 REAL(dp), DIMENSION(:,:), ALLOCATABLE :: sabint ... REAL(dp), DIMENSION(:,:), ALLOCATABLE :: sooint ... REAL(dp), DIMENSION(:,:,:), ALLOCATABLE :: abaint ... REAL(dp), DIMENSION(:,:,:), ALLOCATABLE :: abbint ...

#### SUBROUTINEallocate_int_type(lriint, lridint, nba, nbb, nfa, nfb, skip_sab, skip_soo, skip_aba, skip_abb, skip_dsab, skip_dsoo, skip_daba, skip_dabb)^

...

##### Arguments:
 TYPE(int_type), INTENT(inout), OPTIONAL :: lriint ... TYPE(dint_type), INTENT(inout), OPTIONAL :: lridint ... INTEGER, INTENT(in) :: nba ... INTEGER, INTENT(in) :: nbb ... INTEGER, INTENT(in) :: nfa ... INTEGER, INTENT(in) :: nfb ... LOGICAL, INTENT(in), OPTIONAL :: skip_sab ... LOGICAL, INTENT(in), OPTIONAL :: skip_soo ... LOGICAL, INTENT(in), OPTIONAL :: skip_aba ... LOGICAL, INTENT(in), OPTIONAL :: skip_abb ... LOGICAL, INTENT(in), OPTIONAL :: skip_dsab ... LOGICAL, INTENT(in), OPTIONAL :: skip_dsoo ... LOGICAL, INTENT(in), OPTIONAL :: skip_daba ... LOGICAL, INTENT(in), OPTIONAL :: skip_dabb ...

#### SUBROUTINEdeallocate_int_type(lriint, lridint)^

...

##### Arguments:
 TYPE(int_type), INTENT(inout), OPTIONAL :: lriint ... TYPE(dint_type), INTENT(inout), OPTIONAL :: lridint ...

#### SUBROUTINElri_dint(lri_env, lrii, rab, obasa, obasb, fbasa, fbasb, iatom, jatom, ikind, jkind, calculate_forces)^

...

##### Arguments:
 TYPE(lri_environment_type), POINTER :: lri_env ... TYPE(lri_int_type), POINTER :: lrii ... REAL(dp), INTENT(in) :: rab(3) ... TYPE(gto_basis_set_type), POINTER :: obasa ... TYPE(gto_basis_set_type), POINTER :: obasb ... TYPE(gto_basis_set_type), POINTER :: fbasa ... TYPE(gto_basis_set_type), POINTER :: fbasb ... INTEGER, INTENT(in) :: iatom ... INTEGER, INTENT(in) :: jatom ... INTEGER, INTENT(in) :: ikind ... INTEGER, INTENT(in) :: jkind ... LOGICAL, INTENT(in) :: calculate_forces ...

#### SUBROUTINElri_dint2(lri_env, lrii, lridint, rab, obasa, obasb, fbasa, fbasb, iatom, jatom, ikind, jkind)^

...

##### Arguments:
 TYPE(lri_environment_type), POINTER :: lri_env ... TYPE(lri_int_type), POINTER :: lrii ... TYPE(dint_type) :: lridint ... REAL(dp), INTENT(in) :: rab(3) ... TYPE(gto_basis_set_type), POINTER :: obasa ... TYPE(gto_basis_set_type), POINTER :: obasb ... TYPE(gto_basis_set_type), POINTER :: fbasa ... TYPE(gto_basis_set_type), POINTER :: fbasb ... INTEGER, INTENT(in) :: iatom ... INTEGER, INTENT(in) :: jatom ... INTEGER, INTENT(in) :: ikind ... INTEGER, INTENT(in) :: jkind ...

#### SUBROUTINElri_int(lri_env, lrii, rab, obasa, obasb, fbasa, fbasb, iatom, jatom, ikind, jkind, calculate_forces)^

calcuates the lri integrals using solid harmonic Gaussians

##### Arguments:
 TYPE(lri_environment_type), POINTER :: lri_env ... TYPE(lri_int_type), POINTER :: lrii ... REAL(dp), INTENT(in) :: rab(3) distance vector TYPE(gto_basis_set_type), POINTER :: obasa orb basis on A TYPE(gto_basis_set_type), POINTER :: obasb orb basis on B TYPE(gto_basis_set_type), POINTER :: fbasa aux basis on A TYPE(gto_basis_set_type), POINTER :: fbasb aux basis on B INTEGER, INTENT(in) :: iatom index atom A INTEGER, INTENT(in) :: jatom index atom B INTEGER, INTENT(in) :: ikind kind atom A INTEGER, INTENT(in) :: jkind kind atom B LOGICAL, INTENT(in) :: calculate_forces ...

#### SUBROUTINElri_int2(lri_env, lrii, lriint, rab, obasa, obasb, fbasa, fbasb, iatom, jatom, ikind, jkind)^

calcuates the lri integrals using solid harmonic Gaussians

##### Arguments:
 TYPE(lri_environment_type), POINTER :: lri_env ... TYPE(lri_int_type), POINTER :: lrii ... TYPE(int_type) :: lriint ... REAL(dp), INTENT(in) :: rab(3) distance vector TYPE(gto_basis_set_type), POINTER :: obasa orb basis on A TYPE(gto_basis_set_type), POINTER :: obasb orb basis on B TYPE(gto_basis_set_type), POINTER :: fbasa aux basis on A TYPE(gto_basis_set_type), POINTER :: fbasb aux basis on B INTEGER, INTENT(in) :: iatom index atom A INTEGER, INTENT(in) :: jatom index atom B INTEGER, INTENT(in) :: ikind kind atom A INTEGER, INTENT(in) :: jkind kind atom B