MLFF_inference.py Command Help

Command: $SCHRODINGER/run MLFF_inference.py

usage: MLFF_inference.py [-h] [--atomic-energy-file ATOMIC_ENERGY_FILE]
                         [--inference-head-index INFERENCE_HEAD_INDEX]
                         [--precision {single,double}]
                         [--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 {CRITICAL,FATAL,ERROR,WARN,WARNING,INFO,DEBUG,NOTSET}]
                         [--skip-dispersion | --add-dispersion]
                         [--random-seed RANDOM_SEED]
                         [--distribute | --distribute-by-file]
                         [--catch-failures] [--optimize] [--optimize-cell]
                         [--optimization-pressure OPTIMIZATION_PRESSURE]
                         [--write-opt-path] [--phonons]
                         [--phonon-bandstructure] [--phonon-dos]
                         [--phonon-thermal]
                         [--phonopy-config PHONOPY_CONFIG | --bandpath BANDPATH]
                         [--phonon-supercell-size PHONON_SUPERCELL_SIZE [PHONON_SUPERCELL_SIZE ...]]
                         [--phonon-delta PHONON_DELTA] [--phonon-NAC]
                         [--phonon-temperatures PHONON_TEMPERATURES [PHONON_TEMPERATURES ...]]
                         [--phonon-unit {eV,wavenumber,THz,meV}]
                         [--constrain-molecular-charge]
                         [--guess-atomic-charge-key GUESS_ATOMIC_CHARGE_KEY]
                         [--compute-charge-grad] [--net-charge NET_CHARGE]
                         [--net-spin NET_SPIN]
                         [--optimizer-algorithm {BFGS,FIRE}]
                         [--no-line-search] [--calculate-eos]
                         [--optimization-thresh OPTIMIZATION_THRESH]
                         [--unstable-force-thresh UNSTABLE_FORCE_THRESH]
                         [--info-gain-kt INFO_GAIN_KT] [--neb-k NEB_K]
                         [--neb-num-images NEB_NUM_IMAGES]
                         [--max-cycles MAX_CYCLES] [--freeze-heavies]
                         [--dielectric] [--piezoelectric]
                         [--return-latent-features]
                         [--detach-output-head-weights]
                         [--freeze-atoms FREEZE_ATOMS [FREEZE_ATOMS ...]]
                         [--fix-symmetry] [--add-flucq-energy]
                         [--ensemble {NVE,NVT,NPT}] [--compute-frho]
                         [--limit-forces LIMIT_FORCES]
                         [--temperature TEMPERATURE] [--pressure PRESSURE]
                         [--sample-interval SAMPLE_INTERVAL]
                         [--traj-interval TRAJ_INTERVAL]
                         [--total-time TOTAL_TIME]
                         [--md-rho-thresh MD_RHO_THRESH]
                         [--time-step TIME_STEP] [--ttime-factor TTIME_FACTOR]
                         [--ptime-factor PTIME_FACTOR] [--restart-MD]
                         [--bulk-modulus BULK_MODULUS]
                         [--true-energy-key TRUE_ENERGY_KEY]
                         [--compute-binding-energies]
                         [--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 [mae_file ...]

TorchSANI model inference

options:
  -h, --help            show this help message and exit

Inference arguments:
  --atomic-energy-file ATOMIC_ENERGY_FILE
                        json file holding atomic energies. Add these to make
                        predictions match total energies from DFT. Default:
                        zeros are used. Note, this requires double precision.
                        (default: None)
  --inference-head-index INFERENCE_HEAD_INDEX
                        MTL label for inference. Default -1 for Single-task or
                        highest index in MTL (default: -1)
  --precision {single,double}
                        The precision to run the model in (default: single)
                        (default: single)
  --checkpoint-file CHECKPOINT_FILE
                        checkpoint file to load model paramters (default:
                        None)
  --checkpoint-dir CHECKPOINT_DIR
                        checkpoint directory to load ensemble paramters
                        (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}
                        checkpoint file to load model paramters (default:
                        None)
  --rmse-energy-unit {kcal,hartree,eV,meV}
                        units of energy to report RMSE in; internally the NN
                        predicts in hartree then is converted (default: kcal)
  --predict-output-head
                        If True, simultaneously train a small NN to predict
                        the output head (or mix thereof) 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 (default: 10.0)
  --external-mace-checkpoint
                        if True read in external MACE checkpoint (from
                        torchsani.mace github training) (default: False)
  --log-level {CRITICAL,FATAL,ERROR,WARN,WARNING,INFO,DEBUG,NOTSET}
                        How much to log about this run (see Python's logging
                        module) (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)
  --random-seed RANDOM_SEED
                        If given, used to seed PRNG for velocity
                        initialization (default: None)
  mae_file              name of input file(s)
  --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. Useful for manually batching single point
                        calculations to minimize jobserver I/O (default:
                        False)
  --catch-failures      if True catch failures as exceptions. (default: False)
  --optimize            optimize structure prior to computing energy (default:
                        False)
  --optimize-cell       optimize cell (default: False)
  --optimization-pressure OPTIMIZATION_PRESSURE
                        external pressure (atm) applied during optimization
                        (default: 0.0)
  --write-opt-path      write optimization path (default: False)
  --phonons             calculate phonons using ase.Phonons (default: False)
  --phonon-bandstructure
                        calculate phonon bandstructure using phonopy. Requires
                        --phonons to be set (default: False)
  --phonon-dos          calculate phonon density of states using phonopy.
                        Requires --phonons to be set (default: False)
  --phonon-thermal      calculate thermal properties (specific heat, entropy,
                        Helmholtz free energy) using phonopy. Requires
                        --phonons to be set (default: False)
  --phonopy-config PHONOPY_CONFIG
                        Configuration file for phonopy band structure
                        calculations. Currently only supports BAND,
                        BAND_LABELS, MESH, and BAND_POINTS (default: None)
  --bandpath BANDPATH   ASE string specification of special point names for
                        the phonon bandstructure. See https://wiki.fysik.dtu.d
                        k/ase/ase/cell.html#ase.cell.Cell.bandpath for details
                        (default: None)
  --phonon-supercell-size PHONON_SUPERCELL_SIZE [PHONON_SUPERCELL_SIZE ...]
                        Supercell size multiplier for phonon calculations. If
                        only one given uses same value for all directions
                        (e.g., 2 creates a 2x2x2 supercell, 2 3 1 makes a
                        2x3x1 supercell) (default: [2])
  --phonon-delta PHONON_DELTA
                        Finite displacement step size for phonon calculations
                        (default: 0.05) (default: 0.03)
  --phonon-NAC          calculate non-analytic correction to phonons (default:
                        False)
  --phonon-temperatures PHONON_TEMPERATURES [PHONON_TEMPERATURES ...]
                        Which temperatures to calculate thermal properties
                        (entropy, free energy) for. Requires both --phonons
                        and --phonon-thermal to be turned on (default: [])
  --phonon-unit {eV,wavenumber,THz,meV}
                        unit to report phonon distribution in. Currently only
                        supported in ASE driver (default: THz)
  --constrain-molecular-charge
                        constraint molecular charge based on formal charges
                        (default: False)
  --guess-atomic-charge-key GUESS_ATOMIC_CHARGE_KEY
                        if given, QRNN charges will be taken from this atomic
                        property instead of being determined by a NN (default:
                        None)
  --compute-charge-grad
                        If True compute derivative of energy with respect to
                        charges and write to atom level property (default:
                        False)
  --net-charge NET_CHARGE
                        If given, all systems will be constrained to this
                        charge (be very careful with this setting, it should
                        only be used for debugging) (default: None)
  --net-spin NET_SPIN   If given, all systems will be constrained to this spin
                        (be very careful with this setting, it should only be
                        used for debugging) (default: None)
  --optimizer-algorithm {BFGS,FIRE}
                        Choice of optimization algorithm to use in ASE
                        (default: BFGS)
  --no-line-search      Turns off the use of line search in optimizations
                        (default: True)
  --calculate-eos       calculates and returns the bulk modulus (default:
                        False)
  --optimization-thresh OPTIMIZATION_THRESH
                        threshold on max force (in eV/A) for optimization
                        convergence (default: 0.01)
  --unstable-force-thresh UNSTABLE_FORCE_THRESH
                        A maximum threshold on the max force (ev/A). If the
                        max force component exceeds this value the
                        optimization considered unstable and is terminated.
                        (default: None)
  --info-gain-kt INFO_GAIN_KT
                        energy scale for information gain optimization, in
                        Hartree (default: 0.0)
  --neb-k NEB_K         Nudged Elastic Band constant (in eV/A). If > 0, run
                        NEB using all input structures as one initial path.
                        (default: 0.0)
  --neb-num-images NEB_NUM_IMAGES
                        The number of images to attempt to interpolate in an
                        NEB calculation. Skipped if a path of 5 or more is
                        given. If None, try to interpolate an image for every
                        0.2 Angstrom of distance between the first and last
                        structure in the path. (default: None)
  --max-cycles MAX_CYCLES
                        maximum number of optimization cycles (default: 500)
  --freeze-heavies      if True freeze the positions of heavy atoms (default:
                        False)
  --dielectric          if True attempt to calculate the dielectric tensor for
                        a fixed material. Only implemented for MPNICE
                        (default: False)
  --piezoelectric       if True attempt to calculate the piezoelectric tensor
                        for a fixed material. Only implemented for MPNICE
                        (default: False)
  --return-latent-features
                        if True return the latent features of each atom in mae
                        file. Only implemented for MPNICE (default: False)
  --detach-output-head-weights
                        if True detach the predicted output head weights (from
                        --predict-output-heads) from the autograd graph before
                        calculating derivatives. Disobeys energy conservation.
                        (default: False)
  --freeze-atoms FREEZE_ATOMS [FREEZE_ATOMS ...]
                        list of ASE atom indices to be frozen during structure
                        optimization. (default: None)
  --fix-symmetry        fix spacegroup symmetry (default: False)
  --add-flucq-energy    if true add flucq, dispersion and atomic energy, else
                        just add atomic energy (default: False)
  --ensemble {NVE,NVT,NPT}
                        Ensemble for molecular dynamics (default: NVE)
  --compute-frho        compute ensemble uncertainty for atomic forces
                        (default: False)
  --limit-forces LIMIT_FORCES
                        Atomic forces exceeding this magnitude (in eV/A) will
                        be scaled to this magnitude. If None (default), no
                        limit. (default: None)
  --temperature TEMPERATURE
                        temperature for molecular dynamics (Kelvin) (default:
                        300.0)
  --pressure PRESSURE   pressure (atm) for NPT molecular dynamics (default:
                        1.0)
  --sample-interval SAMPLE_INTERVAL
                        interval (in units of frames) at which to log the MD
                        data (default: 100)
  --traj-interval TRAJ_INTERVAL
                        interval (in units of frames) at which to collect
                        molecular dynamics frames (default: 100)
  --total-time TOTAL_TIME
                        Total molecular dynamics time (ps) (default: 0.0)
  --md-rho-thresh MD_RHO_THRESH
                        MD termination threshold on Ensemble uncertainty (rho)
                        in kcal/mol (default: None)
  --time-step TIME_STEP
                        Time step for molecular dynamics (fs) (default: 0.1)
  --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)
  --restart-MD          restart MD by setting velocities from input mae file
                        (default: False)
  --bulk-modulus BULK_MODULUS
                        bulk-modulus of substance in GPa (default: 3.0)
  --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)
  --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 a force towards the origin, equivalent to this
                        external pressure on a 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 means non-interacting and
                        1 means fully interacting. (default: 1.0)
  --fep-lj-lambda FEP_LJ_LAMBDA
                        lambda value for softcore LJ potential. Should be
                        between 0 and 1. 0 means regular LJ and 1 means
                        potential is 0 everywhere. (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)