mqc_program_limits Module

Contains compile-time limits and default values for the metalquicha program. These are tunable parameter that control memory allocation and algorithm behavior.


Uses

    • pic_types
  • module~~mqc_program_limits~~UsesGraph module~mqc_program_limits mqc_program_limits pic_types pic_types module~mqc_program_limits->pic_types

Used by

  • module~~mqc_program_limits~~UsedByGraph module~mqc_program_limits mqc_program_limits module~mqc_json_writer mqc_json_writer module~mqc_json_writer->module~mqc_program_limits module~mqc_mbe mqc_mbe module~mqc_mbe->module~mqc_program_limits module~mqc_driver mqc_driver module~mqc_driver->module~mqc_json_writer module~mqc_driver->module~mqc_mbe module~mqc_mbe_fragment_distribution_scheme mqc_mbe_fragment_distribution_scheme module~mqc_driver->module~mqc_mbe_fragment_distribution_scheme module~mqc_mbe_fragment_distribution_scheme->module~mqc_mbe module~mpi_fragment_work_smod mpi_fragment_work_smod module~mpi_fragment_work_smod->module~mqc_mbe_fragment_distribution_scheme module~mqc_gmbe_fragment_distribution_scheme mqc_gmbe_fragment_distribution_scheme module~mqc_gmbe_fragment_distribution_scheme->module~mqc_mbe_fragment_distribution_scheme module~mqc_hessian_distribution_scheme mqc_hessian_distribution_scheme module~mqc_hessian_distribution_scheme->module~mqc_mbe_fragment_distribution_scheme module~mqc_serial_fragment_processor mqc_serial_fragment_processor module~mqc_serial_fragment_processor->module~mqc_mbe_fragment_distribution_scheme module~mqc_unfragmented_workflow mqc_unfragmented_workflow module~mqc_unfragmented_workflow->module~mqc_mbe_fragment_distribution_scheme proc~compute_energy_and_forces compute_energy_and_forces proc~compute_energy_and_forces->module~mqc_driver proc~gmbe_run_distributed gmbe_context_t%gmbe_run_distributed proc~gmbe_run_distributed->module~mqc_mbe_fragment_distribution_scheme proc~gmbe_run_distributed->module~mqc_gmbe_fragment_distribution_scheme proc~mbe_run_distributed mbe_context_t%mbe_run_distributed proc~mbe_run_distributed->module~mqc_mbe_fragment_distribution_scheme proc~mbe_run_serial mbe_context_t%mbe_run_serial proc~mbe_run_serial->module~mqc_mbe_fragment_distribution_scheme program~main main program~main->module~mqc_driver proc~gmbe_run_serial gmbe_context_t%gmbe_run_serial proc~gmbe_run_serial->module~mqc_gmbe_fragment_distribution_scheme

Variables

Type Visibility Attributes Name Initial
real(kind=dp), public, parameter :: DEFAULT_FD_DISPLACEMENT = 0.005_dp

Default step size for finite difference calculations (Bohr) ~0.005 Bohr = ~0.0026 Angstrom, suitable for Hessian/gradient FD

character(len=*), public, parameter :: JSON_REAL_FORMAT = 'ES'

JSON output format for real numbers (scientific notation) Valid values: ‘G’, ‘E’, ‘EN’, ‘ES’ (json-fortran uses machine precision)

integer, public, parameter :: MAX_ELEMENT_SYMBOL_LEN = 4

Maximum length for element symbols (e.g., “He”, “Uue”)

integer, public, parameter :: MAX_LINE_LENGTH = 1024

Maximum length for input file lines

integer, public, parameter :: MAX_MBE_LEVEL = 10

Maximum MBE truncation order (1-body, 2-body, …, N-body) Higher orders require factorial growth in fragment combinations

real(kind=dp), public, parameter :: MIN_ATOM_DISTANCE = 0.01_dp

Minimum allowed distance between atoms (Bohr) Atoms closer than this are considered overlapping (error condition)