Skip to content

How to estimate binding energy with Dreiding Forcefield using frozen pose method #1

Description

@ScottLiao920

Hi, thanks for your amazing work!

Just curious about the actual code for binding energy estimation with Dreiding Forcefield using frozen pose method.
Suppose I already got one docked complex of zeolite and OSDA stored in .cif file, is the following way to estimate binding energy correct?

from gulpy.jobs import OptiJob
from gulpy.structure import GulpCrystal
from gulpy.inputs import Library
from gulpy.parser import PropertyParser, JobParser
from gulpy.structure import GulpCrystal, GulpMolecule
from gulpy.structure.labels import CatlowLabels, DreidingMoleculeLabels, DreidingLabels
from pymatgen.core import Structure, Molecule, Lattice

structure = Structure.from_file(cif_path) # cif for the docked complex
structure_gulpy = GulpCrystal(structure, DreidingLabels())
zeolite_gulpy = GulpCrystal(
    Structure.from_file(zeolite_cif_path),
    DreidingLabels(),
)
osda_gulpy = GulpMolecule.from_smiles(
    Molecule.from_file(osda_conformer_xyz_path).cart_coords,
    osda_smiles,
    DreidingMoleculeLabels(),
)
library = Library.from_file(f"{os.environ["GULP_LIB"]}/dreiding.lib")

# Create optimization job with defaults
job = OptiJob(
    structure_gulpy,
    library,
    keywords=["opti", "conp"],  # Optimize it under constant pressure
    options={"maxcyc": 300},  # Increase max cycles
)

# Write input file
job.write_input("optimization.gin")

# Run optimization
job.run("optimization.gin")

# Parse results
results = job.parse_results("optimization.out")

# repeat for zeolite, OSDA with the same settings

and the estimated binding energy is results['energy']-zeo_results['energy'] - osda_result['energy'] in eV?
I am not sure about whether my optimization job parameters or the library is right or not, please correct me if I'm wrong.

Thanks for your help in advance.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions