Procedures

ProcedureLocationProcedure TypeDescription
add_callmimic_utilsFunction

Add a function call to registry

add_map_entrymimic_typesSubroutine

add an overlap entry to the map

add_maps_entrymimic_typesSubroutine

add an entry to the maps collection

compute_binomial_coefficientsmimic_tensorsSubroutine

Calculate binomial coefficients using recursive algorithm by Sten Rettrup and Ruben Pauncz, Int. J. Quantum Chem., 60: 91–98 (1996) DOI: 10.1002/(SICI)1097-461X(1996)60:1<91::AID-QUA10>3.0.CO;2-A

compute_center_of_chargemimic_particlesFunction

compute center-of-charge of a set particles

compute_center_of_massmimic_particlesFunction

compute center-of-mass of a set of particles

compute_centroidmimic_particlesFunction

compute centroid of a set of particles

compute_double_factorialsmimic_tensorsSubroutine

compute and store double factorials upto 12!!

compute_electronic_multipolesmimic_fragmentsSubroutine

compute multipole expansion of the electrostatic potential from an electronic density (which is represented on a grid) around an origin

compute_factorialsmimic_tensorsSubroutine

compute and store factorials upto 12!

compute_folded_tensorsmimic_long_rangeSubroutine

Computes folded tensor used in energy and potential computations

compute_lr_energymimic_long_rangeSubroutine

compute interaction energy between quantum fragment and long-range atoms

compute_lr_forcesmimic_long_rangeSubroutine

compute forces from long-range atoms on quantum fragment and vice versa

compute_lr_potentialmimic_long_rangeSubroutine

compute potential from long-range atoms on quantum fragment

compute_minimum_distancemimic_particlesFunction

computes minimum distance between two sets of particles

compute_nuclear_multipolesmimic_fragmentsSubroutine

compute multipole expansion of the electrostatic potential from a set of nuclei around an origin

compute_sr_energy_ionsmimic_short_rangeSubroutine

compute classical atom - quantum ion interaction energy

compute_sr_forces_electronsmimic_short_rangeSubroutine

compute forces from classical atom - quantum electrons interactions (stored FION matrix (through pointers))

Read more…
compute_sr_forces_ionsmimic_short_rangeSubroutine

compute forces from classical atom - quantum ion interactions (stored in FION matrix (through pointers))

compute_sr_potential_electronsmimic_short_rangeSubroutine

compute potential classical atom on quantum fragment

Read more…
compute_tensor_coefficientsmimic_tensorsSubroutine

compute tensor coefficients needed to compute open-ended derivatives of (from C. E. Dykstra, J. Comput. Chem., 9 (1988), 476, where C^(n)_ij are stored as tensor_coefficient(j,i,n))

compute_trinomial_coefficientsmimic_tensorsSubroutine

compute trinomial coefficients ()

contract_tensorsmimic_tensorsSubroutine

contract tensors A and B according to rank of C and return result in C

convert_indexmimic_tensorsFunction

convert from multi-index to packed tensor index

copy_anglemimic_typesSubroutine
copy_bondmimic_typesSubroutine
copy_entrymimic_utilsSubroutine

Recursive function making a deep copy of stack_entry

copy_mapmimic_typesSubroutine

add an overlap entry to the map

copy_mapsmimic_typesSubroutine

add an overlap entry to the map

define_fragmentsmimic_subsystemsSubroutine
destroy_commmimic_data_collectSubroutine

destructor for the commlib

detrace_tensormimic_tensorsSubroutine

convert tensor to traceless tensor

finalizemimic_data_collectSubroutine

routine sending an exit code to each client

find_entrymimic_utilsFunction

Recursive function looking for the entry in array by hash

folded_interaction_tensormimic_tensorsSubroutine

Compute folded multipole interaction tensor containing derivatives of , i.e. the da'th derivative wrt and db'th derivative wrt . Tensor is returned in a one-dimensional array with elements in anticanonical ordering, e.g. xx, xy, xz, yy, yz, zz.

fragment_center_of_chargemimic_fragmentsFunction

compute the fragment center-of-charge

fragment_center_of_massmimic_fragmentsFunction

compute the fragment center-of-mass

fragment_centroidmimic_fragmentsFunction

compute the fragment centroid

