Skip to content

Preparing Input Files for CHAMP

CHAMP requires a well-structured set of input files to perform quantum Monte Carlo calculations. This section provides comprehensive guidance on preparing all necessary input data, from molecular geometry and wavefunctions to Jastrow factors and calculation parameters.

Overview

Running a CHAMP calculation requires two main components:

  1. Main input file (.inp or .in) - Contains calculation parameters and references to data files
  2. Supporting data files - Geometry, basis sets, orbitals, determinants, and Jastrow factors

CHAMP offers two primary methods for input preparation:

The modern approach uses TREXIO files (HDF5 or text format) to provide most input data in a standardized format:

  • Single file contains geometry, basis sets, orbitals, and determinants
  • Standardized format compatible with multiple QMC codes
  • Generated by quantum chemistry codes (Quantum Package, PySCF, etc.)
  • Simplifies input preparation and reduces errors
  • Only Jastrow factors need separate files

Example input with TREXIO:

%module general
    title           'VMC calculation using TREXIO'
    mode            'vmc_one_mpi'
%endmodule

load trexio          butadiene.hdf5

load jastrow         jastrow.jas
load jastrow_der     jastrow.der

%module blocking_vmc
    vmc_nstep     20
    vmc_nblk      100
    vmc_nblkeq    1
    vmc_nconf_new 0
%endmodule

See the TREXIO Input Guide for complete details.

Method 2: Individual Data Files (ASCII txt files)

The traditional approach uses separate files for each component:

Example input with individual files:

%module general
    title        'butadiene VMC calculation'
    pool         'pool/'
    pseudopot    'BFD'
    basis        'BFD-T'
    mode         'vmc_one_mpi'
%endmodule

load molecule        $pool/champ_v3_butadiene.xyz
load basis_num_info  $pool/champ_v3_BFD-T_basis_pointers.bfinfo
load determinants    TZ_1M_5k.det
load orbitals        champ_v3_ci1010_pVTZ_1_orbitals.lcao
load symmetry        champ_v3_ci1010_pVTZ_1_symmetry.sym
load jastrow         jastrow_good_b3lyp.0
load jastrow_der     jastrow.der

%module electrons
    nup           11
    nelec         22
%endmodule

%module blocking_vmc
    vmc_nstep     20
    vmc_nblk      100
    vmc_nblkeq    1
    vmc_nconf_new 0
%endmodule

Required Input Components

Essential Data (Required)

Component Description TREXIO Traditional
Molecular Geometry Atomic coordinates and nuclear charges ✓ Included Separate file
Basis Sets Gaussian basis function definitions ✓ Included Separate files
Basis Pointers Mapping between atoms and basis functions ✓ Included Separate file
Molecular Orbitals MO coefficients from DFT/HF/MCSCF ✓ Included Separate file
Determinants/CSFs Wavefunction determinants or CSFs ✓ Included Separate file
Electron Count Number of up/down electrons ✓ Included Module parameter
Jastrow Factors Correlation factor parameters ✗ External Separate file

Optional Data

Component Description TREXIO Traditional
Pseudopotentials Effective core potential (ECP)/pseudopotential ✓ Included Separate file
Jastrow Derivatives For Jastrow optimization ✗ External Separate file
Orbital Symmetries For symmetry exploitation ✓ Included Separate file
Orbital Eigenvalues For reference energies ✗ External Separate file

Input File Structure

CHAMP input files use a modular structure with %module blocks defining different aspects of the calculation:

Common Modules

%module general
    # Global settings: title, file paths, calculation mode, verbosity level
%endmodule

%module electrons
    # Electron configuration: nup, nelec
%endmodule

%module blocking_vmc
    # VMC parameters: steps, blocks, equilibration
%endmodule

%module blocking_dmc
    # DMC parameters: time step, target population
%endmodule

%module optwf
    # Wavefunction optimization parameters
%endmodule

Each module contains keyword-value pairs specific to that calculation aspect. See individual sections for detailed keyword documentation.

Data Loading Commands

CHAMP uses load commands to read external data files:

# TREXIO file (contains multiple data types)
load trexio          molecule.hdf5

# Individual data files
load molecule        geometry.xyz
load basis_num_info  basis_pointers.bfinfo
load determinants    determinants.det
load orbitals        orbitals.lcao
load jastrow         jastrow.jas
load jastrow_der     jastrow.der
load symmetry        symmetry.sym
load eigenvalues     eigenvalues.eig

Path conventions:

  • Absolute paths: /full/path/to/file.xyz
  • Relative paths: ./pool/file.xyz or pool/file.xyz
  • Variable expansion: $pool/file.xyz (where pool is defined in %module general)

Typical Workflow for Input Preparation

Starting from Quantum Chemistry Calculations

  1. Perform electronic structure calculation
  2. Use DFT, Hartree-Fock, or MCSCF in codes like GAMESS, Quantum Package, or ORCA
  3. Optimize geometry, compute orbitals and determinants

  4. Generate CHAMP input files

  5. Option A (Recommended): Export to TREXIO format
    • Use trexio_tools or quantum chemistry code plugins
    • Provides single HDF5 file with all wavefunction data
  6. Option B: Convert individual files to CHAMP format using the script provided

    • Extract geometry, basis sets, orbitals, determinants separately
    • Use conversion scripts from quantum chemistry output
  7. Create or optimize Jastrow factors

  8. Start with simple Jastrow (e.g., 2-body only)
  9. Optimize parameters using VMC optimization
  10. Optionally include 3-body terms

  11. Set up calculation parameters

  12. Define electron count (nup, nelec)
  13. Choose calculation mode (VMC, DMC, optimization)
  14. Set sampling parameters (steps, blocks, walkers)

  15. Validate inputs

  16. Run short test calculation
  17. Check energy convergence
  18. Verify file paths and data loading

Input File Sections Reference

TREXIO Files
Molecular Geometry
Effective Core Potentials
Basis Sets
Basis Set Pointers
Molecular Orbitals
Determinants and/or Configuration State Functions
Jastrow Factors
Jastrow Derivatives
Molecular Orbital Symmetries
Molecular Orbital Eigenvalues

Next Steps

After preparing input files:

  1. Validate inputs - Run short test calculation
  2. Optimize Jastrow - Use VMC optimization to improve correlation factors
  3. Production VMC - Equilibrate and sample for statistics
  4. DMC calculations - Use optimized wavefunction for DMC

Additional Resources

Getting Help