TTP

class specatalog.models.molecules.TTP(**kwargs)[source]

Triplet–triplet–pair (TTP) molecular entry in the polymorphic molecule hierarchy.

This subclass of Molecule represents a molecular system composed of two chromophore triplet centres connected via a defined chemical linker.

The class participates in the SQLAlchemy polymorphic inheritance framework via polymorphic_identity='ttp'. Any database entry within the molecules table with group='ttp' is loaded as a TTP object.

id

Primary key referencing molecules.id; cascades on deletion.

Type:

int

triplet_1

Short string identifying the first chromophoric unit capable of forming a triplet excited state.

Type:

str

linker

Short string specifying the chemical linker that connects the two chromophores.

Type:

str

triplet_2

Short string identifying the second chromophoric unit capable of forming a triplet excited state.

Type:

str

name_suffix

A suffix for the molecular name giving addtional information on the molecule.

Type:

str

Notes

  • The table name is ttp.

  • Inherits all universal attributes from Molecule, such as name, molecular_formula, structural_formula, and timestamps.

  • All TTP-specific attributes are mandatory (non-nullable).

Examples

>>> from models import TTP
>>> ttp = TTP(
...     name="PDI1-co-PDI2",
...     molecular_formula="C48H30O4",
...     structural_formula="...",
...     group="ttp",
...     triplet_1="PDI1",
...     linker="co",
...     triplet_2="PDI2",
... )
>>> session.add(ttp)
>>> session.commit()

Polymorphic loading:

>>> mol = session.query(Molecule).get(ttp.id)
>>> type(mol)
<class 'models.TTP'>