gather_angle_countmimic_data_collectSubroutine

gather angle count from all clients

gather_anglesmimic_data_collectSubroutine

get the angle constraints data - atom indices and equilibrium values

Read more…
gather_atom_countmimic_data_collectSubroutine

gather atom count from all clients

gather_atom_fragment_countmimic_data_collectSubroutine

get the number of atoms per each fragment in the system

gather_atom_fragment_idsmimic_data_collectSubroutine

get IDs of atoms per each fragment in the system

gather_bond_countmimic_data_collectSubroutine

gather bond count from all clients

gather_bondsmimic_data_collectSubroutine

get the bond constraints data - atom indices and lengths

gather_coordsmimic_data_collectSubroutine

gather coordinates of atoms within the system (dealing with overlaps) and store result in the tau matrix through pointers

gather_elementsmimic_data_collectSubroutine

gather element number associated to MM atom types

gather_energiesmimic_data_collectSubroutine

gather MM energies from clients

gather_forcesmimic_data_collectSubroutine

gather forces acting on atoms within the system and store result in the forces matrix through pointers

gather_fragment_countmimic_data_collectSubroutine

gather fragment count from all clients

gather_intmimic_data_collectSubroutine

gather integer parameter from client codes

gather_massesmimic_data_collectSubroutine

get the data about atoms in the system

gather_multipolesmimic_data_collectSubroutine

get the data about atoms in the system

gather_type_countmimic_data_collectSubroutine

gather atom types count from all clients

get_atom_speciesmimic_data_collectSubroutine

Get the number of atoms per atomic species per code (with overlap treatment)

get_fragment_countmimic_data_collectSubroutine

get the number of fragment per each of the client code

get_multipole_ordermimic_data_collectSubroutine

get the orders of multipoles used in each client code

get_multipoles_sizemimic_propertiesFunction
get_timemimic_utilsFunction

Get current time

handlemimic_errorsInterface
handle_errormimic_errorsSubroutine

Subroutine to handle errors

handle_generic_errormimic_errorsSubroutine

Handler to treat any other kind of errors

handle_inc_errormimic_errorsSubroutine

Handler to treat incorrect argument errors

handle_mem_errormimic_errorsSubroutine

Handler to treat memory allocation issues

handshakemimic_data_collectSubroutine

identify and connect clients

hash_strmimic_utilsFunction

Calculate a hash of the string

increment_entrymimic_utilsSubroutine

Add new start time to the entry

initmimic_data_collectSubroutine

initialize communication

init_atommimic_particlesSubroutine
init_cellmimic_cellsSubroutine
init_entrymimic_utilsFunction

Initializer of a stack entry

init_error_handlingmimic_errorsSubroutine

initialiaze error handler

init_fragmentmimic_fragmentsSubroutine

intialize fragment

Read more…
init_mapmimic_typesSubroutine
init_multipolesmimic_propertiesSubroutine
init_nucleusmimic_particlesSubroutine
init_overlapsmimic_data_collectSubroutine

initialize overlap mapping

init_quantum_fragmentmimic_fragmentsSubroutine

Initialize quantum fragment

init_real_field_gridmimic_field_gridsSubroutine
init_sitemimic_particlesSubroutine
init_subsystemmimic_subsystemsSubroutine
initialize_tensorsmimic_tensorsSubroutine

initialize tensor module

interaction_tensormimic_tensorsSubroutine

Compute multipole interaction tensor containing derivatives of , i.e. the da'th derivative wrt and db'th derivative wrt . Tensor is returned in a one-dimensional array with elements in anticanonical ordering, e.g. xx, xy, xz, yy, yz, zz.

issue_force_compmimic_data_collectSubroutine

issue a command to compute forces and energies

mimic_allocate_mm_structmimic_mainSubroutine

allocates fragments for MM part

Read more…
mimic_allocate_qm_structmimic_mainSubroutine

allocates quantum fragment (at the moment one per simulation)

Read more…
mimic_center_qmmimic_mainSubroutine

re-center the quantum box

mimic_collect_coordinatesmimic_mainSubroutine

wrapper to request coordinates of MM part

mimic_collect_energiesmimic_mainSubroutine

wrapper to request MM energies

mimic_collect_forcesmimic_mainSubroutine

wrapper to request MM forces

