MPI-SCATCI 2.0
An MPI version of SCATCI
Loading...
Searching...
No Matches
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.
subroutine Contracted_Symbolic_module::check_constructed (this)
 A simple class to check if this has been properly constructed.
subroutine Contracted_Symbolic_module::construct (this, n1, n2, threshold, initial_size)
 Constructs the class by allocating space for the electron integrals.
logical function Contracted_Symbolic_module::check_same_integral (this, integral, idx)
 A function to check whether the same integral label exists.
subroutine Contracted_Symbolic_module::insert_ijklm_symbol (this, i, j, k, l, m, coeffs, check_same_)
 Insert unpacked integral labels.
subroutine Contracted_Symbolic_module::insert_symbol (this, integral_label, coeffs, check_same_)
 Insert a packed integral symbol into the class.
subroutine Contracted_Symbolic_module::expand_array (this)
 This is the array expansion subroutine.
subroutine Contracted_Symbolic_module::add_symbols (this, rhs, alpha)
 Inserts one symbolic vector into another scaled by.
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.
subroutine Contracted_Symbolic_module::remove_symbol_at (this, idx)
 Removes an integral and coefficient, never been used and pretty much useless.
logical function Contracted_Symbolic_module::is_empty (this)
 Simply returns whether we are storing integrals and coeffs or not.
subroutine Contracted_Symbolic_module::clear (this)
 Clear our array (not really but it essentialy resets the symbol counter to zero which is way quicker).
subroutine Contracted_Symbolic_module::modify_coeff (this, idx, coeff)
integer(longint) function, dimension(nidx) Contracted_Symbolic_module::get_integral_label (this, idx)
 Get integral label at specific index.
real(wp) function Contracted_Symbolic_module::get_coefficient (this, idx, n1, n2)
 Get coefficient at specific index.
subroutine Contracted_Symbolic_module::get_coeff_and_integral (this, idx, coeff, label)
 Get both label and coeffcient at specific index.
integer function Contracted_Symbolic_module::get_size (this)
 Returns the number of symbolic elements stored.
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.
subroutine Contracted_Symbolic_module::print_symbols (this)
 Print currently stored symbols.
logical function Contracted_Symbolic_module::estimate_synchronize_cost (this)

Variables

class(contractedsymbolicelementvector), pointer Contracted_Symbolic_module::to_be_synched