All Parameters¶
This page lists all parameters you can use in SCGO. For preset functions and their defaults, see Parameter Presets.
Parameter resolution¶
All high-level run_* functions share the same contract:
Safe defaults — pass
params=None,go_params=None, orts_params=Noneto use full preset defaults.Partial overrides — pass a dict with only the keys you want to change; runners merge with defaults before execution.
Presets encouraged — start from a Parameter Presets builder, inspect/edit, then pass to
run_*.
Merge rules
Dict |
Merge behaviour |
|---|---|
|
Deep-merge onto |
|
Deep-merge onto |
Forbidden in dicts |
Top-level |
Run kwargs |
|
Logging (verbosity >= 1): SCGO logs the defaults source and a flat list of user overrides, then the resolved GO optimizer settings or TS NEB configuration. See scgo.utils.run_helpers.
Verbosity levels (run_* verbosity= argument):
Level |
Behaviour |
|---|---|
0 |
Warnings and errors only; no progress bars |
1 |
Normal operation: parameter merge logs, timing summaries, campaign progress |
2 |
DEBUG-level library messages (third-party loggers still suppressed in HPC mode) |
3 |
TRACE-level diagnostics (deepest SCGO logging) |
Configure the root logger with configure_logging(). Set
SCGO_LOCAL_DEV=1 for milder third-party log suppression during local
development (see Installation).
Workflow
from scgo import run_go_ts
from scgo.param_presets import get_default_params, get_ts_search_params
go_params = get_default_params()
go_params["optimizer_params"]["ga"]["niter"] = 8
ts_params = get_ts_search_params(system_type="gas_cluster")
ts_params["max_pairs"] = 12
summary = run_go_ts(
"Pt5",
go_params=go_params,
ts_params=ts_params,
system_type="gas_cluster",
seed=7,
)
GO Parameters¶
Passed as params or go_params to run_go, run_go_campaign, run_go_ts, etc.
Algorithm selection
Runners call select_scgo_minima_algorithm() automatically:
gas_clusteronly, ≤2 mobile atoms →simple(simple_go.db)3 atoms → Basin Hopping (
bh_go.db)≥4 atoms, or any surface/adsorbate type → Genetic Algorithm (
ga_go.db)
Top-Level:
|
|
Calculator: |
|---|---|---|
|
|
Calculator options (e.g., |
|
|
Random seed (function argument overrides) |
|
|
|
|
|
Glob pattern for reference DBs (for diversity mode) |
|
|
Connectivity threshold (covalent radii multiplier) for initialization validation and post-operator GA checks; see Cluster initialization |
|
|
Allow cluster to split (surface only) |
|
|
Allow adsorbates without cluster contact |
|
|
Keep adsorbate fragments connected |
|
|
Keep adsorbate fragments rigid |
|
|
Required for surface runs |
|
|
Tune adsorbate placement |
|
|
Run vibrational analysis |
|
|
Mark final structures in database |
|
|
Force threshold for validation (eV/\(\AA\)) |
|
|
Check Hessian during validation |
|
|
Imaginary frequency cutoff (cm-1) |
Simple (``optimizer_params[“simple”]``) — used for 1–2 atom gas clusters only:
|
|
Local optimizer name |
|---|---|---|
|
|
Force convergence (eV/\(\AA\)) |
|
|
Relaxation steps |
|
|
Local relaxation budget |
GA (``optimizer_params[“ga”]``):
|
|
Number of structures in population |
|---|---|---|
|
|
Number of generations |
|
|
Probability of mutating each structure |
|
|
Fraction of population replaced each generation |
|
|
Force convergence (eV/\(\AA\)) |
|
|
Vacuum around clusters (\(\AA\)) |
|
|
Auto-adjust mutation rate |
|
|
Stop if no improvement for N generations |
|
|
Parallel jobs for population init (-2 = all but 1) |
|
|
Parallel jobs for offspring |
|
|
Write timing to JSON |
|
|
Include per-generation timing |
|
|
Generations without improvement before adaptive mutation boost |
|
|
Stronger stagnation threshold |
|
|
Generations to watch after a mutation boost |
|
|
Mutation-rate multiplier on stagnation |
|
|
Cap on adaptive mutation probability |
|
|
TorchSim batch size (when using a relaxer) |
|
|
Optional TorchSim relaxer instance |
BH (``optimizer_params[“bh”]``):
|
500K |
Temperature for accepting moves |
|---|---|---|
|
|
Maximum step size (\(\AA\)) |
|
|
Fraction of atoms to move |
|
|
Remove duplicates |
|
|
Energy tolerance for duplicates (eV) |
|
|
Atom move strategy |
|
(default) |
Structure comparator tolerance |
|
(default) |
Pair correlation cutoff for deduplication |
|
|
Optional |
TS Parameters¶
Passed as ts_params to run_ts_search, run_ts_campaign, run_go_ts, etc. Sparse dicts are merged with get_ts_search_params() defaults at run time.
Core:
|
|
Calculator for TS search |
|---|---|---|
|
|
Calculator options |
|
|
Maximum minima pairs to check (None = all) |
|
|
Max energy gap to attempt TS (eV) |
|
|
Use TorchSim for NEB |
|
|
Run NEB in parallel |
|
|
Remove duplicate minima before pairing |
|
|
Connectivity threshold |
|
(default) |
Minima similarity tolerance for pairing |
|
|
Pair-correlation cap for similarity |
|
|
Energy tolerance when deduplicating minima |
|
|
TorchSim NEB batch size |
|
|
Write TS timing JSON sidecar |
NEB:
|
|
Number of images |
|---|---|---|
|
|
Maximum optimization steps |
|
|
Force convergence (eV/\(\AA\)) |
|
|
Spring constant (eV/\(\AA\)2) |
|
|
Use climbing image |
|
|
Align endpoints before interpolation |
|
|
Use minimum image convention |
|
|
Gaussian perturbation on band (Å) |
|
|
Interpolation method |
|
(default) |
NEB tangent method |
|
|
TorchSim force tolerance (not a runner kwarg; mapped internally) |
|
|
TorchSim step budget (mapped internally) |
Surface NEB (differences from gas):
neb_interpolation_mic=True(forced)neb_surface_cell_remap=Trueneb_surface_lattice_rotation=Trueneb_surface_max_lattice_shift=1
Surface Config¶
|
Required |
ASE Atoms object |
|---|---|---|
|
|
Minimum height above slab (\(\AA\)) |
|
|
Maximum height above slab (\(\AA\)) |
|
|
Normal axis (0=x, 1=y, 2=z) |
|
|
Keep entire slab frozen |
|
|
Top layers to relax |
|
|
Bottom layers to freeze |
|
|
Use MIC in structure comparator on surfaces |
|
(optional) |
Extra vacuum for cluster init on slab |
|
|
Surface cluster init mode: |
|
(optional) |
Max cluster placement attempts on slab |
|
(optional) |
Connectivity factor for slab validation |
Note
Use only one of the layer options, not both. See Surface workflows for the full SurfaceSystemConfig field list.
Adsorbate Config¶
|
|
Minimum placement height (\(\AA\)) |
|---|---|---|
|
|
Maximum placement height (\(\AA\)) |
|
|
Maximum placement tries |
|
|
Clash threshold |
See Also¶
Quick Start - How to use these parameters
Parameter Presets - Preset functions and their defaults
API Reference - API function documentation