pdb2reaction tsopt

Usage: pdb2reaction tsopt [OPTIONS]

  Transition state optimization (Dimer or RS-P-RFO).

Options:
  -v, --verbose LEVEL             Console verbosity 0-3 (default 2). 0=silent;
                                  1=milestones only; 2=+optimizer cycle tables,
                                  per-stage timing, VRAM, deliverable paths;
                                  3=everything (full config blocks, per-file
                                  paths, DEBUG logging).  [0<=x<=3]
  --help-advanced                 Show all options (including advanced settings)
                                  and exit.
  -i, --input FILE                Single-geometry input (.pdb, .cif, .mmcif,
                                  .xyz, or .gjf). Extract a trajectory frame to
                                  .xyz before use.  [required]
  --ref-mode FILE                 Advanced/internal Cartesian reference
                                  direction(s) for Hessian TS root selection and
                                  overlap tracking. Accepts .npz path-mode
                                  caches, .npy arrays, or whitespace text
                                  containing one 3N vector or a 2-D candidate
                                  table. This guides mode identity; it does not
                                  replace the Hessian and is not supported by
                                  Dimer. The all workflow supplies it from the
                                  MEP; standalone tsopt users normally leave it
                                  unset.
  --uma-workers, --workers INTEGER
                                  MLIP predictor workers; >1 spawns a parallel
                                  predictor. NOTE: with UMA, workers>1 plus an
                                  explicit Analytical Hessian request is an
                                  error; use workers=1 or FiniteDifference.
                                  [default: 1]
  --uma-workers-per-node, --workers-per-node INTEGER
                                  Workers per node when using a parallel MLIP
                                  predictor (workers>1).  [default: 1]
  --freeze-links / --no-freeze-links
                                  Freeze parent atoms of cap hydrogens
                                  (PDB/mmCIF input or XYZ/GJF with --ref-pdb).
                                  [default: freeze-links]
  --freeze-atoms TEXT             Comma-separated 1-based atom indices to freeze
                                  (e.g., '1,3,5').
  --convert-files / --no-convert-files
                                  Convert XYZ/TRJ outputs into PDB/CIF/GJF
                                  companions based on the input format.
                                  [default: convert-files]
  --ref-pdb FILE                  Reference PDB/mmCIF topology to use when the
                                  input is XYZ/GJF (keeps XYZ coordinates).
  --max-cycles INTEGER RANGE      Maximum number of optimization cycles.
                                  [default: (100000); x>=1]
  --flatten / --no-flatten        Enable the extra-imaginary-mode flattening
                                  loop (grad: dimer loop, hess: post-RS-P-RFO).
                                  [default: no-flatten]
  --opt-mode [grad|hess|dimer|rsirfo|trim|rsprfo]
                                  TS optimizer: 'grad'/'dimer' → Hessian Guided
                                  Dimer; 'hess'/'rsprfo' → RS-P-RFO (Banerjee,
                                  default); 'trim' → TRIM (Helgaker); 'rsirfo' →
                                  RS-I-RFO.  [default: hess]
  --dump / --no-dump              Write the per-cycle trajectory
                                  ('optimization_trj.xyz' for RS-P-RFO/RS-I-
                                  RFO/TRIM, 'optimization_all_trj.xyz' for
                                  Dimer).  [default: no-dump]
  -o, --out-dir TEXT              Output directory.  [default: ./result_tsopt/]
  --thresh [gau_loose|gau|gau_tight|gau_vtight|baker|never]
                                  Convergence preset for the active optimizer (g
                                  au_loose|gau|gau_tight|gau_vtight|baker|never)
                                  .  [default: (baker)]
  --config FILE                   Base YAML configuration file applied before
                                  explicit CLI options.
  --show-config / --no-show-config
                                  Print the loaded YAML file and its top-level
                                  keys, then continue.  [default: no-show-
                                  config]
  --dry-run / --no-dry-run        Validate options and inputs without running TS
                                  optimization.  [default: no-dry-run]
  --skip-final-freq / --no-skip-final-freq
                                  Skip the terminal PHVA/frequency analysis
                                  after convergence (a plateau stop still runs
                                  it); RS-P-RFO/RS-I-RFO/TRIM also skip
                                  --flatten, which needs it. Standalone tsopt
                                  retains the final structure with unverified
                                  saddle order; all stops before IRC because no
                                  imaginary direction can be validated.
                                  [default: no-skip-final-freq]
  --read-hess FILE                Start from the Hessian in this .npy file (e.g.
                                  from freq or tsopt --dump-hess) instead of
                                  computing it: the Cartesian Hessian of the
                                  input geometry in Hartree/bohr^2, for all
                                  atoms or only the movable ones.
  --dump-hess FILE                Save the Hessian of the final geometry as a
                                  NumPy .npy array (Cartesian, Hartree/bohr^2;
                                  movable atoms only when atoms are frozen) for
                                  '--read-hess' in freq, tsopt, or irc, or for
                                  other programs.
  --out-json / --no-out-json      Write machine-readable result.json to out_dir.
                                  [default: no-out-json]
  --hessian-calc-mode [finitedifference|analytical]
                                  Choose MLIP Hessian evaluation mode. YAML
                                  supplies the value when this option is
                                  omitted; explicit CLI wins.  [default:
                                  (FiniteDifference)]
  -b, --backend [uma|orb|mace|aimnet2|dft]
                                  Energy/force calculator backend.  [default:
                                  uma]
  --solvent TEXT                  Computationally expensive xTB solvent delta
                                  correction for MLIP backends; dft uses native
                                  PySCF PCM/SMD. Examples: water, methanol,
                                  acetonitrile, dmso, thf, toluene. 'none'
                                  disables it.  [default: none]
  --solvent-model [alpb|cpcmx|pcm|smd]
                                  Solvent model: ALPB/CPCMx for MLIP backends;
                                  PCM/SMD for dft.  [default: alpb]
  --solvent-xtb-cmd TEXT          Command for the xTB solvent correction,
                                  including optional xTB arguments. If xTB SCC
                                  convergence is poor, increasing --etemp may
                                  help (for example: 'xtb --etemp 1000').
  -q, --charge INTEGER            Total charge. Required unless --ligand-charge,
                                  YAML calc.charge, or a .gjf input gives it.
  -l, --ligand-charge TEXT        Total ligand charge or per-resname mapping
                                  (e.g., GPP:-3,SAM:1) used to derive charge
                                  when -q is omitted (requires PDB/mmCIF input
                                  or --ref-pdb).
  -m, --multiplicity INTEGER RANGE
                                  Spin multiplicity (2S+1).  [default: (1);
                                  x>=1]
  --precision [fp32|fp64]         MLIP backend precision: fp32 or fp64. Unset
                                  defaults per backend (uma: fp32; orb, mace:
                                  fp64). Routed to backend-specific kwargs (UMA
                                  precision / ORB precision / MACE
                                  default_dtype). aimnet2: fp32 no-op; fp64
                                  rejected.  [default: (per backend: uma fp32;
                                  orb, mace fp64)]
  --backend-model TEXT            Model variant for the selected --backend (e.g.
                                  uma-s-1p2 / uma-m-1p1 for uma,
                                  orb_v3_conservative_omol for orb, MACE-OMOL-0
                                  / off:small for mace).  [default: (the
                                  selected backend's own model)]
  --calc-file FILE                Python file exposing get_calculator(...) -> an
                                  ASE Calculator, used as the energy/gradient
                                  backend (overrides --backend). Couples GFN-xTB
                                  / DFTB+ / any ASE engine. See --calc-file-
                                  func-name.
  --calc-factory, --calc-file-func-name TEXT
                                  Name of the callable in --calc-file that
                                  returns an ASE Calculator (or a module-level
                                  Calculator instance). CLI overrides config
                                  YAML; otherwise defaults to get_calculator.
                                  [default: (get_calculator)]
  --deterministic / --no-deterministic
                                  Request strict same-stack PyTorch determinism
                                  (deterministic algorithms + index_reduce_
                                  shim). Slower; raises for detected unsupported
                                  ops; custom calculators are outside its scope.
                                  [default: no-deterministic]
  --allow-charge-mult-mismatch    Skip the cluster charge/multiplicity electron-
                                  parity check (logs that it was skipped). Open-
                                  shell clusters need a matching multiplicity
                                  instead; use this only for an intentionally
                                  nonstandard electron count.
  --coord-type [cart|redund|dlc|tric]
                                  Optimization coordinate system
                                  (cart|redund|dlc|tric).  [default: (cart)]
  --print-every INTEGER RANGE     Print optimizer status every N cycles.
                                  [default: (100); x>=1]
  --func-basis TEXT               DFT method as FUNCTIONAL/BASIS; HF/BASIS is
                                  also accepted.  [default: (wb97m-v/def2-svp)]
  --dft-engine, --engine [gpu|cpu]
                                  PySCF execution engine used by --backend dft.
                                  [default: (gpu)]
  --save-scf-checkpoint / --no-save-scf-checkpoint
                                  Persist a structure-bound PySCF checkpoint
                                  (default: disabled).  [default: (disabled)]
  --scf-checkpoint FILE           Load/save the optional structure-bound PySCF
                                  checkpoint at PATH.
  --scf-stepwise-grid / --no-scf-stepwise-grid
                                  Converge the first SCF on a coarse grid, then
                                  on the final grid (later SCFs reuse the
                                  previous density as usual).  [default:
                                  (enabled)]
  --dft-low-memory, --lowmem / --no-dft-low-memory, --no-lowmem
                                  Use GPU4PySCF rks_lowmem for closed-shell GPU
                                  DFT; open-shell GPU and CPU use standard
                                  direct JK. --no-dft-low-memory enables density
                                  fitting.  [default: (lowmem)]
  --dft-nprocs INTEGER RANGE      PySCF/OpenMP CPU threads; GPU count is
                                  unaffected.  [default: (auto); x>=1]
  --dft-memory, --dft-mem TEXT    PySCF host RAM limit (for example 64GB or
                                  120000MB).  [default: (auto)]
  --stop-plateau / --no-stop-plateau
                                  Stop when the energy stops changing while the
                                  convergence criteria are still unmet, and
                                  report the run as stalled. It never signals
                                  convergence; --max-cycles remains the real
                                  bound.  [default: no-stop-plateau]
  --stop-plateau-thresh FLOAT     Energy range (hartree) below which --stop-
                                  plateau treats the window as flat.  [default:
                                  (1e-4)]
  --stop-plateau-window INTEGER   Number of consecutive cycles --stop-plateau
                                  inspects.  [default: (50)]
  -h, --help                      Show this message and exit.