MLFF_inference.py Command Help

Command: $SCHRODINGER/run MLFF_inference.py

usage: MLFF_inference.py [-h] [--checkpoint-file CHECKPOINT_FILE]
                         [--checkpoint-dir CHECKPOINT_DIR]
                         [--model {QRNN4,ORGANIC_CSP_MPNICE,Organic_MPNICE,Organic_MPNICE_TB,Organic_Crystals_MPNICE,Organic_Crystals_MPNICE_v1.1,Inorganic_MPNICE,Hybrid_MPNICE,Hybrid_MPNICE_O,Hybrid_MPNICE_I,QRNN_Electrolyte,UMA_sm_oc20,UMA_sm_omat,UMA_sm_omc,UMA_sm_odac,UMA_sm_omol}]
                         [--rmse-energy-unit {kcal,hartree,eV,meV}]
                         [--predict-output-head] [--read-charges]
                         [--atom-normalization]
                         [--dispersion-cutoff DISPERSION_CUTOFF]
                         [--external-mace-checkpoint] [--log-level LOG_LEVEL]
                         [--skip-dispersion] [--add-dispersion]
                         [--change-d3-functional {B2PLYP,PW6B95,B97-D,revPBE,B3LYP,BLYP,TPSS0,PBE0,TPSS,PBE,BP86,QRNN}]
                         [--model-class {QRNN,FlucQSani,SANIModel,MultiTaskQRNN,MACE,MPNICE,MPQRNN,GlideWSMPNICE,GlideWSPerAtomMPNICE}]
                         [--sani-label SANI_LABEL [SANI_LABEL ...]]
                         [--merge-labels] [--delta-learning]
                         [--rnn-count RNN_COUNT]
                         [--symmetry-functions-file SYMMETRY_FUNCTIONS_FILE]
                         [--num-radial-aev NUM_RADIAL_AEV]
                         [--min-radial-aev-distance MIN_RADIAL_AEV_DISTANCE]
                         [--num-rad-angular-aev NUM_RAD_ANGULAR_AEV]
                         [--num-angular-aev NUM_ANGULAR_AEV]
                         [--radial-cutoff RADIAL_CUTOFF]
                         [--angular-cutoff ANGULAR_CUTOFF]
                         [--aev-class {legacy,dynamic}] [--layers LAYERS]
                         [--chi-layers CHI_LAYERS] [--atom-types ATOM_TYPES]
                         [--use-flucq-energy] [--use-erf-lr-energy]
                         [--use-sigmoid-lr-energy] [--use-dispersion-energy]
                         [--dispersion-version {D2,D3}]
                         [--d3-functional {B2PLYP,PW6B95,B97-D,revPBE,B3LYP,BLYP,TPSS0,PBE0,TPSS,PBE,BP86,QRNN}]
                         [--use-repulsion-energy] [--use-qraev] [--use-spin]
                         [--spin-featurization {bare,mag,square,quartic,sraev,embedding} [{bare,mag,square,quartic,sraev,embedding} ...]]
                         [--use-charges] [--ligand-energy-only] [--use-qeq]
                         [--use-esp] [--use-chiflucq] [--dlprof]
                         [--sigma-offset SIGMA_OFFSET] [--sigmoid-a SIGMOID_A]
                         [--sigmoid-b SIGMOID_B]
                         [--weight-normalization [WEIGHT_NORMALIZATION]]
                         [--num-radial-features NUM_RADIAL_FEATURES]
                         [--num-angular-features NUM_ANGULAR_FEATURES]
                         [--node-feature-dimension NODE_FEATURE_DIMENSION]
                         [--mixing-type {shared,per_interaction}]
                         [--mixing-site {edge,node,none}]
                         [--qeq-class {NoQEq,LinearQEq,LinearQEqACKS2,FlexibleQEq,AlphaBetaQEq,ChargeSpinQEq,ConsistentFlexibleQEq}]
                         [--task-layers-split TASK_LAYERS_SPLIT]
                         [--num-tasks NUM_TASKS] [--calculate-electrostatics]
                         [--use-node-attrs] [--last-readout-only]
                         [--sum-interaction-charges]
                         [--charge-version {readout,single_feature,no_prediction}]
                         [--mace-type {MACE,ChargeMACE}]
                         [--radial-basis-version {gaussian,bessel}]
                         [--charge-recursion-version {linear,single_feature,single_node_attr,no_recursion,basis}]
                         [--use-qxraev] [--r-max R_MAX]
                         [--num-radial-basis NUM_RADIAL_BASIS]
                         [--num-cutoff-basis NUM_CUTOFF_BASIS]
                         [--interaction {RealAgnosticInteractionBlock,RealAgnosticResidualInteractionBlock}]
                         [--max-ell MAX_ELL] [--correlation CORRELATION]
                         [--num-interactions NUM_INTERACTIONS]
                         [--MLP-irreps MLP_IRREPS]
                         [--hidden-irreps HIDDEN_IRREPS]
                         [--gate {gelu,silu,tanh,abs,None}]
                         [--net-charge NET_CHARGE] [--net-spin NET_SPIN]
                         [--overwrite] [--limit-forces LIMIT_FORCES]
                         [--compute-stress-with-forces]
                         [--inference-head-index INFERENCE_HEAD_INDEX]
                         [--compute-charge-grad]
                         [--constrain-molecular-charge]
                         [--guess-atomic-charge-key GUESS_ATOMIC_CHARGE_KEY]
                         [--info-gain-kt INFO_GAIN_KT]
                         [--return-latent-features]
                         [--detach-output-head-weights] [--use-asu-speedup]
                         [--asu-symprec ASU_SYMPREC] [--nlist-skin NLIST_SKIN]
                         [--optimize-cell]
                         [--optimization-pressure OPTIMIZATION_PRESSURE]
                         [--optimization-thresh OPTIMIZATION_THRESH]
                         [--unstable-force-thresh UNSTABLE_FORCE_THRESH]
                         [--optimizer-algorithm {BFGS,FIRE}]
                         [--no-line-search] [--max-cycles MAX_CYCLES]
                         [--write-opt-path] [--freeze-heavies]
                         [--freeze-atoms FREEZE_ATOMS [FREEZE_ATOMS ...]]
                         [--fix-symmetry]
                         [--symmetry-precision SYMMETRY_PRECISION]
                         [--torsions TORSIONS] [--hydrostatic-strain]
                         [--sella-max-cycles SELLA_MAX_CYCLES]
                         [--sella-thresh SELLA_THRESH]
                         [--sella-use-custom-hessian]
                         [--sella-use-finite-hessian] [--sella-run-freq]
                         [--sella-order SELLA_ORDER]
                         [--sella-diag-every SELLA_DIAG_EVERY]
                         [--sella-trajectory-file SELLA_TRAJECTORY_FILE]
                         [--sella-logfile SELLA_LOGFILE]
                         [--sella-unstable-force-thresh SELLA_UNSTABLE_FORCE_THRESH]
                         [--neb-method NEB_METHOD] [--neb-k NEB_K]
                         [--neb-num-images NEB_NUM_IMAGES]
                         [--neb-images-min NEB_IMAGES_MIN]
                         [--neb-climbing-image] [--neb-fconv NEB_FCONV]
                         [--neb-fconv-endpoints NEB_FCONV_ENDPOINTS]
                         [--neb-opt-steps NEB_OPT_STEPS]
                         [--neb-md-temp NEB_MD_TEMP]
                         [--neb-total-time NEB_TOTAL_TIME]
                         [--neb-traj-output NEB_TRAJ_OUTPUT]
                         [--neb-freeze-indices NEB_FREEZE_INDICES [NEB_FREEZE_INDICES ...]]
                         [--neb-random-seed NEB_RANDOM_SEED] [--calc-forces]
                         [--calc-hessian] [--calc-stress] [--calc-dielectric]
                         [--calc-piezoelectric]
                         [--thermochemistry-temperatures THERMOCHEMISTRY_TEMPERATURES [THERMOCHEMISTRY_TEMPERATURES ...]]
                         [--thermochemistry-pressure THERMOCHEMISTRY_PRESSURE]
                         [--bandpath BANDPATH]
                         [--phonon-supercell-size PHONON_SUPERCELL_SIZE [PHONON_SUPERCELL_SIZE ...]]
                         [--phonon-delta PHONON_DELTA] [--phonon-NAC]
                         [--phonon-symprec PHONON_SYMPREC] [--phonon-analytic]
                         [--phonon-prefix PHONON_PREFIX]
                         [--phonopy-config PHONOPY_CONFIG]
                         [--ensemble {NVE,NVT,NPT}]
                         [--temperature TEMPERATURE] [--pressure PRESSURE]
                         [--total-time TOTAL_TIME] [--time-step TIME_STEP]
                         [--sample-interval SAMPLE_INTERVAL]
                         [--traj-interval TRAJ_INTERVAL]
                         [--ttime-factor TTIME_FACTOR]
                         [--ptime-factor PTIME_FACTOR]
                         [--bulk-modulus BULK_MODULUS]
                         [--md-rho-thresh MD_RHO_THRESH]
                         [--low-density-thresh LOW_DENSITY_THRESH]
                         [--restart-MD] [--random-seed RANDOM_SEED]
                         [--allow-strain]
                         [--atomic-energy-file ATOMIC_ENERGY_FILE]
                         [--precision {single,double}] [--track-memory]
                         [--mlff-data-checkpoint-key MLFF_DATA_CHECKPOINT_KEY]
                         [--distribute] [--distribute-by-file]
                         [--catch-failures] [--optimize] [--ts-optimize]
                         [--vibrations] [--calculate-eos] [--add-flucq-energy]
                         [--compute-frho] [--true-energy-key TRUE_ENERGY_KEY]
                         [--compute-binding-energies] [--add-solvation-energy]
                         [--xtb-method {GFN0-xTB,GFN1-xTB,GFN2-xTB}]
                         [--xtb-solvation]
                         [--nopbc-confining-pressure NOPBC_CONFINING_PRESSURE]
                         [--fep-smarts FEP_SMARTS]
                         [--fep-qrnn-lambda FEP_QRNN_LAMBDA]
                         [--fep-lj-lambda FEP_LJ_LAMBDA]
                         [--fep-lj-alpha FEP_LJ_ALPHA]
                         [--fep-lj-p-power FEP_LJ_P_POWER]
                         [mae_file ...]

