Overview
Workflows comprise common operations for chemical exploration and discovery. Each workflows encodes "best practice" for a particular task while also containing flexibility in options and multiple failover routines for robustness.
Workflows allow individual computations with arbitrary dependencies to be executed efficiently on available compute resources through a simple interface.
Examples
Conformer generation workflow
import sierra
from sierra.inputs import *
# Generate conformers for butane molecule from a SMILES string
conformers = ConformersInput(smiles="CCCC")
result = sierra.run(conformers)
for num, x in enumerate(result.conformers):
print(f"Conformer {num} energy: {result.energies[num]:.6f} Hartree")
#> Conformer 0 energy: -13.866303 Hartree
#> Conformer 1 energy: -13.865710 Hartree
#> Conformer 2 energy: -13.865710 Hartree
#> Conformer 3 energy: -13.862692 Hartree
Bond Dissociation Energy workflow
import sierra
from sierra.inputs import *
mol = Molecule(smiles="C(Cl)(F)")
bde_inp = BondDissociationEnergyInput(
molecule=mol, energy_method=XTBMethod(model="GFN1")
)
result = sierra.run(bde_inp)
print("Bond dissociation energies:")
#> Bond dissociation energies:
print(result.dissociation_energies)
"""
{
1: 0.1797409478040315,
2: 0.23447552219748502,
3: 0.2205687646961394,
4: 0.22056839535150274,
}
"""