(git:d18deda)
Loading...
Searching...
No Matches
Data Types List
Here are the data types with brief descriptions:
[detail level 12]
 Madmm_dm_typesTypes and set/get functions for auxiliary density matrix methods
 Madmm_typesTypes and set/get functions for auxiliary density matrix methods
 Mai_contractionSet of routines to: Contract integrals over primitive Gaussians Decontract (density) matrices Trace matrices to get forces Block copy and add matrices
 Mai_operators_r12Calculation of integrals over Cartesian Gaussian-type functions for different r12 operators: 1/r12, erf(omega*r12/r12), erfc(omega*r12/r12), exp(-omega*r12^2)/r12 and exp(-omega*r12^2)
 Mal_system_typesType for the canonical sampling through velocity rescaling
 Malmo_scf_diis_typesA DIIS implementation for the ALMO-based SCF methods
 Malmo_scf_lbfgs_typesLimited memory BFGS
 Malmo_scf_typesTypes for all ALMO-based methods
 Marnoldi_typesCollection of types used in arnoldi
 Matom_grb
 Matom_optimizationOptimizer for the atomic code
 Matom_sgp
 Matom_typesDefine the atom type and its sub types
 Matom_upfRoutines that process Quantum Espresso UPF files
 Matom_utilsSome basic routines for atomic calculations
 Matomic_kind_list_typesRepresent a simple array based list of the given type
 Matomic_kind_typesDefine the atomic kind types and their sub types
 Matprop_typesHolds information on atomic properties
 Maverages_typesHandles the type to compute averages during an MD
 Mbarostat_typesBarostat structure: module containing barostat available for MD
 Mbasis_set_container_types
 Mbasis_set_types
 Mblock_p_typesCollect pointers to a block of reals
 Mbse_propertiesRoutines for computing excitonic properties, e.g. exciton diameter, from the BSE
 Mcallgraph
 Mcell_opt_typesContains type used for a Simulation Cell Optimization
 Mcell_typesHandles all functions related to the CELL
 Mcolvar_typesInitialize the collective variables types
 Mcp_array_utilsVarious utilities that regard array of different kinds: output, allocation,... maybe it is not a good idea mixing output and memeory utils..
 Mcp_blacs_envMethods related to the blacs parallel environment
 Mcp_blacs_typesWrappers for the actual blacs calls. all functionality needed in the code should actually be provide by cp_blacs_env these functions should be private members of that module
 Mcp_cfm_basic_linalgBasic linear algebra operations for complex full matrices
 Mcp_cfm_typesRepresents a complex full matrix distributed on many processors
 Mcp_control_typesDefines control structures, which contain the parameters and the settings for the DFT-based calculations
 Mcp_dbcsr_api
 Mcp_dbcsr_operationsDBCSR operations in CP2K
 Mcp_ddapc_typesInformation regarding the decoupling/recoupling method of Bloechl
 Mcp_eri_mme_interfaceInterface to Minimax-Ewald method for periodic ERI's to be used in CP2K
 Mcp_fm_basic_linalgBasic linear algebra operations for full matrices
 Mcp_fm_diag_utilsAuxiliary tools to redistribute cp_fm_type matrices before and after diagonalization. Heuristics are used to determine the optimal number of CPUs for diagonalization and the input matrices are redistributed if necessary
 Mcp_fm_pool_typesPool for for elements that are retained and released
 Mcp_fm_structRepresent the structure of a full matrix
 Mcp_fm_typesRepresent a full matrix distributed on many processors
 Mcp_iter_typesCollection of routines to handle the iteration info
 Mcp_lbfgs_optimizer_goptRoutines that optimize a functional using the limited memory bfgs quasi-newton method. The process set up so that a master runs the real optimizer and the others help then to calculate the objective function. The arguments for the objective function are physically present in every processor (nedeed in the actual implementation of pao). In the future tha arguments themselves could be distributed
 Mcp_linked_list_fm
 Mcp_linked_list_input
 Mcp_linked_list_pw
 Mcp_linked_list_xc_deriv
 Mcp_log_handlingVarious routines to log and control the output. The idea is that decisions about where to log should not be done in the code that generates the log, but should be globally changeable a central place. So some care has been taken to have enough information about the place from where the log comes so that in the future intelligent and flexible decisions can be taken by the logger, without having to change other code
 Mcp_min_heap
 Mcp_parser_buffer_typesModule to allow simple buffering of read lines of a parser
 Mcp_parser_ilist_typesModule to allow simple internal preprocessing in input files
 Mcp_parser_inpp_typesModule to allow simple internal preprocessing in input files
 Mcp_parser_methodsUtility routines to read data from files. Kept as close as possible to the old parser because
 Mcp_parser_status_typesModule to allow the storage of the parser status
 Mcp_parser_typesUtility routines to read data from files. Kept as close as possible to the old parser because
 Mcp_result_methodsSet of type/routines to handle the storage of results in force_envs
 Mcp_result_typesSet of type/routines to handle the storage of results in force_envs
 Mcp_subsys_typesTypes that represent a subsys, i.e. a part of the system
 Mcp_unitsUnit conversion facility
 McryssymK-points and crystal symmetry routines
 Mcsvr_system_typesType for the canonical sampling through velocity rescaling
 Mct_typesTypes for all cayley transformation methods
 Mcube_utilsFor a given dr()/dh(r) this will provide the bounds to be used if one wants to go over a sphere-subregion of given radius
 Mdamping_dipole_types
 Mdbm_api
 Mdbt_allocate_wrapWrapper for allocating, copying and reshaping arrays
 Mdbt_array_list_methodsRepresentation of arbitrary number of 1d integer arrays with arbitrary sizes. This is needed for generic handling of dimension-specific tensor quantities (such as block index)
 Mdbt_blockMethods to operate on n-dimensional tensor blocks
 Mdbt_indexTensor index and mapping to DBM index
 Mdbt_tas_baseTall-and-skinny matrices: base routines similar to DBM API, mostly wrappers around existing DBM routines
 Mdbt_tas_globalGlobal data (distribution and block sizes) for tall-and-skinny matrices For very sparse matrices with one very large dimension, storing array data of the same size as the matrix dimensions may require too much memory and we need to compute them on the fly for a given row or column. Hence global array data such as distribution and block sizes are specified as function objects, leaving up to the caller how to efficiently store global data
 Mdbt_tas_splitMethods to split tall-and-skinny matrices along longest dimension. Basically, we are splitting process grid and each subgrid holds its own DBM matrix
 Mdbt_tas_typesDBT tall-and-skinny base types. Mostly wrappers around existing DBM routines
 Mdbt_tas_utilOften used utilities for tall-and-skinny matrices
 Mdbt_typesDBT tensor framework for block-sparse tensor contraction: Types and create/destroy routines
 MdctType I Discrete Cosine Transform (DCT-I)
 Mdeepmd_wrapperInterface to the DeePMD-kit or a c++ wrapper
 Mdg_rho0_types
 Mdg_types
 Mdgemm_counter_typesCounters to determine the performance of parallel DGEMMs
 Mdgs
 Mdielectric_methodsMethods for evaluating the dielectric constant
 Mdielectric_typesDielectric constant data type
 Mdimer_typesContains types used for a Dimer Method calculations
 Mdirichlet_bc_typesDirichlet boundary condition data types
 Mdistribution_1d_typesStores a lists of integer that are local to a processor. The idea is that these integers represent objects that are distributed between the different processors. The ordering is just to make some operation more efficient, logically these lists are like sets. Some operations assume that the integers represent a range of values from 1 to a (not too big) maxval, and that an element is present just once, and only on a processor (these assumption are marked in the documentation of such operations). The concrete task for which this structure was developed was distributing atoms between the processors
 Mdistribution_2d_typesStores a mapping of 2D info (e.g. matrix) on a 2D processor distribution (i.e. blacs grid) where cpus in the same blacs row own the same rows of the 2D info (and similar for the cols)
 Mdm_ls_scf_typesTypes needed for a linear scaling quickstep SCF run based on the density matrix
 Mdomain_submatrix_methodsSubroutines to handle submatrices
 Mdomain_submatrix_typesTypes to handle submatrices
 Mec_env_typesTypes needed for a for a Energy Correction
 Meeq_inputInput definition and setup for EEQ model
 MeigenvalueproblemsProvides interfaces to LAPACK eigenvalue/SVD routines
 Meip_environment_typesThe environment for the empirical interatomic potential methods
 Membed_types
 Meri_mme_typesTypes and initialization / release routines for Minimax-Ewald method for electron repulsion integrals
 Met_coupling_typesDefinition and initialisation of the et_coupling data type
 Mewald_environment_types
 Mewald_pw_typesPw_types
 Mexclusion_typesExclusion type
 Mexstates_typesTypes for excited states potential energies
 Mextended_system_typesLumps all possible extended system variables into one type for easy access and passing
 Mexternal_potential_typesDefinition of the atomic potential types
 Mf77_interfaceInterface to use cp2k as library
 Mfarming_types
 Mfft_planType to store data about a (1D or 3D) FFT, including FFTW plan
 Mfft_tools
 Mfftw3_lib
 Mfist_efield_types
 Mfist_energy_types
 Mfist_environment_types
 Mfist_neighbor_list_typesDefine the neighbor list data types and the corresponding functionality
 Mfist_nonbond_env_types
 Mforce_env_typesInterface for the force calculations
 Mforce_field_kind_typesDefine all structure types related to force field kinds
 Mforce_field_typesDefine all structures types related to force_fields
 Mfp_typesTypes used in the flexible partitioning scheme
 Mfree_energy_typesDefines types for metadynamics calculation
 Mgaussian_gridlevels
 Mglbopt_historyHistory of minima, calculates, stores and compares fingerprints of minima. Used by Minima Hopping and Minima Crawling
 Mglbopt_masterMaster's routines for global optimization
 Mglbopt_mincrawlRoutines for the Minima Crawling global optimization scheme
 Mglbopt_minhopRoutines for the Minima Hopping global optimization scheme
 Mglbopt_workerWorker routines used by global optimization schemes
 Mgle_system_types
 Mglobal_typesDefine type storing the global information of a run. Keep the amount of stored data small. Use it sparingly and try not to send it too deep in your structures
 Mgopt_f_typesFunctional that calculates the energy and its derivatives for the geometry optimizer
 Mgopt_param_typesTypo and related routines to handle parameters controlling the GEO_OPT module
 Mgraph_utilsModule containing utils for mapping FESs
 MgraphconUses a combination of graphs and hashing to determine if two molecules are topologically equivalent, and if so, finds the one by one mapping
 Mgrid_apiFortran API for the grid package, which is written in C
 Mgroup_dist_typesTypes to describe group distributions
 Mhartree_local_types
 Mhelium_typesData types representing superfluid helium
 Mhfx_typesTypes and set/get functions for HFX
 Mhirshfeld_typesThe types needed for the calculation of Hirshfeld charges and related functions
 Miao_analysisCalculate intrinsic atomic orbitals and analyze wavefunctions
 Miao_typesCalculate ntrinsic atomic orbitals and analyze wavefunctions
 Minput_enumeration_typesEnumeration, i.e. a mapping between integers and strings
 Minput_keyword_typesKeywords in an input
 Minput_section_typesObjects that represent the structure of input sections and the data contained in an input section
 Minput_val_typesWrapper for basic fortran types
 Mintegration_grid_types
 Mintegrator_utilsProvides integrator utility routines for the integrators
 Mipi_environment_typesThe environment for the empirical interatomic potential methods
 Miterate_matrixRoutines useful for iterative matrix calculations
 Mkahan_sumSums arrays of real/complex numbers with much reduced round-off as compared to a naive implementation (or the one found in most compiler's SUM intrinsic) using an implementation of Kahan's algorithm for summing real numbers that can be used instead of the standard Fortran SUM(array[,mask])
 Mkg_environment_typesTypes needed for a Kim-Gordon-like partitioning into molecular subunits
 Mkpoint_transitionalDatatype to translate between k-points (2d) and gamma-point (1d) code
 Mkpoint_typesTypes and basic routines needed for a kpoint calculation
 Mlibgrpp
 Mlibint_2c_3c2- and 3-center electron repulsion integral routines based on libint2 Currently available operators: Coulomb, Truncated Coulomb, Short Range (erfc), Overlap
 Mlibint_wrapperInterface to the Libint-Library or a c++ wrapper
 MlinesearchA generic framework to calculate step lengths for 1D line search
 MlistAn array-based list which grows on demand. When the internal array is full, a new array of twice the size will be allocated and the items are copied over
 Mlist_callstackentryAn array-based list which grows on demand. When the internal array is full, a new array of twice the size will be allocated and the items are copied over
 Mlist_routinereportAn array-based list which grows on demand. When the internal array is full, a new array of twice the size will be allocated and the items are copied over
 Mlist_routinestatAn array-based list which grows on demand. When the internal array is full, a new array of twice the size will be allocated and the items are copied over
 Mlist_timerenvAn array-based list which grows on demand. When the internal array is full, a new array of twice the size will be allocated and the items are copied over
 Mlocal_gemm_api
 Mlri_environment_typesTypes and subroutines for dealing with the lri_env lri : local resolution of the identity
 Mlri_integralsCalculates integrals for LRIGPW method lri : local resolution of the identity
 Mlri_optimize_ri_basis_typesSets the environment for optimization of exponents and contraction coefficients of the lri auxiliary lri : local resolution of the identity
 MmachineMachine interface based on Fortran 2003 and POSIX
 MmathlibCollection of simple mathematical functions and subroutines
 Mmc_environment_typesSubroutines for dealing with the mc_env
 Mmc_typesHolds all the structure types needed for Monte Carlo, except the mc_environment_type
 Mmd_ener_typesSplit md_ener module from md_environment_type
 Mmd_environment_types
 Mmdctrl_typesA common interface for passing a callback into the md_run loop
 Mmemory_utilitiesUtility routines for the memory handling
 Mmessage_passingInterface to the message passing library MPI
 Mmetadynamics_typesDefines types for metadynamics calculation
 Mmixed_cdft_typesTypes for mixed CDFT calculations
 Mmixed_energy_types
 Mmixed_environment_types
 Mmolecule_kind_list_typesRepresent a simple array based list of the given type
 Mmolecule_kind_typesDefine the molecule kind structure types and the corresponding functionality
 Mmolecule_list_typesRepresent a simple array based list of the given type
 Mmolecule_typesDefine the data structure for the molecule information
 MmolsymMolecular symmetry routines
 Mmp2_eriInterface to direct methods for electron repulsion integrals for MP2
 Mmp2_typesTypes needed for MP2 calculations
 Mmp_perf_envDefines all routines to deal with the performance of MPI routines
 Mmscfg_typesTypes used to generate the molecular SCF guess
 MmullikenCompute mulliken charges we (currently) define them as c_i = 1/2 [ (PS)_{ii} + (SP)_{ii} ]
 Mmultipole_typesMultipole structure: for multipole (fixed and induced) in FF based MD
 Mneb_typesTypo for Nudged Elastic Band Calculation
 Mnegf_alloc_typesAllocatable vectors for NEGF based quantum transport calculations
 Mnegf_atom_mapMap atoms between various force environments
 Mnegf_control_typesInput control types for NEGF based quantum transport calculations
 Mnegf_env_typesEnvironment for NEGF based quantum transport calculations
 Mnegf_green_cacheStorage to keep precomputed surface Green's functions
 Mnegf_green_methodsSubroutines to compute Green functions
 Mnegf_integr_ccAdaptive Clenshaw-Curtis quadrature algorithm to integrate a complex-valued function in a complex plane
 Mnegf_integr_simpsonAdaptive Simpson's rule algorithm to integrate a complex-valued function in a complex plane
 Mnegf_integr_utilsHelper functions for integration routines
 Mnegf_subgroup_typesEnvironment for NEGF based quantum transport calculations
 Mnnp_environment_typesData types for neural network potentials
 Moffload_apiFortran API for the offload package, which is written in C
 Moptimize_basis_types
 Morbital_transformation_matricesCalculation of the spherical harmonics and the corresponding orbital transformation matrices
 Mouter_scf_control_typesParameters that control the outer loop of an SCF iteration
 Mpair_potential_types
 Mpao_ioRoutines for reading and writing restart files
 Mpao_typesTypes used by the PAO machinery
 Mparallel_gemm_apiBasic linear algebra operations for full matrixes
 Mparallel_rng_typesParallel (pseudo)random number generator (RNG) for multiple streams and substreams of random numbers
 Mparticle_list_typesRepresent a simple array based list of the given type
 Mparticle_typesDefine the data structure for the particle information
 Mpaw_proj_set_types
 Mpexsi_interfaceInterface to the PEXSI library, providing wrappers for all PEXSI routines that are called inside CP2K. Requires PEXSI version 0.10.x
 Mpexsi_typesEnvironment storing all data that is needed in order to call the DFT driver of the PEXSI library with data from the linear scaling quickstep SCF environment, mainly parameters and intermediate data for the matrix conversion between DBCSR and CSR format
 Mpint_types
 Mpost_scf_bandstructure_types
 Mpowell
 MpreconditionerComputes preconditioners, and implements methods to apply them currently used in qs_ot
 Mpreconditioner_typesTypes of preconditioners
 Mps_implicit_typesTypes containing essential information for running implicit (iterative) Poisson solver
 Mps_wavelet_typesDefinition and initialisation of the ps_wavelet data type
 Mpw_env_typesContainer for various plainwaves related things
 Mpw_grid_types
 Mpw_gridsThis module defines the grid data type and some basic operations on it
 Mpw_methods
 Mpw_poisson_methods
 Mpw_poisson_typesFunctions related to the poisson solver on regular grids
 Mpw_pool_typesManages a pool of grids (to be used for example as tmp objects), but can also be used to instantiate grids that are never given back
 Mpw_spline_utilsDifferent utils that are useful to manipulate splines on the regular grid of a pw
 Mpw_types
 Mpwdft_environment_typesThe type definitions for the PWDFT environment
 MqcschemaThe module to read/write QCSchema HDF5 files for interfacing CP2K with other programs
 Mqmmm_gaussian_typesSets the typo for the gaussian treatment of the qm/mm interaction
 Mqmmm_typesBasic container type for QM/MM
 Mqmmm_types_low
 Mqmmmx_typesBasic container type for QM/MM with force mixing
 Mqs_active_space_typesThe types needed for the calculation of active space Hamiltonians
 Mqs_block_davidson_typesModule that contains the algorithms to perform an itrative diagonalization by the block-Davidson approach P. Blaha, et al J. Comp. Physics, 229, (2010), 453-460 \Iterative diagonalization in augmented plane wave based methods in electronic structure calculations\
 Mqs_cdft_opt_typesControl parameters for optimizers that work with CDFT constraints
 Mqs_cdft_typesDefines CDFT control structures
 Mqs_charges_typesContainer for information about total charges on the grids
 Mqs_collocate_densityCalculate the plane wave density by collocating the primitive Gaussian functions (pgf)
 Mqs_core_energiesCalculation of the energies concerning the core charge distribution
 Mqs_density_matricesCollects routines that calculate density matrices
 Mqs_density_mixing_typesModule that contains the definitions of the scf types
 Mqs_dftb_typesDefinition of the DFTB parameter types
 Mqs_diis_typesBuffer for the diis of the scf
 Mqs_dispersion_cnumCoordination number routines for dispersion pairpotentials
 Mqs_dispersion_typesDefinition of disperson types for DFT calculations
 Mqs_energy_types
 Mqs_environment_types
 Mqs_fb_atomic_halo_types
 Mqs_fb_buffer_types
 Mqs_fb_com_tasks_types
 Mqs_fb_env_types
 Mqs_fb_hash_table_typesA simple hash table of integer keys, using hash function: H(k) = (k*p) mod n + 1 where: k = key p = a prime number >= n n = size of the hash table And collision resolvation is done by open addressing with linear probing
 Mqs_fb_matrix_data_types
 Mqs_fb_trial_fns_types
 Mqs_force_types
 Mqs_gcp_typesDefinition of gCP types for DFT calculations
 Mqs_grid_atom
 Mqs_harmonics_atom
 Mqs_harris_typesTypes needed for a for a Harris model calculation
 Mqs_integral_utilsSome utility functions for the calculation of integrals
 Mqs_kernel_types
 Mqs_kind_typesDefine the quickstep kind type and their sub types
 Mqs_kpp1_env_typesBasis types for the calculation of the perturbation of density theory
 Mqs_ks_qmmm_types
 Mqs_ks_types
 Mqs_linres_typesType definitiona for linear response calculations
 Mqs_loc_typesNew version of the module for the localization of the molecular orbitals This should be able to use different definition of the spread functional It should also calculate the integrals analytically so that it can be used irrespective of the pw_env and the collocation of wfn on the grids It should also work with a selected set of states, instead than all of them, in this case one should check that the selected states have the same occupation number The spread functional can be only estimated, or also optimized by minimization and in principle also maximization should be available. This operations can be required irrespective of the printing requirements It would be highly desirable to do all this along a MD run every N steps, and have a trajectory of the centeroids of the localized wfn In addition these functions can be used for properties calculations like NMR and XAS. Therefore it is necessary that the rotated wfn are then copied in the mos fm matrix to be available for next use
 Mqs_local_rho_types
 Mqs_matrix_poolsWrapper for the pools of matrixes
 Mqs_mo_methodsCollects routines that perform operations directly related to MOs
 Mqs_mo_occupationSet occupation of molecular orbitals
 Mqs_mo_typesDefinition and initialisation of the mo data type
 Mqs_neighbor_list_typesDefine the neighbor list data types and the corresponding functionality
 Mqs_neighbor_listsGenerate the atomic neighbor lists
 Mqs_nl_hash_table_typesA simple hash table of integer keys, using hash function: H(k) = (k*p) mod n + 1 where: k = key p = a prime number >= n n = size of the hash table And collision resolvation is done by open addressing with linear probing
 Mqs_o3c_types3-center overlap type integrals containers
 Mqs_oce_types
 Mqs_ot_typesOrbital transformations
 Mqs_overlapCalculation of overlap matrix, its derivatives and forces
 Mqs_p_env_typesBasis types for the calculation of the perturbation of density theory
 Mqs_period_efield_typesType for berry phase efield matrices. At the moment only used for cosmat and sinmat
 Mqs_rho0_types
 Mqs_rho_atom_types
 Mqs_rho_typesSuperstucture that hold various representations of the density and keeps track of which ones are valid
 Mqs_scf_methodsGroups fairly general SCF methods, so that modules other than qs_scf can use them too split off from qs_scf to reduce dependencies
 Mqs_scf_typesModule that contains the definitions of the scf types
 Mqs_subsys_typesTypes that represent a quickstep subsys
 Mqs_tddfpt2_soc_types
 Mqs_tddfpt2_stda_typesSimplified Tamm Dancoff approach (sTDA)
 Mqs_tddfpt2_subgroups
 Mqs_tddfpt2_types
 Mqs_tensors_typesUtility methods to build 3-center integral tensors of various types
 Mqs_wf_history_typesInterpolate the wavefunctions to speed up the convergence when doing MD
 Mrealspace_grid_types
 Mreftraj_typesInitialization of the reftraj structure used to analyse previously generated trajectories
 Mrel_control_typesParameters that control a relativistic calculation
 Mreplica_typesTypes used to handle many replica of the same system that differ only in atom positions, and velocity. This is useful for things like path integrals or nudged elastic band
 Nrocm_backend
 Mroutine_map
 Mrpa_exchangeAuxiliary routines needed for RPA-exchange given blacs_env to another
 Mrpa_gradRoutines to calculate RI-RPA and SOS-MP2 gradients
 Mrpa_im_time_force_typesTypes needed for cubic-scaling RPA and SOS-Laplace-MP2 forces
 Mrpa_sigma_functionalRoutines to calculate RI-RPA energy and Sigma correction to the RPA energies using the cubic spline based on eigen values of Q(w)
 Mrt_bseRoutines for the propagation via RT-BSE method
 Mrt_bse_typesData storage and other types for propagation via RT-BSE method
 Mrt_propagation_typesTypes and set_get for real time propagation depending on runtype and diagonalization method different matrices are allocated exp_H_old, exp_H_new, mos_new, mos_old contain always real and imaginary parts of the matrices odd index = real part (alpha, beta spin) even index= imaginary part (alpha, beta spin)
 Msap_kind_typesGeneral overlap type integrals containers
 Mscf_control_typesParameters that control an scf iteration
 Msemi_empirical_expns3_typesDefinition of the type to handle the 1/R^3 residual integral part
 Msemi_empirical_mpole_typesDefinition of the semi empirical multipole integral expansions types
 Msemi_empirical_par_utilsUtilities to post-process semi-empirical parameters
 Msemi_empirical_store_int_typesType to store integrals for semi-empirical calculations
 Msemi_empirical_typesDefinition of the semi empirical parameter types
 Mshell_potential_types
 Msimpar_typesType for storing MD parameters
 Msmeagol_control_typesInput control types for NEGF/SMEAGOL transport calculations
 Msmeagol_matrix_utilsRoutines to convert sparse matrices between DBCSR (distributed-blocks compressed sparse rows) and SIESTA (distributed compressed sparse columns) formats
 Msockets_interfaceImplements UNIX and INET sockets
 Mspace_groups_typesSpace Group Symmetry Type Module (version 1.0, Ferbruary 12, 2021)
 Mspherical_harmonicsCalculate spherical harmonics
 Msplines_typesRoutines for handling splines_types
 MspmeCalculate the electrostatic energy by the Smooth Particle Ewald method
 Mstring_utilitiesUtilities for string manipulations
 Mstructure_factor_types
 Msubcell_typesSubcell types and allocation routines
 Msubmatrix_dissection
 Msubmatrix_types
 Mswarm_masterMaster's routines for the swarm-framework
 Mswarm_messageSwarm-message, a convenient data-container for with build-in serialization
 Mswarm_mpiHandles the MPI communication of the swarm framework
 Mswarm_workerWorkers's routines for the swarm-framework
 Mtaper_typesDefinition of the semi empirical parameter types
 Mtask_list_typesTypes for task lists
 Mthermal_region_typesThermal regions type: to initialize and control the temperature of different regions
 Mthermostat_typesThermostat structure: module containing thermostat available for MD
 Mtimings_base_typeTypes used by timings.F and timings_report.F The types in this module are used within dict or list, which are in turn used in timer_env_type from timings_type.F Due to the fortran restriction on cicular module-dependencies these "inner-types" had to go into a separate module
 Mtimings_typesTypes used by timings.F and timings_report.F Due to the fortran restriction on cicular module-dependencies the types, which are used through dict or list had to go into the separate module timings_base_type.F
 Mtip_scan_types
 Mtmc_analysis_typesModule provides variables for the TMC analysis tool
 Mtmc_move_typesTree nodes creation, searching, deallocation, references etc
 Mtmc_tree_typesModule handles definition of the tree nodes for the global and the subtrees binary tree parent element / \ accepted (acc) / \ not accepted (nacc) / \ child child / \ / \
 Mtmc_typesModule handles definition of the tree nodes for the global and the subtrees binary tree parent element / \ accepted (acc) / \ not accepted (nacc) / \ child child / \ / \
 Mtopology_types
 Mtopology_utilCollection of subroutine needed for topology related things
 Mtorch_api
 Mtransport_env_typesCP2K transport environment and related C-interoperable types
 MutilAll kind of helpful little routines
 Mvirial_types
 Mwannier_states_typesDefines the type needed for computing wannier states expectations
 Mxas_controlDefines control structures, which contain the parameters and the settings for the calculations
 Mxas_env_typesDefine create destroy get and put information in xas_env to calculate the x-ray absorption spectra
 Mxas_tdp_typesDefine XAS TDP control type and associated create, release, etc subroutines, as well as XAS TDP environment type and associated set, get, etc subroutines
 Mxc_derivative_set_typesRepresent a group ofunctional derivatives
 Mxc_derivative_typesProvides types for the management of the xc-functionals and their derivatives
 Mxc_functionals_utilitiesUtility routines for the functional calculations
 Mxc_rho_cflags_typesStructure
 Mxc_rho_set_typesStructure
 Mxc_utilUtility functions for the xc package
 Mxtb_potentialsXTB (repulsive) pair potentials Reference: Stefan Grimme, Christoph Bannwarth, Philip Shushkov JCTC 13, 1989-2009, (2017) DOI: 10.1021/acs.jctc.7b00118
 Mxtb_typesDefinition of the xTB parameter types
 C_layout
 C_task
 Cbackend_context_tPrivate struct for storing the context of the multiplication backend
 Ccab_storeCab matrix container to be passed through get_force/virial to cab_get
 Ccollocation_integration_
 Ccp2k_csr_interop_typeCP2K's C-interoperable CSR matrix This definition matches the respective type definition in the transport_env_types module
 Ccp2k_transport_parametersTransport parameters read from a CP2K input file. This definition matches the respective type definition in the transport_env_types module
 Cdbm_block_tInternal struct for storing a block's metadata
 Cdbm_comm_iterator_tInternal struct for storing a communication iterator
 Cdbm_dist_1d_tInternal struct for storing a one dimensional distribution
 Cdbm_distribution_tInternal struct for storing a two dimensional distribution
 Cdbm_iterator_tInternal struct for storing a block iterator
 Cdbm_matrix_tInternal struct for storing a matrix
 Cdbm_memchunkPrivate struct for storing a chunk of memory
 Cdbm_memstats_tInternal struct for pool statistics
 Cdbm_pack_block_tInternal struct for storing a dbm_block_t plus its norm
 Cdbm_pack_tInternal struct for storing a pack - essentially a shard for MPI
 Cdbm_packed_matrix_tInternal struct for storing a packed matrix
 Cdbm_shard_tInternal struct for storing a matrix shard
 Cdbm_task_tInternal struct for storing a task, ie. a single block multiplication
 Cdgemm_params_
 Cgrid_basis_setInternal representation of a basis set
 Cgrid_context_
 Cgrid_cpu_layoutInternal representation of a grid layout
 Cgrid_cpu_taskInternal representation of a task
 Cgrid_cpu_task_listInternal representation of a task list
 Cgrid_library_configConfiguration of the grid library
 Cgrid_library_globals
 Cgrid_ref_layoutInternal representation of a grid layout
 Cgrid_ref_taskInternal representation of a task
 Cgrid_ref_task_listInternal representation of a task list
 Cgrid_sphere_cacheStruct holding the entire sphere cache, ie. for all grids
 Cgrid_sphere_cache_entryStruct holding the sphere cache for one grid as specified by dr[3]
 Cgrid_task_listInternal representation of a task list, abstracting various backends
 CInterval
 Clibgrpp_grpp_t
 Clibgrpp_parameters_t
 Clibgrpp_potential_t
 Clibgrpp_shell_t
 Cmmd_data
 Coffload_bufferInternal representation of a buffer
 CorbitalOrbital angular momentum
 Cpab_computation_struct_
 Cplan_tPrivate struct used for planing during pack_matrix
 Cprepare_ldiffsDifferences in angular momentum
 Cprocess_ldiffsDifferences in angular momentum
 Cradial_type1_grid_t
 Cradial_type1_params_t
 Cradial_type1_table_t
 Cradial_type2_grid_t
 Cradial_type2_params_t
 Cradial_type2_table_t
 Crsh_coef_table_t
 Ctensor_