![]() |
Octopus
|
This module implements the Casida equations for excited states. More...
This module implements the Casida equations for excited states.
Data Types | |
type | casida_save_pot_t |
type | casida_t |
This class contains all parameters, needed for Casida calculations. More... | |
Functions/Subroutines | |
subroutine, public | casida_run_init () |
subroutine, public | casida_run (system, from_scratch) |
subroutine | casida_run_legacy (sys, fromScratch) |
subroutine | casida_type_init (cas, sys) |
allocates stuff, and constructs the arrays pair_i and pair_j More... | |
subroutine | casida_type_end (cas) |
subroutine | casida_work (sys, cas) |
this subroutine calculates electronic excitation energies using the matrix formulation of M. Petersilka, or of M. Casida More... | |
real(real64) function | casida_matrix_factor (cas, sys) |
subroutine | qcasida_write (cas, namespace) |
character(len=80) pure function | theory_name (cas) |
logical function | isnt_degenerate (cas, st, ia, jb) |
integer function | get_global_row (cas, jb_local) |
integer function | get_global_col (cas, ia_local) |
subroutine | local_indices (cas, ia, jb, on_this_processor, ia_local, jb_local) |
subroutine | doscillator_strengths (cas, mesh, st) |
real(real64) function, dimension(cas%n_pairs) | dks_matrix_elements (cas, st, mesh, dv) |
real(real64) function | dtransition_matrix_element (cas, ia, xx) |
calculate transition matrix elements More... | |
subroutine | dtransition_density (cas, st, mesh, ia, n0I) |
subroutine | dget_transition_densities (cas, sys) |
subroutine | dcasida_get_rho (st, mesh, ii, ia, kk, rho) |
subroutine | dcasida_calc_lr_hmat1 (sys, pert, hvar, lr_hmat1, is_saved, st_start, st_end, ik) |
calculate one-particle matrix elements of perturbation More... | |
subroutine | dcasida_lr_hmat2 (cas, st, lr_hmat1, ik) |
calculate two-particle matrix elements of perturbation More... | |
subroutine | dcasida_get_matrix (cas, namespace, hm, st, ks, gr, matrix, fxc, fxc_grad, fxc_grad_spin, restart_file, is_forces) |
subroutine | dwrite_k_term (cas, mat_val, iunit, ia, jb) |
write matrix element to casida_restart file More... | |
subroutine | dcasida_forces (cas, sys, gr, st) |
subroutine | dcasida_get_lr_hmat1 (cas, sys, iatom, idir, dl_rho, lr_hmat1) |
subroutine | dcasida_solve (cas, sys) |
subroutine | dcasida_write (cas, sys) |
subroutine | dwrite_implied_occupations (cas, iunit, ind) |
subroutine | dwrite_distributed_matrix (cas, matrix, filename) |
real(real64) function | dallreduce_sum (cas, variable) |
subroutine | zoscillator_strengths (cas, mesh, st) |
complex(real64) function, dimension(cas%n_pairs) | zks_matrix_elements (cas, st, mesh, dv) |
complex(real64) function | ztransition_matrix_element (cas, ia, xx) |
calculate transition matrix elements More... | |
subroutine | ztransition_density (cas, st, mesh, ia, n0I) |
subroutine | zget_transition_densities (cas, sys) |
subroutine | zcasida_get_rho (st, mesh, ii, ia, kk, rho) |
subroutine | zcasida_calc_lr_hmat1 (sys, pert, hvar, lr_hmat1, is_saved, st_start, st_end, ik) |
calculate one-particle matrix elements of perturbation More... | |
subroutine | zcasida_lr_hmat2 (cas, st, lr_hmat1, ik) |
calculate two-particle matrix elements of perturbation More... | |
subroutine | zcasida_get_matrix (cas, namespace, hm, st, ks, gr, matrix, fxc, fxc_grad, fxc_grad_spin, restart_file, is_forces) |
subroutine | zwrite_k_term (cas, mat_val, iunit, ia, jb) |
write matrix element to casida_restart file More... | |
subroutine | zcasida_forces (cas, sys, gr, st) |
subroutine | zcasida_get_lr_hmat1 (cas, sys, iatom, idir, dl_rho, lr_hmat1) |
subroutine | zcasida_solve (cas, sys) |
subroutine | zcasida_write (cas, sys) |
subroutine | zwrite_implied_occupations (cas, iunit, ind) |
subroutine | zwrite_distributed_matrix (cas, matrix, filename) |
complex(real64) function | zallreduce_sum (cas, variable) |
Variables | |
integer, parameter | casida_eps_diff = 1 |
integer, parameter | casida_petersilka = 2 |
integer, parameter | casida_tamm_dancoff = 4 |
integer, parameter | casida_variational = 8 |
integer, parameter | casida_casida = 16 |
integer, parameter | solver_elpa = 1 |
integer, parameter | solver_scalapack = 2 |
subroutine, public casida_oct_m::casida_run_init |
Definition at line 291 of file casida.F90.
subroutine, public casida_oct_m::casida_run | ( | class(*), intent(inout) | system, |
logical, intent(in) | from_scratch | ||
) |
Definition at line 320 of file casida.F90.
|
private |
Definition at line 338 of file casida.F90.
|
private |
allocates stuff, and constructs the arrays pair_i and pair_j
Definition at line 791 of file casida.F90.
|
private |
Definition at line 949 of file casida.F90.
|
private |
this subroutine calculates electronic excitation energies using the matrix formulation of M. Petersilka, or of M. Casida
Definition at line 1004 of file casida.F90.
|
private |
Definition at line 1215 of file casida.F90.
|
private |
Definition at line 1236 of file casida.F90.
|
private |
Definition at line 1274 of file casida.F90.
|
private |
Definition at line 1294 of file casida.F90.
|
private |
Definition at line 1308 of file casida.F90.
|
private |
Definition at line 1322 of file casida.F90.
|
private |
Definition at line 1336 of file casida.F90.
|
private |
Definition at line 1436 of file casida.F90.
|
private |
Definition at line 1572 of file casida.F90.
|
private |
calculate transition matrix elements
Casida: \( \vec{d}_k = \sum_{cv} \vec{d}_{cv} x_{cv} \sqrt{\frac{\epsilon_c - \epsilon_v}{\omega_k}} \) others: \( \vec{d}_k = \sum_{cv} \vec{d}_{cv} x_{cv} \)
[in] | xx | these are KS matrix elements |
Definition at line 1614 of file casida.F90.
|
private |
Definition at line 1652 of file casida.F90.
|
private |
Definition at line 1695 of file casida.F90.
|
private |
Definition at line 1728 of file casida.F90.
|
private |
calculate one-particle matrix elements of perturbation
Definition at line 1765 of file casida.F90.
|
private |
calculate two-particle matrix elements of perturbation
Definition at line 1813 of file casida.F90.
|
private |
calculates the matrix elements <i(p),a(p)|v|j(q),b(q)> and/or <i(p),a(p)|xc|j(q),b(q)>
no need to get rho twice
Definition at line 1849 of file casida.F90.
|
private |
write matrix element to casida_restart file
Definition at line 2327 of file casida.F90.
|
private |
Definition at line 2343 of file casida.F90.
|
private |
Definition at line 2492 of file casida.F90.
|
private |
Definition at line 2604 of file casida.F90.
|
private |
Definition at line 2867 of file casida.F90.
|
private |
Definition at line 3028 of file casida.F90.
|
private |
Definition at line 3067 of file casida.F90.
|
private |
Definition at line 3111 of file casida.F90.
|
private |
Definition at line 3204 of file casida.F90.
|
private |
Definition at line 3340 of file casida.F90.
|
private |
calculate transition matrix elements
Casida: \( \vec{d}_k = \sum_{cv} \vec{d}_{cv} x_{cv} \sqrt{\frac{\epsilon_c - \epsilon_v}{\omega_k}} \) others: \( \vec{d}_k = \sum_{cv} \vec{d}_{cv} x_{cv} \)
[in] | xx | these are KS matrix elements |
Definition at line 3382 of file casida.F90.
|
private |
Definition at line 3420 of file casida.F90.
|
private |
Definition at line 3463 of file casida.F90.
|
private |
Definition at line 3496 of file casida.F90.
|
private |
calculate one-particle matrix elements of perturbation
Definition at line 3533 of file casida.F90.
|
private |
calculate two-particle matrix elements of perturbation
Definition at line 3581 of file casida.F90.
|
private |
calculates the matrix elements <i(p),a(p)|v|j(q),b(q)> and/or <i(p),a(p)|xc|j(q),b(q)>
no need to get rho twice
Definition at line 3617 of file casida.F90.
|
private |
write matrix element to casida_restart file
Definition at line 4095 of file casida.F90.
|
private |
Definition at line 4111 of file casida.F90.
|
private |
Definition at line 4260 of file casida.F90.
|
private |
Definition at line 4372 of file casida.F90.
|
private |
Definition at line 4649 of file casida.F90.
|
private |
Definition at line 4810 of file casida.F90.
|
private |
Definition at line 4849 of file casida.F90.
|
private |
Definition at line 4893 of file casida.F90.
|
private |
Definition at line 190 of file casida.F90.
|
private |
Definition at line 190 of file casida.F90.
|
private |
Definition at line 190 of file casida.F90.
|
private |
Definition at line 190 of file casida.F90.
|
private |
Definition at line 190 of file casida.F90.
|
private |
Definition at line 197 of file casida.F90.
|
private |
Definition at line 197 of file casida.F90.