Skip to main content
← OpenMECP Documentation

build_program_header_with_basename

Function build_program_header_with_basename 

Source
pub fn build_program_header_with_basename(
    config: &Config,
    charge: i32,
    mult: usize,
    td_or_tail: &str,
    state: usize,
    input_basename: &str,
) -> String
Expand description

Builds a program-specific input file header string with input basename for ORCA .gbw paths.

This function is specifically designed for cases where you need to specify the basename of the input file for ORCA calculations, which is used to construct proper .gbw file paths (e.g., “calc/state_A.gbw” instead of “running_dir/state_A.gbw”).

§Arguments

  • config - The global configuration for the MECP calculation
  • charge - Molecular charge for the current state
  • mult - Spin multiplicity for the current state
  • td_or_tail - TD-DFT keywords (Gaussian) or tail section content (ORCA)
  • state - State index for multi-reference calculations (BAGEL)
  • input_basename - Basename of input file for ORCA .gbw paths (e.g., “calc” for “calc.inp”)

§Returns

Returns a String containing the formatted input header for the specified program.

§Examples

use omecp::config::{Config, QMProgram, RunMode};
use omecp::io;

let mut config = Config::default();
config.program = QMProgram::Orca;
config.method = "B3LYP def2-SVP".to_string();
config.run_mode = RunMode::Read;

// This will generate ORCA header with "calc/compound_xyz_123_state_A.gbw" paths
let header = io::build_program_header_with_basename(&config, 0, 1, "", 0, "calc/compound_xyz_123");