MPI-SCATCI  2.0
An MPI version of SCATCI
matrixcache_module::matrixcache Type Reference

This handles the matrix elements and also expands the vector size if we have reached max capacity. More...

Collaboration diagram for matrixcache_module::matrixcache:

Public Member Functions

procedure, public construct
 
procedure, public insert_into_cache
 
procedure, public get_from_cache
 
procedure, public is_empty
 
procedure, public clear
 
procedure, public get_size
 
procedure, public expand_capacity
 
procedure, public sort => qsort_matelem
 
procedure, public print => print_matelems
 
procedure, public get_local_mat
 
procedure, public get_chunk_idx
 
procedure, public shrink_capacity
 
procedure, public clear_and_shrink
 
procedure, public destroy => destroy_cache
 

Private Member Functions

procedure, private quick_sort_function
 
procedure, private partition_function
 
procedure, private expand_array
 
procedure, private check_bounds
 
procedure, private check_constructed
 

Private Attributes

type(matrixarray), dimension(:), allocatable matrix_arrays
 
integer n
 Number of elements in the array of both the integral and coefficients. More...
 
logical constructed = .false.
 
integer matrix_index
 
integer num_matrix_chunks = 1
 
integer max_capacity = 0
 The number of free slots in the array. More...
 
integer expand_size = DEFAULT_EXPAND_SIZE
 How much we have to expand each. More...
 

Detailed Description

This handles the matrix elements and also expands the vector size if we have reached max capacity.

Authors
A Al-Refaie
Date
2017

Definition at line 60 of file MatrixCache_module.f90.

Member Function/Subroutine Documentation

◆ check_bounds()

procedure, private matrixcache_module::matrixcache::check_bounds
private

Definition at line 86 of file MatrixCache_module.f90.

◆ check_constructed()

procedure, private matrixcache_module::matrixcache::check_constructed
private

Definition at line 88 of file MatrixCache_module.f90.

◆ clear()

procedure, public matrixcache_module::matrixcache::clear

Definition at line 73 of file MatrixCache_module.f90.

◆ clear_and_shrink()

procedure, public matrixcache_module::matrixcache::clear_and_shrink

Definition at line 85 of file MatrixCache_module.f90.

◆ construct()

procedure, public matrixcache_module::matrixcache::construct

Definition at line 69 of file MatrixCache_module.f90.

◆ destroy()

procedure, public matrixcache_module::matrixcache::destroy

Definition at line 87 of file MatrixCache_module.f90.

◆ expand_array()

procedure, private matrixcache_module::matrixcache::expand_array
private

Definition at line 83 of file MatrixCache_module.f90.

◆ expand_capacity()

procedure, public matrixcache_module::matrixcache::expand_capacity

Definition at line 75 of file MatrixCache_module.f90.

◆ get_chunk_idx()

procedure, public matrixcache_module::matrixcache::get_chunk_idx

Definition at line 80 of file MatrixCache_module.f90.

◆ get_from_cache()

procedure, public matrixcache_module::matrixcache::get_from_cache

Definition at line 71 of file MatrixCache_module.f90.

◆ get_local_mat()

procedure, public matrixcache_module::matrixcache::get_local_mat

Definition at line 79 of file MatrixCache_module.f90.

◆ get_size()

procedure, public matrixcache_module::matrixcache::get_size

Definition at line 74 of file MatrixCache_module.f90.

◆ insert_into_cache()

procedure, public matrixcache_module::matrixcache::insert_into_cache

Definition at line 70 of file MatrixCache_module.f90.

◆ is_empty()

procedure, public matrixcache_module::matrixcache::is_empty

Definition at line 72 of file MatrixCache_module.f90.

◆ partition_function()

procedure, private matrixcache_module::matrixcache::partition_function
private

Definition at line 82 of file MatrixCache_module.f90.

◆ print()

procedure, public matrixcache_module::matrixcache::print

Definition at line 78 of file MatrixCache_module.f90.

◆ quick_sort_function()

procedure, private matrixcache_module::matrixcache::quick_sort_function
private

Definition at line 81 of file MatrixCache_module.f90.

◆ shrink_capacity()

procedure, public matrixcache_module::matrixcache::shrink_capacity

Definition at line 84 of file MatrixCache_module.f90.

◆ sort()

procedure, public matrixcache_module::matrixcache::sort

Definition at line 77 of file MatrixCache_module.f90.

Member Data Documentation

◆ constructed

logical matrixcache_module::matrixcache::constructed = .false.
private

Definition at line 63 of file MatrixCache_module.f90.

◆ expand_size

integer matrixcache_module::matrixcache::expand_size = DEFAULT_EXPAND_SIZE
private

How much we have to expand each.

Definition at line 67 of file MatrixCache_module.f90.

◆ matrix_arrays

type(matrixarray), dimension(:), allocatable matrixcache_module::matrixcache::matrix_arrays
private

Definition at line 61 of file MatrixCache_module.f90.

◆ matrix_index

integer matrixcache_module::matrixcache::matrix_index
private

Definition at line 64 of file MatrixCache_module.f90.

◆ max_capacity

integer matrixcache_module::matrixcache::max_capacity = 0
private

The number of free slots in the array.

Definition at line 66 of file MatrixCache_module.f90.

◆ n

integer matrixcache_module::matrixcache::n
private

Number of elements in the array of both the integral and coefficients.

Definition at line 62 of file MatrixCache_module.f90.

◆ num_matrix_chunks

integer matrixcache_module::matrixcache::num_matrix_chunks = 1
private

Definition at line 65 of file MatrixCache_module.f90.


The documentation for this type was generated from the following file: