(git:6a2e663)
qs_tddfpt2_utils Module Reference

Functions/Subroutines

subroutine, public tddfpt_init_mos (qs_env, gs_mos, iounit)
 Prepare MOs for TDDFPT Calculations. More...
 
subroutine, public tddfpt_init_ground_state_mos (gs_mos, mo_set, nlumo, blacs_env, cholesky_method, matrix_ks, matrix_s, mos_virt, evals_virt, qs_env)
 Generate all virtual molecular orbitals for a given spin by diagonalising the corresponding Kohn-Sham matrix. More...
 
subroutine, public tddfpt_release_ground_state_mos (gs_mos)
 Release molecular orbitals. More...
 
subroutine, public tddfpt_oecorr (qs_env, gs_mos, matrix_ks_oep)
 Callculate orbital corrected KS matrix for TDDFPT. More...
 
pure integer(kind=int_8) function, public tddfpt_total_number_of_states (gs_mos)
 Compute the number of possible singly excited states (occ -> virt) More...
 
subroutine, public tddfpt_guess_vectors (evects, evals, gs_mos, log_unit)
 Generate missed guess vectors. More...
 

Function/Subroutine Documentation

◆ tddfpt_init_mos()

subroutine, public qs_tddfpt2_utils::tddfpt_init_mos ( type(qs_environment_type), pointer  qs_env,
type(tddfpt_ground_state_mos), dimension(:), pointer  gs_mos,
integer, intent(in)  iounit 
)

Prepare MOs for TDDFPT Calculations.

Parameters
qs_envQuickstep environment
gs_mos...
iounit...

Definition at line 99 of file qs_tddfpt2_utils.F.

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

◆ tddfpt_init_ground_state_mos()

subroutine, public qs_tddfpt2_utils::tddfpt_init_ground_state_mos ( type(tddfpt_ground_state_mos)  gs_mos,
type(mo_set_type), intent(in)  mo_set,
integer, intent(in)  nlumo,
type(cp_blacs_env_type), pointer  blacs_env,
integer, intent(in)  cholesky_method,
type(dbcsr_type), pointer  matrix_ks,
type(dbcsr_type), pointer  matrix_s,
type(cp_fm_type), intent(in), pointer  mos_virt,
real(kind=dp), dimension(:), pointer  evals_virt,
type(qs_environment_type), intent(in), pointer  qs_env 
)

Generate all virtual molecular orbitals for a given spin by diagonalising the corresponding Kohn-Sham matrix.

Parameters
gs_mosstructure to store occupied and virtual molecular orbitals (allocated and initialised on exit)
mo_setground state molecular orbitals for a given spin
nlumonumber of unoccupied states to consider (-1 means all states)
blacs_envBLACS parallel environment
cholesky_methodCholesky method to compute the inverse overlap matrix
matrix_ksKohn-Sham matrix for a given spin
matrix_soverlap matrix
mos_virtprecomputed (OT) expansion coefficients of virtual molecular orbitals (in addition to the ADDED_MOS, if present). NULL when no OT is in use.
evals_virtorbital energies of precomputed (OT) virtual molecular orbitals. NULL when no OT is in use.
qs_env...
History
  • 05.2016 created as tddfpt_lumos() [Sergey Chulkov]
  • 06.2016 renamed, altered prototype [Sergey Chulkov]
  • 04.2019 limit the number of unoccupied states, orbital energy correction [Sergey Chulkov]

Definition at line 235 of file qs_tddfpt2_utils.F.

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

◆ tddfpt_release_ground_state_mos()

subroutine, public qs_tddfpt2_utils::tddfpt_release_ground_state_mos ( type(tddfpt_ground_state_mos), intent(inout)  gs_mos)

Release molecular orbitals.

Parameters
gs_mosstructure that holds occupied and virtual molecular orbitals
History
  • 06.2016 created [Sergey Chulkov]

Definition at line 546 of file qs_tddfpt2_utils.F.

Here is the caller graph for this function:

◆ tddfpt_oecorr()

subroutine, public qs_tddfpt2_utils::tddfpt_oecorr ( type(qs_environment_type), pointer  qs_env,
type(tddfpt_ground_state_mos), dimension(:), pointer  gs_mos,
type(dbcsr_p_type), dimension(:), pointer  matrix_ks_oep 
)

Callculate orbital corrected KS matrix for TDDFPT.

Parameters
qs_envQuickstep environment
gs_mos...
matrix_ks_oep...

Definition at line 591 of file qs_tddfpt2_utils.F.

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

◆ tddfpt_total_number_of_states()

pure integer(kind=int_8) function, public qs_tddfpt2_utils::tddfpt_total_number_of_states ( type(tddfpt_ground_state_mos), dimension(:), intent(in)  gs_mos)

Compute the number of possible singly excited states (occ -> virt)

Parameters
gs_mosoccupied and virtual molecular orbitals optimised for the ground state
Returns
the number of possible single excitations
History
  • 01.2017 created [Sergey Chulkov]

Definition at line 734 of file qs_tddfpt2_utils.F.

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

◆ tddfpt_guess_vectors()

subroutine, public qs_tddfpt2_utils::tddfpt_guess_vectors ( type(cp_fm_type), dimension(:, :), intent(inout)  evects,
real(kind=dp), dimension(:), intent(inout)  evals,
type(tddfpt_ground_state_mos), dimension(size(evects, 1)), intent(in)  gs_mos,
integer, intent(in)  log_unit 
)

Generate missed guess vectors.

Parameters
evectsguess vectors distributed across all processors (initialised on exit)
evalsguessed transition energies (initialised on exit)
gs_mosoccupied and virtual molecular orbitals optimised for the ground state
log_unitoutput unit
History
  • 05.2016 created as tddfpt_guess() [Sergey Chulkov]
  • 06.2016 renamed, altered prototype, supports spin-polarised density [Sergey Chulkov]
  • 01.2017 simplified prototype, do not compute all possible singly-excited states [Sergey Chulkov]
Note

Based on the subroutine co_initial_guess() which was originally created by Thomas Chassaing on 06.2003.

Only not associated guess vectors 'evects(spin, state)matrix' are allocated and initialised; associated vectors assumed to be initialised elsewhere (e.g. using a restart file).

Definition at line 930 of file qs_tddfpt2_utils.F.

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