MPI-SCATCI  2.0
An MPI version of SCATCI
basematrix_module::basematrix Type Reference

Base matrix type. More...

Inheritance diagram for basematrix_module::basematrix:

Public Member Functions

procedure, public initialize_matrix_structure
 
procedure, public construct
 
procedure, public insert_matrix_element
 
procedure, public get_matrix_element
 
procedure, public exclude_row_column
 
procedure, public is_empty
 
procedure, public get_size
 
procedure, public get_matrix_size
 
procedure, public clear
 
procedure, public destroy
 
procedure, public update_continuum
 
procedure, public set_options
 
procedure, public update_pure_l2
 
procedure, public finalize_matrix
 
procedure, public store_diagonal
 
procedure, public initialize_struct_self
 
procedure, public expand_capacity
 
procedure, public print => print_mat
 

Private Member Functions

procedure(generic_construct), deferred construct_self
 
procedure(generic_insert), deferred insert_matelem_self
 
procedure(generic_get), deferred get_matelem_self
 
procedure(generic_clear), deferred clear_self
 
procedure(generic_destroy), deferred destroy_self
 
procedure, private check_bounds
 
procedure, private check_constructed
 

Private Attributes

real(wp) threshold
 
integer matrix_type
 
integer matrix_indexing = MATRIX_INDEX_FORTRAN
 
integer matrix_mode
 
integer excluded_rowcol = 2000000000
 
logical constructed = .false.
 Number of elements in the array of both the integral and coefficients. More...
 
integer matrix_dimension
 
integer n = 0
 
integer block_size
 
logical remove_row_column = .false.
 
real(wp), dimension(:), allocatable diagonal
 
logical initialized = .false.
 

Detailed Description

Base matrix type.

Authors
A Al-Refaie
Date
2017

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

Definition at line 47 of file BaseMatrix_module.f90.

Member Function/Subroutine Documentation

◆ check_bounds()

procedure, private basematrix_module::basematrix::check_bounds
private

Definition at line 90 of file BaseMatrix_module.f90.

◆ check_constructed()

procedure, private basematrix_module::basematrix::check_constructed
private

Definition at line 91 of file BaseMatrix_module.f90.

◆ clear()

procedure, public basematrix_module::basematrix::clear

Definition at line 71 of file BaseMatrix_module.f90.

◆ clear_self()

procedure(generic_clear), deferred basematrix_module::basematrix::clear_self
private

Definition at line 84 of file BaseMatrix_module.f90.

◆ construct()

procedure, public basematrix_module::basematrix::construct

Definition at line 63 of file BaseMatrix_module.f90.

◆ construct_self()

procedure(generic_construct), deferred basematrix_module::basematrix::construct_self
private

Definition at line 81 of file BaseMatrix_module.f90.

◆ destroy()

procedure, public basematrix_module::basematrix::destroy

Definition at line 72 of file BaseMatrix_module.f90.

◆ destroy_self()

procedure(generic_destroy), deferred basematrix_module::basematrix::destroy_self
private

Definition at line 85 of file BaseMatrix_module.f90.

◆ exclude_row_column()

procedure, public basematrix_module::basematrix::exclude_row_column

Definition at line 66 of file BaseMatrix_module.f90.

◆ expand_capacity()

procedure, public basematrix_module::basematrix::expand_capacity

Definition at line 87 of file BaseMatrix_module.f90.

◆ finalize_matrix()

procedure, public basematrix_module::basematrix::finalize_matrix

Definition at line 77 of file BaseMatrix_module.f90.

◆ get_matelem_self()

procedure(generic_get), deferred basematrix_module::basematrix::get_matelem_self
private

Definition at line 83 of file BaseMatrix_module.f90.

◆ get_matrix_element()

procedure, public basematrix_module::basematrix::get_matrix_element

Definition at line 65 of file BaseMatrix_module.f90.

◆ get_matrix_size()

procedure, public basematrix_module::basematrix::get_matrix_size

Definition at line 69 of file BaseMatrix_module.f90.

◆ get_size()

procedure, public basematrix_module::basematrix::get_size

Definition at line 68 of file BaseMatrix_module.f90.

◆ initialize_matrix_structure()

procedure, public basematrix_module::basematrix::initialize_matrix_structure

Definition at line 62 of file BaseMatrix_module.f90.

◆ initialize_struct_self()

procedure, public basematrix_module::basematrix::initialize_struct_self

Definition at line 79 of file BaseMatrix_module.f90.

◆ insert_matelem_self()

procedure(generic_insert), deferred basematrix_module::basematrix::insert_matelem_self
private

Definition at line 82 of file BaseMatrix_module.f90.

◆ insert_matrix_element()

procedure, public basematrix_module::basematrix::insert_matrix_element

Definition at line 64 of file BaseMatrix_module.f90.

◆ is_empty()

procedure, public basematrix_module::basematrix::is_empty

Definition at line 67 of file BaseMatrix_module.f90.

◆ print()

procedure, public basematrix_module::basematrix::print

Definition at line 88 of file BaseMatrix_module.f90.

◆ set_options()

procedure, public basematrix_module::basematrix::set_options

Definition at line 75 of file BaseMatrix_module.f90.

◆ store_diagonal()

procedure, public basematrix_module::basematrix::store_diagonal

Definition at line 78 of file BaseMatrix_module.f90.

◆ update_continuum()

procedure, public basematrix_module::basematrix::update_continuum

Definition at line 74 of file BaseMatrix_module.f90.

◆ update_pure_l2()

procedure, public basematrix_module::basematrix::update_pure_l2

Definition at line 76 of file BaseMatrix_module.f90.

Member Data Documentation

◆ block_size

integer basematrix_module::basematrix::block_size
private

Definition at line 57 of file BaseMatrix_module.f90.

◆ constructed

logical basematrix_module::basematrix::constructed = .false.
private

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

Definition at line 54 of file BaseMatrix_module.f90.

◆ diagonal

real(wp), dimension(:), allocatable basematrix_module::basematrix::diagonal
private

Definition at line 59 of file BaseMatrix_module.f90.

◆ excluded_rowcol

integer basematrix_module::basematrix::excluded_rowcol = 2000000000
private

Definition at line 52 of file BaseMatrix_module.f90.

◆ initialized

logical basematrix_module::basematrix::initialized = .false.
private

Definition at line 60 of file BaseMatrix_module.f90.

◆ matrix_dimension

integer basematrix_module::basematrix::matrix_dimension
private

Definition at line 55 of file BaseMatrix_module.f90.

◆ matrix_indexing

integer basematrix_module::basematrix::matrix_indexing = MATRIX_INDEX_FORTRAN
private

Definition at line 50 of file BaseMatrix_module.f90.

◆ matrix_mode

integer basematrix_module::basematrix::matrix_mode
private

Definition at line 51 of file BaseMatrix_module.f90.

◆ matrix_type

integer basematrix_module::basematrix::matrix_type
private

Definition at line 49 of file BaseMatrix_module.f90.

◆ n

integer basematrix_module::basematrix::n = 0
private

Definition at line 56 of file BaseMatrix_module.f90.

◆ remove_row_column

logical basematrix_module::basematrix::remove_row_column = .false.
private

Definition at line 58 of file BaseMatrix_module.f90.

◆ threshold

real(wp) basematrix_module::basematrix::threshold
private

Definition at line 48 of file BaseMatrix_module.f90.


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