| File | Description |
|---|---|
| main.f90 | Main program for metalquicha quantum chemistry calculations |
| mqc_basis_file_reader.f90 | this file contains the modules and routines to open and read a GAMESS formatted basis set file |
| mqc_basis_reader.f90 | This file contains basis set reader routines for basis sets |
| mqc_basis_utils.f90 | Utilities for handling basis set names and files |
| mqc_calc_types.f90 | Calculation type constants for quantum chemistry calculations |
| mqc_calculation_defaults.f90 | Centralized default values for calculation parameters |
| mqc_calculation_interface.f90 | External calculation interface for geometry optimization, AIMD, and Monte Carlo |
| mqc_calculation_keywords.f90 | Calculation keyword types for structured configuration |
| mqc_cgto.f90 | Data structures for cartesian contracted Gaussian type orbitals (CGTOs) |
| mqc_cli_parser.f90 | Command line argument parsing for metalquicha |
| mqc_combinatorics.f90 | Combinatorial mathematics utilities for fragment generation |
| mqc_config_adapter.f90 | Adapter module to convert mqc_config_t to internal driver structures This module provides a bridge between the .mqc file format and the driver backend |
| mqc_config_parser.F90 | Parser for MQC section-based input files (.mqc format) |
| mqc_config_parser_basic_sections.f90 | Basic section parsers for MQC config files Handles: schema, model, driver, scf, xtb, system sections |
| mqc_config_parser_calc_settings.f90 | Calculation settings section parsers for MQC config files Handles: hessian, aimd, fragmentation sections |
| mqc_config_parser_fragments.f90 | Fragments and connectivity section parsers for MQC config files Handles: fragments, connectivity sections and their generic helpers |
| mqc_config_parser_molecules.f90 | Molecules section parser for MQC config files Handles: molecules section with multiple molecule blocks |
| mqc_config_parser_structure.f90 | Structure and geometry section parsers for MQC config files Handles: structure, geometry sections and their generic helpers |
| mqc_driver.f90 | Main calculation driver module for metalquicha |
| mqc_elements.f90 | Periodic table data and element utilities |
| mqc_error.f90 | Error handling module for metalquicha Provides a unified error type to replace stat/errmsg pairs Enhanced with stack trace support for better debugging |
| mqc_finite_differences.f90 | Finite difference utilities for numerical derivatives |
| mqc_frag_utils.f90 | Fragment generation and manipulation utilities |
| mqc_fragment_lookup.f90 | Hash-based lookup table for fast fragment index retrieval |
| mqc_geometry.f90 | Geometry data structure for molecular systems |
| mqc_gmbe_fragment_distribution_scheme.f90 | Generalized Many-Body Expansion (GMBE) fragment distribution module |
| mqc_gmbe_utils.f90 | GMBE (Generalized Many-Body Expansion) utilities for overlapping fragments |
| mqc_io_helpers.f90 | IO helper utilities for file naming and string operations Provides utilities for output filename management and string parsing |
| mqc_json.f90 | JSON output utilities for multi-molecule calculations |
| mqc_json_output_types.f90 | Unified JSON output data container Centralizes all data needed for JSON output from any calculation type |
| mqc_json_writer.f90 | Centralized JSON output writer Single entry point for all JSON output in metalquicha |
| mqc_libcint_interface.f90 | Libcint Fortran interface module |
| mqc_logo.f90 | ASCII art logo display for metalquicha |
| mqc_many_body_expansion.f90 | Many-Body Expansion abstract base type and concrete implementations |
| mqc_mbe.f90 | Many-Body Expansion (MBE) calculation module |
| mqc_mbe_fragment_distribution_scheme.F90 | Many-Body Expansion (MBE) calculation module |
| mqc_mbe_fragment_distribution_scheme_hessian.F90 | |
| mqc_mbe_io.f90 | |
| mqc_mbe_mpi_fragment_distribution_scheme.F90 | |
| mqc_method_base.f90 | Abstract base module for quantum chemistry method implementations |
| mqc_method_config.f90 | Unified configuration type for quantum chemistry method creation |
| mqc_method_dft.f90 | Density Functional Theory (DFT) method implementation for metalquicha |
| mqc_method_factory.F90 | Factory for creating quantum chemistry method instances |
| mqc_method_hf.f90 | Hartree-Fock method implementation for metalquicha |
| mqc_method_mcscf.f90 | Multi-Configurational Self-Consistent Field (MCSCF) method implementation |
| mqc_method_types.f90 | Method type constants for quantum chemistry methods |
| mqc_method_xtb.f90 | Extended Tight-Binding (xTB) quantum chemistry method implementation |
| mqc_mpi_comms.f90 | MPI communicators container for the application |
| mqc_mpi_tags.f90 | contains MPI tags used in the MQC parallel implementation |
| mqc_physical_constants.f90 | Physical constants and unit conversion factors |
| mqc_physical_fragment.f90 | This file contains all routines and types to represent a “physical” fragment or molecule i.e., with atomic coordinates, element types, electronic properties, etc. |
| mqc_program_limits.f90 | Program limits and default parameter, publics |
| mqc_resources.f90 | Resources container for calculation methods |
| mqc_result_types.f90 | Quantum chemistry calculation result containers |
| mqc_serial_fragment_processor.f90 | |
| mqc_thermochemistry.f90 | Thermochemistry calculations using the Rigid Rotor Harmonic Oscillator (RRHO) approximation |
| mqc_unfragmented_workflow.f90 | |
| mqc_vibrational_analysis.f90 | Vibrational frequency analysis from Hessian matrix |
| mqc_xyz_reader.f90 | XYZ molecular geometry file reader |