chython.periodictable package¶
Contains classes of all elements used in containers for MoleculeContainer, Query-prefixed for QueryContainer. Also available 3 special query atom types: AnyElement, AnyMetal and ListElement.
Below only carbon atom classes shown.
- class chython.periodictable.C(isotope: int | None = None)¶
Bases:
Element
,PeriodII
,GroupXIV
Element object with specified isotope
- Parameters:
isotope – Isotope number of element
- __eq__(other)¶
compare attached to molecules elements
- __hash__()¶
Atom hash used in Morgan atom numbering algorithm.
- property atomic_mass: float¶
- property atomic_number¶
Element number
- property atomic_radius¶
Valence radius of atom
- property atomic_symbol: str¶
Element symbol
- property charge: int¶
Charge of atom
- copy() T ¶
Detached from graph copy of element
- property explicit_hydrogens: int¶
- classmethod from_atom(atom: Element) Element ¶
get Element copy
- classmethod from_atomic_number(number: int) Type[Element] ¶
get Element class by its number
- classmethod from_symbol(symbol: str) Type[Element] ¶
get Element class by its symbol
- property heteroatoms: int¶
- property hybridization¶
1 - if atom has zero or only single bonded neighbors, 2 - if has only one double bonded neighbor and any amount of single bonded, 3 - if has one triple bonded and any amount of double and single bonded neighbors or two double bonded and any amount of single bonded neighbors, 4 - if atom in aromatic ring.
- property implicit_hydrogens: int | None¶
- property in_ring: bool¶
Atom in any ring.
- property is_radical: bool¶
Radical state of atoms
- property isotope: int | None¶
Isotope number
- property isotopes_distribution¶
Isotopes distribution in earth
- property isotopes_masses¶
Isotopes masses
- property neighbors: int¶
Neighbors count of atom
- property ring_sizes: Tuple[int, ...]¶
Atom rings sizes.
- property total_hydrogens: int¶
- valence_rules(charge: int, is_radical: bool, valence: int) List[Tuple[Set[Tuple[int, Element]], Dict[Tuple[int, Element], int], int]] ¶
valence rules for element with specific charge/radical state
- property x: float¶
X coordinate of atom on 2D plane
- property xy: Tuple[float, float]¶
(X, Y) coordinates of atom on 2D plane
- property y: float¶
Y coordinate of atom on 2D plane
- class chython.periodictable.QueryC(isotope: int | None = None)¶
Bases:
QueryElement
,PeriodII
,GroupXIV
- __eq__(other)¶
compare attached to molecules elements and query elements
- __hash__()¶
Atom hash used in Morgan atom numbering algorithm.
- property atomic_number¶
Element number
- property atomic_radius¶
Valence radius of atom
- property atomic_symbol: str¶
Element symbol
- property charge: int¶
Charge of atom
- copy() T ¶
Detached from graph copy of element
- classmethod from_atom(atom: Element | Query) Query ¶
get QueryElement or AnyElement object from Element object or copy of QueryElement or AnyElement
- classmethod from_atomic_number(number: int) Type[QueryElement] ¶
get Element class by its number
- classmethod from_symbol(symbol: str) Type[QueryElement | AnyElement | AnyMetal] ¶
get Element class by its symbol
- property heteroatoms: Tuple[int, ...]¶
- property hybridization¶
- property implicit_hydrogens: Tuple[int, ...]¶
- property is_radical: bool¶
Radical state of atoms
- property isotope: int | None¶
Isotope number
- property neighbors: Tuple[int, ...]¶
- property ring_sizes: Tuple[int, ...]¶
Atom rings sizes.
- class chython.periodictable.AnyElement(*args, **kwargs)¶
Bases:
Query
- __eq__(other)¶
Compare attached to molecules elements and query elements
- __hash__()¶
Atom hash used in Morgan atom numbering algorithm.
- property atomic_number: int¶
Element number
- property atomic_symbol: str¶
Element symbol
- property charge: int¶
Charge of atom
- copy() T ¶
Detached from graph copy of element
- property heteroatoms: Tuple[int, ...]¶
- property hybridization¶
- property implicit_hydrogens: Tuple[int, ...]¶
- property is_radical: bool¶
Radical state of atoms
- property isotope: int | None¶
Isotope number
- property neighbors: Tuple[int, ...]¶
- property ring_sizes: Tuple[int, ...]¶
Atom rings sizes.
- class chython.periodictable.ListElement(elements: List[str], *args, **kwargs)¶
Bases:
Query
Elements list
- __eq__(other)¶
Compare attached to molecules elements and query elements
- __hash__()¶
Atom hash used in Morgan atom numbering algorithm.
- property atomic_number: int¶
Element number
- property atomic_symbol: str¶
Element symbol
- property charge: int¶
Charge of atom
- copy()¶
Detached from graph copy of element
- property heteroatoms: Tuple[int, ...]¶
- property hybridization¶
- property implicit_hydrogens: Tuple[int, ...]¶
- property is_radical: bool¶
Radical state of atoms
- property isotope: int | None¶
Isotope number
- property neighbors: Tuple[int, ...]¶
- property ring_sizes: Tuple[int, ...]¶
Atom rings sizes.
- class chython.periodictable.AnyMetal(*args, **kwargs)¶
Bases:
Query
Charge and radical ignored any metal. Rings, hydrogens and heteroatoms count also ignored.
Class designed for d-elements matching in standardization.
- __eq__(other)¶
Return self==value.
- __hash__()¶
Atom hash used in Morgan atom numbering algorithm.
- property atomic_number: int¶
Element number
- property atomic_symbol: str¶
Element symbol
- property charge: int¶
Charge of atom
- copy() T ¶
Detached from graph copy of element
- property heteroatoms: Tuple[int, ...]¶
- property hybridization¶
- property implicit_hydrogens: Tuple[int, ...]¶
- property is_radical: bool¶
Radical state of atoms
- property isotope: int | None¶
Isotope number
- property neighbors: Tuple[int, ...]¶
- property ring_sizes: Tuple[int, ...]¶
Atom rings sizes.