One admissible reaction-edge *family* in the RAG (paper Section 3.2).
An ``Edge`` is parameterised over the size axis: it represents the
whole family of elementary reactions of one :class:`EdgeClass` acting
on one population (or population pair). The graph walker applies the
edge's kernel vectorised over n, so a single ``Edge`` stands for
O(N) scalar reactions.
Attributes
----------
edge_class : EdgeClass
Which of the ten elementary classes this family belongs to.
label : str
Human-readable identifier, unique within a RAG (diagnostics).
population : Population
The population the (surviving) cluster belongs to.
kernel : str
Key into the host rate-kernel library ``k``. The kernel supplies
the size-resolved rate; the abstract core never evaluates it.
partner_population : Population, optional
The second precursor population for binary classes
(COALESCENCE: same polarity; ANNIHILATION: opposite polarity).
product_population : Population, optional
The product population for INTER_POPULATION edges (p' != p).
gas_species : int, optional
Index into the host gas list, for SOLUTE_TRAPPING edges.
meta : dict
Free-form host annotations (e.g. emission channel, sink kind).
Definition at line 38 of file rag.py.