![]() |
(git:33f85d8)
|
Functions/Subroutines | |
subroutine, public | mfp_aat (vcd_env, qs_env) |
... | |
subroutine, public | mfp_build_operator_gauge_dependent (vcd_env, qs_env, alpha) |
... | |
subroutine, public | mfp_build_operator_gauge_independent (vcd_env, qs_env, alpha) |
... | |
subroutine, public | mfp_response (vcd_env, p_env, qs_env, alpha) |
Get the dC/dB using the vcd_envop_dB. | |
subroutine, public | multiply_by_position (matrix, qs_kind_set, particle_set, basis_type, sab_nl, direction, basis_function_nu, gauge_origin) |
Take matrix < mu | ^O^ | nu > and multiply the blocks with the positions of the basis functions. The matrix consists of blocks (iatom, jatom) corresponding to (mu, nu). With basis_function_nu = .TRUE. we have to multiply each block by particle_set(jatom)r(delta) With basis_function_nu = .FALSE. we have to multiply each block by particle_set(iatom)r(delta) | |
subroutine, public qs_mfp::mfp_aat | ( | type(vcd_env_type) | vcd_env, |
type(qs_environment_type), pointer | qs_env | ||
) |
subroutine, public qs_mfp::mfp_build_operator_gauge_dependent | ( | type(vcd_env_type) | vcd_env, |
type(qs_environment_type), pointer | qs_env, | ||
integer | alpha | ||
) |
subroutine, public qs_mfp::mfp_build_operator_gauge_independent | ( | type(vcd_env_type) | vcd_env, |
type(qs_environment_type), pointer | qs_env, | ||
integer | alpha | ||
) |
subroutine, public qs_mfp::mfp_response | ( | type(vcd_env_type) | vcd_env, |
type(qs_p_env_type) | p_env, | ||
type(qs_environment_type), pointer | qs_env, | ||
integer, intent(in) | alpha | ||
) |
subroutine, public qs_mfp::multiply_by_position | ( | type(dbcsr_type) | matrix, |
type(qs_kind_type), dimension(:), pointer | qs_kind_set, | ||
type(particle_type), dimension(:), pointer | particle_set, | ||
character(len=*), intent(in) | basis_type, | ||
type(neighbor_list_set_p_type), dimension(:), pointer | sab_nl, | ||
integer | direction, | ||
logical | basis_function_nu, | ||
real(dp), dimension(3), optional | gauge_origin | ||
) |
Take matrix < mu | ^O^ | nu > and multiply the blocks with the positions of the basis functions. The matrix consists of blocks (iatom, jatom) corresponding to (mu, nu). With basis_function_nu = .TRUE. we have to multiply each block by particle_set(jatom)r(delta) With basis_function_nu = .FALSE. we have to multiply each block by particle_set(iatom)r(delta)
matrix | The matrix we are operating on |
qs_kind_set | Needed to set up the basis_sets |
particle_set | Needed for the coordinates |
basis_type | Needed to set up the basis_sets |
sab_nl | The supplied neighborlist |
direction | The index of the nuclear position we are multiplying by |
basis_function_nu | Determines whether we multiply by R^nu or R^mu |
gauge_origin | The gauge origin, if we do distributed gauge |
Definition at line 1254 of file qs_mfp.F.