Molecular
=========

A package of the classes for handling molecules in `CGExplore`.

.. toctree::
  :maxdepth: 1

  Molecular module <_autosummary/cgexplore.molecular>

CG-Beads
--------

.. toctree::
  :maxdepth: 1

  CgBead <_autosummary/cgexplore.molecular.CgBead>
  BeadLibrary <_autosummary/cgexplore.molecular.BeadLibrary>
  string_to_atom_number <_autosummary/cgexplore.molecular.string_to_atom_number>
  periodic_table <_autosummary/cgexplore.molecular.periodic_table>

Molecule containers
-------------------

.. toctree::
  :maxdepth: 1

  Conformer <_autosummary/cgexplore.molecular.Conformer>
  SpindryConformer <_autosummary/cgexplore.molecular.SpindryConformer>
  Ensemble <_autosummary/cgexplore.molecular.Ensemble>
  Timestep <_autosummary/cgexplore.molecular.Timestep>

Precursors
----------

These classes provide interfaces between `stk` and :mod:`.CGExplore`. A
:class:`cgexplore.molecular.Precursor` contains an :class:`stk.BuildingBlock`
for molecule construction.

.. toctree::
  :maxdepth: 1

  Precursor <_autosummary/cgexplore.molecular.Precursor>
  FourC0Arm <_autosummary/cgexplore.molecular.FourC0Arm>
  FourC1Arm <_autosummary/cgexplore.molecular.FourC1Arm>
  ThreeC0Arm <_autosummary/cgexplore.molecular.ThreeC0Arm>
  ThreeC1Arm <_autosummary/cgexplore.molecular.ThreeC1Arm>
  ThreeC2Arm <_autosummary/cgexplore.molecular.ThreeC2Arm>
  TwoC0Arm <_autosummary/cgexplore.molecular.TwoC0Arm>
  TwoC1Arm <_autosummary/cgexplore.molecular.TwoC1Arm>
  TwoC2Arm <_autosummary/cgexplore.molecular.TwoC2Arm>
  TwoC3Arm <_autosummary/cgexplore.molecular.TwoC3Arm>

For precursors useful in random/algorithmic structure generation:

.. toctree::
  :maxdepth: 1

  GeneratedPrecursor <_autosummary/cgexplore.molecular.GeneratedPrecursor>
  PrecursorGenerator <_autosummary/cgexplore.molecular.PrecursorGenerator>
  VaBene <_autosummary/cgexplore.molecular.VaBene>
  VaBeneGenerator <_autosummary/cgexplore.molecular.VaBeneGenerator>
  check_fit <_autosummary/cgexplore.molecular.check_fit>

.. For rigid, shape-based precursors:


..   :maxdepth: 1

..   ShapePrecursor <_autosummary/cgexplore.molecular.ShapePrecursor>
..   DiatomShape <_autosummary/cgexplore.molecular.DiatomShape>
..   TriangleShape <_autosummary/cgexplore.molecular.TriangleShape>
..   SquareShape <_autosummary/cgexplore.molecular.SquareShape>
..   StarShape <_autosummary/cgexplore.molecular.StarShape>
..   HexagonShape <_autosummary/cgexplore.molecular.HexagonShape>
..   TdShape <_autosummary/cgexplore.molecular.TdShape>
..   CuShape <_autosummary/cgexplore.molecular.CuShape>
..   OcShape <_autosummary/cgexplore.molecular.OcShape>
..   V2P3Shape <_autosummary/cgexplore.molecular.V2P3Shape>
..   V2P4Shape <_autosummary/cgexplore.molecular.V2P4Shape>
..   V4P62Shape <_autosummary/cgexplore.molecular.V4P62Shape>
..   V6P9Shape <_autosummary/cgexplore.molecular.V6P9Shape>
..   V8P16Shape <_autosummary/cgexplore.molecular.V8P16Shape>
..   V10P20Shape <_autosummary/cgexplore.molecular.V10P20Shape>
..   V12P24Shape <_autosummary/cgexplore.molecular.V12P24Shape>
..   V12P30Shape <_autosummary/cgexplore.molecular.V12P30Shape>
..   V20P30Shape <_autosummary/cgexplore.molecular.V20P30Shape>
..   V24P48Shape <_autosummary/cgexplore.molecular.V24P48Shape>
