NN-xTB

NN-xTB module for the Rush Python client.

NN-xTB reparameterizes xTB with a neural network to approach DFT-level accuracy while keeping xTB-like speed. It supports arbitrary charge and spin states and is well-suited for large-scale screening where fast, per-atom forces or vibrational frequencies are needed. Frequency calculations are more expensive.

Usage:

from rush import nnxtb

result = nnxtb.energy("mol.json").fetch()
print(result.energy_mev)
class rush.nnxtb.Result(energy_mev, forces_mev_per_angstrom=None, frequencies_inv_cm=None)[source]

Bases: object

Parsed nn-xTB calculation results.

Parameters:
  • energy_mev (float)

  • forces_mev_per_angstrom (list[tuple[float, float, float]] | None)

  • frequencies_inv_cm (list[float] | None)

energy_mev: float
forces_mev_per_angstrom: list[tuple[float, float, float]] | None = None
frequencies_inv_cm: list[float] | None = None
class rush.nnxtb.ResultPaths(output)[source]

Bases: object

Workspace path for saved nn-xTB output.

Parameters:

output (Path)

output: Path
class rush.nnxtb.ResultRef(output)[source]

Bases: object

Lightweight reference to nn-xTB output in the Rush object store.

Parameters:

output (RushObject)

classmethod from_raw_output(res)[source]

Parse raw collect_run output into a ResultRef.

Parameters:

res (Any)

Return type:

ResultRef

fetch()[source]

Download nn-xTB output and parse into Python objects.

Return type:

Result

save()[source]

Download nn-xTB output and save to the workspace.

Return type:

ResultPaths

output: RushObject
rush.nnxtb.energy(mol, compute_forces=None, compute_frequencies=None, multiplicity=None, run_spec=RunSpec(gpus=1, storage=100), run_opts=RunOpts())[source]

Submit an nn-xTB energy calculation for the topology at topology_path.

Returns a RushRun handle. Call .fetch() to get the parsed result, or .save() to write it to disk.

Parameters:
  • mol (TRC | TRCRef | Path | str | RushObject | Topology)

  • compute_forces (bool | None)

  • compute_frequencies (bool | None)

  • multiplicity (int | None)

  • run_spec (RunSpec)

  • run_opts (RunOpts)

Return type:

RushRun[ResultRef]