# Chemoinformatics Module (cheminfo)
## Tutorial
## API Documentation
class Atom()
class Bond()
class Molecule()
`Molecule` property and method list, generated by AI.
| Method Name | Description |
|------------------------------------|-----------------------------------------------|
| `__init__` | Constructor method |
| `__dir__` | Built-in method for dir() |
| `__getattr__` | Fallback attribute getter |
| `__repr__` | String representation |
| `__add__` | Addition operator overloading |
| `__copy__` | Object copy |
| `_hided_bonds` | (Likely internal, name suggests hidden bonds) |
| `copy` | Copy molecule |
| `crystal` | Related to crystals? |
| `create_crystal` | Create a crystal |
| `setattr` | Custom setattr (not dunder) |
| `read_one` | Read one record/item? |
| `hydrogens` | Hydrogen operations |
| `sum_explicit_hydrogens` | Sum explicit hydrogens |
| `sum_implicit_hydrogens` | Sum implicit hydrogens |
| `has_hydrogens` | Check hydrogens |
| `calc_mol_default_charge` | Calculate default molecule charge |
| `_after_hide_metal_ligand_bonds` | Internal, likely after hiding specific bonds |
| `_retrieve_torsions` | Internal torsion retrieval |
| `simple_paths` | Calculate simple paths |
| `_set_coordinates` | Set coordinates (internal) |
| `_update_atom_neighbours_bonds` | Update atom neighbors and bonds |
| `_update_graph` | Update graph representation |
| `_add_atom` | Internal atom addition |
| `_add_bond` | Internal bond addition |
| `add_atom` | Add atom |
| `_replace_atom` | Internal atom replacement |
| `build_all_pair_links` | Build pairwise links |
| `auto_pair_metal` | Automate pairing with metals |
| `replace_atom` | Replace atom |
| `add_bond` | Add bond |
| `add_bonds` | Add multiple bonds |
| `add_component` | Add a molecular component |
| `add_hydrogens` | Add hydrogens |
| `cid` | PubChem CID |
| `name` | Get/set name |
| `cas` | CAS number operations |
| `get_thermo` | Get thermodynamic properties |
| `clear_constraints` | Clear constraints |
| `clear_metal_ligand_bonds` | Clear metal-ligand bonds |
| `clear_hided_covalent_bonds` | Clear hidden covalent bonds |
| `clear_hided_bonds` | Clear hidden bonds |
| `recover_hided_metal_ligand_bonds` | Recover hidden metal-ligand bonds |
| `recover_hided_covalent_bonds` | Recover hidden covalent bonds |
| `atom_pairs` | Atom pairs operations |
| `angles` | Geometric angles |
| `torsions` | Torsion angles |
| `assign_aromatic` | Assign aromaticity |
| `assign_bond_order` | Assign bond order |
| `atom_attr_matrix` | Atom attribute matrix |
| `atoms` | Atom access |
| `c_bonds` | Likely covalent bonds? |
| `bonds` | Bonds access |
| `bond` | Access a bond |
| `build3d` | Build 3D structure |
| `update_mol_charge` | Update molecule charge |
| `sum_atoms_charge` | Sum all charges |
| `default_unpaired_electrons` | Default unpaired electrons |
| `default_spin_mult` | Default spin multiplicity |
| `determine_rings_aromatic` | Determine aromatic rings |
| `conformers` | Conformers retrieval |
| `conformer_load` | Load conformer |
| `conformers_number` | Number of conformers |
| `conformer_add` | Add conformer |
| `conformer_clear` | Clear conformers |
| `conformer_get` | Get specific conformer |
| `optimize` | Optimize geometry |
| `optimize_complexes` | Optimize complexes |
| `complexes_build_optimize_` | Build & optimize complexes |
| `calc_atom_valence` | Calculate atomic valence |
| `calc_implicit_hydrogens` | Calculate implicit hydrogens |
| `components` | Access components |
| `constraint_bonds_angles` | Constraint bonds/angles |
| `coordinates` | Get coordinates |
| `_create_atom_from_array` | Internal: create atom from array |
| `_create_atom` | Internal: create atom |
| `create_atom` | Create atom |
| `atom_pairwise_index` | Atom pairwise index |
| `get_partial_charge` | Get partial charge |
| `assign_partial_charge` | Assign partial charge |
| `pair_dist` | Pairwise distances |
| `dist_matrix` | Distance matrix |
| `element_counts` | Count elements |
| `simple_graph` | Simple graph representation |
| `_node_with_attrs` | Internal: Node with attributes |
| `_edge_with_attrs` | Internal: Edge with attributes |
| `_hide_bond` | Internal: Hide bond |
| `hide_bonds` | Hide bonds |
| `hide_metal_ligand_bonds` | Hide metal-ligand bonds |
| `graph` | Graph object |
| `atom_bond_graph` | Atom-bond graph |
| `graph_spectral` | Graph spectral analysis |
| `formula` | Molecular formula |
| `is_disorder` | Check disorder |
| `has_3d` | 3D structure check |
| `has_metal` | Metal presence check |
| `has_bond_ring_intersection` | Check bond-ring intersection |
| `intersection_bonds_rings` | Bonds/rings intersection |
| `heavy_atoms` | Heavy atom operations |
| `is_organic` | Organic molecule check |
| `is_full_halogenated` | Full halogenation check |
| `link_atoms` | Link atoms |
| `link_matrix` | Linkage matrix |
| `metals` | Metals access |
| `refresh_atom_id` | Refresh atom ID |
| `atom_id_dict` | Atom ID dictionary |
| `bond_id_dict` | Bond ID dictionary |
| `_rm_atom` | Internal: remove atom |
| `_rm_atoms` | Internal: remove multiple atoms |
| `remove_atom` | Remove atom |
| `remove_atoms` | Remove atoms |
| `_rm_bond` | Internal: remove bond |
| `_rm_bonds` | Internal: remove multiple bonds |
| `remove_bond` | Remove bond |
| `remove_bonds` | Remove bonds |
| `force_remove_polar_hydrogens` | Force remove polar hydrogens |
| `remove_hydrogens` | Remove hydrogens |
| `remove_metals` | Remove metals |
| `set_default_valence` | Set default valence |
| `similarity` | Similarity metric |
| `_longest_path` | Internal: longest path |
| `longest_path` | Longest path |
| `canonical_tree` | Canonical tree |
| `super_acyclic_graph` | Super acyclic graph |
| `InChi` | InChI string |
| `shortest_path_index` | Shortest path index |
| `shortest_path` | Shortest path |
| `shortest_paths_indices` | Indices for shortest paths |
| `smiles` | SMILES string |
| `kekulize_smiles` | Kekulize SMILES |
| `rings` | Rings operations |
| `aromatic_joint_rings` | Joint aromatic rings |
| `rings_small` | Small rings |
| `ligand_rings` | Ligand rings |
| `to_obmol` | Convert to OBMol |
| `to_rdmol` | Convert to RDMol |
| `to_pybel_mol` | Convert to Pybel mol |
| `translation` | Translation operation |
| `update_atoms_attrs_from_id_dict` | Update atom attributes |
| `update_bonds_attrs_from_id_dict` | Update bond attributes |
| `update_angles` | Update angles |
| `update_torsions` | Update torsions |
| `weight` | Molecular weight |
| `write` | Write/serialize molecule |
- Properties:
> atoms
> bonds
> hydrogens
class Conformer()
class Crystal()