integer,dimension(2)::istartendseg_mm!< starting and ending segments of the matrix subpart which is actually used for the multiplication
!! WARNING: the essential bounds are given by istartend_mm, the segments are used to speed up the code
integer,dimension(2)::istartend_mm!< starting and ending indices of the matrix subpart which is actually used for the multiplication
integer,dimension(2)::istartend_mm_dj!< starting and ending indices of the subchess_matrices (partitioned in disjoint chunks)
!!integer :: ncl_smmm !< number of elements for the compress local after a sparse matrix matrix multiplication
integer::nccomm_smmm!<number of communications required for the compress distributed after a sparse matrix matrix multiplication
integer,dimension(:,:),pointer::luccomm_smmm!<lookup array for the communications required for the compress distributed after a sparse matrix matrix multiplication
integer::nvctrp!< number of compressed matrix elements per MPI task
integer::isvctr!< starting entry of the compressed matrix elements
integer,dimension(:),pointer::isvctr_par,nvctr_par!<array that contains the values of nvctrp and isvctr of all MPI tasks
integer::nconsecutive_max!< max number of blocks (i.e. consecutive entries) for the sparse matmul
integer,dimension(:,:),pointer::consecutive_lookup!< lookup arrays for these blocks
integer,dimension(2)::istartendseg_t!< starting and ending indices of the matrix subpart which is actually used i
!! for the transposed operation (overlap calculation / orthocontraint)
!! WARNING: the essential bounds are given by istartend_t, the segments are you used to speed up the code
integer,dimension(2)::istartend_t!< starting and ending indices of the matrix subpart which is actually used i
!! for the transposed operation (overlap calculation / orthocontraint
integer::nvctrp_tg!< size of the taskgroup matrix (per processor)
integer::isvctrp_tg!< offset of the taskgroup matrix, given with respect to the non-parallelized matrix
integer,dimension(2)::iseseg_tg!< first and last segment of the taskgroup sparse matrix
integer,dimension(2)::istartend_local!< first and last element of the sparse matrix which is actually used by a given MPI task
integer,dimension(2)::istartendseg_local!< first and last segment of the sparse matrix which is actually used by a given MPI task
integer,dimension(:,:),pointer::tgranks!< global task IDs of the tasks in each taskgroup
integer,dimension(:),pointer::nranks!< number of task on each taskgroup
integer::nccomm!<number of communications required for the compress distributed in the dense parallel format
integer,dimension(:,:),pointer::luccomm!<lookup array for the communications required for the compress distributed in the dense parallel format
logical::smatmul_initialized!< indicated whether the sparse matmul type has been initialized
integer,dimension(:),pointer::transposed_lookup_local!< lookup arrays for the transposed entries of the sparse matrix which is actually used by a given MPI task