GBTOlib: library for evaluation of molecular integrals in mixed Gaussian / B-spline basis  111
Data Types | Functions/Subroutines
coupling_obj_gbl Module Reference

Functions/Subroutines

subroutine read_prec_cgaunt (this, path)
 
subroutine precalculate_cgaunt (this, l1m)
 
integer function m2_limit (l1, l2, l3, m2, m3)
 This routine determines the limit on m2 for the Gaunt coefficients which have been stored and also the smallest possible m2 compatible with the symmetries of the given Gaunt coefficient. We don't need to know the value of m1 since that is uniquely determined from: m1 = -m2-m3. This routine is the function b(l1,l2,l3,m3) from the paper of Pinchon (2007). More...
 
subroutine cgaunt_string (gaunt_cf, l_min, l_max, l2, l3, m1, m2, m3)
 Calculates a string of (complex) Gaunt coefficients for the given values of l2,l3,m1,m2,m3. The returned values are l_min,l_max which are the range of allowed l1 values and the array gaunt_cf containing the Gaunt coefficient for each allowed l1, e.g. gaunt_cf(l1) = <l1,m1|l2,m2|l3,m3>. More...
 
subroutine get_l_bounds_rg (l2, l3, m2, m3, l_min, l_max)
 
subroutine precalculate_G_coeff (this, l1m)
 
real(kind=cfp) function G_coeff (this, l1, l2, m1, m2, m3)
 

Function/Subroutine Documentation

◆ cgaunt_string()

subroutine coupling_obj_gbl::cgaunt_string ( real(kind=cfp), dimension(0:), intent(out)  gaunt_cf,
integer, intent(out)  l_min,
integer, intent(out)  l_max,
integer, intent(in)  l2,
integer, intent(in)  l3,
integer, intent(in)  m1,
integer, intent(in)  m2,
integer, intent(in)  m3 
)

Calculates a string of (complex) Gaunt coefficients for the given values of l2,l3,m1,m2,m3. The returned values are l_min,l_max which are the range of allowed l1 values and the array gaunt_cf containing the Gaunt coefficient for each allowed l1, e.g. gaunt_cf(l1) = <l1,m1|l2,m2|l3,m3>.

◆ G_coeff()

real(kind=cfp) function coupling_obj_gbl::G_coeff ( class(couplings_type), intent(in)  this,
integer, intent(in)  l1,
integer, intent(in)  l2,
integer, intent(in)  m1,
integer, intent(in)  m2,
integer, intent(in)  m3 
)

◆ get_l_bounds_rg()

subroutine coupling_obj_gbl::get_l_bounds_rg ( integer, intent(in)  l2,
integer, intent(in)  l3,
integer, intent(in)  m2,
integer, intent(in)  m3,
integer, intent(out)  l_min,
integer, intent(out)  l_max 
)

◆ m2_limit()

integer function coupling_obj_gbl::m2_limit ( integer, intent(in)  l1,
integer, intent(in)  l2,
integer, intent(in)  l3,
integer, intent(inout)  m2,
integer, intent(inout)  m3 
)

This routine determines the limit on m2 for the Gaunt coefficients which have been stored and also the smallest possible m2 compatible with the symmetries of the given Gaunt coefficient. We don't need to know the value of m1 since that is uniquely determined from: m1 = -m2-m3. This routine is the function b(l1,l2,l3,m3) from the paper of Pinchon (2007).

Here is the call graph for this function:

◆ precalculate_cgaunt()

subroutine coupling_obj_gbl::precalculate_cgaunt ( class(couplings_type)  this,
integer, intent(in)  l1m 
)
Parameters
[in]l1mThe limiting value for which the complex Gaunt coefficients will be precalculated. I.e. the last one will be: <l1m l1m|l1m l1m|l1m l1m>.
Here is the call graph for this function:

◆ precalculate_G_coeff()

subroutine coupling_obj_gbl::precalculate_G_coeff ( class(couplings_type)  this,
integer, intent(in)  l1m 
)

◆ read_prec_cgaunt()

subroutine coupling_obj_gbl::read_prec_cgaunt ( class(couplings_type)  this,
character(len=*), intent(in)  path 
)
Here is the call graph for this function: