Skip to content

BigChem Algorithms

BigChem implements some of its own concurrent algorithms that leverage its horizontally scalable backend infrastructure. These include a parallel hessian algorithm and parallel frequency analysis algorithm. To use them submit a hessian calculation to ChemCloud using bigchem as the engine. See examples the parallel_hessian.py and parallel_frequency_analysis.py scripts in the examples directory.

Parallel Hessian & Frequency Analysis

from qcio import DualProgramInput, Structure

from chemcloud import compute

water = Structure(
    symbols=["O", "H", "H"],
    geometry=[
        [0.0000, 0.00000, 0.0000],
        [0.2774, 0.89290, 0.2544],
        [0.6067, -0.23830, -0.7169],
    ],
)


prog_inp = DualProgramInput(
    calctype="hessian",
    structure=water,
    subprogram="psi4",
    subprogram_args={"model": {"method": "b3lyp", "basis": "6-31g"}},
)


# Submit calculation
output = compute("bigchem", prog_inp)

# ProgramOutput object containing all returned data
print(output)
print(output.results.hessian)
# Frequency data always included too
print(f"Wavenumbers: {output.results.freqs_wavenumber}")
print(output.results.normal_modes_cartesian)
print(output.results.gibbs_free_energy)

Keywords for the BigChem algorithms:

Keyword Type Description Default Value
dh float Displacement for gradient geometries for finite difference 5.0e-3
temperature float Temperature passed to the harmonic free energy module 300.0
pressure float Pressure passed to the harmonic free energy module 1.0