pymatgen.analysis.bond_dissociation module

class BondDissociationEnergies(molecule_entry, fragment_entries, allow_additional_charge_separation=False, multibreak=False)[source]

Bases: monty.json.MSONable

Standard constructor for bond dissociation energies. All bonds in the principle molecule are looped through and their dissociation energies are calculated given the energies of the resulting fragments, or, in the case of a ring bond, from the energy of the molecule obtained from breaking the bond and opening the ring. This class should only be called after the energies of the optimized principle molecule and all relevant optimized fragments have been determined, either from quantum chemistry or elsewhere. It was written to provide the analysis after running an Atomate fragmentation workflow.

Note that the entries passed by the user must have the following keys: formula_pretty, initial_molecule, final_molecule. If a PCM is present, all entries should also have a pcm_dielectric key.

  • molecule_entry (dict) – Entry for the principle molecule. Should have the keys mentioned above.
  • fragment_entries (list of dicts) – List of fragment entries. Each should have the keys mentioned above.
  • allow_additional_charge_separation (bool) – If True, consider larger than normal charge separation among fragments. Defaults to False. See the definition of self.expected_charges below for more specific information.
  • multibreak (bool) – If True, additionally attempt to break pairs of bonds. Defaults to False.
build_new_entry(frags, bonds)[source]