CP2K 2.4 (Revision 12889)
Functions | Variables

qs_linres_methods Namespace Reference

localize wavefunctions linear response scf More...

Functions

subroutine, public linres_localize (qs_env, linres_control, nspins, centers_only, error)
 Find the centers and spreads of the wfn, if required apply a localization algorithm.
subroutine, public linres_solver (p_env, qs_env, psi1, h1_psi0, psi0_order, should_stop, error)
 scf loop to optimize the first order wavefunctions (psi1) given a perturbation as an operator applied to the ground state orbitals (h1_psi0)
subroutine apply_op (qs_env, p_env, c0, v, Av, chc, buf, error)
subroutine build_dm_response (c0, c1, dm, error)
subroutine apply_op_1 (v, Av, matrix_ks, matrix_s, chc, buf, error)
subroutine apply_op_2 (qs_env, p_env, c0, v, Av, chc, buf, error)
subroutine p_env_check_i_alloc (p_env, qs_env, error)
subroutine kpp1_check_i_alloc (kpp1_env, qs_env, lr_triplet, error)
subroutine preortho (v, psi0, S_psi0, buf, error)
subroutine postortho (v, psi0, S_psi0, buf, error)
subroutine, public linres_write_restart (qs_env, linres_section, vec, ivec, tag, ind, error)
subroutine, public linres_init_write_restart (linres_section, error)
subroutine, public linres_read_restart (qs_env, linres_section, vec, ivec, tag, ind, error)
subroutine check_p_env_init (p_env, linres_control, nspins, error)

Variables

CHARACTER(len=*), parameter,
private 
moduleN = 'qs_linres_methods'

Detailed Description

localize wavefunctions linear response scf

History
created 07-2005 [MI]
Author:
MI

Function Documentation

