(git:15c1bfc)
Loading...
Searching...
No Matches
greenx_interface Module Reference

Interface to the Greenx library. More...

Functions/Subroutines

subroutine, public greenx_refine_pade (e_min, e_max, x_eval, number_of_simulation_steps, number_of_pade_points, logger, ft_section, bse_unit, omega_series, ft_full_series)
 Refines Pade approximants using GreenX, skips this step if GreenX is not available.
 
subroutine, public greenx_output_polarizability (logger, pol_section, bse_unit, pol_elements, x_eval, polarizability_refined)
 Outputs the isotropic polarizability tensor element alpha _ ij = mu_i(omega)/E_j(omega), where i and j are provided by the configuration. The tensor element is energy dependent and has real and imaginary parts.
 
subroutine, public greenx_refine_ft (fit_e_min, fit_e_max, x_fit, y_fit, x_eval, y_eval, n_pade_opt)
 Refines the FT grid using Padé approximants.
 
subroutine, public greenx_get_minimax_grid (unit_nr, num_integ_points, emin, emax, tau_tj, tau_wj, regularization_minimax, tj, wj, weights_cos_tf_t_to_w, weights_cos_tf_w_to_t, weights_sin_tf_t_to_w, ierr)
 ...
 

Detailed Description

Interface to the Greenx library.

History
07.2025 Refactored from RPA and BSE modules [Frederick Stein]

Function/Subroutine Documentation

◆ greenx_refine_pade()

subroutine, public greenx_interface::greenx_refine_pade ( real(kind=dp), intent(in)  e_min,
real(kind=dp), intent(in)  e_max,
complex(kind=dp), dimension(:), pointer  x_eval,
integer, intent(in)  number_of_simulation_steps,
integer, intent(in)  number_of_pade_points,
type(cp_logger_type), pointer  logger,
type(section_vals_type), pointer  ft_section,
integer, intent(in)  bse_unit,
real(kind=dp), dimension(number_of_simulation_steps + 2), intent(inout)  omega_series,
real(kind=dp), dimension(6, number_of_simulation_steps + 2), intent(inout)  ft_full_series 
)

Refines Pade approximants using GreenX, skips this step if GreenX is not available.

Parameters
e_min...
e_max...
x_eval...
number_of_simulation_steps...
number_of_pade_points...
logger...
ft_section...
bse_unit...
omega_series...
ft_full_series...

Definition at line 58 of file greenx_interface.F.

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

◆ greenx_output_polarizability()

subroutine, public greenx_interface::greenx_output_polarizability ( type(cp_logger_type), pointer  logger,
type(section_vals_type), pointer  pol_section,
integer, intent(in)  bse_unit,
integer, dimension(:, :), pointer  pol_elements,
complex(kind=dp), dimension(:), pointer  x_eval,
complex(kind=dp), dimension(:, :), intent(in)  polarizability_refined 
)

Outputs the isotropic polarizability tensor element alpha _ ij = mu_i(omega)/E_j(omega), where i and j are provided by the configuration. The tensor element is energy dependent and has real and imaginary parts.

Parameters
logger...
pol_section...
bse_unit...
pol_elements...
x_eval...
polarizability_refined...

Definition at line 129 of file greenx_interface.F.

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

◆ greenx_refine_ft()

subroutine, public greenx_interface::greenx_refine_ft ( real(kind=dp)  fit_e_min,
real(kind=dp)  fit_e_max,
complex(kind=dp), dimension(:)  x_fit,
complex(kind=dp), dimension(:)  y_fit,
complex(kind=dp), dimension(:)  x_eval,
complex(kind=dp), dimension(:)  y_eval,
integer, optional  n_pade_opt 
)

Refines the FT grid using Padé approximants.

Parameters
fit_e_min...
fit_e_max...
x_fitInput x-variables
y_fitInput y-variables
x_evalRefined x-variables
y_evalRefined y-variables
n_pade_opt...

Definition at line 203 of file greenx_interface.F.

Here is the caller graph for this function:

◆ greenx_get_minimax_grid()

subroutine, public greenx_interface::greenx_get_minimax_grid ( integer, intent(in)  unit_nr,
integer, intent(in)  num_integ_points,
real(kind=dp), intent(in)  emin,
real(kind=dp), intent(in)  emax,
real(kind=dp), dimension(:), intent(out), allocatable  tau_tj,
real(kind=dp), dimension(:), intent(out), allocatable  tau_wj,
real(kind=dp), intent(in)  regularization_minimax,
real(kind=dp), dimension(:), intent(inout), allocatable  tj,
real(kind=dp), dimension(:), intent(inout), allocatable  wj,
real(kind=dp), dimension(:, :), intent(out), allocatable  weights_cos_tf_t_to_w,
real(kind=dp), dimension(:, :), intent(out), allocatable  weights_cos_tf_w_to_t,
real(kind=dp), dimension(:, :), intent(out), allocatable  weights_sin_tf_t_to_w,
integer, intent(out)  ierr 
)

...

Parameters
unit_nr...
num_integ_points...
emin...
emax...
tau_tj...
tau_wj...
regularization_minimax...
tj...
wj...
weights_cos_tf_t_to_w...
weights_cos_tf_w_to_t...
weights_sin_tf_t_to_w...
ierr...

Definition at line 286 of file greenx_interface.F.

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