![]() |
(git:b77b4be)
|
Routines for computing excitonic properties, e.g. exciton diameter, from the BSE. More...
Data Types | |
type | exciton_descr_type |
Functions/Subroutines | |
subroutine, public | get_oscillator_strengths (fm_eigvec_x, exc_ens, fm_dipole_ai_trunc, trans_mom_bse, oscill_str, polarizability_residues, mp2_env, homo_red, virtual_red, unit_nr, fm_eigvec_y) |
Compute and return BSE dipoles d_r^n = sqrt(2) sum_ia < ψ_i | r | ψ_a > ( X_ia^n + Y_ia^n ) and oscillator strengths f^n = 2/3 * Ω^n sum_r∈(x,y,z) ( d_r^n )^2 Prelim Ref.: Eqs. (23), (24) in J. Chem. Phys. 152, 044105 (2020); https://doi.org/10.1063/1.5123290. | |
subroutine, public | compute_absorption_spectrum (oscill_str, polarizability_residues, exc_ens, info_approximation, unit_nr, mp2_env) |
Computes and returns absorption spectrum for the frequency range and broadening provided by the user. Prelim Ref.: C. Ullrich, Time-Dependent Density-Functional Theory: Concepts and Applications (Oxford University Press, Oxford, 2012), Eq. 7.51. | |
subroutine, public | calculate_ntos (fm_x, fm_y, mo_coeff, homo, virtual, info_approximation, oscill_str, qs_env, unit_nr, mp2_env) |
... | |
subroutine, public | get_exciton_descriptors (exc_descr, fm_x_ia, fm_multipole_ij_trunc, fm_multipole_ab_trunc, fm_multipole_ai_trunc, i_exc, homo, virtual, fm_y_ia) |
... | |
Routines for computing excitonic properties, e.g. exciton diameter, from the BSE.
subroutine, public bse_properties::get_oscillator_strengths | ( | type(cp_fm_type), intent(in) | fm_eigvec_x, |
real(kind=dp), dimension(:), intent(in), allocatable | exc_ens, | ||
type(cp_fm_type), dimension(3) | fm_dipole_ai_trunc, | ||
real(kind=dp), dimension(:, :, :), intent(out), allocatable | trans_mom_bse, | ||
real(kind=dp), dimension(:), intent(out), allocatable | oscill_str, | ||
real(kind=dp), dimension(:, :, :), intent(out), allocatable | polarizability_residues, | ||
type(mp2_type), intent(in) | mp2_env, | ||
integer, intent(in) | homo_red, | ||
integer, intent(in) | virtual_red, | ||
integer, intent(in) | unit_nr, | ||
type(cp_fm_type), intent(in), optional | fm_eigvec_y | ||
) |
Compute and return BSE dipoles d_r^n = sqrt(2) sum_ia < ψ_i | r | ψ_a > ( X_ia^n + Y_ia^n ) and oscillator strengths f^n = 2/3 * Ω^n sum_r∈(x,y,z) ( d_r^n )^2 Prelim Ref.: Eqs. (23), (24) in J. Chem. Phys. 152, 044105 (2020); https://doi.org/10.1063/1.5123290.
fm_eigvec_X | ... |
Exc_ens | ... |
fm_dipole_ai_trunc | ... |
trans_mom_bse | BSE dipole vectors in real space per excitation level |
oscill_str | Oscillator strength per excitation level |
polarizability_residues | Residues of polarizability ("tensorial oscillator strength") per excitation level |
mp2_env | ... |
homo_red | ... |
virtual_red | ... |
unit_nr | ... |
fm_eigvec_Y | ... |
Definition at line 106 of file bse_properties.F.
subroutine, public bse_properties::compute_absorption_spectrum | ( | real(kind=dp), dimension(:), intent(in), allocatable | oscill_str, |
real(kind=dp), dimension(:, :, :), intent(in), allocatable | polarizability_residues, | ||
real(kind=dp), dimension(:), intent(in), allocatable | exc_ens, | ||
character(len=10) | info_approximation, | ||
integer, intent(in) | unit_nr, | ||
type(mp2_type), intent(inout) | mp2_env | ||
) |
Computes and returns absorption spectrum for the frequency range and broadening provided by the user. Prelim Ref.: C. Ullrich, Time-Dependent Density-Functional Theory: Concepts and Applications (Oxford University Press, Oxford, 2012), Eq. 7.51.
oscill_str | ... |
polarizability_residues | ... |
Exc_ens | ... |
info_approximation | ... |
unit_nr | ... |
mp2_env | ... |
Definition at line 219 of file bse_properties.F.
subroutine, public bse_properties::calculate_ntos | ( | type(cp_fm_type), intent(in) | fm_x, |
type(cp_fm_type), intent(in), optional | fm_y, | ||
type(cp_fm_type), dimension(:), intent(in) | mo_coeff, | ||
integer, intent(in) | homo, | ||
integer, intent(in) | virtual, | ||
character(len=10) | info_approximation, | ||
real(kind=dp), dimension(:), allocatable | oscill_str, | ||
type(qs_environment_type), pointer | qs_env, | ||
integer, intent(in) | unit_nr, | ||
type(mp2_type), intent(inout) | mp2_env | ||
) |
...
fm_X | ... |
fm_Y | ... |
mo_coeff | ... |
homo | ... |
virtual | ... |
info_approximation | ... |
oscill_str | ... |
qs_env | ... |
unit_nr | ... |
mp2_env | ... |
Definition at line 422 of file bse_properties.F.
subroutine, public bse_properties::get_exciton_descriptors | ( | type(exciton_descr_type), dimension(:), allocatable | exc_descr, |
type(cp_fm_type), intent(in) | fm_x_ia, | ||
type(cp_fm_type), dimension(:), intent(in), allocatable | fm_multipole_ij_trunc, | ||
type(cp_fm_type), dimension(:), intent(in), allocatable | fm_multipole_ab_trunc, | ||
type(cp_fm_type), dimension(:), intent(in), allocatable | fm_multipole_ai_trunc, | ||
integer, intent(in) | i_exc, | ||
integer, intent(in) | homo, | ||
integer, intent(in) | virtual, | ||
type(cp_fm_type), intent(in), optional | fm_y_ia | ||
) |
...
exc_descr | Allocated and initialized on exit |
fm_X_ia | ... |
fm_multipole_ij_trunc | ... |
fm_multipole_ab_trunc | ... |
fm_multipole_ai_trunc | ... |
i_exc | ... |
homo | ... |
virtual | ... |
fm_Y_ia | ... |
Definition at line 753 of file bse_properties.F.