PES Scan with SD Optimization

Overview

Steepest Descent (SD) is available for relaxed PES scans through #scan(method=sd). It reuses the SD-only mode of MAPLE's SD/CG optimizer family at every scan point.

SD is robust for distorted geometries and high-force regions, but it usually converges more slowly near a minimum. It is most useful as a stabilizing scan optimizer for rough starting structures or problematic scan points.

Parameters

Per-point SD settings reuse the same controls as #opt(method=sd). With method=sd the CG phase is disabled at each scan point; the scan driver keeps per-point optimizer verbosity quiet.

Parameter Type Default Description
max_step float 0.2 Maximum step length in Angstrom.
max_iter int 256 Maximum SD iterations per scan point.
sd_max_iter int 50 Maximum SD iterations before stopping (when used as a standalone method).
diis_enabled bool True Enable DIIS extrapolation acceleration.
diis_store_every int 5 Store a DIIS snapshot every N steps.
diis_min_snapshots int 3 Minimum snapshots required before DIIS extrapolation is attempted.
diis_memory int 6 Maximum number of DIIS snapshots stored.
verbose int 0 in scans Per-point optimizer verbosity. Scan keeps this low so the scan log stays readable.

Input Example

Checked-in MAPLE example: example/scan/sd/dimethyl_peroxide_torsion.inp. This is the relaxed dimethyl peroxide torsion scan shown in the visualization below:

#model=aimnet2nse
#scan(method=sd,mode=relaxed)
#device=gpu0

C     -0.38846526    -0.54120852     0.47889724
O     -0.43299775    -0.36385918    -0.93087360
O      0.57946000     0.64373500    -1.22768354
C      1.45974812     0.03203524    -2.16138925
H      0.59947954    -0.89956469     0.78229810
H     -1.13763115    -1.28584057     0.75935167
H     -0.61851510     0.40189440     0.98297169
H      2.23953829     0.75053877    -2.42607962
H      1.92682619    -0.85102187    -1.71579499
H      0.91182580    -0.24730864    -3.06593618

S 1 2 3 4 5.0 72

The final S line is a dihedral scan: four atom indices followed by a 5.0 degree step and 72 increments, producing 73 scan points including the initial geometry.

Scan Visualization

The animation below pairs the generated scan geometries with the energy profile for a relaxed dimethyl peroxide torsion scan using SD.

SD dimethyl peroxide torsion scan animation with energy profile
Fig. 1 — Dimethyl peroxide torsion relaxed scan (SD)

When to Use SD Scans

  • Severely distorted scan geometries: When early scan points have large steric clashes or unreasonable bond lengths, SD rapidly reduces the worst per-point forces without requiring Hessian information.
  • Robust pre-relaxation: A short SD scan can stabilise structures before switching to L-BFGS, CG, or SD/CG.
  • Avoid for large production grids: SD's slow convergence near the minimum makes it inefficient when a faster optimizer would converge reliably.
Note

Pure SD is rarely the best choice for a complete scan. Consider SD/CG to automatically transition to conjugate gradient once large initial forces have been reduced.