![]() |
(git:d18deda)
|
Functions/Subroutines | |
subroutine, public | fb_fltrmat_build (h_mat, s_mat, atomic_halos, trial_fns, para_env, particle_set, fermi_level, filter_temp, name, filter_mat, tolerance) |
Build the filter matrix, with MPI communications happening at each step. Less efficient on communication, but more efficient on memory usage (compared to fb_fltrmat_build_2) | |
subroutine, public | fb_fltrmat_build_2 (h_mat, s_mat, atomic_halos, trial_fns, para_env, particle_set, fermi_level, filter_temp, name, filter_mat, tolerance) |
Build the filter matrix, with MPI communications grouped together. More effcient on communication, less efficient on memory (compared to fb_fltrmat_build) | |
subroutine, public qs_fb_filter_matrix_methods::fb_fltrmat_build | ( | type(dbcsr_type), pointer | h_mat, |
type(dbcsr_type), pointer | s_mat, | ||
type(fb_atomic_halo_list_obj), intent(in) | atomic_halos, | ||
type(fb_trial_fns_obj), intent(in) | trial_fns, | ||
type(mp_para_env_type), pointer | para_env, | ||
type(particle_type), dimension(:), pointer | particle_set, | ||
real(kind=dp), intent(in) | fermi_level, | ||
real(kind=dp), intent(in) | filter_temp, | ||
character(len=*), intent(in) | name, | ||
type(dbcsr_type), pointer | filter_mat, | ||
real(kind=dp), intent(in) | tolerance | ||
) |
Build the filter matrix, with MPI communications happening at each step. Less efficient on communication, but more efficient on memory usage (compared to fb_fltrmat_build_2)
H_mat | : DBCSR system KS matrix |
S_mat | : DBCSR system overlap matrix |
atomic_halos | : list of all local atomic halos, each halo gives one atomic matrix and contributes to one blk col to the filter matrix |
trial_fns | : the trial functions to be used to shrink the size of the new "filtered" basis |
para_env | : cp2k parallel environment |
particle_set | : set of all particles in the system |
fermi_level | : the fermi level used for defining the filter function, which is a Fermi-Dirac distribution function |
filter_temp | : the filter temperature used for defining the filter function |
name | : name given to the filter matrix |
filter_mat | : DBCSR format filter matrix |
tolerance | : anything less than tolerance is treated as zero |
Definition at line 93 of file qs_fb_filter_matrix_methods.F.
subroutine, public qs_fb_filter_matrix_methods::fb_fltrmat_build_2 | ( | type(dbcsr_type), pointer | h_mat, |
type(dbcsr_type), pointer | s_mat, | ||
type(fb_atomic_halo_list_obj), intent(in) | atomic_halos, | ||
type(fb_trial_fns_obj), intent(in) | trial_fns, | ||
type(mp_para_env_type), pointer | para_env, | ||
type(particle_type), dimension(:), pointer | particle_set, | ||
real(kind=dp), intent(in) | fermi_level, | ||
real(kind=dp), intent(in) | filter_temp, | ||
character(len=*), intent(in) | name, | ||
type(dbcsr_type), pointer | filter_mat, | ||
real(kind=dp), intent(in) | tolerance | ||
) |
Build the filter matrix, with MPI communications grouped together. More effcient on communication, less efficient on memory (compared to fb_fltrmat_build)
H_mat | : DBCSR system KS matrix |
S_mat | : DBCSR system overlap matrix |
atomic_halos | : list of all local atomic halos, each halo gives one atomic matrix and contributes to one blk col to the filter matrix |
trial_fns | : the trial functions to be used to shrink the size of the new "filtered" basis |
para_env | : cp2k parallel environment |
particle_set | : set of all particles in the system |
fermi_level | : the fermi level used for defining the filter function, which is a Fermi-Dirac distribution function |
filter_temp | : the filter temperature used for defining the filter function |
name | : name given to the filter matrix |
filter_mat | : DBCSR format filter matrix |
tolerance | : anything less than tolerance is treated as zero |
Definition at line 252 of file qs_fb_filter_matrix_methods.F.