MPI-SCATCI  2.0
An MPI version of SCATCI
Contracted_Symbolic_Module.f90 File Reference

Go to the source code of this file.

Data Types

type  contracted_symbolic_module::contractedsymbolicelementvector
 This class handles the storage symbolic elements. More...
 

Modules

module  contracted_symbolic_module
 Symbolic module.
 

Functions/Subroutines

integer function contracted_symbolic_module::bstree_compare (this, i, j, data)
 Compare two integral index sets. More...
 
subroutine contracted_symbolic_module::check_constructed (this)
 A simple class to check if this has been properly constructed. More...
 
subroutine contracted_symbolic_module::construct (this, n1, n2, threshold, initial_size)
 Constructs the class by allocating space for the electron integrals. More...
 
logical function contracted_symbolic_module::check_same_integral (this, integral, idx)
 A function to check whether the same integral label exists. More...
 
subroutine contracted_symbolic_module::insert_ijklm_symbol (this, i, j, k, l, m, coeffs, check_same_)
 Insert unpacked integral labels. More...
 
subroutine contracted_symbolic_module::insert_symbol (this, integral_label, coeffs, check_same_)
 Insert a packed integral symbol into the class. More...
 
subroutine contracted_symbolic_module::expand_array (this)
 This is the array expansion subroutine. More...
 
subroutine contracted_symbolic_module::add_symbols (this, rhs, alpha)
 Inserts one symbolic vector into another scaled by. More...
 
subroutine contracted_symbolic_module::reduce_symbols (this, rhs)
 
subroutine contracted_symbolic_module::synchronize_symbols (this)
 
subroutine contracted_symbolic_module::synchronize_symbols_ii (this)
 
logical function contracted_symbolic_module::check_bounds (this, i)
 Simply checks the index and wheter it exists within the array. More...
 
subroutine contracted_symbolic_module::remove_symbol_at (this, idx)
 Removes an integral and coefficient, never been used and pretty much useless. More...
 
logical function contracted_symbolic_module::is_empty (this)
 Simply returns whether we are storing integrals and coeffs or not. More...
 
subroutine contracted_symbolic_module::clear (this)
 Clear our array (not really but it essentialy resets the symbol counter to zero which is way quicker). More...
 
subroutine contracted_symbolic_module::modify_coeff (this, idx, coeff)
 
integer(longint) function, dimension(2) contracted_symbolic_module::get_integral_label (this, idx)
 Get integral label at specific index. More...
 
real(wp) function contracted_symbolic_module::get_coefficient (this, idx, n1, n2)
 Get coefficient at specific index. More...
 
subroutine contracted_symbolic_module::get_coeff_and_integral (this, idx, coeff, label)
 Get both label and coeffcient at specific index. More...
 
integer function contracted_symbolic_module::get_size (this)
 Returns the number of symbolic elements stored. More...
 
integer function contracted_symbolic_module::get_num_targets_sym1 (this)
 
integer function contracted_symbolic_module::get_num_targets_sym2 (this)
 
subroutine contracted_symbolic_module::destroy (this)
 Cleans up the class by deallocating arrays. More...
 
subroutine contracted_symbolic_module::print_symbols (this)
 Print currently stored symbols. More...
 
logical function contracted_symbolic_module::estimate_synchronize_cost (this)
 

Variables

class(contractedsymbolicelementvector), pointer contracted_symbolic_module::to_be_synched