Sierra provides a uniform Python API for Entos simulations, such as workflows, energy calculations, and dynamics. The API provides access to low-cost, high-accuracy methods (xTB and OrbNet) as well as more traditional quantum chemistry methods (HF and DFT).
The Entos ecosystem is built up of the idea of
Model objects which contain attributes. A
Model in Sierra can be created by specifying attributes with the general form
model = Model(attribute=data,...). The data in the
Model can then be accessed by
model.attribute. For example, the
Molecule model contains attributes like
geometry that can be called to return the atomic symbols and molecular geometry, respectively.
from sierra.inputs import * mol = Molecule(pubchem="water") print(mol.symbols) #> ['O' 'H' 'H'] print(mol.geometry) """ [[ 0. 0. 0. ] [ 0.52421003 1.68733646 0.48074633] [ 1.14668581 -0.45032174 -1.35474466]] """
There is a special type of model called
Input which provides the input structure for a computation. Each
Input object is paired with a corresponding
Result object, which contains all information in the
Input together with any additional attributes evaluated during the computation. All
Input objects can be computed to
Result objects with the
import sierra from sierra.inputs import * water = Molecule(pubchem="water") print(water.measure([0, 1])) # O-H bond distance #> 1.8311246594938317 inp = OptimizationInput(initial_molecule=water, method=XTBMethod(model="gfn1")) result = sierra.run(inp) print(result.final_molecule.measure([0, 1])) # Optimized O-H bond distance #> 1.8104715454450993
For further documentation and examples see:
- Molecule - Details on creating and/or importing a molecular structure.
- Units - A description of Sierra's unit system.
- Building Blocks - Energy, gradient, AIMD, etc, which form the basis of Entos workflows.
- Workflow - Automated technologies which perform commonly used discovery tasks.
- Energy Methods - Details of DFT, xTB, OrbNet, and other energy methods.