subroutine qs_linres_methods::apply_op ( TYPE(qs_environment_type),pointer  qs_env,
TYPE(qs_p_env_type),pointer  p_env,
TYPE(cp_fm_p_type),dimension(:),pointer  c0,
TYPE(cp_fm_p_type),dimension(:),pointer  v,
TYPE(cp_fm_p_type),dimension(:),pointer  Av,
TYPE(cp_fm_p_type),dimension(:),pointer  chc,
TYPE(cp_fm_type),pointer  buf,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Definition at line 640 of file qs_linres_methods.f90.

References apply_op_1(), apply_op_2(), build_dm_response(), cp_dbcsr_interface::cp_dbcsr_checksum(), qs_environment_types::get_qs_env(), p_env_check_i_alloc(), and timings::timeset().

Referenced by linres_solver().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine qs_linres_methods::apply_op_1 ( TYPE(cp_fm_type),pointer  v,
TYPE(cp_fm_type),pointer  Av,
TYPE(cp_dbcsr_type),pointer  matrix_ks,
TYPE(cp_dbcsr_type),pointer  matrix_s,
TYPE(cp_fm_type),pointer  chc,
TYPE(cp_fm_type),pointer  buf,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Definition at line 785 of file qs_linres_methods.f90.

References cp_fm_basic_linalg::cp_fm_gemm(), and timings::timeset().

Referenced by apply_op().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine qs_linres_methods::apply_op_2 ( TYPE(qs_environment_type),pointer  qs_env,
TYPE(qs_p_env_type),pointer  p_env,
TYPE(cp_fm_p_type),dimension(:),pointer  c0,
TYPE(cp_fm_p_type),dimension(:),pointer  v,
TYPE(cp_fm_p_type),dimension(:),pointer  Av,
TYPE(cp_fm_p_type),dimension(:),pointer  chc,
TYPE(cp_fm_type),pointer  buf,
TYPE(cp_error_type),intent(inout)  error 
) [private]
subroutine qs_linres_methods::build_dm_response ( TYPE(cp_fm_p_type),dimension(:),pointer  c0,
TYPE(cp_fm_p_type),dimension(:),pointer  c1,
TYPE(cp_dbcsr_p_type),dimension(:),pointer  dm,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Definition at line 744 of file qs_linres_methods.f90.

Referenced by apply_op().

Here is the caller graph for this function:

subroutine qs_linres_methods::check_p_env_init ( TYPE(qs_p_env_type),pointer  p_env,
TYPE(linres_control_type),pointer  linres_control,
INTEGER,intent(in)  nspins,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Definition at line 1795 of file qs_linres_methods.f90.

Referenced by linres_solver().

Here is the caller graph for this function:

subroutine qs_linres_methods::kpp1_check_i_alloc ( TYPE(qs_kpp1_env_type),pointer  kpp1_env,
TYPE(qs_environment_type),pointer  qs_env,
LOGICAL,intent(in)  lr_triplet,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Definition at line 1268 of file qs_linres_methods.f90.

References CPPostcondition, qs_environment_types::get_qs_env(), pw_env_types::pw_env_get(), pw_pool_types::pw_pool_create_pw(), and qs_rho_types::qs_rho_get().

Referenced by apply_op_2().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine,public qs_linres_methods::linres_init_write_restart ( TYPE(section_vals_type),pointer  linres_section,
TYPE(cp_error_type),intent(inout)  error 
)

Definition at line 1586 of file qs_linres_methods.f90.

References cp_output_handling::cp_p_file, and timings::timeset().

Here is the call graph for this function:

subroutine,public qs_linres_methods::linres_localize ( TYPE(qs_environment_type),pointer  qs_env,
TYPE(linres_control_type),pointer  linres_control,
INTEGER,intent(in)  nspins,
LOGICAL,intent(in),optional  centers_only,
TYPE(cp_error_type),intent(inout)  error 
)

Find the centers and spreads of the wfn, if required apply a localization algorithm.

History
07.2005 created [MI]
Author:
MI

Definition at line 148 of file qs_linres_methods.f90.

References cp_fm_types::cp_fm_create(), cp_fm_vect::cp_fm_vect_dealloc(), input_constants::do_loc_none, qs_mo_types::get_mo_set(), qs_environment_types::get_qs_env(), qs_loc_types::get_qs_loc_env(), qs_loc_utils::loc_write_restart(), machine::m_flush(), and qs_loc_methods::qs_loc_driver().

Referenced by qs_linres_module::linres_calculation(), and qs_linres_module::linres_init().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine,public qs_linres_methods::linres_read_restart ( TYPE(qs_environment_type),pointer  qs_env,
TYPE(section_vals_type),pointer  linres_section,
TYPE(cp_fm_p_type),dimension(:),pointer  vec,
INTEGER,intent(in)  ivec,
CHARACTER(LEN=*)  tag,
INTEGER,intent(inout),optional  ind,
TYPE(cp_error_type),intent(inout)  error 
)

Definition at line 1626 of file qs_linres_methods.f90.

References cp_files::close_file(), CPPostcondition, qs_mo_types::get_mo_set(), qs_environment_types::get_qs_env(), termination::stop_program(), timings::timeset(), and string_utilities::xstring().

Referenced by qs_linres_current_utils::current_response().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine,public qs_linres_methods::linres_solver ( TYPE(qs_p_env_type),pointer  p_env,
TYPE(qs_environment_type),pointer  qs_env,
TYPE(cp_fm_p_type),dimension(:),pointer  psi1,
TYPE(cp_fm_p_type),dimension(:),pointer  h1_psi0,
TYPE(cp_fm_p_type),dimension(:),pointer  psi0_order,
LOGICAL,intent(out)  should_stop,
TYPE(cp_error_type),intent(inout)  error 
)

scf loop to optimize the first order wavefunctions (psi1) given a perturbation as an operator applied to the ground state orbitals (h1_psi0)

History
07.2005 created [MI]
Author:
MI

Definition at line 255 of file qs_linres_methods.f90.

References apply_op(), check_p_env_init(), cp_fm_types::cp_fm_create(), cp_fm_basic_linalg::cp_fm_gemm(), cp_fm_struct::cp_fm_struct_create(), cp_external_control::external_control(), qs_mo_types::get_mo_set(), qs_environment_types::get_qs_env(), machine::m_flush(), dbcsr_machine::m_walltime(), postortho(), preortho(), termination::stop_program(), and timings::timeset().

Referenced by qs_linres_issc_utils::issc_response().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine,public qs_linres_methods::linres_write_restart ( TYPE(qs_environment_type),pointer  qs_env,
TYPE(section_vals_type),pointer  linres_section,
TYPE(cp_fm_p_type),dimension(:),pointer  vec,
INTEGER,intent(in)  ivec,
CHARACTER(LEN=*)  tag,
INTEGER,intent(in),optional  ind,
TYPE(cp_error_type),intent(inout)  error 
)

Definition at line 1467 of file qs_linres_methods.f90.

References cp_output_handling::cp_p_file, CPPostcondition, qs_mo_types::get_mo_set(), qs_environment_types::get_qs_env(), and timings::timeset().

Here is the call graph for this function:

subroutine qs_linres_methods::p_env_check_i_alloc ( TYPE(qs_p_env_type),pointer  p_env,
TYPE(qs_environment_type),pointer  qs_env,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Definition at line 1209 of file qs_linres_methods.f90.

References qs_environment_types::get_qs_env(), qs_rho_methods::qs_rho_rebuild(), and timings::timeset().

Referenced by apply_op().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine qs_linres_methods::postortho ( TYPE(cp_fm_p_type),dimension(:),pointer  v,
TYPE(cp_fm_p_type),dimension(:),pointer  psi0,
TYPE(cp_fm_p_type),dimension(:),pointer  S_psi0,
TYPE(cp_fm_type),pointer  buf,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Definition at line 1420 of file qs_linres_methods.f90.

References cp_fm_basic_linalg::cp_fm_gemm(), and timings::timeset().

Referenced by linres_solver().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine qs_linres_methods::preortho ( TYPE(cp_fm_p_type),dimension(:),pointer  v,
TYPE(cp_fm_p_type),dimension(:),pointer  psi0,
TYPE(cp_fm_p_type),dimension(:),pointer  S_psi0,
TYPE(cp_fm_type),pointer  buf,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Definition at line 1370 of file qs_linres_methods.f90.

References cp_fm_basic_linalg::cp_fm_gemm(), and timings::timeset().

Referenced by linres_solver().

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

CHARACTER(len=*),parameter,private qs_linres_methods::moduleN = 'qs_linres_methods'

Definition at line 137 of file qs_linres_methods.f90.