![]() |
(git:53a46e8)
|
All the kernel specific subroutines for XAS TDP calculations. More...
Functions/Subroutines | |
| subroutine, public | kernel_coulomb_xc (coul_ker, xc_ker, donor_state, xas_tdp_env, xas_tdp_control, qs_env) |
| Computes, if asked for it, the Coulomb and XC kernel matrices, in the usuall matrix format. | |
| subroutine, public | kernel_exchange (ex_ker, donor_state, xas_tdp_env, xas_tdp_control, qs_env) |
| Computes the exact exchange kernel matrix using RI. Returns an array of 2 matrices, which are: 1) the on-diagonal kernel: (ab|I_sigma J_tau) * delta_sigma,tau 2) the off-diagonal spin-conserving kernel: (aJ_sigma|I_tau b) * delta_sigma,tau An internal analysis determines which of the above are computed (can range from 0 to 2),. | |
| subroutine, public | reserve_contraction_blocks (matrices, ri_atom, qs_env) |
| Reserves the blocks in of a dbcsr matrix as needed for RI 3-center contraction (aI|P) | |
| subroutine, public | contract2_ao_to_domo (contr_int, op_type, donor_state, xas_tdp_env, xas_tdp_control, qs_env) |
| Contract the ri 3-center integrals stored in a tensor with repect to the donor MOs coeffs, for a given excited atom k => (aI|k) = sum_b c_Ib (ab|k) | |
| subroutine, public | ri_all_blocks_mm (contr_int, pq) |
| Multiply all the blocks of a contracted RI integral (aI|P) by a matrix of type (P|...|Q) | |
All the kernel specific subroutines for XAS TDP calculations.
| subroutine, public xas_tdp_kernel::kernel_coulomb_xc | ( | type(dbcsr_type), intent(inout) | coul_ker, |
| type(dbcsr_p_type), dimension(:), pointer | xc_ker, | ||
| type(donor_state_type), pointer | donor_state, | ||
| type(xas_tdp_env_type), pointer | xas_tdp_env, | ||
| type(xas_tdp_control_type), pointer | xas_tdp_control, | ||
| type(qs_environment_type), pointer | qs_env | ||
| ) |
Computes, if asked for it, the Coulomb and XC kernel matrices, in the usuall matrix format.
| coul_ker | pointer the the Coulomb kernel matrix (can be void pointer) |
| xc_ker | array of pointer to the different xc kernels (5 of them): 1) the restricted closed-shell singlet kernel 2) the restricted closed-shell triplet kernel 3) the spin-conserving open-shell xc kernel 4) the on-diagonal spin-flip open-shell xc kernel |
| donor_state | ... |
| xas_tdp_env | ... |
| xas_tdp_control | ... |
| qs_env | ... |
Definition at line 80 of file xas_tdp_kernel.F.
| subroutine, public xas_tdp_kernel::kernel_exchange | ( | type(dbcsr_p_type), dimension(:), pointer | ex_ker, |
| type(donor_state_type), pointer | donor_state, | ||
| type(xas_tdp_env_type), pointer | xas_tdp_env, | ||
| type(xas_tdp_control_type), pointer | xas_tdp_control, | ||
| type(qs_environment_type), pointer | qs_env | ||
| ) |
Computes the exact exchange kernel matrix using RI. Returns an array of 2 matrices, which are: 1) the on-diagonal kernel: (ab|I_sigma J_tau) * delta_sigma,tau 2) the off-diagonal spin-conserving kernel: (aJ_sigma|I_tau b) * delta_sigma,tau An internal analysis determines which of the above are computed (can range from 0 to 2),.
| ex_ker | ... |
| donor_state | ... |
| xas_tdp_env | ... |
| xas_tdp_control | ... |
| qs_env | ... |
Definition at line 594 of file xas_tdp_kernel.F.
| subroutine, public xas_tdp_kernel::reserve_contraction_blocks | ( | type(dbcsr_p_type), dimension(:), pointer | matrices, |
| integer, intent(in) | ri_atom, | ||
| type(qs_environment_type), pointer | qs_env | ||
| ) |
Reserves the blocks in of a dbcsr matrix as needed for RI 3-center contraction (aI|P)
| matrices | the matrices for which blocks are reserved |
| ri_atom | the index of the atom on which RI is done (= all coeffs of I are there, and P too) |
| qs_env | ... |
Definition at line 902 of file xas_tdp_kernel.F.
| subroutine, public xas_tdp_kernel::contract2_ao_to_domo | ( | type(dbcsr_p_type), dimension(:), pointer | contr_int, |
| character(len=*), intent(in) | op_type, | ||
| type(donor_state_type), pointer | donor_state, | ||
| type(xas_tdp_env_type), pointer | xas_tdp_env, | ||
| type(xas_tdp_control_type), pointer | xas_tdp_control, | ||
| type(qs_environment_type), pointer | qs_env | ||
| ) |
Contract the ri 3-center integrals stored in a tensor with repect to the donor MOs coeffs, for a given excited atom k => (aI|k) = sum_b c_Ib (ab|k)
| contr_int | the contracted integrals as array of dbcsr matrices |
| op_type | for which operator type we contract (COULOMB or EXCHANGE) |
| donor_state | ... |
| xas_tdp_env | ... |
| xas_tdp_control | ... |
| qs_env | ... |
Definition at line 971 of file xas_tdp_kernel.F.
| subroutine, public xas_tdp_kernel::ri_all_blocks_mm | ( | type(dbcsr_p_type), dimension(:) | contr_int, |
| real(dp), dimension(:, :), intent(in) | pq | ||
| ) |
Multiply all the blocks of a contracted RI integral (aI|P) by a matrix of type (P|...|Q)
| contr_int | the integral array |
| PQ | the smaller matrix to multiply all blocks |
Definition at line 1262 of file xas_tdp_kernel.F.