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
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.17975982738704488,
2: 0.23444572537355945,
3: 0.2205594041442982,
4: 0.22055952343763074,
}
"""