![]() |
(git:f2099e5)
|
Interface to the Greenx library. More...
Functions/Subroutines | |
| subroutine, public | greenx_get_minimax_grid (unit_nr, num_integ_points, emin, emax, regularization_minimax, imaginary_time, time_weights_at_zero_frequency, frequency, frequency_weights, cosine_time_to_frequency_weights, cosine_frequency_to_time_weights, sine_time_to_frequency_weights, ierr) |
| Get a minimax grid from GreenX when it is available. | |
| 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. | |
Interface to the Greenx library.
| 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), intent(in) | regularization_minimax, | ||
| real(kind=dp), dimension(:), intent(out), allocatable | imaginary_time, | ||
| real(kind=dp), dimension(:), intent(out), allocatable | time_weights_at_zero_frequency, | ||
| real(kind=dp), dimension(:), intent(out), allocatable | frequency, | ||
| real(kind=dp), dimension(:), intent(out), allocatable | frequency_weights, | ||
| real(kind=dp), dimension(:, :), intent(out), allocatable | cosine_time_to_frequency_weights, | ||
| real(kind=dp), dimension(:, :), intent(out), allocatable | cosine_frequency_to_time_weights, | ||
| real(kind=dp), dimension(:, :), intent(out), allocatable | sine_time_to_frequency_weights, | ||
| integer, intent(out) | ierr ) |
Get a minimax grid from GreenX when it is available.
| unit_nr | Output unit for diagnostics. |
| num_integ_points | Number of minimax points. |
| emin | Lower energy bound. |
| emax | Upper energy bound. |
| regularization_minimax | Regularization of the minimax fit. |
| imaginary_time | Imaginary-time grid points. |
| time_weights_at_zero_frequency | Imaginary-time weights. |
| frequency | Frequency grid points. |
| frequency_weights | Frequency weights. |
| cosine_time_to_frequency_weights | Cosine time-to-frequency weights. |
| cosine_frequency_to_time_weights | Cosine frequency-to-time weights. |
| sine_time_to_frequency_weights | Sine time-to-frequency weights. |
| ierr | Zero if GreenX supplied a grid, nonzero otherwise. |
Definition at line 62 of file greenx_interface.F.
| 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.
| 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 150 of file greenx_interface.F.
| 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.
| logger | ... |
| pol_section | ... |
| bse_unit | ... |
| pol_elements | ... |
| x_eval | ... |
| polarizability_refined | ... |
Definition at line 221 of file greenx_interface.F.
| 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.
| fit_e_min | ... |
| fit_e_max | ... |
| x_fit | Input x-variables |
| y_fit | Input y-variables |
| x_eval | Refined x-variables |
| y_eval | Refined y-variables |
| n_pade_opt | ... |
Definition at line 295 of file greenx_interface.F.