| Matomic_basis_gbl | |
| Catomic_orbital_basis_obj | |
| Mbasis_data_generic_gbl | |
| Cbasis_data_generic_obj | |
| CBTO_shell_data_obj | |
| CCGTO_shell_data_obj | |
| Ccheck_intf | |
| Cinit_bdg_intf | |
| Corbital_data_obj | |
| Cshell_data_obj | |
| MBB_shell_mixed_integrals_gbl | |
| CBB_shell_integrals_obj | Object that can be used to evaluate the (BB|BB) and the mixed BTO/CGTO 2-electron integrals (BG|GG). This object can only be used once the grid_r1_r2 from grid_mod has been initialized |
| Mblas_lapack_gbl | Interface module for BLAS and LAPACK routine. The interface is for double and quad precision routines. The double precision routines are assumed external and the quad precision ones are here |
| Csyev | Interface for LAPACK dsyev routine and its quad precision implementation |
| Csyevr | Interface for LAPACK dsyevr routine and its quad precision implementation |
| Ctrsm | Interface for LAPACK dtrsm routine and its quad precision implementation |
| Mbspline_base_gbl | |
| Cbvalu | |
| Cintrv | |
| Mbspline_grid_gbl | |
| Cbspline_grid_obj | Parameters of the B-spline orbital. The intention is that the user declares this type in the main progam and specifies: A, B, C, order, l,m and ind, no_bps. This object can then be passed to bspl_functioninit, which checks the parameters and initializes the parameters in the particular bspl_function. The default values of some of the variables below have been chosen so that an error will be triggered by the member procedure check if they have not been set to meaningful values |
| Mbto_gto_test_routines_mod | |
| CBB_density_obj | |
| CBG_density_obj | |
| CGG_density_obj | |
| Mcgto_pw_expansions_gbl | |
| CCGTO_shell_pair_pw_expansion_obj | |
| CCGTO_shell_pw_expansion_obj | |
| Cpw_expansion_obj | |
| Mcommon_obj_gbl | |
| Cdarray_1d | 1D array of reals |
| Cdarray_2d | |
| Cecp_obj | |
| Ciarray_1d | 1D array of integers |
| Cnucleus_type | |
| Cresize_array | |
| Mcoupling_obj_gbl | |
| Ccouplings_type | |
| Mdata_file_gbl | |
| Cdata_file_obj | This object provides access to the data stored on the data file. The first record on the file is the identifier given by the constant data_file_obj_id. The next record is the number of data sets (headers) stored on the file. After that the header of the first (if any) data set follows |
| Cdata_header_obj | This structure contains the data defining the header for one data set stored on the data file |
| Mfile_mapping_gbl | Virtual memory file mapping |
| Cfile_mapping | An auxiliary derived type which holds the pointer to the mapped data file window and performs the mapping and unmapping on call to init or final |
| Cmap_file_window | |
| Cunmap_file_window | |
| Mfunction_integration_gbl | Declares functions that can be integrated (together with the B-spline) using MODDBFQAD |
| CBB_legendre_integrand | |
| Cbessel_fn | Bessel function \(J_{l+1/2}(kr)\), of half integral order \(l\) multiplied by \(r^{p}\): \(r^{p}J_{l+1/2}(kr)\). This function can be used to calculate representation of the Bessel orbital in terms of the B-spline orbitals |
| Cbspl_prod_pow | \( B_{i}(r)r^l \) This function is used in calculation of the overlap integral between two B-spline functions |
| Cpoly_exp_function | \( r^{l}\exp[ar^{2}] \) |
| Cpower_function | \( r^{l} \) |
| Cradial_function | A complicated radial function |
| Cradial_function_buff | A complicated radial function that uses a supplied array to store the values of the Bessel functions. Note that this function is identical to radial_function except of 1.5_wp in one of the exponents |
| Mgeneral_quadrature | |
| Cbound_user_function | This is a class that defines an abstract function, whose specific implementation is deferred. The purpose is to use this abstract function in some bspline-related routines which require a user-defined function as a parameters |
| Cuser_function_interface | |
| Mgeneral_quadrature_gbl | |
| Cfn2d_eval_interface | |
| Cfunction_1d | This is a class that defines an abstract function of one variable, whose specific implementation is deferred. The purpose is to use this abstract function in some bspline-related routines which require a user-defined function as a parameters |
| Cfunction_1d_many | The same as function_1d but now the function evaluations are for n points at the same time |
| Cfunction_2d | This is a class that defines an abstract function of two variables, whose specific implementation is deferred. The purpose is to use this abstract function in some bspline-related routines which require a user-defined function as a parameters |
| Cwp_user_function_interface | |
| Cwp_user_function_interface_many | |
| MGG_shell_mixed_integrals_gbl | |
| CGG_shell_integrals_obj | Object that can be used to evaluate mixed BTO/CGTO 2-electron integrals involving at least two shells of CGTOs, i.e. BBGG, BGBG and BGGG classes of integrals. This object can only be used once the grid_r1_r2 from grid_mod has been initialized |
| Mgrid_gbl | |
| Cgrid_r1_r2_obj | |
| Mgto_routines_gbl | This module contains elementary routines which are used for evaluation of GTO-only integrals |
| Cboys_function_obj | This object contains routines for evaluation of the Boys function in double precision. The object must be first initialized using the method init and its argument values imax and mmax. imax corresponds to the largest power in series expansion of the Boys function that is needed to evaluate the Boys function in the expected range of T values. For T in the range 0,60 the value of imax has been determined to be 140. The routine eval then calculates at once the string of Boys functions for a range of m values |
| Creorder_and_index_2el | |
| Mintegral_storage_gbl | The object integral_calculation controls the integral evaluation. The user first declares object (type) integral_storage_obj type in his/her program, fills it in with the required parameters and then passes this object as an argument to the add_int method. This adds the specified integral calculation to the list of the integrals to calculate. The actual calculation is then performed using the calculate method |
| Cintegral_options_obj | |
| Cintegral_storage_obj | This object provides access to the results of an integral calculation. The object must be associated with the data which can be either in memory or on the disk. The association with the target is performed calling 'init' with the appropriate arguments. If the results are stored in memory then the array pointed to by the variable 'integral' must be associated with a target. If the integrals are stored on the disk then the object integral_file is used to provide access to the data. Note that neither integral_file nor integral are private variables. This is neccessary so that the integral routines can have direct (i.e. fast access) to the data |
| Mmolden_gbl | This module contains the object molden_input_obj which controls operations on a Molden input file. It reads, on demand, the basis set, nuclear data and molecular orbitals into the appropriate data structures. The same data structures can be also written out to a file. The Molden file can hold basis set data for GTOs and STOs. Currently, reading of the GTO basis and the molecular orbitals has been implemented. The Molden format allows for use of flags which specify that the molecular orbitals are given in terms of coefficients for the spherical GTOs. These flags are: [5D],[5D10F],[7F],[5D7F],[5D],[9G] and currently ARE NOT supported by the molden_input_obj object. If any of these flags are found on the Molden file an error message is issued. However, implementing the use of these flags is trivial and in fact simpler than having to work with orbital coefficients corresponding to the contracted cartesian GTOs which is the default. When reading the MO coefficients we read-in the cartesian coefficients first and then convert them to the coefficients for the corresponding spherical GTOs. (We do the reverse when writing out orbital coefficients for the spherical GTOs). This is done, for each shell, calculating the overlap integrals between the normalized contracted cartesian GTO basis functions and the normalized contracted spherical GTO corresponding to the same shell. The Molden file must be (according to its format specification) a formatted file. The exact format of all numbers and data is taken from Molpro. All format specifications are contained in the module molden_const. There should be no constants and format definitions in this module - everything must be defined in the module molden_const. This ensures that if the input/output format needs to be changed that this can be done consistently for input/output only in one place |
| Cmolden_input_obj | This object contains the data and methods necessary to control input and output of basis set and MO data in the Molden format. The user starts interaction with this object by calling the init method. After that the type-bound methods (e.g. read, write, final) become available |
| Mmolecular_basis_gbl | |
| Cmolecular_orbital_basis_obj | |
| Csym_ortho_io | This data structure is used for input/output by the method orthogonalize of the molecular_orbital_basis_obj |
| Mmpi_gbl | MPI library interfaces |
| Cmpi_mod_allgather | |
| Cmpi_mod_allgatherv_in_place | |
| Cmpi_mod_bcast | |
| Cmpi_mod_file_read_cfp | |
| Cmpi_mod_file_set_view | |
| Cmpi_mod_file_write | |
| Cmpi_mod_gatherv | |
| Cmpi_mod_isend | |
| Cmpi_mod_recv | |
| Cmpi_mod_recv_dynamic | |
| Cmpi_mod_rotate_arrays_around_ring | |
| Cmpi_mod_rotate_cfp_arrays_around_ring | |
| Cmpi_mod_scan_sum | |
| Cmpi_mod_send | |
| Cmpi_mod_send_dynamic | |
| Cmpi_reduce_inplace_sum_cfp | |
| Cmpi_reduce_sum | |
| Cmpi_reduceall_inplace_sum_cfp | |
| Cmpi_reduceall_max | |
| Cmpi_reduceall_min | |
| Cmpi_reduceall_sum_cfp | |
| CMPIBlockArray | Convenience MPI type wrapper with garbage collection |
| Cnaive_mpi_reduce_inplace_sum | |
| Mmpi_memory_gbl | Local and shared memory allocation and deallocation routines |
| Cmpi_memory_allocate_integer | |
| Cmpi_memory_allocate_integer_2dim | |
| Cmpi_memory_allocate_real | |
| Cmpi_memory_allocate_real_2dim | |
| Cmpi_memory_deallocate_integer | |
| Cmpi_memory_deallocate_integer_2dim | |
| Cmpi_memory_deallocate_real | |
| Cmpi_memory_deallocate_real_2dim | |
| Mparallel_arrays_gbl | This module implements the p2d_array_obj which is used throughout the code to store and manipulate the calculated integrals |
| Cp2d_array_obj | This is an array object which is used to store the atomic and molecular integrals in memory. The primary data structure is the 2D array thisa(1:thisd1,1:thisd2). The object may use the auxiliary integer array thisblock_offset(1:thisno_blocks) as in the case of computation of the atomic integrals in the MPI regime. The use of the block_offset array is controled by the initialization routine init. Each column of thisa has a name which is contained in thiscolumn_descriptor(1:thisd2). The intention is that the different types of integrals (e.g. overlap, kinetic energy, etc.) are kept in different columns of the array thisa |
| Mprecisn_gbl | |
| Cf1mach | This function resolves into the particular routines depending on the type of the second dummy argument 'p' which specifies the data type for which the machine parameters are required |
| Msort_gbl | |
| Ccfp_sort_float_int_1d | |
| Csort_int_1d | |
| Msparse_block_storage_gbl | Storage for blocks in sparse transformation |
| Csparse_block_storage_obj | Storage of integral blocks |
| Mspecial_functions_gbl | |
| Ccfp_9gmic | |
| Ccfp_9gmit | |
| Ccfp_9lgic | |
| Ccfp_9lgit | |
| Ccfp_9lgmc | |
| Ccfp_besi | |
| Ccfp_besj | |
| Ccfp_binom | |
| Ccfp_csevl | |
| Ccfp_eval_poly_horner | |
| Ccfp_gamic | |
| Ccfp_gamlm | |
| Ccfp_gamma_fun | |
| Ccfp_gamma_slatec | |
| Ccfp_initds | |
| Ccfp_lgams | |
| Ccfp_lngam | |
| Ccfp_lnrel | |
| Creal_harmonics_obj | Object used to evaluate real spherical and solid harmonics |
| Msymmetry_gbl | |
| Cgeometry_obj | Input data for the symmetry_objinit routine |
| Csymmetry_obj | This structure holds all necessary symmetry information on the symmetry of the molecule that can be used in the integral calculation |
| Mutils_gbl | |
| Cappend_array | |
| Creserve_space | |
| Mvnl_module | |
| Cvnl_integrand | |
| Carray_2d | 2D array of reals |
| Cecp | Parameters for an Effective Core Potential for one nucleus |
| Cintegral_data | Contains options that control numerical details of the integral calculation. This type can be extended for a particular type of integral calculations to include the options relevant only for those |