Documentation for module lri_integrals

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

source: lri_integrals.F
Loading...

public Types:

dint_type
...
int_type
...

public Subroutines/Functions:

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

public Types:

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:
POINTER
:: lri_env ...
POINTER
:: lrii ...
REAL(dp),
INTENT(in)
:: rab(3) ...
POINTER
:: obasa ...
POINTER
:: obasb ...
POINTER
:: fbasa ...
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:
POINTER
:: lri_env ...
POINTER
:: lrii ...
TYPE(dint_type)
:: lridint ...
REAL(dp),
INTENT(in)
:: rab(3) ...
POINTER
:: obasa ...
POINTER
:: obasb ...
POINTER
:: fbasa ...
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:
POINTER
:: lri_env ...
POINTER
:: lrii ...
REAL(dp),
INTENT(in)
:: rab(3) distance vector
POINTER
:: obasa orb basis on A
POINTER
:: obasb orb basis on B
POINTER
:: fbasa aux basis on A
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:
POINTER
:: lri_env ...
POINTER
:: lrii ...
TYPE(int_type)
:: lriint ...
REAL(dp),
INTENT(in)
:: rab(3) distance vector
POINTER
:: obasa orb basis on A
POINTER
:: obasb orb basis on B
POINTER
:: fbasa aux basis on A
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