Potential Energy Surface Scanning

Overview

The PES Scan module performs systematic exploration of the potential energy surface along user-specified internal coordinates. It supports one-dimensional (1D), two-dimensional (2D), and arbitrary N-dimensional scans. Two scan modes are available: relaxed scans, where all coordinates except the scanned ones are optimized at each step, and rigid scans, where all other coordinates are frozen at their initial values.

PES scans are commonly used for constructing torsional energy profiles, mapping bond-dissociation curves, exploring conformational landscapes, and generating starting geometries for transition-state searches.

Scan Coordinate Syntax

Scan coordinates are specified with the S command at the end of the input file, after the molecular geometry. The format depends on the type of internal coordinate being scanned:

  • Distance scan (2 atoms): S atom1 atom2 step_size n_steps
  • Angle scan (3 atoms): S atom1 atom2 atom3 step_size n_steps
  • Dihedral scan (4 atoms): S atom1 atom2 atom3 atom4 step_size n_steps

Where:

  • atom1, atom2, ... — 1-based atom indices defining the internal coordinate to scan.
  • step_size — increment per step (in Angstroms for bonds, degrees for angles/dihedrals). Negative values scan in the decreasing direction.
  • n_steps — number of scan steps to perform.

Scan Modes

MAPLE supports two scan modes, selected via the mode parameter in the #scan header:

Mode Description Use Case
relaxed Optimizes all degrees of freedom except the scanned coordinates at each scan point. Produces a minimum-energy path along the scan coordinate. Torsional profiles, bond dissociation curves, conformational analysis.
rigid Freezes all coordinates at their initial values; only the scanned coordinate changes. No geometry optimization is performed. Quick energy profiles, repulsive wall scans, initial survey of PES topology.

Input Example

A simple 1D relaxed bond scan between atoms 1 and 2:

#model=uma
#scan
#device=gpu0

C   0.0  0.0  0.0
H   1.0  0.0  0.0
O   2.0  0.0  0.0

S 1 2 -0.1 15

This performs 15 steps along the C–H bond, decreasing the distance by 0.1 Å at each step. Since no method is specified, the default L-BFGS optimizer is used for relaxed optimization at each scan point.

2D Scan Example

To scan two coordinates simultaneously, specify multiple S lines. MAPLE constructs the full Cartesian-product grid of scan points:

S 1 2 -0.1 15
S 2 3 -0.05 10

This produces a 15 × 10 = 150 grid of scan points. At each point, both scanned coordinates are constrained to their target values and all remaining degrees of freedom are optimized.

Scan Settings

The scan mode and optimizer are set via the #scan header line:

#scan(mode=relaxed)
#scan(mode=rigid)
Parameter Type Default Description
mode str "relaxed" Scan mode: "relaxed" (optimize at each point) or "rigid" (freeze all other coordinates).
method str "lbfgs" Optimizer for relaxed scans. Valid: "lbfgs", "cg".

Note

During relaxed scans, the L-BFGS optimizer uses the following hardcoded defaults: memory=5, curvature=70, max_step=0.2, max_iter=128. These are not the same as the optimization task L-BFGS parameters and cannot be overridden from the input file.

Output Files

The scan module produces the following output files:

  • *_scan_final.xyz — Multi-frame XYZ file containing the optimized geometry at each scan point. Can be visualized as a trajectory in standard molecular viewers.
  • *.out — Main text output with convergence diagnostics, energies, and coordinates for every scan point.

The scan trajectory file uses the standard multi-frame XYZ format, with one frame per converged scan point. Each frame header includes the scan combination index and the target values of the scanned internal coordinates.