Multidip  1.0
Multi-photon matrix elements
multidip_integ Module Reference

Special integrals needed by MULTIDIP. More...

Functions/Subroutines

complex(wp) function nested_exp_integ (a, c, N, m, s, k)
 Multi-dimensional triangular integral of exponentials and powers. More...
 
complex(wp) function nested_coul_integ (a, c, N, m, s, l, k)
 Multi-dimensional triangular integral of Coulomb-Hankel functions and powers. More...
 
complex(wp) function nested_cgreen_integ (a, c, N, sa, sb, m, l, k)
 Multi-dimensional integral of Coulomb-Hankel and Coulomb-Green functions and powers. More...
 

Detailed Description

Special integrals needed by MULTIDIP.

Author
J Benda
Date
2020

Module containing routines for calculation of the multi-dimensional dipole integrals used in outer correction of transition dipole elements in MULTIDIP.

Function/Subroutine Documentation

◆ nested_cgreen_integ()

complex(wp) function multidip_integ::nested_cgreen_integ ( real(wp), intent(in)  a,
real(wp), intent(in)  c,
integer, intent(in)  N,
integer, intent(in)  sa,
integer, intent(in)  sb,
integer, dimension(:), intent(in)  m,
integer, dimension(:), intent(in)  l,
complex(wp), dimension(:), intent(in)  k 
)

Multi-dimensional integral of Coulomb-Hankel and Coulomb-Green functions and powers.

Author
J Benda
Date
2020

Evaluate the many-dimensional integral

\[ \int\limits_a^{+\infty} \dots \int\limits_a^{+\infty} H_N(r_N) \dots g_3(r_3, r_2) r_2^{m_2} g_2(r_2, r_1) r_1^{m_1} H_1(r_1) \mathrm{d}r_1 \dots \]

using the asymptotic form of Coulomb-Hankel functions. The arrays passed to this function need to be ordered from the right-most integral to the right. This function iterates over all possible orderings of \( (r_1, r_2, \dots, r_N) \) and for each of these it splits the integral into (hyper-)triangular integrals and integrates those using nested_coul_integ.

Parameters
aLower bound
cDamping factor (additional exp(-c*r) added to all r^m functions)
NDimension (number of integration variables)
saSign of the right-most Coulomb-Hankel function
sbSign of the left-most Coulomb-Hankel function
mArray of integer powers of length N
lArray of angular momenta of length N + 1
kArray of linear momenta of length N + 1

Definition at line 331 of file multidip_integ.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nested_coul_integ()

complex(wp) function multidip_integ::nested_coul_integ ( real(wp), intent(in)  a,
real(wp), intent(in)  c,
integer, intent(in)  N,
integer, dimension(1:n), intent(in)  m,
integer, dimension(1:2*n), intent(in)  s,
integer, dimension(1:2*n), intent(in)  l,
complex(wp), dimension(1:2*n), intent(in)  k 
)

Multi-dimensional triangular integral of Coulomb-Hankel functions and powers.

Author
J Benda
Date
2020

Evaluate the nested many-dimensional triangular integral

\[ \int\limits_a^{+\infty} \dots \int\limits_{r_3}^{+\infty} H_4(r_2) r_2^{m_2} H_3(r_2) \int\limits_{r_2}^{+\infty} H_2(r_1) r_1^{m_1} H_1(r_1) \mathrm{d}r_1 \mathrm{d}r_2 \mathrm{d}r_3 \dots \]

using the asymptotic form of Coulomb-Hankel functions. The arrays passed to this function need to be ordered from the inner-most (right-most) integral outward. For each term, use nested_exp_integ.

Parameters
aLower bound
cDamping factor (additional exp(-c*r) added to all r^m functions)
NDimension (number of integration variables)
mArray of integer powers of length N
sArray of integer signs (+1 or -1) in exponents of length 2*N
lArray of angular momenta of length 2*N
kArray of linear momenta of length 2*N

Definition at line 224 of file multidip_integ.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nested_exp_integ()

complex(wp) function multidip_integ::nested_exp_integ ( real(wp), intent(in)  a,
real(wp), intent(in)  c,
integer, intent(in)  N,
integer, dimension(0:n-1), intent(in)  m,
integer, dimension(0:2*n-1), intent(in)  s,
complex(wp), dimension(0:2*n-1), intent(in)  k 
)

Multi-dimensional triangular integral of exponentials and powers.

Author
J Benda
Date
2020

Evaluate the nested many-dimensional triangular integral

\[ \int\limits_a^{+\infty} \dots \int\limits_{r_3}^{+\infty} \mathrm{e}^{\mathrm{i}s_4 \theta_4(r_2)} r_2^{m_2} \mathrm{e}^{\mathrm{i}s_3 \theta_3(r_2)} \int\limits_{r_2}^{+\infty} \mathrm{e}^{\mathrm{i}s_2 \theta_2(r_1)} r_1^{m_1} \mathrm{e}^{\mathrm{i}s_1 \theta_1(r_1)} \mathrm{d}r_1 \mathrm{d}r_2 \mathrm{d}r_3 \dots \]

where

\[ \theta_1(r_1) = k_1 r + \log(2 k_1 r)/k_1 - \pi l_1/2 + \sigma_{l_1}(k_1) \]

is the asymptotic phase of a Coulomb function. The arrays passed to this function need to be ordered from the inner-most (right-most) integral outward. The function result does not contain the overall phase and damp factor, which needs to be added manually.

Parameters
aLower bound
cDamping factor (additional exp(-c*r) added to all r^m functions)
NDimension (number of integration variables)
mArray of integer powers of length N
sArray of integer signs (+1 or -1) in exponents of length 2*N
kArray of linear momenta of length 2*N

Definition at line 66 of file multidip_integ.f90.

Here is the caller graph for this function: