orthonym.rules.anhydrides#
Note
Internal API. Names and behaviour may change between releases.
Anhydride naming using IUPAC functional class nomenclature.
- Anhydrides use “functional class” naming:
Symmetric: “{acid name} anhydride” Mixed: “{acid1} {acid2} anhydride” (alphabetical order) Cyclic: “{diacid name} anhydride”
Examples
CC(=O)OC(=O)C -> ethanoic anhydride (symmetric) CC(=O)OC(=O)CC -> ethanoic propanoic anhydride (mixed, alphabetical) CCC(=O)OC(=O)CCC -> butanoic anhydride (symmetric) O=C1CCC(=O)O1 -> butanedioic anhydride (cyclic, from succinic acid) O=C1CCCC(=O)O1 -> pentanedioic anhydride (cyclic, from glutaric acid)
- The acid name derives from the acyl fragment:
ethanoyl + ethanoyl -> ethanoic acid -> “ethanoic anhydride”
Reference: IUPAC 2013 Blue Book, (Acid anhydrides)
- orthonym.rules.anhydrides.name_anhydride(features)#
Name an anhydride compound using functional class nomenclature.
- Parameters:
features – MolecularFeatures with principal_group == ‘anhydride’.
- Returns:
IUPAC name string, or None if not an anhydride.
- Return type:
str | None
- orthonym.rules.anhydrides.get_anhydride_consumed_atoms(functional_groups)#
Get the set of atom indices consumed by anhydride groups.
The bridge oxygen and ester-like bonds in anhydrides should be filtered from ester FG detection to prevent double-counting.
- Parameters:
functional_groups (dict) – Dict from detect_functional_groups.
- Returns:
Set of all atom indices that are part of anhydride groups.
- Return type:
set