|
MPI-SCATCI 2.0
An MPI version of SCATCI
|
Distributed matrix type. More...


Public Member Functions | |
| procedure, public | print print_distributed |
| procedure, public | update_continuum update_continuum_distributed |
| procedure, public | update_pure_L2 update_l2_distributed |
| procedure, public | initialize_struct_self initialize_struct_distributed |
| procedure, public | setup_diag_matrix (this, matrix_size, matrix_type, block_size) |
| procedure, public | construct_self construct_mat_distributed |
| procedure, public | insert_matelem_self insert_matelem_distributed |
| procedure, public | get_matelem_self get_matelem_distributed |
| procedure, public | clear_self clear_distributed |
| procedure, public | destroy_self destroy_distributed |
| procedure, public | finalize_matrix finalize_distributed |
| procedure, public | finalize_matrix_self (this) |
| procedure, public | destroy_matrix (this) |
| procedure, public | clear_matrix (this) |
| procedure, public | insert_into_diag_matrix (this, row, column, coefficient) |
| This inserts an element into the hard storage which is considered the final location before diagonalization It also checks wherther the element exists within the aloowed range and tells us if it was successfully inserted. | |
Public Attributes | |
| type(matrixcache) | temp_cache |
| This cache holds the temprorary matrix values before they are sent to the relevant process. | |
| real(wp) | memory_scale = 0.75_wp |
| integer | continuum_counter |
| integer | l2_counter |
| integer | start_continuum_update |
| integer | start_l2_update |
Private Member Functions | |
| procedure, private | convert_temp_cache_to_array (this, matrix_ij, matrix_coeffs) |
| procedure, private | update_counter (this) |
Distributed matrix type.
Distributed matrix is used for construction of the Hamiltonian in distributed (MPI) mode.
Definition at line 57 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::clear_matrix | ( | class(distributedmatrix) | this | ) |
Definition at line 86 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::clear_self |
Definition at line 81 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::construct_self |
Definition at line 78 of file DistributedMatrix_module.f90.
|
private |
Definition at line 89 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::destroy_matrix | ( | class(distributedmatrix) | this | ) |
Definition at line 85 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::destroy_self |
Definition at line 82 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::finalize_matrix |
Definition at line 83 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::finalize_matrix_self | ( | class(distributedmatrix) | this | ) |
Definition at line 84 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::get_matelem_self |
Definition at line 80 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::initialize_struct_self |
Definition at line 74 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::insert_into_diag_matrix | ( | class(distributedmatrix) | this, |
| integer, intent(in) | row, | ||
| integer, intent(in) | column, | ||
| real(wp), intent(in) | coefficient ) |
This inserts an element into the hard storage which is considered the final location before diagonalization It also checks wherther the element exists within the aloowed range and tells us if it was successfully inserted.
Definition at line 88 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::insert_matelem_self |
Definition at line 79 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::print |
Definition at line 70 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::setup_diag_matrix | ( | class(distributedmatrix) | this, |
| integer, intent(in) | matrix_size, | ||
| integer, intent(in) | matrix_type, | ||
| integer, intent(in) | block_size ) |
Definition at line 76 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::update_continuum |
Definition at line 71 of file DistributedMatrix_module.f90.
|
private |
Definition at line 90 of file DistributedMatrix_module.f90.
| procedure, public DistributedMatrix_module::DistributedMatrix::update_pure_L2 |
Definition at line 72 of file DistributedMatrix_module.f90.
| integer DistributedMatrix_module::DistributedMatrix::continuum_counter |
Definition at line 63 of file DistributedMatrix_module.f90.
| integer DistributedMatrix_module::DistributedMatrix::l2_counter |
Definition at line 64 of file DistributedMatrix_module.f90.
| real(wp) DistributedMatrix_module::DistributedMatrix::memory_scale = 0.75_wp |
Definition at line 61 of file DistributedMatrix_module.f90.
| integer DistributedMatrix_module::DistributedMatrix::start_continuum_update |
Definition at line 65 of file DistributedMatrix_module.f90.
| integer DistributedMatrix_module::DistributedMatrix::start_l2_update |
Definition at line 66 of file DistributedMatrix_module.f90.
| type(matrixcache) DistributedMatrix_module::DistributedMatrix::temp_cache |
This cache holds the temprorary matrix values before they are sent to the relevant process.
Definition at line 59 of file DistributedMatrix_module.f90.