MetalBindingDoc

class emmet.core.molecules.metal_binding.MetalBindingDoc(**data)

Bases: PropertyDoc

Metal binding properties of a molecule

Parameters:
  • charge (int | None)

  • spin_multiplicity (int | None)

  • natoms (int | None)

  • elements (list[Annotated[ElementTypeVar, BeforeValidator(func=~emmet.core.types.pymatgen_types.element_adapter.<lambda>, json_schema_input_type=PydanticUndefined), WrapSerializer(func=~emmet.core.types.pymatgen_types.element_adapter.<lambda>, return_type=str, when_used=always)]] | None)

  • nelements (int | None)

  • nelectrons (int | None)

  • composition (Annotated[CompositionTypeVar, BeforeValidator(func=~emmet.core.types.pymatgen_types.composition_adapter.<lambda>, json_schema_input_type=PydanticUndefined), WrapSerializer(func=~emmet.core.types.pymatgen_types.composition_adapter.<lambda>, return_type=dict[str, float], when_used=always)] | None)

  • composition_reduced (Annotated[CompositionTypeVar, BeforeValidator(func=~emmet.core.types.pymatgen_types.composition_adapter.<lambda>, json_schema_input_type=PydanticUndefined), WrapSerializer(func=~emmet.core.types.pymatgen_types.composition_adapter.<lambda>, return_type=dict[str, float], when_used=always)] | None)

  • formula_alphabetical (str | None)

  • formula_pretty (str | None)

  • formula_anonymous (str | None)

  • chemsys (str | None)

  • symmetry (PointGroupData | None)

  • species_hash (str | None)

  • coord_hash (str | None)

  • property_name (str)

  • property_id (str)

  • molecule_id (MPculeID)

  • deprecated (bool)

  • deprecation_reasons (list[str] | None)

  • level_of_theory (LevelOfTheory | None)

  • solvent (str | None)

  • lot_solvent (str | None)

  • last_updated (datetime)

  • origins (list[MolPropertyOrigin])

  • warnings (list[str])

  • method (str)

  • binding_partial_charges_property_id (str | None)

  • binding_partial_spins_property_id (str | None)

  • binding_partial_charges_lot_solvent (str | None)

  • binding_partial_spins_lot_solvent (str | None)

  • binding_charge_spin_method (str | None)

  • binding_bonding_property_id (str | None)

  • binding_bonding_lot_solvent (str | None)

  • binding_bonding_method (str | None)

  • binding_thermo_property_id (str | None)

  • binding_thermo_lot_solvent (str | None)

  • binding_thermo_correction_lot_solvent (str | None)

  • binding_thermo_combined_lot_solvent (str | None)

  • binding_data (list[MetalBindingData] | None)

classmethod from_docs(method, metal_indices, base_molecule_doc, partial_charges, partial_spins, bonding, base_thermo, metal_thermo, nometal_thermo, **kwargs)
Construct a document describing the binding energy of a metal atom or ion to

a molecule from MoleculeThermoDocs (for thermochemistry), PartialChargesDocs and PartialSpinsDocs (to assess the oxidation state and spin state of the metal), and MoleculeBondingDocs (to assess the coordination environment of the metal).

Parameters:
  • method (str) – What method was used to construct this document?

  • metal_indices (list[int]) – List of indices in the Molecule corresponding to metals

  • base_molecule_doc (MoleculeDoc) – MoleculeDoc used for basic ID, species, structure information

  • partial_charges (PartialChargesDoc) – PartialChargesDoc used to determine the oxidation state of the metal of interest

  • partial_spins (PartialSpinsDoc | None) – PartialSpinsDoc used to determine the spin state of the metal of interest

  • bonding (MoleculeBondingDoc) – MoleculeBondingDoc used to determine the coordination environment

  • base_thermo (MoleculeThermoDoc) – MoleculeThermoDoc for the molecule of interest.

  • metal_thermo (dict[int, MoleculeThermoDoc]) – dict[int, MoleculeThermodoc], where the keys are the indices of the metal ions or atoms in this molecule and the values are the MoleculeThermoDocs corresponding to the appropriate metal (with the correct charge and spin)

  • nometal_thermo (dict[int, MoleculeThermoDoc]) – dict[int, MoleculeThermodoc], where the keys are the indices of the metal ions or atoms in this molecule and the values are the MoleculeThermoDocs corresponding to the appropriate metal (with the correct charge and spin)

  • kwargs – To be passed to PropertyDoc

Return type:

Self

Returns:

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].