Parser for MLFF inference routines

positional arguments:
  mae_file              name of input file(s) (default: [])

options:
  -h, --help            show this help message and exit
  --checkpoint-file CHECKPOINT_FILE
                        Checkpoint file to load model parameters (default:
                        None)
  --checkpoint-dir CHECKPOINT_DIR
                        Checkpoint directory to load ensemble parameters
                        (default: None)
  --model {QRNN4,ORGANIC_CSP_MPNICE,Organic_MPNICE,Organic_MPNICE_TB,Organic_Crystals_MPNICE,Organic_Crystals_MPNICE_v1.1,Inorganic_MPNICE,Hybrid_MPNICE,Hybrid_MPNICE_O,Hybrid_MPNICE_I,QRNN_Electrolyte,UMA_sm_oc20,UMA_sm_omat,UMA_sm_omc,UMA_sm_odac,UMA_sm_omol}
                        Model name from available models (AVAILABLE_MODELS +
                        UMA_MODEL_NAMES) (default: None)
  --rmse-energy-unit {kcal,hartree,eV,meV}
                        Units of energy to report RMSE in (default: kcal)
  --predict-output-head
                        If true, simultaneously train a small NN to predict
                        the output head to use for each atom (default: False)
  --read-charges        If true use true charges as a feature (default: False)
  --atom-normalization  Whether to normalize the loss functions by the number
                        of atoms (default: False)
  --dispersion-cutoff DISPERSION_CUTOFF
                        Radial cutoff for dispersion functions (RcNL constant)
                        (default: 10.0)
  --external-mace-checkpoint
                        If true read in external MACE checkpoint from
                        torchsani.mace github training (default: False)
  --log-level LOG_LEVEL
                        How much to log about this run (default: INFO)
  --skip-dispersion     Do not load any dispersion correction(s) the model may
                        have (default: False)
  --add-dispersion      Add a dispersion correction to the model if the model
                        doesn't already have one (default: False)
  --change-d3-functional {B2PLYP,PW6B95,B97-D,revPBE,B3LYP,BLYP,TPSS0,PBE0,TPSS,PBE,BP86,QRNN}
                        Change which functional from which to pull Grimme D3
                        dispersion params. Default is keeping the
                        --d3-functional used during training. (default: None)
  --model-class {QRNN,FlucQSani,SANIModel,MultiTaskQRNN,MACE,MPNICE,MPQRNN,GlideWSMPNICE,GlideWSPerAtomMPNICE}
                        Name of model class to train (default: MultiTaskQRNN)
  --sani-label SANI_LABEL [SANI_LABEL ...]
                        Label(s) to train to (required) (default: [])
  --merge-labels        If true, merge all labels into one output head. Only
                        trains the last output head (default: False)
  --delta-learning      If true do delta learning (default: False)
  --rnn-count RNN_COUNT
                        Number of RNN layers (default: 2)
  --symmetry-functions-file SYMMETRY_FUNCTIONS_FILE
                        JSON file defining featurization parameters (default:
                        None)
  --num-radial-aev NUM_RADIAL_AEV
                        Number of radial AEV basis functions (default: 16)
  --min-radial-aev-distance MIN_RADIAL_AEV_DISTANCE
                        Center of smallest radial basis function (default:
                        0.9)
  --num-rad-angular-aev NUM_RAD_ANGULAR_AEV
                        Number of radial AEV basis functions for use in the
                        angular AEV (default: 4)
  --num-angular-aev NUM_ANGULAR_AEV
                        Number of angular basis functions of theta (default:
                        8)
  --radial-cutoff RADIAL_CUTOFF
                        Maximum radial distance for radial AEVs (default: 5.2)
  --angular-cutoff ANGULAR_CUTOFF
                        Maximum radial distance for angular AEVs (default:
                        3.5)
  --aev-class {legacy,dynamic}
                        Method to calculate AEV widths/centers (default:
                        legacy)
  --layers LAYERS       JSON file defining atomic NN layers (default: /opt/sch
                        rodinger/suites2026-3/internal/lib/python3.11/site-
                        packages/torchsani/data/default_layers.json)
  --chi-layers CHI_LAYERS
                        JSON file defining atomic NN layers for chi (charge)
                        prediction model (default: None)
  --atom-types ATOM_TYPES
                        JSON file defining atom types (default: None)
  --use-flucq-energy    Use FlucQ total energy for LR part (default: False)
  --use-erf-lr-energy   Use erf truncated LR part (default: False)
  --use-sigmoid-lr-energy
                        Use sigmoid truncated LR part (default: False)
  --use-dispersion-energy
                        Use Grimme dispersion energy (default: False)
  --dispersion-version {D2,D3}
                        Version of Grimme dispersion to use (default: D2)
  --d3-functional {B2PLYP,PW6B95,B97-D,revPBE,B3LYP,BLYP,TPSS0,PBE0,TPSS,PBE,BP86,QRNN}
                        Functional from which to pull Grimme D3 dispersion
                        params. Default is made up unit parameters (default:
                        QRNN)
  --use-repulsion-energy
                        Use Grimme repulsion energy (default: False)
  --use-qraev           If true use charge dependent radial AEV as feature
                        (default: False)
  --use-spin            If true predict and use partial spins as feature
                        (default: False)
  --spin-featurization {bare,mag,square,quartic,sraev,embedding} [{bare,mag,square,quartic,sraev,embedding} ...]
                        Which type(s) of spin featurization to use (default:
                        [])
  --use-charges         If true use charge as a feature (default: False)
  --ligand-energy-only  Compute energy from ligand atoms only for protein-
                        ligand binding (requires ligand_atom_indicator in
                        database) (default: False)
  --use-qeq             If true equilibrate charge once it is predicted
                        (default: True)
  --use-esp             If true use ESP as feature (default: False)
  --use-chiflucq        Use Behler parameterization of FlucQ model (default:
                        False)
  --dlprof              Use nvtx to profile one iteration of training
                        (default: False)
  --sigma-offset SIGMA_OFFSET
                        Offset for sigma in FlucQ (default: 0.0)
  --sigmoid-a SIGMOID_A
                        a value for sigmoid damping 1/(1+exp(b*(a-x))) in
                        Angstrom (default: 1.1641898639866)
  --sigmoid-b SIGMOID_B
                        b value for sigmoid damping 1/(1+exp(b*(a-x))) in
                        1/Angstrom (default: 16.06267205931905)
  --weight-normalization [WEIGHT_NORMALIZATION]
                        Decouple weight matrix norm and direction. If no flag,
                        do not decouple. If no value as argument, decouple
                        weight norms and leave them constant. If a positive
                        float value is provided, the norm will be trainable
                        with the float as weight decay (default: None)
  --num-radial-features NUM_RADIAL_FEATURES
                        Dimension of radial message features for MPNICE
                        (default: 32)
  --num-angular-features NUM_ANGULAR_FEATURES
                        Dimension of angular message features for MPNICE
                        (default: 16)
  --node-feature-dimension NODE_FEATURE_DIMENSION
                        Dimension of features each atom carries around for
                        MPNICE (default: 128)
  --mixing-type {shared,per_interaction}
                        Whether to share radial/angular mixing over
                        interaction blocks (default: shared)
  --mixing-site {edge,node,none}
                        Whether to compress node features for message passing
                        before or after edge formation (default: edge)
  --qeq-class {NoQEq,LinearQEq,LinearQEqACKS2,FlexibleQEq,AlphaBetaQEq,ChargeSpinQEq,ConsistentFlexibleQEq}
                        Which class of charge/spin equilibration to use
                        (default: LinearQEq)
  --task-layers-split TASK_LAYERS_SPLIT
                        Layer at which to split representation for multiple
                        tasks (default: 3)
  --num-tasks NUM_TASKS
                        Number of tasks model trained to (default: 1)
  --calculate-electrostatics
                        MACE ONLY: if true use atomic charges to calculate
                        electrostatic energy (default: True)
  --use-node-attrs      MACE ONLY: if true use node_attrs in energy readout
                        (default: False)
  --last-readout-only   MACE ONLY: if true only use last nonlinear energy
                        readout in MACE (default: False)
  --sum-interaction-charges
                        MACE ONLY: if true sum charge contributions from
                        interaction blocks in MACE (default: False)
  --charge-version {readout,single_feature,no_prediction}
                        MACE ONLY: version of charge prediction to use
                        (default: no_prediction)
  --mace-type {MACE,ChargeMACE}
                        MACE ONLY: version of MACE to use (default:
                        ChargeMACE)
  --radial-basis-version {gaussian,bessel}
                        MACE ONLY: version of radial basis to use (default:
                        bessel)
  --charge-recursion-version {linear,single_feature,single_node_attr,no_recursion,basis}
                        MACE ONLY: version of charge recursion to use
                        (default: no_recursion)
  --use-qxraev          MACE ONLY: if true use charge basis (x) radial AEV as
                        feature (default: False)
  --r-max R_MAX         MACE ONLY: distance cutoff (in Ang) (default: 5.0)
  --num-radial-basis NUM_RADIAL_BASIS
                        MACE ONLY: number of radial basis functions (default:
                        8)
  --num-cutoff-basis NUM_CUTOFF_BASIS
                        MACE ONLY: number of basis functions for smooth cutoff
                        (default: 5)
  --interaction {RealAgnosticInteractionBlock,RealAgnosticResidualInteractionBlock}
                        MACE ONLY: name of interaction block (default:
                        RealAgnosticResidualInteractionBlock)
  --max-ell MAX_ELL     MACE ONLY: highest ell of spherical harmonics
                        (default: 3)
  --correlation CORRELATION
                        MACE ONLY: correlation order at each layer (default:
                        3)
  --num-interactions NUM_INTERACTIONS
                        MACE ONLY: number of interactions (default: 2)
  --MLP-irreps MLP_IRREPS
                        MACE ONLY: hidden irreps of the MLP in last readout
                        (default: 16x0e)
  --hidden-irreps HIDDEN_IRREPS
                        MACE ONLY: irreps for hidden node states (default:
                        32x0e)
  --gate {gelu,silu,tanh,abs,None}
                        MACE ONLY: non linearity for last readout (default:
                        silu)
  --net-charge NET_CHARGE
                        If given, all systems will be constrained to this
                        charge (debugging only) (default: None)
  --net-spin NET_SPIN   If given, all systems will be constrained to this spin
                        (debugging only) (default: None)
  --overwrite           After wrapping atoms into central box, whether to
                        replace the original positions stored in ase.Atoms
                        object with wrapped positions (default: False)
  --limit-forces LIMIT_FORCES
                        Atomic forces exceeding this magnitude (eV/A) will be
                        scaled (default: None)
  --compute-stress-with-forces
                        If True, compute stress tensor every time forces are
                        requested (default: False)
  --inference-head-index INFERENCE_HEAD_INDEX
                        MTL label for inference (-1 for Single-task or highest
                        index in MTL) (default: -1)
  --compute-charge-grad
                        Compute derivative of energy with respect to charges
                        (default: False)
  --constrain-molecular-charge
                        Constraint molecular charge based on formal charges
                        (default: False)
  --guess-atomic-charge-key GUESS_ATOMIC_CHARGE_KEY
                        QRNN charges will be taken from this atomic property
                        (default: None)
  --info-gain-kt INFO_GAIN_KT
                        Energy scale for information gain optimization, in
                        Hartree (default: 0.0)
  --return-latent-features
                        Return the latent features of each atom (MPNICE only)
                        (default: False)
  --detach-output-head-weights
                        Detach predicted output head weights from autograd
                        graph (default: False)
  --use-asu-speedup     Reduce the cost of a crystal calculation by only
                        performing inference on the ASU. (default: False)
  --asu-symprec ASU_SYMPREC
                        Threshold for detecting symmetries in order to
                        determine the ASU, only used when use_asu_speedup=True
                        (default: 0.01)
  --nlist-skin NLIST_SKIN
                        Skin distance (Angstrom) for neighborlist caching. The
                        neighborlist is built at RcNL + nlist_skin and reused
                        until atom/cell motion exceeds the skin buffer. Set to
                        0 to disable caching. (default: 0.0)
  --optimize-cell       Optimize cell (default: False)
  --optimization-pressure OPTIMIZATION_PRESSURE
                        External pressure (atm) applied during optimization
                        (default: 0.0)
  --optimization-thresh OPTIMIZATION_THRESH
                        Threshold on max force (in eV/A) for optimization
                        convergence (default: 0.01)
  --unstable-force-thresh UNSTABLE_FORCE_THRESH
                        Maximum threshold on max force (eV/A) for stability
                        (default: None)
  --optimizer-algorithm {BFGS,FIRE}
                        Choice of optimization algorithm to use in ASE
                        (default: BFGS)
  --no-line-search      Disable line search in optimizations (default: False)
  --max-cycles MAX_CYCLES
                        Maximum number of optimization cycles (default: 500)
  --write-opt-path      Write optimization path (default: False)
  --freeze-heavies      If true freeze the positions of heavy atoms (default:
                        False)
  --freeze-atoms FREEZE_ATOMS [FREEZE_ATOMS ...]
                        List of ASE atom indices to be frozen during structure
                        optimization (default: [])
  --fix-symmetry        Fix spacegroup symmetry (default: False)
  --symmetry-precision SYMMETRY_PRECISION
                        Threshold (in Angstroms) to use for detecting symmetry
                        (default: 0.01)
  --torsions TORSIONS   List of (value, i, j, k, l) tuples defining torsions
                        to be constrained (value in degrees) (default: [])
  --hydrostatic-strain  Allow only hydrostatic strain during cell optimization
                        (default: False)
  --sella-max-cycles SELLA_MAX_CYCLES
                        Maximum number of Sella optimization steps (default:
                        500)
  --sella-thresh SELLA_THRESH
                        Convergence threshold for forces (Hartree/Angstrom)
                        (default: 0.001)
  --sella-use-custom-hessian
                        Use analytical Hessian with finite difference fallback
                        (default: True)
  --sella-use-finite-hessian
                        Force finite difference Hessian (overrides
                        use_custom_hessian) (default: False)
  --sella-run-freq      Run frequency calculation after convergence (default:
                        True)
  --sella-order SELLA_ORDER
                        Saddle point order: 0 for minimization, 1 for TS
                        (default: 1)
  --sella-diag-every SELLA_DIAG_EVERY
                        Frequency of Hessian diagonalization (0 = every step)
                        (default: 0)
  --sella-trajectory-file SELLA_TRAJECTORY_FILE
                        Filename for Sella trajectory output (default:
                        sella.traj)
  --sella-logfile SELLA_LOGFILE
                        Log file for Sella optimizer output (default: None)
  --sella-unstable-force-thresh SELLA_UNSTABLE_FORCE_THRESH
                        Exit optimization if RMS force exceeds this value
                        (default: None)
  --neb-method NEB_METHOD
                        ASE NEB method name (e.g., 'improvedtangent',
                        'aseneb') (default: improvedtangent)
  --neb-k NEB_K         NEB constant (in eV/A). If > 0, run NEB using all
                        input structures (default: 0.0)
  --neb-num-images NEB_NUM_IMAGES
                        Number of images to use in the NEB path. If None, uses
                        provided frames as-is (default: None)
  --neb-images-min NEB_IMAGES_MIN
                        Minimum number of images for NEB path interpolation
                        (default: 5)
  --neb-climbing-image  Whether to use a climbing image in NEB (default: True)
  --neb-fconv NEB_FCONV
                        Threshold on max force (in eV/A) for optimization
                        convergence (default: 0.05)
  --neb-fconv-endpoints NEB_FCONV_ENDPOINTS
                        Force convergence criterion for endpoint optimization,
                        in eV/A (default: 0.05)
  --neb-opt-steps NEB_OPT_STEPS
                        Maximum number of optimization steps for NEB optimizer
                        (default: 500)
  --neb-md-temp NEB_MD_TEMP
                        Temperature for NEB MD, in Kelvin (default: 300.0)
  --neb-total-time NEB_TOTAL_TIME
                        Total time to run NEB MD, in ps. If 0, no MD is
                        performed (default: 0.0)
  --neb-traj-output NEB_TRAJ_OUTPUT
                        Output filename for NEB MD trajectory if
                        neb_total_time > 0 (default: None)
  --neb-freeze-indices NEB_FREEZE_INDICES [NEB_FREEZE_INDICES ...]
                        List of atom indices to freeze during NEB (zero-
                        indexed) (default: [])
  --neb-random-seed NEB_RANDOM_SEED
                        Seed for PRNG for reproducibility in NEB MD velocity
                        initialization (default: None)
  --calc-forces         Calculate atomic forces (default: False)
  --calc-hessian        Calculate Hessian matrix (default: False)
  --calc-stress         Calculate stress tensor (default: False)
  --calc-dielectric     Calculate dielectric tensor (requires periodic system)
                        (default: False)
  --calc-piezoelectric  Calculate piezoelectric tensor (requires periodic
                        system) (default: False)
  --thermochemistry-temperatures THERMOCHEMISTRY_TEMPERATURES [THERMOCHEMISTRY_TEMPERATURES ...]
                        List of temperatures (K) for vibrational
                        thermochemistry calculations (default: [298.15])
  --thermochemistry-pressure THERMOCHEMISTRY_PRESSURE
                        Pressure in atm for thermochemistry calculations
                        (default: 1.0)
  --bandpath BANDPATH   High-symmetry k-point path for phonon bandstructure
                        (e.g. 'GXWKG'). Providing this option triggers the
                        band structure calculation. (default: None)
  --phonon-supercell-size PHONON_SUPERCELL_SIZE [PHONON_SUPERCELL_SIZE ...]
                        Supercell size multiplier for phonon calculations
                        (default: [2])
  --phonon-delta PHONON_DELTA
                        Finite displacement step size for phonon calculations
                        (default: 0.03)
  --phonon-NAC          Calculate non-analytic correction to phonons (default:
                        False)
  --phonon-symprec PHONON_SYMPREC
                        Symmetry precision for phonon calculations (default:
                        0.01)
  --phonon-analytic     If True, use analytic hessian for phonon calculations
                        if available (default: True)
  --phonon-prefix PHONON_PREFIX
                        Prefix for phonon output files (default: None)
  --phonopy-config PHONOPY_CONFIG
                        Configuration file for phonopy band structure
                        calculations. (default: None)
  --ensemble {NVE,NVT,NPT}
                        Ensemble for molecular dynamics (default: NVE)
  --temperature TEMPERATURE
                        Temperature for molecular dynamics (Kelvin) (default:
                        300.0)
  --pressure PRESSURE   Pressure (atm) for NPT molecular dynamics (default:
                        1.0)
  --total-time TOTAL_TIME
                        Total molecular dynamics time (ps) (default: 0.0)
  --time-step TIME_STEP
                        Time step for molecular dynamics (fs) (default: 0.1)
  --sample-interval SAMPLE_INTERVAL
                        Interval (frames) at which to log the MD data
                        (default: 100)
  --traj-interval TRAJ_INTERVAL
                        Interval (frames) at which to collect molecular
                        dynamics frames (default: 100)
  --ttime-factor TTIME_FACTOR
                        ttime-factor * time-step to obtain timescale of the
                        thermostat (default: 100.0)
  --ptime-factor PTIME_FACTOR
                        ptime-factor * time-step to obtain timescale of the
                        barostat (default: 1000.0)
  --bulk-modulus BULK_MODULUS
                        Bulk-modulus of substance in GPa (default: 3.0)
  --md-rho-thresh MD_RHO_THRESH
                        MD termination threshold on ensemble uncertainty
                        (kcal/mol) (default: None)
  --low-density-thresh LOW_DENSITY_THRESH
                        If not None, will exit if density is below this value
                        (g/cm^3) (default: None)
  --restart-MD          Restart MD by setting velocities from input mae file
                        (default: False)
  --random-seed RANDOM_SEED
                        If given, used to seed PRNG for velocity
                        initialization (default: None)
  --allow-strain        If True, allow strain deformation in NPT ensemble
                        (default: False)
  --atomic-energy-file ATOMIC_ENERGY_FILE
                        JSON file holding atomic energies to match total
                        energies from DFT (default: None)
  --precision {single,double}
                        The precision to run the model in (default: single)
  --track-memory        Track and log peak memory at the start and end of
                        optimization. Reports CPU RSS on CPU runs and CUDA
                        allocator peak on GPU runs. (default: False)
  --mlff-data-checkpoint-key MLFF_DATA_CHECKPOINT_KEY
                        Checkpoint filename or substring key to select
                        checkpoint file from MLFF_DATA directory (default:
                        latest_ema)
  --distribute          Distribute jobs using JobDJ into separate jobs per
                        structure (default: False)
  --distribute-by-file  Distribute jobs using JobDJ into separate jobs per mae
                        file (default: False)
  --catch-failures      If true catch failures as exceptions (default: False)
  --optimize            Optimize structure prior to computing energy (default:
                        False)
  --ts-optimize         Optimize transition state using Sella optimizer
                        (default: False)
  --vibrations          Calculate vibrational properties (auto-detects phonons
                        for periodic systems, molecular frequencies for non-
                        periodic systems) (default: False)
  --calculate-eos       Calculates and returns the bulk modulus (default:
                        False)
  --add-flucq-energy    If true add flucq, dispersion and atomic energy
                        (default: False)
  --compute-frho        Compute ensemble uncertainty for atomic forces
                        (default: False)
  --true-energy-key TRUE_ENERGY_KEY
                        key for true energies, will compute errors to this
                        value if the key exists. (default:
                        r_j_Gas_Phase_Energy)
  --compute-binding-energies
                        If true compute binding energies by subtracting
                        monomer energies (default: False)
  --add-solvation-energy
                        If true, add xTB solvation energy to the model energy
                        prediction (default: False)
  --xtb-method {GFN0-xTB,GFN1-xTB,GFN2-xTB}
                        Which xTB method to use (default: GFN2-xTB)
  --xtb-solvation       If true, add in xTB solvation energy (default: False)
  --nopbc-confining-pressure NOPBC_CONFINING_PRESSURE
                        Add force towards origin, equivalent to external
                        pressure on sphere (default: 0.0)
  --fep-smarts FEP_SMARTS
                        SMARTS pattern for defining the solute (first
                        subsystem) in FEP (default: None)
  --fep-qrnn-lambda FEP_QRNN_LAMBDA
                        Lambda value for qrnn FEP (0=non-interacting, 1=fully
                        interacting) (default: 1.0)
  --fep-lj-lambda FEP_LJ_LAMBDA
                        Lambda value for softcore LJ potential (0=regular LJ,
                        1=zero potential) (default: 1.0)
  --fep-lj-alpha FEP_LJ_ALPHA
                        alpha value for controlling the strength of the
                        Beutler softcore LJ potential. The larger the value,
                        the stronger the damping effect. Only relevant when
                        fep-lj-mode is Beutler (default: 0.5)
  --fep-lj-p-power FEP_LJ_P_POWER
                        p power in the Beutler softcore LJ potential. Only
                        relevant when fep-lj-mode is Beutler (default: 1)