Read more…
mimic_compute_energymimic_mainSubroutine

compute interaction energy

Read more…
mimic_compute_forcesmimic_mainSubroutine

compute forces from electrostatic interactions

Read more…
mimic_compute_multipolesmimic_mainSubroutine

compute multipoles of the quantum fragment

mimic_compute_potentialmimic_mainSubroutine

compute electrostatic potential

Read more…
mimic_compute_tensorsmimic_mainSubroutine

compute folded tensors for long-range electrostatics

Read more…
mimic_count_trcnstmimic_mainSubroutine

Routine to count the number of interdependent constraints amoung bonds

mimic_destroymimic_mainSubroutine

MiMiC destruction routine - deallocates all arrays and shuts down communicator

mimic_finalizemimic_mainSubroutine
mimic_handshakemimic_mainSubroutine

MiMiC initialization routine

Read more…
mimic_initmimic_mainSubroutine

initialize MiMiC

mimic_init_error_handlermimic_mainSubroutine

initialize error handling

mimic_init_overlapsmimic_mainSubroutine

initialize overlap maps using the input file data

mimic_min_imagemimic_mainSubroutine

apply MIC to the whole system with respect to a pivot point

Read more…
mimic_print_timingsmimic_mainSubroutine

Routine that prints timings accumulated during the current run of MiMiC

mimic_request_sizesmimic_mainSubroutine

wrapper to request sizes of MM parts (number of atoms/species/fragments)

mimic_request_system_datamimic_mainSubroutine

return data about atomic species, masses and multipoles in the MM part

mimic_send_coordsmimic_mainSubroutine
mimic_set_num_clientsmimic_mainSubroutine

set the number of clients (needed for non-root processes)

Read more…
mimic_sort_fragmentsmimic_mainSubroutine

sort fragments into short- and long-range according to distance criterion

mimic_stack_entrymimic_utilsInterface
mimic_translatemimic_mainSubroutine

Routine that does translation of the whole system with a given vector

move_alloc_strmimic_data_collectSubroutine
polytensor_sizemimic_tensorsFunction

compute size of first degree polytensor with tensors up to maxmimum rank

print_entrymimic_utilsSubroutine

Recursive function printing timing of the entry and its children

print_timingsmimic_utilsSubroutine

Print measured timings of function calls

print_warningmimic_errorsSubroutine

Subroutine to print warning header

print_welcomemimic_utilsSubroutine

Writes a welcome message to the standard output together with the list of papers to cite.

quantum_fragment_center_of_chargemimic_fragmentsFunction

compute quantum-fragment center-of-charge

quantum_fragment_center_of_massmimic_fragmentsFunction

compute quantum-fragment center-of-mass

quantum_fragment_centroidmimic_fragmentsFunction

compute quantum-fragment centroid

send_commandmimic_data_collectSubroutine

send a command via the CommLib

send_coordsmimic_data_collectSubroutine

send coordinates of atoms to client codes (sends a flattened array)

send_intmimic_data_collectSubroutine

gather integer parameter from client codes

start_timermimic_utilsFunction

Start a timer for a given function

stop_timermimic_utilsSubroutine

Stop a timer for a given function (invalidates the pointer)

tensor_elementmimic_tensorsFunction

compute element of multipole interaction tensor (C. E. Dykstra, J. Comput. Chem., 9 (1988), 476) which in multi-index notation this is

tensor_rankmimic_tensorsFunction

compute rank of tensor

tensor_sizemimic_tensorsFunction

compute size of tensor of given rank

tensor_tracemimic_tensorsFunction

compute trace of a packed tensor

terminate_tensorsmimic_tensorsSubroutine
timer_printmimic_utilsSubroutine

Print the call stack with timing information.

timer_startmimic_utilsSubroutine

Start timing the routine with a given name. This procedure will start tracking the execution time of a given function in a call stack tree. Subsequent calls to this function will create additional entries in the call stack that are going to be shown as children of the original routine.

timer_stopmimic_utilsSubroutine

Stop timing last routine. This procedure will record the finishing time of the routine that was timed the last. Moreover, it will move one level up in the call stack hierarchy.

unique_entriesmimic_data_collectSubroutine

search for unique occurences in the array

write_error_headermimic_errorsSubroutine

Subroutine to print error header