RedoxDoc

class emmet.core.molecules.redox.RedoxDoc(**data)

Bases: PropertyDoc

Molecular properties related to reduction and oxidation, including vertical ionization energies and electron affinities, as well as reduction and oxidation potentials

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])

  • base_property_id (str)

  • electron_affinity (float | None)

  • ea_task_id (MPID | None)

  • ionization_energy (float | None)

  • ie_task_id (MPID | None)

  • reduction_energy (float | None)

  • reduction_free_energy (float | None)

  • red_molecule_id (MPculeID | None)

  • red_property_id (str | None)

  • oxidation_energy (float | None)

  • oxidation_free_energy (float | None)

  • ox_molecule_id (MPculeID | None)

  • ox_property_id (str | None)

  • reduction_potential (float | None)

  • oxidation_potential (float | None)

classmethod from_docs(base_molecule_doc, base_thermo_doc, red_doc=None, ox_doc=None, ea_doc=None, ie_doc=None, deprecated=False, **kwargs)
Construct a document describing molecular redox properties from

MoleculeThermoDocs (for adiabatic redox potentials and thermodynamics) and TaskDocs (for vertical ionization energies and electron affinities)

Parameters:
  • base_molecule_doc (MoleculeDoc) – MoleculeDoc of interest

  • base_thermo_doc (MoleculeThermoDoc) – MoleculeThermoDoc for the molecule of interest. All properties will be calculated in reference to this document

  • red_doc (MoleculeThermoDoc | None) – MoleculeThermoDoc for the reduced molecule. This molecule will have the same (covalent) bonding as base_thermo_doc but will differ in charge by -1

  • ox_doc (MoleculeThermoDoc | None) – MoleculeThermoDoc for the oxidized molecule. This molecule will have the same (covalent) bonding as the base_thermo_doc but will differ in charge by +1

  • ea_doc (TaskDocument | None) – A TaskDocument performed at the same structure as base_thermo_doc, but at a charge that differs by -1. This document will be used to calculate the electron affinity of the molecule

  • ie_doc (TaskDocument | None) – A TaskDocument performed at the same structure as base_thermo_doc, but at a charge that differs by +1. This document will be used to calculate the ionization energy of the molecule

  • kwargs – To be passed to PropertyDoc

  • deprecated (bool)

Returns:

model_config: ClassVar[ConfigDict] = {}

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