diff --git a/.buildinfo b/.buildinfo new file mode 100644 index 0000000..920c847 --- /dev/null +++ b/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. +config: 2dc36450a846ca42bb9c1649ae6bc8fe +tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/autoapi/index.doctree b/.doctrees/autoapi/index.doctree new file mode 100644 index 0000000..c2ae865 Binary files /dev/null and b/.doctrees/autoapi/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/abstract/dataset/index.doctree b/.doctrees/autoapi/moleculib/abstract/dataset/index.doctree new file mode 100644 index 0000000..f61a904 Binary files /dev/null and b/.doctrees/autoapi/moleculib/abstract/dataset/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/abstract/index.doctree b/.doctrees/autoapi/moleculib/abstract/index.doctree new file mode 100644 index 0000000..e5548f9 Binary files /dev/null and b/.doctrees/autoapi/moleculib/abstract/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/abstract/metrics/index.doctree b/.doctrees/autoapi/moleculib/abstract/metrics/index.doctree new file mode 100644 index 0000000..7ef71b9 Binary files /dev/null and b/.doctrees/autoapi/moleculib/abstract/metrics/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/abstract/transform/index.doctree b/.doctrees/autoapi/moleculib/abstract/transform/index.doctree new file mode 100644 index 0000000..d76aeaf Binary files /dev/null and b/.doctrees/autoapi/moleculib/abstract/transform/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/assembly/dataset/index.doctree b/.doctrees/autoapi/moleculib/assembly/dataset/index.doctree new file mode 100644 index 0000000..d338006 Binary files /dev/null and b/.doctrees/autoapi/moleculib/assembly/dataset/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/assembly/datum/index.doctree b/.doctrees/autoapi/moleculib/assembly/datum/index.doctree new file mode 100644 index 0000000..aef595e Binary files /dev/null and b/.doctrees/autoapi/moleculib/assembly/datum/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/assembly/index.doctree b/.doctrees/autoapi/moleculib/assembly/index.doctree new file mode 100644 index 0000000..6bc57e1 Binary files /dev/null and b/.doctrees/autoapi/moleculib/assembly/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/assembly/metrics/index.doctree b/.doctrees/autoapi/moleculib/assembly/metrics/index.doctree new file mode 100644 index 0000000..e1d2139 Binary files /dev/null and b/.doctrees/autoapi/moleculib/assembly/metrics/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/assembly/transform/index.doctree b/.doctrees/autoapi/moleculib/assembly/transform/index.doctree new file mode 100644 index 0000000..0d5198b Binary files /dev/null and b/.doctrees/autoapi/moleculib/assembly/transform/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/graphics/py3Dmol/index.doctree b/.doctrees/autoapi/moleculib/graphics/py3Dmol/index.doctree new file mode 100644 index 0000000..6faa3cb Binary files /dev/null and b/.doctrees/autoapi/moleculib/graphics/py3Dmol/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/index.doctree b/.doctrees/autoapi/moleculib/index.doctree new file mode 100644 index 0000000..d659dc7 Binary files /dev/null and b/.doctrees/autoapi/moleculib/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/alphabet/index.doctree b/.doctrees/autoapi/moleculib/molecule/alphabet/index.doctree new file mode 100644 index 0000000..c637b67 Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/alphabet/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/batch/index.doctree b/.doctrees/autoapi/moleculib/molecule/batch/index.doctree new file mode 100644 index 0000000..72bbf61 Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/batch/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/dataset/index.doctree b/.doctrees/autoapi/moleculib/molecule/dataset/index.doctree new file mode 100644 index 0000000..5763da5 Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/dataset/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/datum/index.doctree b/.doctrees/autoapi/moleculib/molecule/datum/index.doctree new file mode 100644 index 0000000..4df8718 Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/datum/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/h5_to_pdb/index.doctree b/.doctrees/autoapi/moleculib/molecule/h5_to_pdb/index.doctree new file mode 100644 index 0000000..f3c4cc4 Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/h5_to_pdb/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/index.doctree b/.doctrees/autoapi/moleculib/molecule/index.doctree new file mode 100644 index 0000000..d699cfb Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/tests/index.doctree b/.doctrees/autoapi/moleculib/molecule/tests/index.doctree new file mode 100644 index 0000000..3104fc0 Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/tests/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/tests/loader_test/index.doctree b/.doctrees/autoapi/moleculib/molecule/tests/loader_test/index.doctree new file mode 100644 index 0000000..a8d92ec Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/tests/loader_test/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/transform/index.doctree b/.doctrees/autoapi/moleculib/molecule/transform/index.doctree new file mode 100644 index 0000000..48c0e2a Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/transform/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/molecule/utils/index.doctree b/.doctrees/autoapi/moleculib/molecule/utils/index.doctree new file mode 100644 index 0000000..4c09394 Binary files /dev/null and b/.doctrees/autoapi/moleculib/molecule/utils/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/nucleic/alphabet/index.doctree b/.doctrees/autoapi/moleculib/nucleic/alphabet/index.doctree new file mode 100644 index 0000000..9969120 Binary files /dev/null and b/.doctrees/autoapi/moleculib/nucleic/alphabet/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/nucleic/batch/index.doctree b/.doctrees/autoapi/moleculib/nucleic/batch/index.doctree new file mode 100644 index 0000000..7ddba9b Binary files /dev/null and b/.doctrees/autoapi/moleculib/nucleic/batch/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/nucleic/dataset/index.doctree b/.doctrees/autoapi/moleculib/nucleic/dataset/index.doctree new file mode 100644 index 0000000..8f8088c Binary files /dev/null and b/.doctrees/autoapi/moleculib/nucleic/dataset/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/nucleic/datum/index.doctree b/.doctrees/autoapi/moleculib/nucleic/datum/index.doctree new file mode 100644 index 0000000..d956948 Binary files /dev/null and b/.doctrees/autoapi/moleculib/nucleic/datum/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/nucleic/index.doctree b/.doctrees/autoapi/moleculib/nucleic/index.doctree new file mode 100644 index 0000000..70ac8d9 Binary files /dev/null and b/.doctrees/autoapi/moleculib/nucleic/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/nucleic/transform/index.doctree b/.doctrees/autoapi/moleculib/nucleic/transform/index.doctree new file mode 100644 index 0000000..eb56ecd Binary files /dev/null and b/.doctrees/autoapi/moleculib/nucleic/transform/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/nucleic/utils/index.doctree b/.doctrees/autoapi/moleculib/nucleic/utils/index.doctree new file mode 100644 index 0000000..3e9f7b7 Binary files /dev/null and b/.doctrees/autoapi/moleculib/nucleic/utils/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/alphabet/index.doctree b/.doctrees/autoapi/moleculib/protein/alphabet/index.doctree new file mode 100644 index 0000000..4aba79d Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/alphabet/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/batch/index.doctree b/.doctrees/autoapi/moleculib/protein/batch/index.doctree new file mode 100644 index 0000000..1068513 Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/batch/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/dataset/index.doctree b/.doctrees/autoapi/moleculib/protein/dataset/index.doctree new file mode 100644 index 0000000..fc1b205 Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/dataset/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/datum/index.doctree b/.doctrees/autoapi/moleculib/protein/datum/index.doctree new file mode 100644 index 0000000..652d1ec Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/datum/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/index.doctree b/.doctrees/autoapi/moleculib/protein/index.doctree new file mode 100644 index 0000000..87732b5 Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/jax_utils/index.doctree b/.doctrees/autoapi/moleculib/protein/jax_utils/index.doctree new file mode 100644 index 0000000..3208240 Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/jax_utils/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/measures/index.doctree b/.doctrees/autoapi/moleculib/protein/measures/index.doctree new file mode 100644 index 0000000..0155416 Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/measures/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/metrics/index.doctree b/.doctrees/autoapi/moleculib/protein/metrics/index.doctree new file mode 100644 index 0000000..6c7c2e2 Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/metrics/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/tests/index.doctree b/.doctrees/autoapi/moleculib/protein/tests/index.doctree new file mode 100644 index 0000000..6992f93 Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/tests/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/tests/loader_test/index.doctree b/.doctrees/autoapi/moleculib/protein/tests/loader_test/index.doctree new file mode 100644 index 0000000..734162e Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/tests/loader_test/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/transform/index.doctree b/.doctrees/autoapi/moleculib/protein/transform/index.doctree new file mode 100644 index 0000000..9f3076e Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/transform/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/protein/utils/index.doctree b/.doctrees/autoapi/moleculib/protein/utils/index.doctree new file mode 100644 index 0000000..96de50e Binary files /dev/null and b/.doctrees/autoapi/moleculib/protein/utils/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/sequence/dataset/index.doctree b/.doctrees/autoapi/moleculib/sequence/dataset/index.doctree new file mode 100644 index 0000000..d0d1a16 Binary files /dev/null and b/.doctrees/autoapi/moleculib/sequence/dataset/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/sequence/datum/index.doctree b/.doctrees/autoapi/moleculib/sequence/datum/index.doctree new file mode 100644 index 0000000..2c6aa7e Binary files /dev/null and b/.doctrees/autoapi/moleculib/sequence/datum/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/sequence/index.doctree b/.doctrees/autoapi/moleculib/sequence/index.doctree new file mode 100644 index 0000000..119962e Binary files /dev/null and b/.doctrees/autoapi/moleculib/sequence/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/sequence/metrics/index.doctree b/.doctrees/autoapi/moleculib/sequence/metrics/index.doctree new file mode 100644 index 0000000..6152c00 Binary files /dev/null and b/.doctrees/autoapi/moleculib/sequence/metrics/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/sequence/transform/index.doctree b/.doctrees/autoapi/moleculib/sequence/transform/index.doctree new file mode 100644 index 0000000..0f3d22f Binary files /dev/null and b/.doctrees/autoapi/moleculib/sequence/transform/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/sequence/utils/index.doctree b/.doctrees/autoapi/moleculib/sequence/utils/index.doctree new file mode 100644 index 0000000..66b0132 Binary files /dev/null and b/.doctrees/autoapi/moleculib/sequence/utils/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/traj/dataset/index.doctree b/.doctrees/autoapi/moleculib/traj/dataset/index.doctree new file mode 100644 index 0000000..29bae61 Binary files /dev/null and b/.doctrees/autoapi/moleculib/traj/dataset/index.doctree differ diff --git a/.doctrees/autoapi/moleculib/traj/index.doctree b/.doctrees/autoapi/moleculib/traj/index.doctree new file mode 100644 index 0000000..a72c9e9 Binary files /dev/null and b/.doctrees/autoapi/moleculib/traj/index.doctree differ diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle new file mode 100644 index 0000000..c70b44a Binary files /dev/null and b/.doctrees/environment.pickle differ diff --git a/.doctrees/index.doctree b/.doctrees/index.doctree new file mode 100644 index 0000000..b88d57e Binary files /dev/null and b/.doctrees/index.doctree differ diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/_sources/autoapi/index.rst.txt b/_sources/autoapi/index.rst.txt new file mode 100644 index 0000000..07ca47b --- /dev/null +++ b/_sources/autoapi/index.rst.txt @@ -0,0 +1,11 @@ +API Reference +============= + +This page contains auto-generated API reference documentation [#f1]_. + +.. toctree:: + :titlesonly: + + /autoapi/moleculib/index + +.. [#f1] Created with `sphinx-autoapi `_ \ No newline at end of file diff --git a/_sources/autoapi/moleculib/abstract/dataset/index.rst.txt b/_sources/autoapi/moleculib/abstract/dataset/index.rst.txt new file mode 100644 index 0000000..371a335 --- /dev/null +++ b/_sources/autoapi/moleculib/abstract/dataset/index.rst.txt @@ -0,0 +1,22 @@ +moleculib.abstract.dataset +========================== + +.. py:module:: moleculib.abstract.dataset + + +Classes +------- + +.. autoapisummary:: + + moleculib.abstract.dataset.Dataset + moleculib.abstract.dataset.PreProcessedDataset + + +Module Contents +--------------- + +.. py:class:: Dataset(transform: List[Callable] = None) + +.. py:class:: PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False) + diff --git a/_sources/autoapi/moleculib/abstract/index.rst.txt b/_sources/autoapi/moleculib/abstract/index.rst.txt new file mode 100644 index 0000000..fd8e884 --- /dev/null +++ b/_sources/autoapi/moleculib/abstract/index.rst.txt @@ -0,0 +1,17 @@ +moleculib.abstract +================== + +.. py:module:: moleculib.abstract + + +Submodules +---------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/abstract/dataset/index + /autoapi/moleculib/abstract/metrics/index + /autoapi/moleculib/abstract/transform/index + + diff --git a/_sources/autoapi/moleculib/abstract/metrics/index.rst.txt b/_sources/autoapi/moleculib/abstract/metrics/index.rst.txt new file mode 100644 index 0000000..69bdd3d --- /dev/null +++ b/_sources/autoapi/moleculib/abstract/metrics/index.rst.txt @@ -0,0 +1,19 @@ +moleculib.abstract.metrics +========================== + +.. py:module:: moleculib.abstract.metrics + + +Classes +------- + +.. autoapisummary:: + + moleculib.abstract.metrics.MetricsPipe + + +Module Contents +--------------- + +.. py:class:: MetricsPipe(metrics_list: List[Callable]) + diff --git a/_sources/autoapi/moleculib/abstract/transform/index.rst.txt b/_sources/autoapi/moleculib/abstract/transform/index.rst.txt new file mode 100644 index 0000000..72e7406 --- /dev/null +++ b/_sources/autoapi/moleculib/abstract/transform/index.rst.txt @@ -0,0 +1,6 @@ +moleculib.abstract.transform +============================ + +.. py:module:: moleculib.abstract.transform + + diff --git a/_sources/autoapi/moleculib/assembly/dataset/index.rst.txt b/_sources/autoapi/moleculib/assembly/dataset/index.rst.txt new file mode 100644 index 0000000..d741bcc --- /dev/null +++ b/_sources/autoapi/moleculib/assembly/dataset/index.rst.txt @@ -0,0 +1,25 @@ +moleculib.assembly.dataset +========================== + +.. py:module:: moleculib.assembly.dataset + + +Classes +------- + +.. autoapisummary:: + + moleculib.assembly.dataset.PreProcessedDataset + moleculib.assembly.dataset.ChromaDataset + + +Module Contents +--------------- + +.. py:class:: PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False) + +.. py:class:: ChromaDataset(base_path, transform: List[Callable] = None, shuffle=True, reduced=False) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + diff --git a/_sources/autoapi/moleculib/assembly/datum/index.rst.txt b/_sources/autoapi/moleculib/assembly/datum/index.rst.txt new file mode 100644 index 0000000..3dfa540 --- /dev/null +++ b/_sources/autoapi/moleculib/assembly/datum/index.rst.txt @@ -0,0 +1,142 @@ +moleculib.assembly.datum +======================== + +.. py:module:: moleculib.assembly.datum + + +Classes +------- + +.. autoapisummary:: + + moleculib.assembly.datum.MoleculeDatum + moleculib.assembly.datum.ProteinDatum + moleculib.assembly.datum.AssemblyDatum + + +Module Contents +--------------- + +.. py:class:: MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs) + + .. py:method:: empty() + + + .. py:method:: to_atom_array() + + + .. py:method:: to_sdf_str() + + + .. py:method:: plot(view, viewer=None, color=None) + + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + +.. py:class:: AssemblyDatum(idcode: str = None, protein_data: List[moleculib.protein.datum.ProteinDatum] = None, molecule_data: List[moleculib.molecule.datum.MoleculeDatum] = None) + + Bases: :py:obj:`simple_pytree.Pytree` + + + .. py:method:: from_datalist() + + + .. py:method:: filter_proteins(keep=None, drop=None) + + indices to keep or drop + + + + .. py:method:: plot(view, viewer=None, protein_style=dict(), molecule_style=dict()) + + + .. py:method:: from_filepath(filepath, idcode=None) + :classmethod: + + + + .. py:method:: fetch_pdb_id(idcode, save_path=None) + :classmethod: + + + diff --git a/_sources/autoapi/moleculib/assembly/index.rst.txt b/_sources/autoapi/moleculib/assembly/index.rst.txt new file mode 100644 index 0000000..359ba9e --- /dev/null +++ b/_sources/autoapi/moleculib/assembly/index.rst.txt @@ -0,0 +1,18 @@ +moleculib.assembly +================== + +.. py:module:: moleculib.assembly + + +Submodules +---------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/assembly/dataset/index + /autoapi/moleculib/assembly/datum/index + /autoapi/moleculib/assembly/metrics/index + /autoapi/moleculib/assembly/transform/index + + diff --git a/_sources/autoapi/moleculib/assembly/metrics/index.rst.txt b/_sources/autoapi/moleculib/assembly/metrics/index.rst.txt new file mode 100644 index 0000000..e3499c6 --- /dev/null +++ b/_sources/autoapi/moleculib/assembly/metrics/index.rst.txt @@ -0,0 +1,86 @@ +moleculib.assembly.metrics +========================== + +.. py:module:: moleculib.assembly.metrics + + +Classes +------- + +.. autoapisummary:: + + moleculib.assembly.metrics.MetricsPipe + moleculib.assembly.metrics.DescribeChemistry + moleculib.assembly.metrics.ProteinMetric + moleculib.assembly.metrics.AssemblyDatum + moleculib.assembly.metrics.AssemblyMetric + moleculib.assembly.metrics.ApplyMetricsToProtein + + +Module Contents +--------------- + +.. py:class:: MetricsPipe(metrics_list: List[Callable]) + +.. py:class:: DescribeChemistry + + Bases: :py:obj:`ProteinTransform` + + + Augments ProteinDatum with bonds_list and angles_list a list of atomic indexes connected by bonds and angles + that should have invariant behavior according to chemistry + Note that indexing is performed at atom level, that is, as residue_dim atom_dim -> (residue_dim atom_dim) + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ProteinMetric + +.. py:class:: AssemblyDatum(idcode: str = None, protein_data: List[moleculib.protein.datum.ProteinDatum] = None, molecule_data: List[moleculib.molecule.datum.MoleculeDatum] = None) + + Bases: :py:obj:`simple_pytree.Pytree` + + + .. py:method:: from_datalist() + + + .. py:method:: filter_proteins(keep=None, drop=None) + + indices to keep or drop + + + + .. py:method:: plot(view, viewer=None, protein_style=dict(), molecule_style=dict()) + + + .. py:method:: from_filepath(filepath, idcode=None) + :classmethod: + + + + .. py:method:: fetch_pdb_id(idcode, save_path=None) + :classmethod: + + + +.. py:class:: AssemblyMetric + + .. py:method:: transform(datum: moleculib.assembly.datum.AssemblyDatum) -> moleculib.assembly.datum.AssemblyDatum + :abstractmethod: + + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ApplyMetricsToProtein(protein_metrics: List[moleculib.protein.metrics.ProteinMetric]) + + Bases: :py:obj:`AssemblyMetric` + + diff --git a/_sources/autoapi/moleculib/assembly/transform/index.rst.txt b/_sources/autoapi/moleculib/assembly/transform/index.rst.txt new file mode 100644 index 0000000..6149fb8 --- /dev/null +++ b/_sources/autoapi/moleculib/assembly/transform/index.rst.txt @@ -0,0 +1,237 @@ +moleculib.assembly.transform +============================ + +.. py:module:: moleculib.assembly.transform + + +Classes +------- + +.. autoapisummary:: + + moleculib.assembly.transform.AssemblyDatum + moleculib.assembly.transform.ProteinDatum + moleculib.assembly.transform.ProteinTransform + moleculib.assembly.transform.AssemblyTransform + moleculib.assembly.transform.ApplyToProteins + moleculib.assembly.transform.ComplexPad + moleculib.assembly.transform.FilterProteinChains + moleculib.assembly.transform.StackProteins + moleculib.assembly.transform.UnstackProteins + + +Module Contents +--------------- + +.. py:class:: AssemblyDatum(idcode: str = None, protein_data: List[moleculib.protein.datum.ProteinDatum] = None, molecule_data: List[moleculib.molecule.datum.MoleculeDatum] = None) + + Bases: :py:obj:`simple_pytree.Pytree` + + + .. py:method:: from_datalist() + + + .. py:method:: filter_proteins(keep=None, drop=None) + + indices to keep or drop + + + + .. py:method:: plot(view, viewer=None, protein_style=dict(), molecule_style=dict()) + + + .. py:method:: from_filepath(filepath, idcode=None) + :classmethod: + + + + .. py:method:: fetch_pdb_id(idcode, save_path=None) + :classmethod: + + + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + +.. py:class:: ProteinTransform + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum: moleculib.protein.datum.ProteinDatum) -> moleculib.protein.datum.ProteinDatum + :abstractmethod: + + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: AssemblyTransform + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum: moleculib.assembly.datum.AssemblyDatum) -> moleculib.assembly.datum.AssemblyDatum + :abstractmethod: + + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ApplyToProteins(protein_transform: List[moleculib.protein.transform.ProteinTransform]) + + Bases: :py:obj:`AssemblyTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ComplexPad(num_chains) + + Bases: :py:obj:`AssemblyTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: FilterProteinChains(num_chains) + + Bases: :py:obj:`AssemblyTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: StackProteins + + Bases: :py:obj:`AssemblyTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: UnstackProteins + + Bases: :py:obj:`AssemblyTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + diff --git a/_sources/autoapi/moleculib/graphics/py3Dmol/index.rst.txt b/_sources/autoapi/moleculib/graphics/py3Dmol/index.rst.txt new file mode 100644 index 0000000..a564c40 --- /dev/null +++ b/_sources/autoapi/moleculib/graphics/py3Dmol/index.rst.txt @@ -0,0 +1,191 @@ +moleculib.graphics.py3Dmol +========================== + +.. py:module:: moleculib.graphics.py3Dmol + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.graphics.py3Dmol.DEFAULT_COLORS + + +Classes +------- + +.. autoapisummary:: + + moleculib.graphics.py3Dmol.ProteinDatum + moleculib.graphics.py3Dmol.MoleculeDatum + moleculib.graphics.py3Dmol.NucleicDatum + moleculib.graphics.py3Dmol.PlotPy3DmolSamples + moleculib.graphics.py3Dmol.PlotDensity + + +Functions +--------- + +.. autoapisummary:: + + moleculib.graphics.py3Dmol.plot_py3dmol + moleculib.graphics.py3Dmol.plot_py3dmol_grid + moleculib.graphics.py3Dmol.traj_to_pdb + moleculib.graphics.py3Dmol.plot_py3dmol_traj + + +Module Contents +--------------- + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + +.. py:class:: MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs) + + .. py:method:: empty() + + + .. py:method:: to_atom_array() + + + .. py:method:: to_sdf_str() + + + .. py:method:: plot(view, viewer=None, color=None) + + +.. py:class:: NucleicDatum(idcode: str, resolution: float, sequence: biotite.sequence.NucleotideSequence, nuc_token: numpy.ndarray, nuc_index: numpy.ndarray, nuc_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates Biotite nucleic sequence data + # and reshapes atom arrays to residue-based representation + + + .. py:method:: empty_nuc() + :classmethod: + + + + .. py:method:: from_filepath(filepath) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, save_path=None) + :classmethod: + + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum') + + +.. py:data:: DEFAULT_COLORS + :value: ['cyan', 'orange', 'lime'] + + +.. py:function:: plot_py3dmol(data, color: str = 'DEFAULT', **kwargs) + +.. py:class:: PlotPy3DmolSamples(plot_func: Callable, num_samples=None, window_size=(250, 250), pairs=False) + +.. py:class:: PlotDensity(num_samples=None, window_size=(250, 250), pairs=False) + + .. py:method:: plot_density(grid, density, atom_coord) + + +.. py:function:: plot_py3dmol_grid(grid, window_size=(250, 250), **kwargs) + +.. py:function:: traj_to_pdb(traj, num_steps=100, head=0, tail=5) + +.. py:function:: plot_py3dmol_traj(traj, view, viewer, num_steps=100) + diff --git a/_sources/autoapi/moleculib/index.rst.txt b/_sources/autoapi/moleculib/index.rst.txt new file mode 100644 index 0000000..fa7cc6b --- /dev/null +++ b/_sources/autoapi/moleculib/index.rst.txt @@ -0,0 +1,21 @@ +moleculib +========= + +.. py:module:: moleculib + + +Subpackages +----------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/abstract/index + /autoapi/moleculib/assembly/index + /autoapi/moleculib/molecule/index + /autoapi/moleculib/nucleic/index + /autoapi/moleculib/protein/index + /autoapi/moleculib/sequence/index + /autoapi/moleculib/traj/index + + diff --git a/_sources/autoapi/moleculib/molecule/alphabet/index.rst.txt b/_sources/autoapi/moleculib/molecule/alphabet/index.rst.txt new file mode 100644 index 0000000..944ac41 --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/alphabet/index.rst.txt @@ -0,0 +1,24 @@ +moleculib.molecule.alphabet +=========================== + +.. py:module:: moleculib.molecule.alphabet + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.molecule.alphabet.elements + moleculib.molecule.alphabet.PERIODIC_TABLE + + +Module Contents +--------------- + +.. py:data:: elements + +.. py:data:: PERIODIC_TABLE + :value: ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl',... + + diff --git a/_sources/autoapi/moleculib/molecule/batch/index.rst.txt b/_sources/autoapi/moleculib/molecule/batch/index.rst.txt new file mode 100644 index 0000000..5e79e77 --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/batch/index.rst.txt @@ -0,0 +1,119 @@ +moleculib.molecule.batch +======================== + +.. py:module:: moleculib.molecule.batch + + +Classes +------- + +.. autoapisummary:: + + moleculib.molecule.batch.MoleculeDatum + moleculib.molecule.batch.MoleculeCollator + moleculib.molecule.batch.MoleculePadBatch + moleculib.molecule.batch.MoleculeGeometricBatch + + +Module Contents +--------------- + +.. py:class:: MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs) + + .. py:method:: empty() + + + .. py:method:: to_atom_array() + + + .. py:method:: to_sdf_str() + + + .. py:method:: plot(view, viewer=None, color=None) + + +.. py:class:: MoleculeCollator + + Abstract class for collation of multiple ProteinDatum instances + into a single batch instance + + + .. py:method:: collate(data_list: List[moleculib.molecule.datum.MoleculeDatum]) + :classmethod: + + :abstractmethod: + + + Takes a list of ProteinDatum instances and produces + a ProteinCollate instance with all the instances collated + according to the appropriate collate function + + + + .. py:method:: revert() -> List[moleculib.molecule.datum.MoleculeDatum] + :abstractmethod: + + + Reverts a batch to its original list form + + + + .. py:method:: to(device: str) -> MoleculeCollator + + + .. py:method:: torch() -> MoleculeCollator + + + .. py:method:: to_dict(attrs=None) + + +.. py:class:: MoleculePadBatch(**kwargs) + + Bases: :py:obj:`MoleculeCollator` + + + Abstract class for collation of multiple ProteinDatum instances + into a single batch instance + + + .. py:method:: revert(constructor=MoleculeDatum) + + Reverts a batch to its original list form + + + + .. py:method:: collate(data_list) + :classmethod: + + + Takes a list of ProteinDatum instances and produces + a ProteinCollate instance with all the instances collated + according to the appropriate collate function + + + +.. py:class:: MoleculeGeometricBatch(batch_index, num_nodes, **kwargs) + + Bases: :py:obj:`MoleculeCollator` + + + Abstract class for collation of multiple ProteinDatum instances + into a single batch instance + + + .. py:method:: revert(constructor=MoleculeDatum) + + Reverts a batch to its original list form + + + + .. py:method:: collate(data_list) + :classmethod: + + + Takes a list of ProteinDatum instances and produces + a ProteinCollate instance with all the instances collated + according to the appropriate collate function + + + diff --git a/_sources/autoapi/moleculib/molecule/dataset/index.rst.txt b/_sources/autoapi/moleculib/molecule/dataset/index.rst.txt new file mode 100644 index 0000000..7113e7f --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/dataset/index.rst.txt @@ -0,0 +1,351 @@ +moleculib.molecule.dataset +========================== + +.. py:module:: moleculib.molecule.dataset + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.molecule.dataset.elements + + +Classes +------- + +.. autoapisummary:: + + moleculib.molecule.dataset.MoleculeTransform + moleculib.molecule.dataset.MoleculePad + moleculib.molecule.dataset.DescribeGraph + moleculib.molecule.dataset.Permuter + moleculib.molecule.dataset.Centralize + moleculib.molecule.dataset.AtomFeatures + moleculib.molecule.dataset.StandardizeProperties + moleculib.molecule.dataset.SortAtoms + moleculib.molecule.dataset.PairPad + moleculib.molecule.dataset.CrossdockDatum + moleculib.molecule.dataset.PDBBindDatum + moleculib.molecule.dataset.PDBMoleculeDatum + moleculib.molecule.dataset.QM9Datum + moleculib.molecule.dataset.RSDatum + moleculib.molecule.dataset.ReactDatum + moleculib.molecule.dataset.MISATODatum + moleculib.molecule.dataset.DensityDatum + moleculib.molecule.dataset.PDBMoleculeDataset + moleculib.molecule.dataset.QM9Dataset + moleculib.molecule.dataset.RSDataset + moleculib.molecule.dataset.PreProcessedDataset + + +Functions +--------- + +.. autoapisummary:: + + moleculib.molecule.dataset.pids_file_to_list + moleculib.molecule.dataset.extract_rdkit_mol_properties + moleculib.molecule.dataset.create_pdb + + +Module Contents +--------------- + +.. py:class:: MoleculeTransform + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum) -> moleculib.molecule.datum.MoleculeDatum + :abstractmethod: + + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: MoleculePad(pad_size: int) + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum) -> moleculib.molecule.datum.MoleculeDatum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: DescribeGraph + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.QM9Datum) -> moleculib.molecule.datum.QM9Datum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: Permuter(seed: int = 0) + + Bases: :py:obj:`MoleculeTransform` + + + Permute the atoms of a molecule and the bonds + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum) -> moleculib.molecule.datum.MoleculeDatum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: Centralize + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: AtomFeatures + + Bases: :py:obj:`MoleculeTransform` + + + Compute atomistic features from the atom tokens + + + .. py:method:: shift(x, f) + + + .. py:method:: transform(datum: moleculib.molecule.datum.QM9Datum) -> moleculib.molecule.datum.QM9Datum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: StandardizeProperties + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.QM9Datum) -> moleculib.molecule.datum.QM9Datum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: SortAtoms + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum) -> moleculib.molecule.datum.MoleculeDatum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: PairPad + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum, attrs: dict) -> moleculib.molecule.datum.MoleculeDatum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:function:: pids_file_to_list(pids_path) + +.. py:function:: extract_rdkit_mol_properties(mol) + +.. py:data:: elements + +.. py:class:: CrossdockDatum(*args, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + + .. py:attribute:: AA_NAME_SYM + + + .. py:attribute:: AA_NAME_NUMBER + + + .. py:attribute:: AA_NUMBER_NAME + + + .. py:method:: coord_center() + + + .. py:method:: protein_pdb_str() + + +.. py:class:: PDBBindDatum(*args, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + + .. py:method:: coord_center() + + + .. py:method:: protein_pdb_str() + + + .. py:method:: pocket_pdb_str() + + +.. py:class:: PDBMoleculeDatum(idcode: str, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_name: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray) + + .. py:method:: empty_molecule() + :classmethod: + + + + .. py:method:: from_filepath(filepath, ligand=None) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, save_path=None, ligand=None) + :classmethod: + + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + + .. py:method:: to_atom_array() + + + .. py:method:: to_sdf_str() + + +.. py:class:: QM9Datum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, stds: numpy.ndarray, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + +.. py:class:: RSDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, adjacency: numpy.ndarray, laplacian: numpy.ndarray, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + +.. py:class:: ReactDatum(token, reacts, prods, reacts_mask, prods_mask, mask, protein_token, protein_mask) + + Bases: :py:obj:`MoleculeDatum` + + + .. py:method:: centralize() + + +.. py:class:: MISATODatum(*args, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + + .. py:method:: replace(**kwargs) + + + .. py:method:: at(i) + + + .. py:method:: neighborhood_idxs(r) + + + .. py:method:: keep_neighborhood(r) + + + .. py:method:: dehydrate() + + + .. py:method:: pdb_str(frame) + + +.. py:class:: DensityDatum(*args, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + +.. py:function:: create_pdb(trajectory_coordinates, atoms_type, atoms_number, atoms_residue, molecules_begin_atom_index) + +.. py:class:: PDBMoleculeDataset(base_path: str, transform: List[moleculib.molecule.transform.MoleculeTransform] = None, attrs: Union[List[str], str] = 'all', metadata: pandas.DataFrame = None, max_resolution: float = None, min_atom_count: int = None, max_atom_count: int = None, frac: float = 1.0, preload: bool = False, preload_num_workers: int = 10) + + Bases: :py:obj:`torch.utils.data.Dataset` + + + Holds MoleculeDatum dataset with specified PDB IDs + + Arguments: + ---------- + base_path : str + directory to store all PDB files + pdb_ids : List[str] + list of all Molecule IDs that should be in the dataset + format : str + the file format for each PDB file, either "npz" or "pdb" + attrs : Union[str, List[str]] + a partial list of Molecule attributes that should be in each Molecule + + + .. py:method:: load_index(idx) + + + .. py:method:: build(pdb_ids: List[str] = None, save: bool = True, save_path: str = None, max_workers: int = 1, **kwargs) + :classmethod: + + + Builds dataset from scratch given specified pdb_ids, prepares + data and metadata for later use. + + + +.. py:class:: QM9Dataset(base_path='QM9', full_data=True, num_train=None, num_val=None, num_test=None, molecule_transform: List = [], permute=False, centralize=True, use_atom_features=True, standardize=True, shuffle=False, _split='train', _data=None, _max_atoms=29, _padding=True, to_split=True) + + Bases: :py:obj:`torch.utils.data.Dataset` + + +.. py:class:: RSDataset(base_path='ChIRo', molecule_transform: List = [], permute=False, use_atom_features=True, max_num_atoms=50, _split='train') + + Bases: :py:obj:`torch.utils.data.Dataset` + + +.. py:class:: PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False) + diff --git a/_sources/autoapi/moleculib/molecule/datum/index.rst.txt b/_sources/autoapi/moleculib/molecule/datum/index.rst.txt new file mode 100644 index 0000000..f488d61 --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/datum/index.rst.txt @@ -0,0 +1,178 @@ +moleculib.molecule.datum +======================== + +.. py:module:: moleculib.molecule.datum + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.molecule.datum.elements + moleculib.molecule.datum.PERIODIC_TABLE + + +Classes +------- + +.. autoapisummary:: + + moleculib.molecule.datum.MoleculeDatum + moleculib.molecule.datum.QM9Datum + moleculib.molecule.datum.RSDatum + moleculib.molecule.datum.PDBMoleculeDatum + moleculib.molecule.datum.CrossdockDatum + moleculib.molecule.datum.PDBBindDatum + moleculib.molecule.datum.DensityDatum + moleculib.molecule.datum.MISATODatum + moleculib.molecule.datum.ReactDatum + + +Functions +--------- + +.. autoapisummary:: + + moleculib.molecule.datum.register_pytree + moleculib.molecule.datum.pdb_to_atom_array + moleculib.molecule.datum.create_pdb + + +Module Contents +--------------- + +.. py:data:: elements + +.. py:data:: PERIODIC_TABLE + :value: ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl',... + + +.. py:function:: register_pytree(Datum) + +.. py:function:: pdb_to_atom_array(mmtf_file) + +.. py:function:: create_pdb(trajectory_coordinates, atoms_type, atoms_number, atoms_residue, molecules_begin_atom_index) + +.. py:class:: MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs) + + .. py:method:: empty() + + + .. py:method:: to_atom_array() + + + .. py:method:: to_sdf_str() + + + .. py:method:: plot(view, viewer=None, color=None) + + +.. py:class:: QM9Datum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, stds: numpy.ndarray, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + +.. py:class:: RSDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, adjacency: numpy.ndarray, laplacian: numpy.ndarray, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + +.. py:class:: PDBMoleculeDatum(idcode: str, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_name: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray) + + .. py:method:: empty_molecule() + :classmethod: + + + + .. py:method:: from_filepath(filepath, ligand=None) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, save_path=None, ligand=None) + :classmethod: + + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + + .. py:method:: to_atom_array() + + + .. py:method:: to_sdf_str() + + +.. py:class:: CrossdockDatum(*args, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + + .. py:attribute:: AA_NAME_SYM + + + .. py:attribute:: AA_NAME_NUMBER + + + .. py:attribute:: AA_NUMBER_NAME + + + .. py:method:: coord_center() + + + .. py:method:: protein_pdb_str() + + +.. py:class:: PDBBindDatum(*args, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + + .. py:method:: coord_center() + + + .. py:method:: protein_pdb_str() + + + .. py:method:: pocket_pdb_str() + + +.. py:class:: DensityDatum(*args, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + +.. py:class:: MISATODatum(*args, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + + .. py:method:: replace(**kwargs) + + + .. py:method:: at(i) + + + .. py:method:: neighborhood_idxs(r) + + + .. py:method:: keep_neighborhood(r) + + + .. py:method:: dehydrate() + + + .. py:method:: pdb_str(frame) + + +.. py:class:: ReactDatum(token, reacts, prods, reacts_mask, prods_mask, mask, protein_token, protein_mask) + + Bases: :py:obj:`MoleculeDatum` + + + .. py:method:: centralize() + + diff --git a/_sources/autoapi/moleculib/molecule/h5_to_pdb/index.rst.txt b/_sources/autoapi/moleculib/molecule/h5_to_pdb/index.rst.txt new file mode 100644 index 0000000..94fe235 --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/h5_to_pdb/index.rst.txt @@ -0,0 +1,100 @@ +moleculib.molecule.h5_to_pdb +============================ + +.. py:module:: moleculib.molecule.h5_to_pdb + +.. autoapi-nested-parse:: + + MISATO, a database for protein-ligand interactions + Copyright (C) 2023 + Till Siebenmorgen (till.siebenmorgen@helmholtz-munich.de) + Sabrina Benassou (s.benassou@fz-juelich.de) + Filipe Menezes (filipe.menezes@helmholtz-munich.de) + Erinç Merdivan (erinc.merdivan@helmholtz-munich.de) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.molecule.h5_to_pdb.atomic_numbers_Map + moleculib.molecule.h5_to_pdb.parser + + +Functions +--------- + +.. autoapisummary:: + + moleculib.molecule.h5_to_pdb.get_maps + moleculib.molecule.h5_to_pdb.get_entries + moleculib.molecule.h5_to_pdb.get_entries_QM + moleculib.molecule.h5_to_pdb.get_atom_name + moleculib.molecule.h5_to_pdb.update_residue_indices + moleculib.molecule.h5_to_pdb.insert_TERS + moleculib.molecule.h5_to_pdb.create_pdb + moleculib.molecule.h5_to_pdb.create_pdb_lines_MD + moleculib.molecule.h5_to_pdb.create_pdb_lines_QM + moleculib.molecule.h5_to_pdb.write_pdb + moleculib.molecule.h5_to_pdb.main + + +Module Contents +--------------- + +.. py:data:: atomic_numbers_Map + +.. py:function:: get_maps(mapdir='/u/ilanm/moleculib/moleculib/molecule/Maps/') + +.. py:function:: get_entries(struct, f, frame) + +.. py:function:: get_entries_QM(struct, f) + +.. py:function:: get_atom_name(i, atoms_number, residue_atom_index, residue_name, type_string, nameMap) + +.. py:function:: update_residue_indices(residue_number, i, type_string, atoms_type, atoms_residue, residue_name, residue_atom_index, residue_Map, typeMap) + + If the atom sequence has O-N icnrease the residueNumber + + +.. py:function:: insert_TERS(i, molecules_begin_atom_index, residue_number, residue_atom_index, lines) + + We have to insert TERs for the endings of the molecule + + +.. py:function:: create_pdb(trajectory_coordinates, atoms_type, atoms_number, atoms_residue, molecules_begin_atom_index) + +.. py:function:: create_pdb_lines_MD(trajectory_coordinates, atoms_type, atoms_number, atoms_residue, molecules_begin_atom_index, typeMap, residue_Map, nameMap) + + We go through each atom line and bring the inputs in the pdb format + + + +.. py:function:: create_pdb_lines_QM(trajectory_coordinates, atoms_number, nameMap) + + We go through each atom line and bring the inputs in the pdb format + + + +.. py:function:: write_pdb(struct, specification, lines) + +.. py:function:: main(args) + +.. py:data:: parser + diff --git a/_sources/autoapi/moleculib/molecule/index.rst.txt b/_sources/autoapi/moleculib/molecule/index.rst.txt new file mode 100644 index 0000000..5b72526 --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/index.rst.txt @@ -0,0 +1,30 @@ +moleculib.molecule +================== + +.. py:module:: moleculib.molecule + + +Subpackages +----------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/molecule/tests/index + + +Submodules +---------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/molecule/alphabet/index + /autoapi/moleculib/molecule/batch/index + /autoapi/moleculib/molecule/dataset/index + /autoapi/moleculib/molecule/datum/index + /autoapi/moleculib/molecule/h5_to_pdb/index + /autoapi/moleculib/molecule/transform/index + /autoapi/moleculib/molecule/utils/index + + diff --git a/_sources/autoapi/moleculib/molecule/tests/index.rst.txt b/_sources/autoapi/moleculib/molecule/tests/index.rst.txt new file mode 100644 index 0000000..db42a5a --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/tests/index.rst.txt @@ -0,0 +1,15 @@ +moleculib.molecule.tests +======================== + +.. py:module:: moleculib.molecule.tests + + +Submodules +---------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/molecule/tests/loader_test/index + + diff --git a/_sources/autoapi/moleculib/molecule/tests/loader_test/index.rst.txt b/_sources/autoapi/moleculib/molecule/tests/loader_test/index.rst.txt new file mode 100644 index 0000000..e971fa7 --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/tests/loader_test/index.rst.txt @@ -0,0 +1,25 @@ +moleculib.molecule.tests.loader_test +==================================== + +.. py:module:: moleculib.molecule.tests.loader_test + + +Functions +--------- + +.. autoapisummary:: + + moleculib.molecule.tests.loader_test.test_dataloader + moleculib.molecule.tests.loader_test.test_dataload_from_filesystem + moleculib.molecule.tests.loader_test.check_dataloader_batch_size + + +Module Contents +--------------- + +.. py:function:: test_dataloader() + +.. py:function:: test_dataload_from_filesystem() + +.. py:function:: check_dataloader_batch_size(pids, bs) + diff --git a/_sources/autoapi/moleculib/molecule/transform/index.rst.txt b/_sources/autoapi/moleculib/molecule/transform/index.rst.txt new file mode 100644 index 0000000..60d9d79 --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/transform/index.rst.txt @@ -0,0 +1,251 @@ +moleculib.molecule.transform +============================ + +.. py:module:: moleculib.molecule.transform + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.molecule.transform.elements + + +Classes +------- + +.. autoapisummary:: + + moleculib.molecule.transform.MoleculeDatum + moleculib.molecule.transform.QM9Datum + moleculib.molecule.transform.MoleculeTransform + moleculib.molecule.transform.MoleculeCrop + moleculib.molecule.transform.MoleculePad + moleculib.molecule.transform.PairPad + moleculib.molecule.transform.Centralize + moleculib.molecule.transform.SingleBonds + moleculib.molecule.transform.CastToBFloat + moleculib.molecule.transform.DescribeGraph + moleculib.molecule.transform.Permuter + moleculib.molecule.transform.SortAtoms + moleculib.molecule.transform.AtomFeatures + moleculib.molecule.transform.StandardizeProperties + + +Functions +--------- + +.. autoapisummary:: + + moleculib.molecule.transform.pad_array + + +Module Contents +--------------- + +.. py:class:: MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs) + + .. py:method:: empty() + + + .. py:method:: to_atom_array() + + + .. py:method:: to_sdf_str() + + + .. py:method:: plot(view, viewer=None, color=None) + + +.. py:class:: QM9Datum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, stds: numpy.ndarray, **kwargs) + + Bases: :py:obj:`MoleculeDatum` + + +.. py:function:: pad_array(array, total_size, value=0) + +.. py:data:: elements + +.. py:class:: MoleculeTransform + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum) -> moleculib.molecule.datum.MoleculeDatum + :abstractmethod: + + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: MoleculeCrop(crop_size: int) + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum, cut=None) -> moleculib.molecule.datum.MoleculeDatum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: MoleculePad(pad_size: int) + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum) -> moleculib.molecule.datum.MoleculeDatum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: PairPad + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum, attrs: dict) -> moleculib.molecule.datum.MoleculeDatum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: Centralize + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: SingleBonds + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: CastToBFloat + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: DescribeGraph + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.QM9Datum) -> moleculib.molecule.datum.QM9Datum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: Permuter(seed: int = 0) + + Bases: :py:obj:`MoleculeTransform` + + + Permute the atoms of a molecule and the bonds + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum) -> moleculib.molecule.datum.MoleculeDatum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: SortAtoms + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.MoleculeDatum) -> moleculib.molecule.datum.MoleculeDatum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: AtomFeatures + + Bases: :py:obj:`MoleculeTransform` + + + Compute atomistic features from the atom tokens + + + .. py:method:: shift(x, f) + + + .. py:method:: transform(datum: moleculib.molecule.datum.QM9Datum) -> moleculib.molecule.datum.QM9Datum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + +.. py:class:: StandardizeProperties + + Bases: :py:obj:`MoleculeTransform` + + + Abstract class for transformation of MoleculeDatum datapoints + + + .. py:method:: transform(datum: moleculib.molecule.datum.QM9Datum) -> moleculib.molecule.datum.QM9Datum + + Takes as input an individual data point, processes + the values in it and returns a new MoleculeDatum + + + diff --git a/_sources/autoapi/moleculib/molecule/utils/index.rst.txt b/_sources/autoapi/moleculib/molecule/utils/index.rst.txt new file mode 100644 index 0000000..8fa4b51 --- /dev/null +++ b/_sources/autoapi/moleculib/molecule/utils/index.rst.txt @@ -0,0 +1,62 @@ +moleculib.molecule.utils +======================== + +.. py:module:: moleculib.molecule.utils + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.molecule.utils.home_dir + moleculib.molecule.utils.config + moleculib.molecule.utils.ACCEPTED_FORMATS + moleculib.molecule.utils.ACCEPTED_TYPES + + +Functions +--------- + +.. autoapisummary:: + + moleculib.molecule.utils.pdb_to_atom_array + moleculib.molecule.utils.pids_file_to_list + moleculib.molecule.utils.pad_array + moleculib.molecule.utils.plot_py3dmol_grid + moleculib.molecule.utils.plot_dock + moleculib.molecule.utils.inner_stack + moleculib.molecule.utils.inner_split + moleculib.molecule.utils.register_pytree + moleculib.molecule.utils.extract_rdkit_mol_properties + + +Module Contents +--------------- + +.. py:data:: home_dir + +.. py:data:: config + +.. py:function:: pdb_to_atom_array(mmtf_file) + +.. py:function:: pids_file_to_list(pids_path) + +.. py:function:: pad_array(array, total_size, value=0) + +.. py:function:: plot_py3dmol_grid(grid, window_size=(250, 250), spin=False) + +.. py:function:: plot_dock(grid, window_size=(400, 400), spin=False) + +.. py:function:: inner_stack(pytrees) + +.. py:function:: inner_split(pytree) + +.. py:data:: ACCEPTED_FORMATS + +.. py:data:: ACCEPTED_TYPES + +.. py:function:: register_pytree(Datum) + +.. py:function:: extract_rdkit_mol_properties(mol) + diff --git a/_sources/autoapi/moleculib/nucleic/alphabet/index.rst.txt b/_sources/autoapi/moleculib/nucleic/alphabet/index.rst.txt new file mode 100644 index 0000000..07a538a --- /dev/null +++ b/_sources/autoapi/moleculib/nucleic/alphabet/index.rst.txt @@ -0,0 +1,99 @@ +moleculib.nucleic.alphabet +========================== + +.. py:module:: moleculib.nucleic.alphabet + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.nucleic.alphabet.UNK_TOKEN + moleculib.nucleic.alphabet.MAX_RES_ATOMS + moleculib.nucleic.alphabet.base_atoms_per_nuc + moleculib.nucleic.alphabet.backbone_atoms_DNA + moleculib.nucleic.alphabet.backbone_atoms_RNA + moleculib.nucleic.alphabet.special_tokens + moleculib.nucleic.alphabet.atoms_per_nuc + moleculib.nucleic.alphabet.MAX_DNA_ATOMS + moleculib.nucleic.alphabet.all_atoms + moleculib.nucleic.alphabet.all_atoms + moleculib.nucleic.alphabet.all_atoms_tokens + moleculib.nucleic.alphabet.elements + moleculib.nucleic.alphabet.all_atoms_elements + moleculib.nucleic.alphabet.all_nucs + moleculib.nucleic.alphabet.all_nucs + moleculib.nucleic.alphabet.all_nucs_tokens + moleculib.nucleic.alphabet.all_nucs_atom_mask + moleculib.nucleic.alphabet.all_nucs_atom_tokens + moleculib.nucleic.alphabet.atom_to_nucs_index + moleculib.nucleic.alphabet.atom_to_nucs_mask + + +Functions +--------- + +.. autoapisummary:: + + moleculib.nucleic.alphabet.atom_index + moleculib.nucleic.alphabet.get_nucleotide_index + + +Module Contents +--------------- + +.. py:data:: UNK_TOKEN + :value: 1 + + +.. py:data:: MAX_RES_ATOMS + :value: 14 + + +.. py:data:: base_atoms_per_nuc + +.. py:data:: backbone_atoms_DNA + :value: ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O3'", "O4'", "O5'"] + + +.. py:data:: backbone_atoms_RNA + :value: ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O2'", "O3'", "O4'", "O5'"] + + +.. py:data:: special_tokens + :value: ['PAD', 'UNK'] + + +.. py:data:: atoms_per_nuc + +.. py:data:: MAX_DNA_ATOMS + +.. py:data:: all_atoms + +.. py:data:: all_atoms + +.. py:data:: all_atoms_tokens + +.. py:data:: elements + +.. py:data:: all_atoms_elements + +.. py:data:: all_nucs + +.. py:data:: all_nucs + +.. py:data:: all_nucs_tokens + +.. py:data:: all_nucs_atom_mask + +.. py:data:: all_nucs_atom_tokens + +.. py:function:: atom_index(atom: str) -> int + +.. py:function:: get_nucleotide_index(nucleotide: str) -> int + +.. py:data:: atom_to_nucs_index + +.. py:data:: atom_to_nucs_mask + diff --git a/_sources/autoapi/moleculib/nucleic/batch/index.rst.txt b/_sources/autoapi/moleculib/nucleic/batch/index.rst.txt new file mode 100644 index 0000000..6e7bd35 --- /dev/null +++ b/_sources/autoapi/moleculib/nucleic/batch/index.rst.txt @@ -0,0 +1,6 @@ +moleculib.nucleic.batch +======================= + +.. py:module:: moleculib.nucleic.batch + + diff --git a/_sources/autoapi/moleculib/nucleic/dataset/index.rst.txt b/_sources/autoapi/moleculib/nucleic/dataset/index.rst.txt new file mode 100644 index 0000000..a1b2afc --- /dev/null +++ b/_sources/autoapi/moleculib/nucleic/dataset/index.rst.txt @@ -0,0 +1,25 @@ +moleculib.nucleic.dataset +========================= + +.. py:module:: moleculib.nucleic.dataset + + +Classes +------- + +.. autoapisummary:: + + moleculib.nucleic.dataset.PreProcessedDataset + moleculib.nucleic.dataset.RNADataset + + +Module Contents +--------------- + +.. py:class:: PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False) + +.. py:class:: RNADataset(base_path, transform: List[Callable] = None, shuffle=True) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + diff --git a/_sources/autoapi/moleculib/nucleic/datum/index.rst.txt b/_sources/autoapi/moleculib/nucleic/datum/index.rst.txt new file mode 100644 index 0000000..c70dc3c --- /dev/null +++ b/_sources/autoapi/moleculib/nucleic/datum/index.rst.txt @@ -0,0 +1,165 @@ +moleculib.nucleic.datum +======================= + +.. py:module:: moleculib.nucleic.datum + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.nucleic.datum.UNK_TOKEN + moleculib.nucleic.datum.MAX_RES_ATOMS + moleculib.nucleic.datum.base_atoms_per_nuc + moleculib.nucleic.datum.backbone_atoms_DNA + moleculib.nucleic.datum.backbone_atoms_RNA + moleculib.nucleic.datum.special_tokens + moleculib.nucleic.datum.atoms_per_nuc + moleculib.nucleic.datum.MAX_DNA_ATOMS + moleculib.nucleic.datum.all_atoms + moleculib.nucleic.datum.all_atoms_tokens + moleculib.nucleic.datum.elements + moleculib.nucleic.datum.all_atoms_elements + moleculib.nucleic.datum.all_nucs + moleculib.nucleic.datum.all_nucs_tokens + moleculib.nucleic.datum.all_nucs_atom_mask + moleculib.nucleic.datum.all_nucs_atom_tokens + moleculib.nucleic.datum.atom_to_nucs_index + moleculib.nucleic.datum.atom_to_nucs_mask + moleculib.nucleic.datum.home_dir + moleculib.nucleic.datum.config + moleculib.nucleic.datum.rna_res_names + moleculib.nucleic.datum.dna_res_names + moleculib.nucleic.datum.dna_res_tokens + moleculib.nucleic.datum.rna_res_tokens + moleculib.nucleic.datum.dna_datum + + +Classes +------- + +.. autoapisummary:: + + moleculib.nucleic.datum.NucleicDatum + + +Functions +--------- + +.. autoapisummary:: + + moleculib.nucleic.datum.atom_index + moleculib.nucleic.datum.get_nucleotide_index + moleculib.nucleic.datum.pdb_to_atom_array + + +Module Contents +--------------- + +.. py:data:: UNK_TOKEN + :value: 1 + + +.. py:data:: MAX_RES_ATOMS + :value: 14 + + +.. py:data:: base_atoms_per_nuc + +.. py:data:: backbone_atoms_DNA + :value: ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O3'", "O4'", "O5'"] + + +.. py:data:: backbone_atoms_RNA + :value: ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O2'", "O3'", "O4'", "O5'"] + + +.. py:data:: special_tokens + :value: ['PAD', 'UNK'] + + +.. py:data:: atoms_per_nuc + +.. py:data:: MAX_DNA_ATOMS + +.. py:data:: all_atoms + +.. py:data:: all_atoms_tokens + +.. py:data:: elements + +.. py:data:: all_atoms_elements + +.. py:data:: all_nucs + +.. py:data:: all_nucs_tokens + +.. py:data:: all_nucs_atom_mask + +.. py:data:: all_nucs_atom_tokens + +.. py:function:: atom_index(atom: str) -> int + +.. py:function:: get_nucleotide_index(nucleotide: str) -> int + +.. py:data:: atom_to_nucs_index + +.. py:data:: atom_to_nucs_mask + +.. py:data:: home_dir + +.. py:data:: config + +.. py:function:: pdb_to_atom_array(pdb_path, RNA=True) + +.. py:class:: NucleicDatum(idcode: str, resolution: float, sequence: biotite.sequence.NucleotideSequence, nuc_token: numpy.ndarray, nuc_index: numpy.ndarray, nuc_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates Biotite nucleic sequence data + # and reshapes atom arrays to residue-based representation + + + .. py:method:: empty_nuc() + :classmethod: + + + + .. py:method:: from_filepath(filepath) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, save_path=None) + :classmethod: + + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum') + + +.. py:data:: rna_res_names + :value: ['A', 'U', 'RT', 'G', 'C', 'I'] + + +.. py:data:: dna_res_names + :value: ['DA', 'DU', 'DT', 'DG', 'DC', 'DI'] + + +.. py:data:: dna_res_tokens + +.. py:data:: rna_res_tokens + +.. py:data:: dna_datum + diff --git a/_sources/autoapi/moleculib/nucleic/index.rst.txt b/_sources/autoapi/moleculib/nucleic/index.rst.txt new file mode 100644 index 0000000..33e0d7d --- /dev/null +++ b/_sources/autoapi/moleculib/nucleic/index.rst.txt @@ -0,0 +1,20 @@ +moleculib.nucleic +================= + +.. py:module:: moleculib.nucleic + + +Submodules +---------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/nucleic/alphabet/index + /autoapi/moleculib/nucleic/batch/index + /autoapi/moleculib/nucleic/dataset/index + /autoapi/moleculib/nucleic/datum/index + /autoapi/moleculib/nucleic/transform/index + /autoapi/moleculib/nucleic/utils/index + + diff --git a/_sources/autoapi/moleculib/nucleic/transform/index.rst.txt b/_sources/autoapi/moleculib/nucleic/transform/index.rst.txt new file mode 100644 index 0000000..ba87e2a --- /dev/null +++ b/_sources/autoapi/moleculib/nucleic/transform/index.rst.txt @@ -0,0 +1,196 @@ +moleculib.nucleic.transform +=========================== + +.. py:module:: moleculib.nucleic.transform + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.nucleic.transform.dna_res_tokens + moleculib.nucleic.transform.rna_res_tokens + moleculib.nucleic.transform.UNK_TOKEN + moleculib.nucleic.transform.MAX_RES_ATOMS + moleculib.nucleic.transform.base_atoms_per_nuc + moleculib.nucleic.transform.backbone_atoms_DNA + moleculib.nucleic.transform.backbone_atoms_RNA + moleculib.nucleic.transform.special_tokens + moleculib.nucleic.transform.atoms_per_nuc + moleculib.nucleic.transform.MAX_DNA_ATOMS + moleculib.nucleic.transform.all_atoms + moleculib.nucleic.transform.all_atoms_tokens + moleculib.nucleic.transform.elements + moleculib.nucleic.transform.all_atoms_elements + moleculib.nucleic.transform.all_nucs + moleculib.nucleic.transform.all_nucs_tokens + moleculib.nucleic.transform.all_nucs_atom_mask + moleculib.nucleic.transform.all_nucs_atom_tokens + moleculib.nucleic.transform.atom_to_nucs_index + moleculib.nucleic.transform.atom_to_nucs_mask + + +Classes +------- + +.. autoapisummary:: + + moleculib.nucleic.transform.NucleicDatum + moleculib.nucleic.transform.NucTransform + moleculib.nucleic.transform.NucCrop + moleculib.nucleic.transform.NucPad + + +Functions +--------- + +.. autoapisummary:: + + moleculib.nucleic.transform.atom_index + moleculib.nucleic.transform.get_nucleotide_index + moleculib.nucleic.transform.pad_array + moleculib.nucleic.transform.pids_file_to_list + + +Module Contents +--------------- + +.. py:class:: NucleicDatum(idcode: str, resolution: float, sequence: biotite.sequence.NucleotideSequence, nuc_token: numpy.ndarray, nuc_index: numpy.ndarray, nuc_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates Biotite nucleic sequence data + # and reshapes atom arrays to residue-based representation + + + .. py:method:: empty_nuc() + :classmethod: + + + + .. py:method:: from_filepath(filepath) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, save_path=None) + :classmethod: + + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum') + + +.. py:data:: dna_res_tokens + +.. py:data:: rna_res_tokens + +.. py:data:: UNK_TOKEN + :value: 1 + + +.. py:data:: MAX_RES_ATOMS + :value: 14 + + +.. py:data:: base_atoms_per_nuc + +.. py:data:: backbone_atoms_DNA + :value: ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O3'", "O4'", "O5'"] + + +.. py:data:: backbone_atoms_RNA + :value: ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O2'", "O3'", "O4'", "O5'"] + + +.. py:data:: special_tokens + :value: ['PAD', 'UNK'] + + +.. py:data:: atoms_per_nuc + +.. py:data:: MAX_DNA_ATOMS + +.. py:data:: all_atoms + +.. py:data:: all_atoms_tokens + +.. py:data:: elements + +.. py:data:: all_atoms_elements + +.. py:data:: all_nucs + +.. py:data:: all_nucs_tokens + +.. py:data:: all_nucs_atom_mask + +.. py:data:: all_nucs_atom_tokens + +.. py:function:: atom_index(atom: str) -> int + +.. py:function:: get_nucleotide_index(nucleotide: str) -> int + +.. py:data:: atom_to_nucs_index + +.. py:data:: atom_to_nucs_mask + +.. py:function:: pad_array(array, total_size) + +.. py:function:: pids_file_to_list(pids_path) + +.. py:class:: NucTransform + + Abstract class for nucleic transform + + + .. py:method:: transform(datum: moleculib.nucleic.datum.NucleicDatum) -> moleculib.nucleic.datum.NucleicDatum + :abstractmethod: + + + Takes as input an individual data point, processes + the values in it and returns a new NucleicDatum + + + +.. py:class:: NucCrop(crop_len) + + Bases: :py:obj:`NucTransform` + + + Abstract class for nucleic transform + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new NucleicDatum + + + +.. py:class:: NucPad(pad_size) + + Bases: :py:obj:`NucTransform` + + + Abstract class for nucleic transform + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new NucleicDatum + + + diff --git a/_sources/autoapi/moleculib/nucleic/utils/index.rst.txt b/_sources/autoapi/moleculib/nucleic/utils/index.rst.txt new file mode 100644 index 0000000..5cce2af --- /dev/null +++ b/_sources/autoapi/moleculib/nucleic/utils/index.rst.txt @@ -0,0 +1,38 @@ +moleculib.nucleic.utils +======================= + +.. py:module:: moleculib.nucleic.utils + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.nucleic.utils.home_dir + moleculib.nucleic.utils.config + + +Functions +--------- + +.. autoapisummary:: + + moleculib.nucleic.utils.pdb_to_atom_array + moleculib.nucleic.utils.pids_file_to_list + moleculib.nucleic.utils.pad_array + + +Module Contents +--------------- + +.. py:data:: home_dir + +.. py:data:: config + +.. py:function:: pdb_to_atom_array(pdb_path) + +.. py:function:: pids_file_to_list(pids_path) + +.. py:function:: pad_array(array, total_size) + diff --git a/_sources/autoapi/moleculib/protein/alphabet/index.rst.txt b/_sources/autoapi/moleculib/protein/alphabet/index.rst.txt new file mode 100644 index 0000000..324c93c --- /dev/null +++ b/_sources/autoapi/moleculib/protein/alphabet/index.rst.txt @@ -0,0 +1,110 @@ +moleculib.protein.alphabet +========================== + +.. py:module:: moleculib.protein.alphabet + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.protein.alphabet.UNK_TOKEN + moleculib.protein.alphabet.van_der_walls_radii + moleculib.protein.alphabet.sidechain_atoms_per_residue + moleculib.protein.alphabet.sidechain_chemistry_per_residue + moleculib.protein.alphabet.backbone_atoms + moleculib.protein.alphabet.backbone_chemistry + moleculib.protein.alphabet.special_tokens + moleculib.protein.alphabet.atoms_per_residue + moleculib.protein.alphabet.all_atoms + moleculib.protein.alphabet.all_atoms + moleculib.protein.alphabet.all_atoms_tokens + moleculib.protein.alphabet.elements + moleculib.protein.alphabet.all_atoms_elements + moleculib.protein.alphabet.all_atoms_radii + moleculib.protein.alphabet.all_residues + moleculib.protein.alphabet.all_residues + moleculib.protein.alphabet.all_residues_tokens + moleculib.protein.alphabet.all_residues_atom_mask + moleculib.protein.alphabet.all_residues_atom_tokens + moleculib.protein.alphabet.bond_lens_arr + moleculib.protein.alphabet.max_arr_size + moleculib.protein.alphabet.bond_lens_arr + moleculib.protein.alphabet.atom_to_residues_index + moleculib.protein.alphabet.atom_to_residues_mask + + +Functions +--------- + +.. autoapisummary:: + + moleculib.protein.alphabet.geometry_to_per_residue_indexing_array + moleculib.protein.alphabet.atom_index + moleculib.protein.alphabet.get_residue_index + + +Module Contents +--------------- + +.. py:data:: UNK_TOKEN + :value: 1 + + +.. py:data:: van_der_walls_radii + +.. py:data:: sidechain_atoms_per_residue + +.. py:data:: sidechain_chemistry_per_residue + +.. py:data:: backbone_atoms + :value: ['N', 'CA', 'C', 'O'] + + +.. py:data:: backbone_chemistry + +.. py:data:: special_tokens + :value: ['PAD', 'MASK', 'UNK'] + + +.. py:data:: atoms_per_residue + +.. py:data:: all_atoms + +.. py:data:: all_atoms + +.. py:data:: all_atoms_tokens + +.. py:data:: elements + +.. py:data:: all_atoms_elements + +.. py:data:: all_atoms_radii + +.. py:data:: all_residues + +.. py:data:: all_residues + +.. py:data:: all_residues_tokens + +.. py:data:: all_residues_atom_mask + +.. py:data:: all_residues_atom_tokens + +.. py:function:: geometry_to_per_residue_indexing_array(property='bonds') + +.. py:data:: bond_lens_arr + +.. py:data:: max_arr_size + +.. py:data:: bond_lens_arr + +.. py:function:: atom_index(atom: str) -> int + +.. py:function:: get_residue_index(residue: str) -> int + +.. py:data:: atom_to_residues_index + +.. py:data:: atom_to_residues_mask + diff --git a/_sources/autoapi/moleculib/protein/batch/index.rst.txt b/_sources/autoapi/moleculib/protein/batch/index.rst.txt new file mode 100644 index 0000000..6f942a3 --- /dev/null +++ b/_sources/autoapi/moleculib/protein/batch/index.rst.txt @@ -0,0 +1,209 @@ +moleculib.protein.batch +======================= + +.. py:module:: moleculib.protein.batch + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.protein.batch.backbone_atoms + + +Classes +------- + +.. autoapisummary:: + + moleculib.protein.batch.ProteinDatum + moleculib.protein.batch.ProteinCollator + moleculib.protein.batch.PadBatch + moleculib.protein.batch.GeometricBatch + + +Functions +--------- + +.. autoapisummary:: + + moleculib.protein.batch.pad_array + + +Module Contents +--------------- + +.. py:data:: backbone_atoms + :value: ['N', 'CA', 'C', 'O'] + + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + +.. py:function:: pad_array(array, total_size) + +.. py:class:: ProteinCollator + + Abstract class for collation of multiple ProteinDatum instances + into a single batch instance + + + .. py:method:: collate(data_list: List[moleculib.protein.datum.ProteinDatum]) + :classmethod: + + :abstractmethod: + + + Takes a list of ProteinDatum instances and produces + a ProteinCollate instance with all the instances collated + according to the appropriate collate function + + + + .. py:method:: revert() -> List[moleculib.protein.datum.ProteinDatum] + :abstractmethod: + + + Reverts a batch to its original list form + + + + .. py:method:: to(device: str) -> ProteinCollator + + + .. py:method:: torch() -> ProteinCollator + + + .. py:method:: to_dict(attrs=None) + + +.. py:class:: PadBatch(**kwargs) + + Bases: :py:obj:`ProteinCollator` + + + Abstract class for collation of multiple ProteinDatum instances + into a single batch instance + + + .. py:method:: revert(constructor=ProteinDatum) + + Reverts a batch to its original list form + + + + .. py:method:: collate(data_list) + :classmethod: + + + Takes a list of ProteinDatum instances and produces + a ProteinCollate instance with all the instances collated + according to the appropriate collate function + + + +.. py:class:: GeometricBatch(batch_index, num_nodes, **kwargs) + + Bases: :py:obj:`ProteinCollator` + + + Abstract class for collation of multiple ProteinDatum instances + into a single batch instance + + + .. py:method:: revert(constructor=ProteinDatum) + + Reverts a batch to its original list form + + + + .. py:method:: collate(data_list) + :classmethod: + + + Takes a list of ProteinDatum instances and produces + a ProteinCollate instance with all the instances collated + according to the appropriate collate function + + + diff --git a/_sources/autoapi/moleculib/protein/dataset/index.rst.txt b/_sources/autoapi/moleculib/protein/dataset/index.rst.txt new file mode 100644 index 0000000..48b38d7 --- /dev/null +++ b/_sources/autoapi/moleculib/protein/dataset/index.rst.txt @@ -0,0 +1,275 @@ +moleculib.protein.dataset +========================= + +.. py:module:: moleculib.protein.dataset + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.protein.dataset.UNK_TOKEN + moleculib.protein.dataset.MAX_COMPLEX_SIZE + moleculib.protein.dataset.PDB_HEADER_FIELDS + moleculib.protein.dataset.CHAIN_COUNTER_FIELDS + moleculib.protein.dataset.PDB_METADATA_FIELDS + moleculib.protein.dataset.SAMPLE_PDBS + + +Classes +------- + +.. autoapisummary:: + + moleculib.protein.dataset.ProteinDatum + moleculib.protein.dataset.ProteinTransform + moleculib.protein.dataset.PreProcessedDataset + moleculib.protein.dataset.PDBDataset + moleculib.protein.dataset.MonomerDataset + moleculib.protein.dataset.TinyPDBDataset + moleculib.protein.dataset.FrameDiffDataset + moleculib.protein.dataset.TinyPDBDataset + moleculib.protein.dataset.FoldingDiffDataset + moleculib.protein.dataset.FoldDataset + moleculib.protein.dataset.EnzymeCommissionDataset + moleculib.protein.dataset.GeneOntologyDataset + moleculib.protein.dataset.FuncDataset + moleculib.protein.dataset.ScaffoldsDataset + moleculib.protein.dataset.FastFoldingDataset + + +Functions +--------- + +.. autoapisummary:: + + moleculib.protein.dataset.pids_file_to_list + + +Module Contents +--------------- + +.. py:data:: UNK_TOKEN + :value: 1 + + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + +.. py:class:: ProteinTransform + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum: moleculib.protein.datum.ProteinDatum) -> moleculib.protein.datum.ProteinDatum + :abstractmethod: + + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:function:: pids_file_to_list(pids_path) + +.. py:class:: PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False) + +.. py:data:: MAX_COMPLEX_SIZE + :value: 32 + + +.. py:data:: PDB_HEADER_FIELDS + +.. py:data:: CHAIN_COUNTER_FIELDS + +.. py:data:: PDB_METADATA_FIELDS + +.. py:data:: SAMPLE_PDBS + :value: ['1C5E', '1C9O', '1CKU', '1CSE', '7ZKR', '7ZYS', '8AJQ', '8AQL', '8DCH'] + + +.. py:class:: PDBDataset(base_path: str, transform: moleculib.protein.transform.ProteinTransform = None, attrs: Union[List[str], str] = 'all', metadata: pandas.DataFrame = None, max_resolution: float = None, min_sequence_length: int = None, max_sequence_length: int = None, frac: float = 1.0, preload: bool = False, preload_num_workers: int = 10, keep_ids: List[str] = None, filter_ids=None) + + Holds ProteinDatum dataset with specified PDB IDs + + Arguments: + ---------- + base_path : str + directory to store all PDB files + pdb_ids : List[str] + list of all protein IDs that should be in the dataset + format : str + the file format for each PDB file, either "npz" or "pdb" + attrs : Union[str, List[str]] + a partial list of protein attributes that should be in each protein + + + .. py:method:: load_index(idx) + + + .. py:method:: parse(molecules) + :abstractmethod: + + + + .. py:method:: build(pdb_ids: List[str] = None, save: bool = True, save_path: str = None, max_workers: int = 1, format: str = 'mmtf', **kwargs) + :classmethod: + + + Builds dataset from scratch given specified pdb_ids, prepares + data and metadata for later use. + + + +.. py:class:: MonomerDataset(base_path: str, metadata: pandas.DataFrame = None, single_chain: bool = True, **kwargs) + + Bases: :py:obj:`PDBDataset` + + + Holds ProteinDatum dataset with specified PDB IDs + + Arguments: + ---------- + base_path : str + directory to store all PDB files + pdb_ids : List[str] + list of all protein IDs that should be in the dataset + format : str + the file format for each PDB file, either "npz" or "pdb" + attrs : Union[str, List[str]] + a partial list of protein attributes that should be in each protein + + + .. py:method:: parse(header, datum) + + +.. py:class:: TinyPDBDataset(base_path, transform: List[Callable] = None, shuffle=True) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: FrameDiffDataset(base_path, transform: List[Callable] = None, shuffle=True) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: TinyPDBDataset(base_path, transform: List[Callable] = None, shuffle=True) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: FoldingDiffDataset(base_path, transform: List[Callable] = None, shuffle=True) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: FoldDataset(base_path, transform: List[Callable] = None, shuffle=True) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: EnzymeCommissionDataset(base_path, transform: List[Callable] = None, shuffle=True) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: GeneOntologyDataset(base_path, transform: List[Callable] = None, level='mf', shuffle=True) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: FuncDataset(base_path, transform: List[Callable] = None, shuffle=True) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: ScaffoldsDataset(base_path, transform: List[Callable] = None, shuffle=True, val_split=0.0) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: FastFoldingDataset(protein='chignolin', num_files=-1, tau=0, stride=1, time_sort=False, buffer=100, preload=True, shuffle=False) + + Bases: :py:obj:`torch.utils.data.Dataset` + + diff --git a/_sources/autoapi/moleculib/protein/datum/index.rst.txt b/_sources/autoapi/moleculib/protein/datum/index.rst.txt new file mode 100644 index 0000000..e897a9a --- /dev/null +++ b/_sources/autoapi/moleculib/protein/datum/index.rst.txt @@ -0,0 +1,136 @@ +moleculib.protein.datum +======================= + +.. py:module:: moleculib.protein.datum + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.protein.datum.all_atoms + moleculib.protein.datum.all_residues + moleculib.protein.datum.backbone_atoms + moleculib.protein.datum.atom_to_residues_index + + +Classes +------- + +.. autoapisummary:: + + moleculib.protein.datum.ProteinSequence + moleculib.protein.datum.ProteinDatum + + +Functions +--------- + +.. autoapisummary:: + + moleculib.protein.datum.atom_index + moleculib.protein.datum.get_residue_index + + +Module Contents +--------------- + +.. py:data:: all_atoms + +.. py:data:: all_residues + +.. py:data:: backbone_atoms + :value: ['N', 'CA', 'C', 'O'] + + +.. py:function:: atom_index(atom: str) -> int + +.. py:data:: atom_to_residues_index + +.. py:function:: get_residue_index(residue: str) -> int + +.. py:class:: ProteinSequence(idcode: str, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, **kwargs) + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + diff --git a/_sources/autoapi/moleculib/protein/index.rst.txt b/_sources/autoapi/moleculib/protein/index.rst.txt new file mode 100644 index 0000000..aff9828 --- /dev/null +++ b/_sources/autoapi/moleculib/protein/index.rst.txt @@ -0,0 +1,32 @@ +moleculib.protein +================= + +.. py:module:: moleculib.protein + + +Subpackages +----------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/protein/tests/index + + +Submodules +---------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/protein/alphabet/index + /autoapi/moleculib/protein/batch/index + /autoapi/moleculib/protein/dataset/index + /autoapi/moleculib/protein/datum/index + /autoapi/moleculib/protein/jax_utils/index + /autoapi/moleculib/protein/measures/index + /autoapi/moleculib/protein/metrics/index + /autoapi/moleculib/protein/transform/index + /autoapi/moleculib/protein/utils/index + + diff --git a/_sources/autoapi/moleculib/protein/jax_utils/index.rst.txt b/_sources/autoapi/moleculib/protein/jax_utils/index.rst.txt new file mode 100644 index 0000000..c6a0f95 --- /dev/null +++ b/_sources/autoapi/moleculib/protein/jax_utils/index.rst.txt @@ -0,0 +1,68 @@ +moleculib.protein.jax_utils +=========================== + +.. py:module:: moleculib.protein.jax_utils + +.. autoapi-nested-parse:: + + stringarray: JAX-compatible object array for manipulating strings. + + + +Classes +------- + +.. autoapisummary:: + + moleculib.protein.jax_utils.StringArray + + +Module Contents +--------------- + +.. py:class:: StringArray(data: Union[str, List[str], numpy.ndarray, StringArray]) + + StringArray: JAX-compatible representation of an array of strings. + + .. rubric:: Examples + + >>> arr = StringArray(['A', 'B', 'C', 'D']) + >>> arr + StringArray(['A', 'B', 'C', 'D'], dtype=object) + >>> len(arr) + 4 + >>> arr.shape + (4,) + >>> arr.dtype + dtype('O') + >>> arr[0] + StringArray('A', dtype=object) + + + .. py:attribute:: dtype + + + .. py:attribute:: shape + + + .. py:attribute:: size + + + .. py:attribute:: ndim + + + .. py:attribute:: T + + + .. py:method:: transpose(*axes: int) -> StringArray + + + .. py:method:: ravel() -> StringArray + + + .. py:method:: reshape(*args, **kwargs) -> StringArray + + + .. py:method:: astype(dtype: numpy.dtype) -> StringArray + + diff --git a/_sources/autoapi/moleculib/protein/measures/index.rst.txt b/_sources/autoapi/moleculib/protein/measures/index.rst.txt new file mode 100644 index 0000000..1976226 --- /dev/null +++ b/_sources/autoapi/moleculib/protein/measures/index.rst.txt @@ -0,0 +1,19 @@ +moleculib.protein.measures +========================== + +.. py:module:: moleculib.protein.measures + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.protein.measures.STANDARD_CHEMICAL_MEASURES + + +Module Contents +--------------- + +.. py:data:: STANDARD_CHEMICAL_MEASURES + diff --git a/_sources/autoapi/moleculib/protein/metrics/index.rst.txt b/_sources/autoapi/moleculib/protein/metrics/index.rst.txt new file mode 100644 index 0000000..a423dac --- /dev/null +++ b/_sources/autoapi/moleculib/protein/metrics/index.rst.txt @@ -0,0 +1,200 @@ +moleculib.protein.metrics +========================= + +.. py:module:: moleculib.protein.metrics + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.protein.metrics.STANDARD_CHEMICAL_MEASURES + + +Classes +------- + +.. autoapisummary:: + + moleculib.protein.metrics.ProteinDatum + moleculib.protein.metrics.ProteinMetric + moleculib.protein.metrics.AlignedRootMeanSquareDeviation + moleculib.protein.metrics.CountClashes + moleculib.protein.metrics.ChemicalDeviationMetric + moleculib.protein.metrics.StandardBondDeviation + moleculib.protein.metrics.StandardAngleDeviation + moleculib.protein.metrics.StandardDihedralDeviation + moleculib.protein.metrics.DescribeChemistry + moleculib.protein.metrics.StandardChemicalDeviation + + +Functions +--------- + +.. autoapisummary:: + + moleculib.protein.metrics.safe_norm + moleculib.protein.metrics.norm + moleculib.protein.metrics.normalize + moleculib.protein.metrics.measure_bonds + moleculib.protein.metrics.measure_angles + moleculib.protein.metrics.measure_dihedrals + + +Module Contents +--------------- + +.. py:data:: STANDARD_CHEMICAL_MEASURES + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + +.. py:function:: safe_norm(vector: jax.numpy.ndarray, axis: int = -1) -> jax.numpy.ndarray + + safe_norm(x) = norm(x) if norm(x) != 0 else 1.0 + + +.. py:class:: ProteinMetric + +.. py:class:: AlignedRootMeanSquareDeviation + + Bases: :py:obj:`ProteinMetric` + + +.. py:class:: CountClashes(radius_multiplier=0.8, smooth: bool = False) + + Bases: :py:obj:`ProteinMetric` + + +.. py:function:: norm(vector: numpy.ndarray) -> numpy.ndarray + +.. py:function:: normalize(vector: numpy.ndarray) -> numpy.ndarray + +.. py:function:: measure_bonds(coord, idx) + +.. py:function:: measure_angles(coords, idx) + +.. py:function:: measure_dihedrals(coords, indices) + +.. py:class:: ChemicalDeviationMetric(key, measure, var_clip=0.0, num_interactive_atoms=1) + + Bases: :py:obj:`ProteinMetric` + + +.. py:class:: StandardBondDeviation + + Bases: :py:obj:`ChemicalDeviationMetric` + + +.. py:class:: StandardAngleDeviation + + Bases: :py:obj:`ChemicalDeviationMetric` + + +.. py:class:: StandardDihedralDeviation(var_clip=0.1) + + Bases: :py:obj:`ChemicalDeviationMetric` + + +.. py:class:: DescribeChemistry + + Bases: :py:obj:`ProteinTransform` + + + Augments ProteinDatum with bonds_list and angles_list a list of atomic indexes connected by bonds and angles + that should have invariant behavior according to chemistry + Note that indexing is performed at atom level, that is, as residue_dim atom_dim -> (residue_dim atom_dim) + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: StandardChemicalDeviation + + Bases: :py:obj:`ProteinMetric` + + diff --git a/_sources/autoapi/moleculib/protein/tests/index.rst.txt b/_sources/autoapi/moleculib/protein/tests/index.rst.txt new file mode 100644 index 0000000..b15aaf9 --- /dev/null +++ b/_sources/autoapi/moleculib/protein/tests/index.rst.txt @@ -0,0 +1,15 @@ +moleculib.protein.tests +======================= + +.. py:module:: moleculib.protein.tests + + +Submodules +---------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/protein/tests/loader_test/index + + diff --git a/_sources/autoapi/moleculib/protein/tests/loader_test/index.rst.txt b/_sources/autoapi/moleculib/protein/tests/loader_test/index.rst.txt new file mode 100644 index 0000000..cf78752 --- /dev/null +++ b/_sources/autoapi/moleculib/protein/tests/loader_test/index.rst.txt @@ -0,0 +1,25 @@ +moleculib.protein.tests.loader_test +=================================== + +.. py:module:: moleculib.protein.tests.loader_test + + +Functions +--------- + +.. autoapisummary:: + + moleculib.protein.tests.loader_test.test_dataloader + moleculib.protein.tests.loader_test.test_dataload_from_filesystem + moleculib.protein.tests.loader_test.check_dataloader_batch_size + + +Module Contents +--------------- + +.. py:function:: test_dataloader() + +.. py:function:: test_dataload_from_filesystem() + +.. py:function:: check_dataloader_batch_size(pids, bs) + diff --git a/_sources/autoapi/moleculib/protein/transform/index.rst.txt b/_sources/autoapi/moleculib/protein/transform/index.rst.txt new file mode 100644 index 0000000..492e012 --- /dev/null +++ b/_sources/autoapi/moleculib/protein/transform/index.rst.txt @@ -0,0 +1,388 @@ +moleculib.protein.transform +=========================== + +.. py:module:: moleculib.protein.transform + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.protein.transform.all_atoms + moleculib.protein.transform.all_residues + moleculib.protein.transform.all_atoms_elements + moleculib.protein.transform.all_atoms_radii + moleculib.protein.transform.backbone_atoms + moleculib.protein.transform.bond_lens_arr + moleculib.protein.transform.SSE_TOKENS + + +Classes +------- + +.. autoapisummary:: + + moleculib.protein.transform.ProteinDatum + moleculib.protein.transform.ProteinTransform + moleculib.protein.transform.ProteinCrop + moleculib.protein.transform.ProteinRescale + moleculib.protein.transform.BackboneOnly + moleculib.protein.transform.CaOnly + moleculib.protein.transform.ProteinPad + moleculib.protein.transform.ListBonds + moleculib.protein.transform.ListAngles + moleculib.protein.transform.ListDihedrals + moleculib.protein.transform.ListMirrorFlips + moleculib.protein.transform.DescribeChemistry + moleculib.protein.transform.TokenizeSequenceBoundaries + moleculib.protein.transform.MaybeMirror + moleculib.protein.transform.AnnotateSecondaryStructure + moleculib.protein.transform.MaskResidues + + +Functions +--------- + +.. autoapisummary:: + + moleculib.protein.transform.pad_array + moleculib.protein.transform.normalize + moleculib.protein.transform.measure_chirality + + +Module Contents +--------------- + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + +.. py:data:: all_atoms + +.. py:data:: all_residues + +.. py:data:: all_atoms_elements + +.. py:data:: all_atoms_radii + +.. py:data:: backbone_atoms + :value: ['N', 'CA', 'C', 'O'] + + +.. py:data:: bond_lens_arr + +.. py:function:: pad_array(array, total_size) + +.. py:class:: ProteinTransform + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum: moleculib.protein.datum.ProteinDatum) -> moleculib.protein.datum.ProteinDatum + :abstractmethod: + + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ProteinCrop(crop_size) + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum, cut=None) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ProteinRescale(factor) + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: BackboneOnly(filter: bool = True, keep_seq: bool = False) + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: CaOnly(filter: bool = True, keep_seq: bool = False) + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ProteinPad(pad_size: int, random_position: bool = False) + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum: moleculib.protein.datum.ProteinDatum) -> moleculib.protein.datum.ProteinDatum + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ListBonds(peptide_bonds: bool = True) + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ListAngles + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ListDihedrals + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: ListMirrorFlips + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: DescribeChemistry + + Bases: :py:obj:`ProteinTransform` + + + Augments ProteinDatum with bonds_list and angles_list a list of atomic indexes connected by bonds and angles + that should have invariant behavior according to chemistry + Note that indexing is performed at atom level, that is, as residue_dim atom_dim -> (residue_dim atom_dim) + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: TokenizeSequenceBoundaries + + Bases: :py:obj:`ProteinTransform` + + + Augments ProteinDatum with boundary_token and boundary_mask + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:function:: normalize(vector) + +.. py:function:: measure_chirality(coords) + +.. py:class:: MaybeMirror(hand='left') + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:data:: SSE_TOKENS + :value: ['', 'c', 'a', 'b'] + + +.. py:class:: AnnotateSecondaryStructure + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum: moleculib.protein.datum.ProteinDatum) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: MaskResidues(mask_ratio: float = 0.0, contiguous: float = 0.0) + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum: moleculib.protein.datum.ProteinDatum, mask=None) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + diff --git a/_sources/autoapi/moleculib/protein/utils/index.rst.txt b/_sources/autoapi/moleculib/protein/utils/index.rst.txt new file mode 100644 index 0000000..aa0c9af --- /dev/null +++ b/_sources/autoapi/moleculib/protein/utils/index.rst.txt @@ -0,0 +1,134 @@ +moleculib.protein.utils +======================= + +.. py:module:: moleculib.protein.utils + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.protein.utils.home_dir + moleculib.protein.utils.config + + +Classes +------- + +.. autoapisummary:: + + moleculib.protein.utils.ProteinDatum + + +Functions +--------- + +.. autoapisummary:: + + moleculib.protein.utils.pdb_to_atom_array + moleculib.protein.utils.pids_file_to_list + moleculib.protein.utils.pad_array + moleculib.protein.utils.measure_rmsd + moleculib.protein.utils.rigid_Kabsch_3D + + +Module Contents +--------------- + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + +.. py:data:: home_dir + +.. py:data:: config + +.. py:function:: pdb_to_atom_array(pdb_path) + +.. py:function:: pids_file_to_list(pids_path) + +.. py:function:: pad_array(array, total_size) + +.. py:function:: measure_rmsd(x: moleculib.protein.datum.ProteinDatum, y: moleculib.protein.datum.ProteinDatum, mode='all_atom') + +.. py:function:: rigid_Kabsch_3D(Q, P) + diff --git a/_sources/autoapi/moleculib/sequence/dataset/index.rst.txt b/_sources/autoapi/moleculib/sequence/dataset/index.rst.txt new file mode 100644 index 0000000..3b92075 --- /dev/null +++ b/_sources/autoapi/moleculib/sequence/dataset/index.rst.txt @@ -0,0 +1,126 @@ +moleculib.sequence.dataset +========================== + +.. py:module:: moleculib.sequence.dataset + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.sequence.dataset.UNK_TOKEN + + +Classes +------- + +.. autoapisummary:: + + moleculib.sequence.dataset.ProteinTransform + moleculib.sequence.dataset.SeqDatum + moleculib.sequence.dataset.ElutedLigandDataset + moleculib.sequence.dataset.MHCBindingAffinityDataset + moleculib.sequence.dataset.GFPFitnessDataset + + +Functions +--------- + +.. autoapisummary:: + + moleculib.sequence.dataset.onehot_encode_datum + + +Module Contents +--------------- + +.. py:data:: UNK_TOKEN + :value: 1 + + +.. py:class:: ProteinTransform + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum: moleculib.protein.datum.ProteinDatum) -> moleculib.protein.datum.ProteinDatum + :abstractmethod: + + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: SeqDatum(idcode: str, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: onehot_encode_datum() + + + .. py:method:: empty_seqrecord() + :classmethod: + + + + .. py:method:: from_tokens(residues) + :classmethod: + + + Fasta file would only have sequence entry + :param filepath: + :return: + + + + .. py:method:: from_filepath(filepath) + :classmethod: + + + Fasta file would only have sequence entry + :param filepath: + :return: + + + + .. py:method:: from_sequence(idcode, sequence) + :classmethod: + + + Fasta file would only have sequence entry + :param filepath: + :return: + + + + .. py:method:: from_pdb_id(pdb_id, chain_id=None) + :classmethod: + + + + .. py:method:: from_uniprot_id(uniprotid, save_path=None) + :classmethod: + + + +.. py:function:: onehot_encode_datum(sequencedatum: moleculib.sequence.datum.SeqDatum) + +.. py:class:: ElutedLigandDataset(base_path: str, transform: moleculib.protein.transform.ProteinTransform = None, encode_one_hot: bool = True) + + Bases: :py:obj:`torch.utils.data.Dataset` + + +.. py:class:: MHCBindingAffinityDataset(base_path: str, transform: moleculib.protein.transform.ProteinTransform = None) + + Bases: :py:obj:`torch.utils.data.Dataset` + + +.. py:class:: GFPFitnessDataset(base_path: str, transform: moleculib.protein.transform.ProteinTransform = None, encode_one_hot: bool = True, encode_lm: bool = False, lm_model: str = 'esm') + + Bases: :py:obj:`torch.utils.data.Dataset` + + diff --git a/_sources/autoapi/moleculib/sequence/datum/index.rst.txt b/_sources/autoapi/moleculib/sequence/datum/index.rst.txt new file mode 100644 index 0000000..9d66a52 --- /dev/null +++ b/_sources/autoapi/moleculib/sequence/datum/index.rst.txt @@ -0,0 +1,101 @@ +moleculib.sequence.datum +======================== + +.. py:module:: moleculib.sequence.datum + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.sequence.datum.all_residues + moleculib.sequence.datum.API_URL + moleculib.sequence.datum.allowed_aa + + +Classes +------- + +.. autoapisummary:: + + moleculib.sequence.datum.SeqDatum + + +Functions +--------- + +.. autoapisummary:: + + moleculib.sequence.datum.get_residue_index + + +Module Contents +--------------- + +.. py:data:: all_residues + +.. py:function:: get_residue_index(residue: str) -> int + +.. py:data:: API_URL + :value: 'https://rest.uniprot.org' + + +.. py:data:: allowed_aa + :value: ['ALA', 'ARG', 'ASN', 'ASP', 'CYS', 'GLN', 'GLU', 'GLY', 'HIS', 'ILE', 'LEU', 'LYS', 'MET',... + + +.. py:class:: SeqDatum(idcode: str, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: onehot_encode_datum() + + + .. py:method:: empty_seqrecord() + :classmethod: + + + + .. py:method:: from_tokens(residues) + :classmethod: + + + Fasta file would only have sequence entry + :param filepath: + :return: + + + + .. py:method:: from_filepath(filepath) + :classmethod: + + + Fasta file would only have sequence entry + :param filepath: + :return: + + + + .. py:method:: from_sequence(idcode, sequence) + :classmethod: + + + Fasta file would only have sequence entry + :param filepath: + :return: + + + + .. py:method:: from_pdb_id(pdb_id, chain_id=None) + :classmethod: + + + + .. py:method:: from_uniprot_id(uniprotid, save_path=None) + :classmethod: + + + diff --git a/_sources/autoapi/moleculib/sequence/index.rst.txt b/_sources/autoapi/moleculib/sequence/index.rst.txt new file mode 100644 index 0000000..c829c33 --- /dev/null +++ b/_sources/autoapi/moleculib/sequence/index.rst.txt @@ -0,0 +1,19 @@ +moleculib.sequence +================== + +.. py:module:: moleculib.sequence + + +Submodules +---------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/sequence/dataset/index + /autoapi/moleculib/sequence/datum/index + /autoapi/moleculib/sequence/metrics/index + /autoapi/moleculib/sequence/transform/index + /autoapi/moleculib/sequence/utils/index + + diff --git a/_sources/autoapi/moleculib/sequence/metrics/index.rst.txt b/_sources/autoapi/moleculib/sequence/metrics/index.rst.txt new file mode 100644 index 0000000..7debc2d --- /dev/null +++ b/_sources/autoapi/moleculib/sequence/metrics/index.rst.txt @@ -0,0 +1,6 @@ +moleculib.sequence.metrics +========================== + +.. py:module:: moleculib.sequence.metrics + + diff --git a/_sources/autoapi/moleculib/sequence/transform/index.rst.txt b/_sources/autoapi/moleculib/sequence/transform/index.rst.txt new file mode 100644 index 0000000..d5fe852 --- /dev/null +++ b/_sources/autoapi/moleculib/sequence/transform/index.rst.txt @@ -0,0 +1,6 @@ +moleculib.sequence.transform +============================ + +.. py:module:: moleculib.sequence.transform + + diff --git a/_sources/autoapi/moleculib/sequence/utils/index.rst.txt b/_sources/autoapi/moleculib/sequence/utils/index.rst.txt new file mode 100644 index 0000000..294d781 --- /dev/null +++ b/_sources/autoapi/moleculib/sequence/utils/index.rst.txt @@ -0,0 +1,46 @@ +moleculib.sequence.utils +======================== + +.. py:module:: moleculib.sequence.utils + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.sequence.utils.alphabet + + +Functions +--------- + +.. autoapisummary:: + + moleculib.sequence.utils.onehot_encode_datum + moleculib.sequence.utils.decode_one_hot + moleculib.sequence.utils.residue_tokens_to_sequence + moleculib.sequence.utils.load_fasta_file + moleculib.sequence.utils.save_fasta_file + moleculib.sequence.utils.one_hot_encode_seq + + +Module Contents +--------------- + +.. py:data:: alphabet + :value: ['A', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'K', 'L', 'M', 'N', 'P', 'Q', 'R', 'S', 'T', 'V', 'W', 'Y', 'X'] + + +.. py:function:: onehot_encode_datum(sequencedatum: SeqDatum) + +.. py:function:: decode_one_hot(x) + +.. py:function:: residue_tokens_to_sequence(sequencedatum: SeqDatum) + +.. py:function:: load_fasta_file(input: str) -> List[Tuple[str]] + +.. py:function:: save_fasta_file(sequences, names, save_path) + +.. py:function:: one_hot_encode_seq(protein_seq, max_length=14) + diff --git a/_sources/autoapi/moleculib/traj/dataset/index.rst.txt b/_sources/autoapi/moleculib/traj/dataset/index.rst.txt new file mode 100644 index 0000000..feafb2f --- /dev/null +++ b/_sources/autoapi/moleculib/traj/dataset/index.rst.txt @@ -0,0 +1,208 @@ +moleculib.traj.dataset +====================== + +.. py:module:: moleculib.traj.dataset + + +Attributes +---------- + +.. autoapisummary:: + + moleculib.traj.dataset.NUM_STEPS + + +Classes +------- + +.. autoapisummary:: + + moleculib.traj.dataset.ProteinDatum + moleculib.traj.dataset.ProteinCrop + moleculib.traj.dataset.Dataset + moleculib.traj.dataset.PreProcessedDataset + moleculib.traj.dataset.MODELDataset + moleculib.traj.dataset.AdKEquilibriumDataset + moleculib.traj.dataset.AdKTransitionsDataset + moleculib.traj.dataset.AtlasDataset + moleculib.traj.dataset.AtlasEIF4EDataset + moleculib.traj.dataset.TimewarpDataset + moleculib.traj.dataset.TimewarpDatasetPreprocessed + + +Module Contents +--------------- + +.. py:class:: ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs) + + Incorporates protein data to MolecularDatum + and reshapes atom arrays to residue-based representation + + + .. py:method:: separate_chains(datum) + :staticmethod: + + + + .. py:method:: empty() + :classmethod: + + + + .. py:method:: replace(**kwargs) + + + .. py:method:: from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1) + :classmethod: + + + + .. py:method:: fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None) + :classmethod: + + + + .. py:method:: set(**kwargs) + + + .. py:method:: from_atom_array(atom_array, header) + :classmethod: + + + Reshapes atom array to residue-indexed representation to + build a protein datum. + + + + .. py:method:: apply_bonds(f) + + + .. py:method:: apply_angles(f) + + + .. py:method:: apply_dihedrals(f) + + + .. py:method:: to_dict(attrs=None) + + + .. py:method:: numpy() + + + .. py:method:: to_pdb_str() + + + .. py:method:: plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None) + + + .. py:method:: align_to(other, window=None) + + Aligns the current protein datum to another protein datum based on CA atoms. + + + + .. py:method:: save_mmcif(filepath) + + Saves the protein datum to an mmcif file. + + + + .. py:method:: to_dict() + + + .. py:method:: from_dict(dict_) + :classmethod: + + + +.. py:class:: ProteinCrop(crop_size) + + Bases: :py:obj:`ProteinTransform` + + + Abstract class for transformation of ProteinDatum datapoints + + + .. py:method:: transform(datum, cut=None) + + Takes as input an individual data point, processes + the values in it and returns a new ProteinDatum + + + +.. py:class:: Dataset(transform: List[Callable] = None) + +.. py:class:: PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False) + +.. py:class:: MODELDataset(base_path: str, frac: float = 1.0, transform: list = [], num_steps=5, crop_size: int = 64) + + Bases: :py:obj:`moleculib.abstract.dataset.Dataset` + + + Holds ProteinDatum dataset across trajectories + as catalogued in Molecular Dynamics Extended Library (MODEL) + + Arguments: + ---------- + base_path : str + directory to store all PDB files + format : str + the file format for each PDB file, either "npz" or "pdb" + + +.. py:class:: AdKEquilibriumDataset(base_path: str, transform: list = [], num_steps=15) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + + Holds ProteinDatum dataset across trajectories + as catalogued in Molecular Dynamics Extended Library (MODEL) + + Arguments: + ---------- + base_path : str + directory to store all PDB files + format : str + the file format for each PDB file, either "npz" or "pdb" + + +.. py:class:: AdKTransitionsDataset(base_path: str, frac: float = 1.0, transform: list = [], num_steps=15, split: str = 'train') + + Bases: :py:obj:`moleculib.abstract.dataset.Dataset` + + + Holds ProteinDatum dataset across trajectories + as catalogued in Molecular Dynamics Extended Library (MODEL) + + Arguments: + ---------- + base_path : str + directory to store all PDB files + format : str + the file format for each PDB file, either "npz" or "pdb" + + +.. py:data:: NUM_STEPS + :value: 1000 + + +.. py:class:: AtlasDataset(base_path: str, tau: int = None, transform: list = [], mode: str = 'next_step', single_protein: bool = False, min_sequence_size: int = 12, max_sequence_size: int = 512, expansion_factor: int = 100) + + Bases: :py:obj:`moleculib.abstract.dataset.Dataset` + + +.. py:class:: AtlasEIF4EDataset(base_path, transform=[]) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + +.. py:class:: TimewarpDataset(dataset: str, split: str, tau: int, max_files: Optional[int] = None) + + Exposes datasets from the Timewarp paper. + + +.. py:class:: TimewarpDatasetPreprocessed(split_info: Dict[str, Any]) + + Bases: :py:obj:`moleculib.abstract.dataset.PreProcessedDataset` + + diff --git a/_sources/autoapi/moleculib/traj/index.rst.txt b/_sources/autoapi/moleculib/traj/index.rst.txt new file mode 100644 index 0000000..061dec2 --- /dev/null +++ b/_sources/autoapi/moleculib/traj/index.rst.txt @@ -0,0 +1,15 @@ +moleculib.traj +============== + +.. py:module:: moleculib.traj + + +Submodules +---------- + +.. toctree:: + :maxdepth: 1 + + /autoapi/moleculib/traj/dataset/index + + diff --git a/_sources/index.rst.txt b/_sources/index.rst.txt new file mode 100644 index 0000000..4d259f8 --- /dev/null +++ b/_sources/index.rst.txt @@ -0,0 +1,16 @@ +Getting Started +============= + +**moleculib** is a comprehensive Python package designed to streamline the processing and management of biomolecular data within machine learning workflows. It empowers researchers and developers with a robust set of functionalities, simplifying complex data pipelines and accelerating the journey from raw biomolecular data to valuable insights. + +* **Data Processing**: preprocessing and cleaning capabilities for data normalization and feature engineering. +* **Machine Learning-First**: designed to readily integrate with Jax and pytrees in machine learning pipelines. +* **Reproducibility**: modular classes and workflows for better organization and reproducibility. + + +.. toctree:: + :maxdepth: 4 + + self + +* :ref:`genindex` diff --git a/_static/basic.css b/_static/basic.css new file mode 100644 index 0000000..f316efc --- /dev/null +++ b/_static/basic.css @@ -0,0 +1,925 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +div.section::after { + display: block; + content: ''; + clear: left; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 230px; + margin-left: -100%; + font-size: 90%; + word-wrap: break-word; + overflow-wrap : break-word; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +div.sphinxsidebar #searchbox form.search { + overflow: hidden; +} + +div.sphinxsidebar #searchbox input[type="text"] { + float: left; + width: 80%; + padding: 0.25em; + box-sizing: border-box; +} + +div.sphinxsidebar #searchbox input[type="submit"] { + float: left; + width: 20%; + border-left: none; + padding: 0.25em; + box-sizing: border-box; +} + + +img { + border: 0; + max-width: 100%; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li p.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; + margin-left: auto; + margin-right: auto; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable ul { + margin-top: 0; + margin-bottom: 0; + list-style-type: none; +} + +table.indextable > tbody > tr > td > ul { + padding-left: 0em; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- domain module index --------------------------------------------------- */ + +table.modindextable td { + padding: 2px; + border-collapse: collapse; +} + +/* -- general body styles --------------------------------------------------- */ + +div.body { + min-width: 360px; + max-width: 800px; +} + +div.body p, div.body dd, div.body li, div.body blockquote { + -moz-hyphens: auto; + -ms-hyphens: auto; + -webkit-hyphens: auto; + hyphens: auto; +} + +a.headerlink { + visibility: hidden; +} + +a:visited { + color: #551A8B; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink, +caption:hover > a.headerlink, +p.caption:hover > a.headerlink, +div.code-block-caption:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, figure.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, figure.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, figure.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +img.align-default, figure.align-default, .figure.align-default { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-default { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar, +aside.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px; + background-color: #ffe; + width: 40%; + float: right; + clear: right; + overflow-x: auto; +} + +p.sidebar-title { + font-weight: bold; +} + +nav.contents, +aside.topic, +div.admonition, div.topic, blockquote { + clear: left; +} + +/* -- topics ---------------------------------------------------------------- */ + +nav.contents, +aside.topic, +div.topic { + border: 1px solid #ccc; + padding: 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- content of sidebars/topics/admonitions -------------------------------- */ + +div.sidebar > :last-child, +aside.sidebar > :last-child, +nav.contents > :last-child, +aside.topic > :last-child, +div.topic > :last-child, +div.admonition > :last-child { + margin-bottom: 0; +} + +div.sidebar::after, +aside.sidebar::after, +nav.contents::after, +aside.topic::after, +div.topic::after, +div.admonition::after, +blockquote::after { + display: block; + content: ''; + clear: both; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + margin-top: 10px; + margin-bottom: 10px; + border: 0; + border-collapse: collapse; +} + +table.align-center { + margin-left: auto; + margin-right: auto; +} + +table.align-default { + margin-left: auto; + margin-right: auto; +} + +table caption span.caption-number { + font-style: italic; +} + +table caption span.caption-text { +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +th > :first-child, +td > :first-child { + margin-top: 0px; +} + +th > :last-child, +td > :last-child { + margin-bottom: 0px; +} + +/* -- figures --------------------------------------------------------------- */ + +div.figure, figure { + margin: 0.5em; + padding: 0.5em; +} + +div.figure p.caption, figcaption { + padding: 0.3em; +} + +div.figure p.caption span.caption-number, +figcaption span.caption-number { + font-style: italic; +} + +div.figure p.caption span.caption-text, +figcaption span.caption-text { +} + +/* -- field list styles ----------------------------------------------------- */ + +table.field-list td, table.field-list th { + border: 0 !important; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +/* -- hlist styles ---------------------------------------------------------- */ + +table.hlist { + margin: 1em 0; +} + +table.hlist td { + vertical-align: top; +} + +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +:not(li) > ol > li:first-child > :first-child, +:not(li) > ul > li:first-child > :first-child { + margin-top: 0px; +} + +:not(li) > ol > li:last-child > :last-child, +:not(li) > ul > li:last-child > :last-child { + margin-bottom: 0px; +} + +ol.simple ol p, +ol.simple ul p, +ul.simple ol p, +ul.simple ul p { + margin-top: 0; +} + +ol.simple > li:not(:first-child) > p, +ul.simple > li:not(:first-child) > p { + margin-top: 0; +} + +ol.simple p, +ul.simple p { + margin-bottom: 0; +} + +aside.footnote > span, +div.citation > span { + float: left; +} +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { + margin-bottom: 0em; +} +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { + content: ""; + clear: both; +} + +dl.field-list { + display: grid; + grid-template-columns: fit-content(30%) auto; +} + +dl.field-list > dt { + font-weight: bold; + word-break: break-word; + padding-left: 0.5em; + padding-right: 5px; +} + +dl.field-list > dd { + padding-left: 0.5em; + margin-top: 0em; + margin-left: 0em; + margin-bottom: 0em; +} + +dl { + margin-bottom: 15px; +} + +dd > :first-child { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +.sig dd { + margin-top: 0px; + margin-bottom: 0px; +} + +.sig dl { + margin-top: 0px; + margin-bottom: 0px; +} + +dl > dd:last-child, +dl > dd:last-child > :last-child { + margin-bottom: 0; +} + +dt:target, span.highlighted { + background-color: #fbe54e; +} + +rect.highlighted { + fill: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +.classifier:before { + font-style: normal; + margin: 0 0.5em; + content: ":"; + display: inline-block; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +.translated { + background-color: rgba(207, 255, 207, 0.2) +} + +.untranslated { + background-color: rgba(255, 207, 207, 0.2) +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +pre, div[class*="highlight-"] { + clear: both; +} + +span.pre { + -moz-hyphens: none; + -ms-hyphens: none; + -webkit-hyphens: none; + hyphens: none; + white-space: nowrap; +} + +div[class*="highlight-"] { + margin: 1em 0; +} + +td.linenos pre { + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + display: block; +} + +table.highlighttable tbody { + display: block; +} + +table.highlighttable tr { + display: flex; +} + +table.highlighttable td { + margin: 0; + padding: 0; +} + +table.highlighttable td.linenos { + padding-right: 0.5em; +} + +table.highlighttable td.code { + flex: 1; + overflow: hidden; +} + +.highlight .hll { + display: block; +} + +div.highlight pre, +table.highlighttable pre { + margin: 0; +} + +div.code-block-caption + div { + margin-top: 0; +} + +div.code-block-caption { + margin-top: 1em; + padding: 2px 5px; + font-size: small; +} + +div.code-block-caption code { + background-color: transparent; +} + +table.highlighttable td.linenos, +span.linenos, +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ +} + +div.code-block-caption span.caption-number { + padding: 0.1em 0.3em; + font-style: italic; +} + +div.code-block-caption span.caption-text { +} + +div.literal-block-wrapper { + margin: 1em 0; +} + +code.xref, a code { + background-color: transparent; + font-weight: bold; +} + +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +span.eqno a.headerlink { + position: absolute; + z-index: 1; +} + +div.math:hover a.headerlink { + visibility: visible; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} \ No newline at end of file diff --git a/_static/css/custom.css b/_static/css/custom.css new file mode 100644 index 0000000..df3f067 --- /dev/null +++ b/_static/css/custom.css @@ -0,0 +1 @@ +/* For overriding purposes */ \ No newline at end of file diff --git a/_static/css/insegel.css b/_static/css/insegel.css new file mode 100644 index 0000000..01e6871 --- /dev/null +++ b/_static/css/insegel.css @@ -0,0 +1,772 @@ +@import url("https://fonts.googleapis.com/css?family=IBM+Plex+Sans:300,400,500"); +@import url("https://fonts.googleapis.com/css?family=Inconsolata"); +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ +html, +body, +div, +span, +applet, +object, +iframe, +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +pre, +a, +abbr, +acronym, +address, +big, +cite, +code, +del, +dfn, +em, +img, +ins, +kbd, +q, +s, +samp, +small, +strike, +strong, +sub, +sup, +tt, +var, +b, +u, +i, +center, +dl, +dt, +dd, +ol, +ul, +li, +fieldset, +form, +label, +legend, +table, +caption, +tbody, +tfoot, +thead, +tr, +th, +td, +article, +aside, +canvas, +details, +embed, +figure, +figcaption, +footer, +header, +hgroup, +menu, +nav, +output, +ruby, +section, +summary, +time, +mark, +audio, +video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} + +/* HTML5 display-role reset for older browsers */ +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +menu, +nav, +section { + display: block; +} + +body { + line-height: 1; +} + +ol, +ul { + list-style: none; +} + +blockquote, +q { + quotes: none; +} + +blockquote:before, +blockquote:after, +q:before, +q:after { + content: ""; + content: none; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} + +body { + background: #f2f2f2; + font-family: "IBM Plex Sans", serif; + line-height: 1.5; + font-size: 18px; +} +@media screen and (max-width: 880px) { + body { + background: #f2f2f2; + } +} + +h1, +h2, +h3, +h4, +h5 { + font-weight: 300; + margin-bottom: 1em; + margin-top: 1em; +} + +h1 { + font-size: 2em; +} + +h2 { + font-size: 1.5em; +} + +h3 { + font-size: 1.35em; +} + +a { + text-decoration: none; + color: inherit; + font-weight: 500; + border-bottom: 2px solid transparent; + transition: border-bottom 0.25s; +} +a.headerlink { + border-bottom: 0; +} + +a:hover:not(.headerlink) { + border-bottom: 2px solid #2d2d2d; +} + +p { + margin-bottom: 1em; +} + +em { + font-style: italic; +} + +strong { + font-weight: bold; +} + +li { + display: list-item; +} + +ol { + display: block; + list-style-type: decimal; + padding-left: 40px; +} + +ul { + display: block; + list-style-type: disc; + padding-left: 25px; +} + +ul ul { + list-style-type: circle; +} + +pre { + font-family: "Inconsolata", monospace; + background-color: #dadada; + color: #2d2d2d; + padding: 2em; + margin-bottom: 1em; + overflow-x: auto; +} + +img { + max-width: 100%; +} + +table { + margin: 0 0 1.5em; + width: 100%; + max-width: 100%; +} + +table thead th { + font-weight: bold; + text-align: left; +} + +table th, +table td { + padding: 0.5em; +} + +table tbody tr:nth-of-type(odd) { + background-color: #dadada; + color: #2d2d2d; +} + +pre code { + white-space: nowrap; + overflow-x: auto; +} + +code { + max-width: 100%; + padding: 2px; + font-family: "Inconsolata", monospace; + background-color: #dadada; + color: #2d2d2d; +} + +table tbody tr:nth-of-type(odd) code { + background-color: #f2f2f2; + color: #2d2d2d; +} + +#insegel-container { + padding-left: 1em; + padding-right: 1em; + max-width: 1300px; + margin-left: auto; + margin-right: auto; +} +@media screen and (max-width: 880px) { + #insegel-container { + padding: 0; + } +} + +#content-container { + display: flex; + width: 100%; + flex-direction: row-reverse; +} +@media screen and (max-width: 880px) { + #content-container { + display: block; + } +} + +#main-content-container { + flex: 1; + width: 0; +} +@media screen and (max-width: 880px) { + #main-content-container { + width: inherit; + } +} + +#main-content-container, +#side-menu-container { + background-color: #f2f2f2; +} + +#main-content { + padding: 2em; +} +#main-content .figure { + text-align: center; +} +#main-content h1:first-of-type { + margin-top: 0; +} + +#side-menu-container { + width: 300px; + margin-right: 2em; + position: relative; +} +#side-menu-container #side-menu { + padding: 2em; + margin-bottom: 5em; +} +#side-menu-container #rtd-credit { + padding: 2em; + position: absolute; + bottom: 0; +} +@media screen and (max-width: 1000px) { + #side-menu-container { + width: 250px; + } +} +@media screen and (max-width: 880px) { + #side-menu-container { + margin-right: 0; + width: 100%; + display: none; + } + #side-menu-container #side-menu { + margin-bottom: 0; + } + #side-menu-container #rtd-credit { + position: relative; + } +} + +a.headerlink { + display: none; + visibility: hidden; +} +a.headerlink:after { + visibility: visible; + font: normal normal normal 14px/1 FontAwesome; + font-size: inherit; + text-rendering: auto; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + content: "\f0c1"; + display: inline-block; + opacity: 0.6; +} + +h1:hover .headerlink, +h2:hover .headerlink, +h3:hover .headerlink, +h4:hover .headerlink, +h5:hover .headerlink, +h6:hover .headerlink, +dl dt:hover .headerlink, +p.caption:hover .headerlink { + display: inline-block; +} + +#side-menu .local-toc ul { + text-transform: uppercase; + font-weight: 300; + padding-left: 0px; + list-style-type: none; +} +#side-menu .local-toc ul ul { + margin-top: 1em; + text-transform: none; + font-family: "IBM Plex Sans", serif; +} +#side-menu .local-toc ul ul a { + font-weight: 400; +} + +#side-menu .caption { + opacity: 0.7; + font-weight: 300; + list-style-type: none; + margin-bottom: 0px; +} +#side-menu ul { + margin-bottom: 1em; + text-transform: none; + list-style-type: none; + padding-left: 0px; +} +#side-menu .toctree-l2 > a { + font-weight: normal; + margin-left: 1em; +} +#side-menu .toctree-l3 > a, +#side-menu .toctree-l4 > a, +#side-menu .toctree-l5 > a { + font-weight: normal; + opacity: 0.7; + margin-left: 2em; +} + +#search { + padding: 2em; +} +#search input[type="text"] { + width: 100%; + font-weight: 300; + font-size: 2em; + box-sizing: border-box; + border: none; + background-color: #f2f2f2; + color: #2d2d2d; + font-family: "IBM Plex Sans", serif; +} +#search input[type="text"]::placeholder { + color: #a5a5a5; + font-weight: 300; +} + +.admonition { + padding: 2em; + margin-bottom: 2em; + background-color: #2d2d2d; + color: #ebebeb; +} +.admonition .admonition-title { + font-weight: 500; +} +.admonition.warning, +.admonition.caution, +.admonition.danger, +.admonition.error { + background-color: #cd4949; + color: #2d2d2d; +} +.admonition.attention, +.admonition.important { + background-color: #49cdac; + color: #2d2d2d; +} + +.injected { + display: none; +} + +.toctree-wrapper { + margin-bottom: 1em; +} +.toctree-wrapper .caption-text { + font-weight: 300; + opacity: 0.5; +} + +.figure { + margin-bottom: 1em; +} + +header { + padding-top: 2em; + display: flex; +} +header #logo-container { + padding-left: 2em; + display: flex; + align-items: center; +} +@media screen and (max-width: 1000px) { + header #logo-container { + width: 350px; + } +} +@media screen and (max-width: 880px) { + header #logo-container { + width: 100%; + padding: 0; + display: block; + } +} +header #logo-container img { + height: 70px; +} +header #project-container { + padding: 0em 2em; +} +@media screen and (max-width: 880px) { + header { + text-align: center; + display: block; + } +} + +footer { + display: flex; + justify-content: space-between; + margin: 2em; +} +footer #footer-info { + display: flex; + justify-content: space-between; + width: 100%; +} +footer a#menu-toggle { + display: none; + opacity: 1; + font-size: 32px; + cursor: pointer; +} +footer a#menu-toggle.toggled { + color: #dadada; +} +footer ul#build-details { + list-style: none; + display: flex; + margin: 0; + padding: 0; +} +footer ul#build-details li { + margin-right: 0.25em; +} +footer ul#build-details li:not(:last-child):after { + content: " // "; + margin-left: 0; +} +@media screen and (max-width: 880px) { + footer { + align-items: center; + } + footer #footer-info { + display: block; + } + footer a#menu-toggle { + display: block; + } +} + +#search-results ul.search { + padding-left: 0px; + list-style-type: none; +} +#search-results ul.search li { + margin-bottom: 2em; +} +#search-results ul.search .context { + margin-top: 1em; + white-space: pre-line; + background-color: #dadada; + color: #2d2d2d; + padding: 2em; +} +#search-results ul.search .context .highlighted { + font-weight: 800; +} + +dl:not(.docutils) dd { + margin-left: 2em; +} +dl:not(.docutils) dd dl { + margin-bottom: 1em; +} +dl:not(.docutils) dt { + background: #2d2d2d; + color: #ebebeb; + padding: 0.5em; + padding-right: 0.75em; + margin-bottom: 1em; + display: inline-block; +} +dl:not(.docutils) dt .property { + margin-right: 0.5em; +} +dl:not(.docutils) dt code { + background: #2d2d2d; + color: #ebebeb; + font-weight: bold; + padding: 0px; +} +dl:not(.docutils) dl dt { + background: #dadada; + color: #2d2d2d; + border-left: 0.25em solid #2d2d2d; +} +dl:not(.docutils) dl dt code { + background: #dadada; + color: #2d2d2d; +} + +.c { + font-style: italic; +} + +/* Comment */ +.err { + border: 1px solid #ff0000; +} + +/* Error */ +.k { + font-weight: bold; +} + +/* Keyword */ +.cm { + font-style: italic; +} + +/* Comment.Multiline */ +.c1 { + font-style: italic; +} + +/* Comment.Single */ +.cs { + font-style: italic; +} + +/* Comment.Special */ +.ge { + font-style: italic; +} + +/* Generic.Emph */ +.gh { + font-weight: bold; +} + +/* Generic.Heading */ +.gp { + font-weight: bold; +} + +/* Generic.Prompt */ +.gs { + font-weight: bold; +} + +/* Generic.Strong */ +.gu { + font-weight: bold; +} + +/* Generic.Subheading */ +.kc { + font-weight: bold; +} + +/* Keyword.Constant */ +.kd { + font-weight: bold; +} + +/* Keyword.Declaration */ +.kn { + font-weight: bold; +} + +/* Keyword.Namespace */ +.kr { + font-weight: bold; +} + +/* Keyword.Reserved */ +.s { + font-style: italic; +} + +/* Literal.String */ +.nc { + font-weight: bold; +} + +/* Name.Class */ +.ni { + font-weight: bold; +} + +/* Name.Entity */ +.ne { + font-weight: bold; +} + +/* Name.Exception */ +.nn { + font-weight: bold; +} + +/* Name.Namespace */ +.nt { + font-weight: bold; +} + +/* Name.Tag */ +.ow { + font-weight: bold; +} + +/* Operator.Word */ +.sb { + font-style: italic; +} + +/* Literal.String.Backtick */ +.sc { + font-style: italic; +} + +/* Literal.String.Char */ +.sd { + font-style: italic; +} + +/* Literal.String.Doc */ +.s2 { + font-style: italic; +} + +/* Literal.String.Double */ +.se { + font-weight: bold; + font-style: italic; +} + +/* Literal.String.Escape */ +.sh { + font-style: italic; +} + +/* Literal.String.Heredoc */ +.si { + font-weight: bold; + font-style: italic; +} + +/* Literal.String.Interpol */ +.sx { + font-style: italic; +} + +/* Literal.String.Other */ +.sr { + font-style: italic; +} + +/* Literal.String.Regex */ +.s1 { + font-style: italic; +} + +/* Literal.String.Single */ +.ss { + font-style: italic; +} + +/* Literal.String.Symbol */ + +/*# sourceMappingURL=insegel.css.map */ diff --git a/_static/doctools.js b/_static/doctools.js new file mode 100644 index 0000000..4d67807 --- /dev/null +++ b/_static/doctools.js @@ -0,0 +1,156 @@ +/* + * doctools.js + * ~~~~~~~~~~~ + * + * Base JavaScript utilities for all Sphinx HTML documentation. + * + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ +"use strict"; + +const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([ + "TEXTAREA", + "INPUT", + "SELECT", + "BUTTON", +]); + +const _ready = (callback) => { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); + } +}; + +/** + * Small JavaScript module for the documentation. + */ +const Documentation = { + init: () => { + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); + }, + + /** + * i18n support + */ + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (n === 1 ? 0 : 1), + LOCALE: "unknown", + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists + } + }, + + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; + }, + + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})` + ); + Documentation.LOCALE = catalog.locale; + }, + + /** + * helper function to focus on search bar + */ + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); + }, + + /** + * Initialise the domain index toggle buttons + */ + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); + } + }; + + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)) + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); + }, + + initOnKeyListeners: () => { + // only install a listener if it is really needed + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && + !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + ) + return; + + document.addEventListener("keydown", (event) => { + // bail for input elements + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + // bail with special keys + if (event.altKey || event.ctrlKey || event.metaKey) return; + + if (!event.shiftKey) { + switch (event.key) { + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); + } + break; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); + } + break; + } + } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } + }); + }, +}; + +// quick alias for translations +const _ = Documentation.gettext; + +_ready(Documentation.init); diff --git a/_static/documentation_options.js b/_static/documentation_options.js new file mode 100644 index 0000000..ac6502a --- /dev/null +++ b/_static/documentation_options.js @@ -0,0 +1,13 @@ +const DOCUMENTATION_OPTIONS = { + VERSION: '-', + LANGUAGE: 'en', + COLLAPSE_INDEX: false, + BUILDER: 'html', + FILE_SUFFIX: '.html', + LINK_SUFFIX: '.html', + HAS_SOURCE: true, + SOURCELINK_SUFFIX: '.txt', + NAVIGATION_WITH_KEYS: false, + SHOW_SEARCH_SUMMARY: true, + ENABLE_SEARCH_SHORTCUTS: true, +}; \ No newline at end of file diff --git a/_static/file.png b/_static/file.png new file mode 100644 index 0000000..a858a41 Binary files /dev/null and b/_static/file.png differ diff --git a/_static/graphviz.css b/_static/graphviz.css new file mode 100644 index 0000000..027576e --- /dev/null +++ b/_static/graphviz.css @@ -0,0 +1,19 @@ +/* + * graphviz.css + * ~~~~~~~~~~~~ + * + * Sphinx stylesheet -- graphviz extension. + * + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +img.graphviz { + border: 0; + max-width: 100%; +} + +object.graphviz { + max-width: 100%; +} diff --git a/_static/img/favicon-16x16.png b/_static/img/favicon-16x16.png new file mode 100644 index 0000000..5d1eaa4 Binary files /dev/null and b/_static/img/favicon-16x16.png differ diff --git a/_static/img/favicon-32x32.png b/_static/img/favicon-32x32.png new file mode 100644 index 0000000..66d1ae1 Binary files /dev/null and b/_static/img/favicon-32x32.png differ diff --git a/_static/language_data.js b/_static/language_data.js new file mode 100644 index 0000000..367b8ed --- /dev/null +++ b/_static/language_data.js @@ -0,0 +1,199 @@ +/* + * language_data.js + * ~~~~~~~~~~~~~~~~ + * + * This script contains the language-specific data used by searchtools.js, + * namely the list of stopwords, stemmer, scorer and splitter. + * + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]; + + +/* Non-minified version is copied as a separate JS file, if available */ + +/** + * Porter Stemmer + */ +var Stemmer = function() { + + var step2list = { + ational: 'ate', + tional: 'tion', + enci: 'ence', + anci: 'ance', + izer: 'ize', + bli: 'ble', + alli: 'al', + entli: 'ent', + eli: 'e', + ousli: 'ous', + ization: 'ize', + ation: 'ate', + ator: 'ate', + alism: 'al', + iveness: 'ive', + fulness: 'ful', + ousness: 'ous', + aliti: 'al', + iviti: 'ive', + biliti: 'ble', + logi: 'log' + }; + + var step3list = { + icate: 'ic', + ative: '', + alize: 'al', + iciti: 'ic', + ical: 'ic', + ful: '', + ness: '' + }; + + var c = "[^aeiou]"; // consonant + var v = "[aeiouy]"; // vowel + var C = c + "[^aeiouy]*"; // consonant sequence + var V = v + "[aeiou]*"; // vowel sequence + + var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 + var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 + var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 + var s_v = "^(" + C + ")?" + v; // vowel in stem + + this.stemWord = function (w) { + var stem; + var suffix; + var firstch; + var origword = w; + + if (w.length < 3) + return w; + + var re; + var re2; + var re3; + var re4; + + firstch = w.substr(0,1); + if (firstch == "y") + w = firstch.toUpperCase() + w.substr(1); + + // Step 1a + re = /^(.+?)(ss|i)es$/; + re2 = /^(.+?)([^s])s$/; + + if (re.test(w)) + w = w.replace(re,"$1$2"); + else if (re2.test(w)) + w = w.replace(re2,"$1$2"); + + // Step 1b + re = /^(.+?)eed$/; + re2 = /^(.+?)(ed|ing)$/; + if (re.test(w)) { + var fp = re.exec(w); + re = new RegExp(mgr0); + if (re.test(fp[1])) { + re = /.$/; + w = w.replace(re,""); + } + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1]; + re2 = new RegExp(s_v); + if (re2.test(stem)) { + w = stem; + re2 = /(at|bl|iz)$/; + re3 = new RegExp("([^aeiouylsz])\\1$"); + re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re2.test(w)) + w = w + "e"; + else if (re3.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + else if (re4.test(w)) + w = w + "e"; + } + } + + // Step 1c + re = /^(.+?)y$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(s_v); + if (re.test(stem)) + w = stem + "i"; + } + + // Step 2 + re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step2list[suffix]; + } + + // Step 3 + re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step3list[suffix]; + } + + // Step 4 + re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/; + re2 = /^(.+?)(s|t)(ion)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + if (re.test(stem)) + w = stem; + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1] + fp[2]; + re2 = new RegExp(mgr1); + if (re2.test(stem)) + w = stem; + } + + // Step 5 + re = /^(.+?)e$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + re2 = new RegExp(meq1); + re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) + w = stem; + } + re = /ll$/; + re2 = new RegExp(mgr1); + if (re.test(w) && re2.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + + // and turn initial Y back to y + if (firstch == "y") + w = firstch.toLowerCase() + w.substr(1); + return w; + } +} + diff --git a/_static/logo.png b/_static/logo.png new file mode 100644 index 0000000..86cc5fa Binary files /dev/null and b/_static/logo.png differ diff --git a/_static/logo.svg b/_static/logo.svg new file mode 100644 index 0000000..41f7da2 --- /dev/null +++ b/_static/logo.svg @@ -0,0 +1,22 @@ + +Vector +Created using Figma + + + + + + + + + + + + + + + + + + + diff --git a/_static/minus.png b/_static/minus.png new file mode 100644 index 0000000..d96755f Binary files /dev/null and b/_static/minus.png differ diff --git a/_static/plus.png b/_static/plus.png new file mode 100644 index 0000000..7107cec Binary files /dev/null and b/_static/plus.png differ diff --git a/_static/pygments.css b/_static/pygments.css new file mode 100644 index 0000000..8054382 --- /dev/null +++ b/_static/pygments.css @@ -0,0 +1,75 @@ +pre { line-height: 125%; } +td.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; } +span.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; } +td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +.highlight .hll { background-color: #ffffcc } +.highlight { background: #f0f0f0; } +.highlight .c { color: #60a0b0; font-style: italic } /* Comment */ +.highlight .err { border: 1px solid #FF0000 } /* Error */ +.highlight .k { color: #007020; font-weight: bold } /* Keyword */ +.highlight .o { color: #666666 } /* Operator */ +.highlight .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */ +.highlight .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #007020 } /* Comment.Preproc */ +.highlight .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */ +.highlight .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */ +.highlight .gd { color: #A00000 } /* Generic.Deleted */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */ +.highlight .gr { color: #FF0000 } /* Generic.Error */ +.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +.highlight .gi { color: #00A000 } /* Generic.Inserted */ +.highlight .go { color: #888888 } /* Generic.Output */ +.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +.highlight .gt { color: #0044DD } /* Generic.Traceback */ +.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */ +.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */ +.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */ +.highlight .kp { color: #007020 } /* Keyword.Pseudo */ +.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #902000 } /* Keyword.Type */ +.highlight .m { color: #40a070 } /* Literal.Number */ +.highlight .s { color: #4070a0 } /* Literal.String */ +.highlight .na { color: #4070a0 } /* Name.Attribute */ +.highlight .nb { color: #007020 } /* Name.Builtin */ +.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */ +.highlight .no { color: #60add5 } /* Name.Constant */ +.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */ +.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */ +.highlight .ne { color: #007020 } /* Name.Exception */ +.highlight .nf { color: #06287e } /* Name.Function */ +.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */ +.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ +.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */ +.highlight .nv { color: #bb60d5 } /* Name.Variable */ +.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */ +.highlight .w { color: #bbbbbb } /* Text.Whitespace */ +.highlight .mb { color: #40a070 } /* Literal.Number.Bin */ +.highlight .mf { color: #40a070 } /* Literal.Number.Float */ +.highlight .mh { color: #40a070 } /* Literal.Number.Hex */ +.highlight .mi { color: #40a070 } /* Literal.Number.Integer */ +.highlight .mo { color: #40a070 } /* Literal.Number.Oct */ +.highlight .sa { color: #4070a0 } /* Literal.String.Affix */ +.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */ +.highlight .sc { color: #4070a0 } /* Literal.String.Char */ +.highlight .dl { color: #4070a0 } /* Literal.String.Delimiter */ +.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */ +.highlight .s2 { color: #4070a0 } /* Literal.String.Double */ +.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */ +.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */ +.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */ +.highlight .sx { color: #c65d09 } /* Literal.String.Other */ +.highlight .sr { color: #235388 } /* Literal.String.Regex */ +.highlight .s1 { color: #4070a0 } /* Literal.String.Single */ +.highlight .ss { color: #517918 } /* Literal.String.Symbol */ +.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */ +.highlight .fm { color: #06287e } /* Name.Function.Magic */ +.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */ +.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */ +.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */ +.highlight .vm { color: #bb60d5 } /* Name.Variable.Magic */ +.highlight .il { color: #40a070 } /* Literal.Number.Integer.Long */ \ No newline at end of file diff --git a/_static/searchtools.js b/_static/searchtools.js new file mode 100644 index 0000000..92da3f8 --- /dev/null +++ b/_static/searchtools.js @@ -0,0 +1,619 @@ +/* + * searchtools.js + * ~~~~~~~~~~~~~~~~ + * + * Sphinx JavaScript utilities for the full-text search. + * + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ +"use strict"; + +/** + * Simple result scoring code. + */ +if (typeof Scorer === "undefined") { + var Scorer = { + // Implement the following function to further tweak the score for each result + // The function takes a result array [docname, title, anchor, descr, score, filename] + // and returns the new score. + /* + score: result => { + const [docname, title, anchor, descr, score, filename] = result + return score + }, + */ + + // query matches the full name of an object + objNameMatch: 11, + // or matches in the last dotted part of the object name + objPartialMatch: 6, + // Additive scores depending on the priority of the object + objPrio: { + 0: 15, // used to be importantResults + 1: 5, // used to be objectResults + 2: -5, // used to be unimportantResults + }, + // Used when the priority is not in the mapping. + objPrioDefault: 0, + + // query found in title + title: 15, + partialTitle: 7, + // query found in terms + term: 5, + partialTerm: 2, + }; +} + +const _removeChildren = (element) => { + while (element && element.lastChild) element.removeChild(element.lastChild); +}; + +/** + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping + */ +const _escapeRegExp = (string) => + string.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string + +const _displayItem = (item, searchTerms, highlightTerms) => { + const docBuilder = DOCUMENTATION_OPTIONS.BUILDER; + const docFileSuffix = DOCUMENTATION_OPTIONS.FILE_SUFFIX; + const docLinkSuffix = DOCUMENTATION_OPTIONS.LINK_SUFFIX; + const showSearchSummary = DOCUMENTATION_OPTIONS.SHOW_SEARCH_SUMMARY; + const contentRoot = document.documentElement.dataset.content_root; + + const [docName, title, anchor, descr, score, _filename] = item; + + let listItem = document.createElement("li"); + let requestUrl; + let linkUrl; + if (docBuilder === "dirhtml") { + // dirhtml builder + let dirname = docName + "/"; + if (dirname.match(/\/index\/$/)) + dirname = dirname.substring(0, dirname.length - 6); + else if (dirname === "index/") dirname = ""; + requestUrl = contentRoot + dirname; + linkUrl = requestUrl; + } else { + // normal html builders + requestUrl = contentRoot + docName + docFileSuffix; + linkUrl = docName + docLinkSuffix; + } + let linkEl = listItem.appendChild(document.createElement("a")); + linkEl.href = linkUrl + anchor; + linkEl.dataset.score = score; + linkEl.innerHTML = title; + if (descr) { + listItem.appendChild(document.createElement("span")).innerHTML = + " (" + descr + ")"; + // highlight search terms in the description + if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js + highlightTerms.forEach((term) => _highlightText(listItem, term, "highlighted")); + } + else if (showSearchSummary) + fetch(requestUrl) + .then((responseData) => responseData.text()) + .then((data) => { + if (data) + listItem.appendChild( + Search.makeSearchSummary(data, searchTerms, anchor) + ); + // highlight search terms in the summary + if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js + highlightTerms.forEach((term) => _highlightText(listItem, term, "highlighted")); + }); + Search.output.appendChild(listItem); +}; +const _finishSearch = (resultCount) => { + Search.stopPulse(); + Search.title.innerText = _("Search Results"); + if (!resultCount) + Search.status.innerText = Documentation.gettext( + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories." + ); + else + Search.status.innerText = _( + "Search finished, found ${resultCount} page(s) matching the search query." + ).replace('${resultCount}', resultCount); +}; +const _displayNextItem = ( + results, + resultCount, + searchTerms, + highlightTerms, +) => { + // results left, load the summary and display it + // this is intended to be dynamic (don't sub resultsCount) + if (results.length) { + _displayItem(results.pop(), searchTerms, highlightTerms); + setTimeout( + () => _displayNextItem(results, resultCount, searchTerms, highlightTerms), + 5 + ); + } + // search finished, update title and status message + else _finishSearch(resultCount); +}; +// Helper function used by query() to order search results. +// Each input is an array of [docname, title, anchor, descr, score, filename]. +// Order the results by score (in opposite order of appearance, since the +// `_displayNextItem` function uses pop() to retrieve items) and then alphabetically. +const _orderResultsByScoreThenName = (a, b) => { + const leftScore = a[4]; + const rightScore = b[4]; + if (leftScore === rightScore) { + // same score: sort alphabetically + const leftTitle = a[1].toLowerCase(); + const rightTitle = b[1].toLowerCase(); + if (leftTitle === rightTitle) return 0; + return leftTitle > rightTitle ? -1 : 1; // inverted is intentional + } + return leftScore > rightScore ? 1 : -1; +}; + +/** + * Default splitQuery function. Can be overridden in ``sphinx.search`` with a + * custom function per language. + * + * The regular expression works by splitting the string on consecutive characters + * that are not Unicode letters, numbers, underscores, or emoji characters. + * This is the same as ``\W+`` in Python, preserving the surrogate pair area. + */ +if (typeof splitQuery === "undefined") { + var splitQuery = (query) => query + .split(/[^\p{Letter}\p{Number}_\p{Emoji_Presentation}]+/gu) + .filter(term => term) // remove remaining empty strings +} + +/** + * Search Module + */ +const Search = { + _index: null, + _queued_query: null, + _pulse_status: -1, + + htmlToText: (htmlString, anchor) => { + const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html'); + for (const removalQuery of [".headerlinks", "script", "style"]) { + htmlElement.querySelectorAll(removalQuery).forEach((el) => { el.remove() }); + } + if (anchor) { + const anchorContent = htmlElement.querySelector(`[role="main"] ${anchor}`); + if (anchorContent) return anchorContent.textContent; + + console.warn( + `Anchored content block not found. Sphinx search tries to obtain it via DOM query '[role=main] ${anchor}'. Check your theme or template.` + ); + } + + // if anchor not specified or not found, fall back to main content + const docContent = htmlElement.querySelector('[role="main"]'); + if (docContent) return docContent.textContent; + + console.warn( + "Content block not found. Sphinx search tries to obtain it via DOM query '[role=main]'. Check your theme or template." + ); + return ""; + }, + + init: () => { + const query = new URLSearchParams(window.location.search).get("q"); + document + .querySelectorAll('input[name="q"]') + .forEach((el) => (el.value = query)); + if (query) Search.performSearch(query); + }, + + loadIndex: (url) => + (document.body.appendChild(document.createElement("script")).src = url), + + setIndex: (index) => { + Search._index = index; + if (Search._queued_query !== null) { + const query = Search._queued_query; + Search._queued_query = null; + Search.query(query); + } + }, + + hasIndex: () => Search._index !== null, + + deferQuery: (query) => (Search._queued_query = query), + + stopPulse: () => (Search._pulse_status = -1), + + startPulse: () => { + if (Search._pulse_status >= 0) return; + + const pulse = () => { + Search._pulse_status = (Search._pulse_status + 1) % 4; + Search.dots.innerText = ".".repeat(Search._pulse_status); + if (Search._pulse_status >= 0) window.setTimeout(pulse, 500); + }; + pulse(); + }, + + /** + * perform a search for something (or wait until index is loaded) + */ + performSearch: (query) => { + // create the required interface elements + const searchText = document.createElement("h2"); + searchText.textContent = _("Searching"); + const searchSummary = document.createElement("p"); + searchSummary.classList.add("search-summary"); + searchSummary.innerText = ""; + const searchList = document.createElement("ul"); + searchList.classList.add("search"); + + const out = document.getElementById("search-results"); + Search.title = out.appendChild(searchText); + Search.dots = Search.title.appendChild(document.createElement("span")); + Search.status = out.appendChild(searchSummary); + Search.output = out.appendChild(searchList); + + const searchProgress = document.getElementById("search-progress"); + // Some themes don't use the search progress node + if (searchProgress) { + searchProgress.innerText = _("Preparing search..."); + } + Search.startPulse(); + + // index already loaded, the browser was quick! + if (Search.hasIndex()) Search.query(query); + else Search.deferQuery(query); + }, + + _parseQuery: (query) => { + // stem the search terms and add them to the correct list + const stemmer = new Stemmer(); + const searchTerms = new Set(); + const excludedTerms = new Set(); + const highlightTerms = new Set(); + const objectTerms = new Set(splitQuery(query.toLowerCase().trim())); + splitQuery(query.trim()).forEach((queryTerm) => { + const queryTermLower = queryTerm.toLowerCase(); + + // maybe skip this "word" + // stopwords array is from language_data.js + if ( + stopwords.indexOf(queryTermLower) !== -1 || + queryTerm.match(/^\d+$/) + ) + return; + + // stem the word + let word = stemmer.stemWord(queryTermLower); + // select the correct list + if (word[0] === "-") excludedTerms.add(word.substr(1)); + else { + searchTerms.add(word); + highlightTerms.add(queryTermLower); + } + }); + + if (SPHINX_HIGHLIGHT_ENABLED) { // set in sphinx_highlight.js + localStorage.setItem("sphinx_highlight_terms", [...highlightTerms].join(" ")) + } + + // console.debug("SEARCH: searching for:"); + // console.info("required: ", [...searchTerms]); + // console.info("excluded: ", [...excludedTerms]); + + return [query, searchTerms, excludedTerms, highlightTerms, objectTerms]; + }, + + /** + * execute search (requires search index to be loaded) + */ + _performSearch: (query, searchTerms, excludedTerms, highlightTerms, objectTerms) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const titles = Search._index.titles; + const allTitles = Search._index.alltitles; + const indexEntries = Search._index.indexentries; + + // Collect multiple result groups to be sorted separately and then ordered. + // Each is an array of [docname, title, anchor, descr, score, filename]. + const normalResults = []; + const nonMainIndexResults = []; + + _removeChildren(document.getElementById("search-progress")); + + const queryLower = query.toLowerCase().trim(); + for (const [title, foundTitles] of Object.entries(allTitles)) { + if (title.toLowerCase().trim().includes(queryLower) && (queryLower.length >= title.length/2)) { + for (const [file, id] of foundTitles) { + let score = Math.round(100 * queryLower.length / title.length) + normalResults.push([ + docNames[file], + titles[file] !== title ? `${titles[file]} > ${title}` : title, + id !== null ? "#" + id : "", + null, + score, + filenames[file], + ]); + } + } + } + + // search for explicit entries in index directives + for (const [entry, foundEntries] of Object.entries(indexEntries)) { + if (entry.includes(queryLower) && (queryLower.length >= entry.length/2)) { + for (const [file, id, isMain] of foundEntries) { + const score = Math.round(100 * queryLower.length / entry.length); + const result = [ + docNames[file], + titles[file], + id ? "#" + id : "", + null, + score, + filenames[file], + ]; + if (isMain) { + normalResults.push(result); + } else { + nonMainIndexResults.push(result); + } + } + } + } + + // lookup as object + objectTerms.forEach((term) => + normalResults.push(...Search.performObjectSearch(term, objectTerms)) + ); + + // lookup as search terms in fulltext + normalResults.push(...Search.performTermsSearch(searchTerms, excludedTerms)); + + // let the scorer override scores with a custom scoring function + if (Scorer.score) { + normalResults.forEach((item) => (item[4] = Scorer.score(item))); + nonMainIndexResults.forEach((item) => (item[4] = Scorer.score(item))); + } + + // Sort each group of results by score and then alphabetically by name. + normalResults.sort(_orderResultsByScoreThenName); + nonMainIndexResults.sort(_orderResultsByScoreThenName); + + // Combine the result groups in (reverse) order. + // Non-main index entries are typically arbitrary cross-references, + // so display them after other results. + let results = [...nonMainIndexResults, ...normalResults]; + + // remove duplicate search results + // note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept + let seen = new Set(); + results = results.reverse().reduce((acc, result) => { + let resultStr = result.slice(0, 4).concat([result[5]]).map(v => String(v)).join(','); + if (!seen.has(resultStr)) { + acc.push(result); + seen.add(resultStr); + } + return acc; + }, []); + + return results.reverse(); + }, + + query: (query) => { + const [searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms] = Search._parseQuery(query); + const results = Search._performSearch(searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms); + + // for debugging + //Search.lastresults = results.slice(); // a copy + // console.info("search results:", Search.lastresults); + + // print the results + _displayNextItem(results, results.length, searchTerms, highlightTerms); + }, + + /** + * search for object names + */ + performObjectSearch: (object, objectTerms) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const objects = Search._index.objects; + const objNames = Search._index.objnames; + const titles = Search._index.titles; + + const results = []; + + const objectSearchCallback = (prefix, match) => { + const name = match[4] + const fullname = (prefix ? prefix + "." : "") + name; + const fullnameLower = fullname.toLowerCase(); + if (fullnameLower.indexOf(object) < 0) return; + + let score = 0; + const parts = fullnameLower.split("."); + + // check for different match types: exact matches of full name or + // "last name" (i.e. last dotted part) + if (fullnameLower === object || parts.slice(-1)[0] === object) + score += Scorer.objNameMatch; + else if (parts.slice(-1)[0].indexOf(object) > -1) + score += Scorer.objPartialMatch; // matches in last name + + const objName = objNames[match[1]][2]; + const title = titles[match[0]]; + + // If more than one term searched for, we require other words to be + // found in the name/title/description + const otherTerms = new Set(objectTerms); + otherTerms.delete(object); + if (otherTerms.size > 0) { + const haystack = `${prefix} ${name} ${objName} ${title}`.toLowerCase(); + if ( + [...otherTerms].some((otherTerm) => haystack.indexOf(otherTerm) < 0) + ) + return; + } + + let anchor = match[3]; + if (anchor === "") anchor = fullname; + else if (anchor === "-") anchor = objNames[match[1]][1] + "-" + fullname; + + const descr = objName + _(", in ") + title; + + // add custom score for some objects according to scorer + if (Scorer.objPrio.hasOwnProperty(match[2])) + score += Scorer.objPrio[match[2]]; + else score += Scorer.objPrioDefault; + + results.push([ + docNames[match[0]], + fullname, + "#" + anchor, + descr, + score, + filenames[match[0]], + ]); + }; + Object.keys(objects).forEach((prefix) => + objects[prefix].forEach((array) => + objectSearchCallback(prefix, array) + ) + ); + return results; + }, + + /** + * search for full-text terms in the index + */ + performTermsSearch: (searchTerms, excludedTerms) => { + // prepare search + const terms = Search._index.terms; + const titleTerms = Search._index.titleterms; + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const titles = Search._index.titles; + + const scoreMap = new Map(); + const fileMap = new Map(); + + // perform the search on the required terms + searchTerms.forEach((word) => { + const files = []; + const arr = [ + { files: terms[word], score: Scorer.term }, + { files: titleTerms[word], score: Scorer.title }, + ]; + // add support for partial matches + if (word.length > 2) { + const escapedWord = _escapeRegExp(word); + if (!terms.hasOwnProperty(word)) { + Object.keys(terms).forEach((term) => { + if (term.match(escapedWord)) + arr.push({ files: terms[term], score: Scorer.partialTerm }); + }); + } + if (!titleTerms.hasOwnProperty(word)) { + Object.keys(titleTerms).forEach((term) => { + if (term.match(escapedWord)) + arr.push({ files: titleTerms[term], score: Scorer.partialTitle }); + }); + } + } + + // no match but word was a required one + if (arr.every((record) => record.files === undefined)) return; + + // found search word in contents + arr.forEach((record) => { + if (record.files === undefined) return; + + let recordFiles = record.files; + if (recordFiles.length === undefined) recordFiles = [recordFiles]; + files.push(...recordFiles); + + // set score for the word in each file + recordFiles.forEach((file) => { + if (!scoreMap.has(file)) scoreMap.set(file, {}); + scoreMap.get(file)[word] = record.score; + }); + }); + + // create the mapping + files.forEach((file) => { + if (!fileMap.has(file)) fileMap.set(file, [word]); + else if (fileMap.get(file).indexOf(word) === -1) fileMap.get(file).push(word); + }); + }); + + // now check if the files don't contain excluded terms + const results = []; + for (const [file, wordList] of fileMap) { + // check if all requirements are matched + + // as search terms with length < 3 are discarded + const filteredTermCount = [...searchTerms].filter( + (term) => term.length > 2 + ).length; + if ( + wordList.length !== searchTerms.size && + wordList.length !== filteredTermCount + ) + continue; + + // ensure that none of the excluded terms is in the search result + if ( + [...excludedTerms].some( + (term) => + terms[term] === file || + titleTerms[term] === file || + (terms[term] || []).includes(file) || + (titleTerms[term] || []).includes(file) + ) + ) + break; + + // select one (max) score for the file. + const score = Math.max(...wordList.map((w) => scoreMap.get(file)[w])); + // add result to the result list + results.push([ + docNames[file], + titles[file], + "", + null, + score, + filenames[file], + ]); + } + return results; + }, + + /** + * helper function to return a node containing the + * search summary for a given text. keywords is a list + * of stemmed words. + */ + makeSearchSummary: (htmlText, keywords, anchor) => { + const text = Search.htmlToText(htmlText, anchor); + if (text === "") return null; + + const textLower = text.toLowerCase(); + const actualStartPosition = [...keywords] + .map((k) => textLower.indexOf(k.toLowerCase())) + .filter((i) => i > -1) + .slice(-1)[0]; + const startWithContext = Math.max(actualStartPosition - 120, 0); + + const top = startWithContext === 0 ? "" : "..."; + const tail = startWithContext + 240 < text.length ? "..." : ""; + + let summary = document.createElement("p"); + summary.classList.add("context"); + summary.textContent = top + text.substr(startWithContext, 240).trim() + tail; + + return summary; + }, +}; + +_ready(Search.init); diff --git a/_static/sphinx_highlight.js b/_static/sphinx_highlight.js new file mode 100644 index 0000000..8a96c69 --- /dev/null +++ b/_static/sphinx_highlight.js @@ -0,0 +1,154 @@ +/* Highlighting utilities for Sphinx HTML documentation. */ +"use strict"; + +const SPHINX_HIGHLIGHT_ENABLED = true + +/** + * highlight a given string on a node by wrapping it in + * span elements with the given class name. + */ +const _highlight = (node, addItems, text, className) => { + if (node.nodeType === Node.TEXT_NODE) { + const val = node.nodeValue; + const parent = node.parentNode; + const pos = val.toLowerCase().indexOf(text); + if ( + pos >= 0 && + !parent.classList.contains(className) && + !parent.classList.contains("nohighlight") + ) { + let span; + + const closestNode = parent.closest("body, svg, foreignObject"); + const isInSVG = closestNode && closestNode.matches("svg"); + if (isInSVG) { + span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + } else { + span = document.createElement("span"); + span.classList.add(className); + } + + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + const rest = document.createTextNode(val.substr(pos + text.length)); + parent.insertBefore( + span, + parent.insertBefore( + rest, + node.nextSibling + ) + ); + node.nodeValue = val.substr(0, pos); + /* There may be more occurrences of search term in this node. So call this + * function recursively on the remaining fragment. + */ + _highlight(rest, addItems, text, className); + + if (isInSVG) { + const rect = document.createElementNS( + "http://www.w3.org/2000/svg", + "rect" + ); + const bbox = parent.getBBox(); + rect.x.baseVal.value = bbox.x; + rect.y.baseVal.value = bbox.y; + rect.width.baseVal.value = bbox.width; + rect.height.baseVal.value = bbox.height; + rect.setAttribute("class", className); + addItems.push({ parent: parent, target: rect }); + } + } + } else if (node.matches && !node.matches("button, select, textarea")) { + node.childNodes.forEach((el) => _highlight(el, addItems, text, className)); + } +}; +const _highlightText = (thisNode, text, className) => { + let addItems = []; + _highlight(thisNode, addItems, text, className); + addItems.forEach((obj) => + obj.parent.insertAdjacentElement("beforebegin", obj.target) + ); +}; + +/** + * Small JavaScript module for the documentation. + */ +const SphinxHighlight = { + + /** + * highlight the search words provided in localstorage in the text + */ + highlightSearchWords: () => { + if (!SPHINX_HIGHLIGHT_ENABLED) return; // bail if no highlight + + // get and clear terms from localstorage + const url = new URL(window.location); + const highlight = + localStorage.getItem("sphinx_highlight_terms") + || url.searchParams.get("highlight") + || ""; + localStorage.removeItem("sphinx_highlight_terms") + url.searchParams.delete("highlight"); + window.history.replaceState({}, "", url); + + // get individual terms from highlight string + const terms = highlight.toLowerCase().split(/\s+/).filter(x => x); + if (terms.length === 0) return; // nothing to do + + // There should never be more than one element matching "div.body" + const divBody = document.querySelectorAll("div.body"); + const body = divBody.length ? divBody[0] : document.querySelector("body"); + window.setTimeout(() => { + terms.forEach((term) => _highlightText(body, term, "highlighted")); + }, 10); + + const searchBox = document.getElementById("searchbox"); + if (searchBox === null) return; + searchBox.appendChild( + document + .createRange() + .createContextualFragment( + '" + ) + ); + }, + + /** + * helper function to hide the search marks again + */ + hideSearchWords: () => { + document + .querySelectorAll("#searchbox .highlight-link") + .forEach((el) => el.remove()); + document + .querySelectorAll("span.highlighted") + .forEach((el) => el.classList.remove("highlighted")); + localStorage.removeItem("sphinx_highlight_terms") + }, + + initEscapeListener: () => { + // only install a listener if it is really needed + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) return; + + document.addEventListener("keydown", (event) => { + // bail for input elements + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + // bail with special keys + if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) return; + if (DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS && (event.key === "Escape")) { + SphinxHighlight.hideSearchWords(); + event.preventDefault(); + } + }); + }, +}; + +_ready(() => { + /* Do not call highlightSearchWords() when we are on the search page. + * It will highlight words from the *previous* search query. + */ + if (typeof Search === "undefined") SphinxHighlight.highlightSearchWords(); + SphinxHighlight.initEscapeListener(); +}); diff --git a/autoapi/index.html b/autoapi/index.html new file mode 100644 index 0000000..566ea3e --- /dev/null +++ b/autoapi/index.html @@ -0,0 +1,219 @@ + + + + + + + + + + moleculib :: API Reference + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

API Reference

+

This page contains auto-generated API reference documentation [1].

+ + +
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/abstract/dataset/index.html b/autoapi/moleculib/abstract/dataset/index.html new file mode 100644 index 0000000..df6e3d3 --- /dev/null +++ b/autoapi/moleculib/abstract/dataset/index.html @@ -0,0 +1,167 @@ + + + + + + + + + + moleculib :: moleculib.abstract.dataset + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.abstract.dataset

+
+

Classes

+ + + + + + + + + +

Dataset

PreProcessedDataset

+
+
+

Module Contents

+
+
+class moleculib.abstract.dataset.Dataset(transform: List[Callable] = None)
+
+ +
+
+class moleculib.abstract.dataset.PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False)
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/abstract/index.html b/autoapi/moleculib/abstract/index.html new file mode 100644 index 0000000..db85b6a --- /dev/null +++ b/autoapi/moleculib/abstract/index.html @@ -0,0 +1,151 @@ + + + + + + + + + + moleculib :: moleculib.abstract + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.abstract

+
+

Submodules

+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/abstract/metrics/index.html b/autoapi/moleculib/abstract/metrics/index.html new file mode 100644 index 0000000..3973f1b --- /dev/null +++ b/autoapi/moleculib/abstract/metrics/index.html @@ -0,0 +1,159 @@ + + + + + + + + + + moleculib :: moleculib.abstract.metrics + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.abstract.metrics

+
+

Classes

+ + + + + + +

MetricsPipe

+
+
+

Module Contents

+
+
+class moleculib.abstract.metrics.MetricsPipe(metrics_list: List[Callable])
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/abstract/transform/index.html b/autoapi/moleculib/abstract/transform/index.html new file mode 100644 index 0000000..30ef563 --- /dev/null +++ b/autoapi/moleculib/abstract/transform/index.html @@ -0,0 +1,141 @@ + + + + + + + + + + moleculib :: moleculib.abstract.transform + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.abstract.transform

+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/assembly/dataset/index.html b/autoapi/moleculib/assembly/dataset/index.html new file mode 100644 index 0000000..f24d6b9 --- /dev/null +++ b/autoapi/moleculib/assembly/dataset/index.html @@ -0,0 +1,168 @@ + + + + + + + + + + moleculib :: moleculib.assembly.dataset + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.assembly.dataset

+
+

Classes

+ + + + + + + + + +

PreProcessedDataset

ChromaDataset

+
+
+

Module Contents

+
+
+class moleculib.assembly.dataset.PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False)
+
+ +
+
+class moleculib.assembly.dataset.ChromaDataset(base_path, transform: List[Callable] = None, shuffle=True, reduced=False)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/assembly/datum/index.html b/autoapi/moleculib/assembly/datum/index.html new file mode 100644 index 0000000..4072c85 --- /dev/null +++ b/autoapi/moleculib/assembly/datum/index.html @@ -0,0 +1,318 @@ + + + + + + + + + + moleculib :: moleculib.assembly.datum + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.assembly.datum

+
+

Classes

+ + + + + + + + + + + + +

MoleculeDatum

ProteinDatum

Incorporates protein data to MolecularDatum

AssemblyDatum

+
+
+

Module Contents

+
+
+class moleculib.assembly.datum.MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs)
+
+
+empty()
+
+ +
+
+to_atom_array()
+
+ +
+
+to_sdf_str()
+
+ +
+
+plot(view, viewer=None, color=None)
+
+ +
+ +
+
+class moleculib.assembly.datum.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+class moleculib.assembly.datum.AssemblyDatum(idcode: str = None, protein_data: List[moleculib.protein.datum.ProteinDatum] = None, molecule_data: List[moleculib.molecule.datum.MoleculeDatum] = None)
+

Bases: simple_pytree.Pytree

+
+
+from_datalist()
+
+ +
+
+filter_proteins(keep=None, drop=None)
+

indices to keep or drop

+
+ +
+
+plot(view, viewer=None, protein_style=dict(), molecule_style=dict())
+
+ +
+
+classmethod from_filepath(filepath, idcode=None)
+
+ +
+
+classmethod fetch_pdb_id(idcode, save_path=None)
+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/assembly/index.html b/autoapi/moleculib/assembly/index.html new file mode 100644 index 0000000..d4654a2 --- /dev/null +++ b/autoapi/moleculib/assembly/index.html @@ -0,0 +1,152 @@ + + + + + + + + + + moleculib :: moleculib.assembly + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.assembly

+
+

Submodules

+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/assembly/metrics/index.html b/autoapi/moleculib/assembly/metrics/index.html new file mode 100644 index 0000000..43c4468 --- /dev/null +++ b/autoapi/moleculib/assembly/metrics/index.html @@ -0,0 +1,245 @@ + + + + + + + + + + moleculib :: moleculib.assembly.metrics + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.assembly.metrics

+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + +

MetricsPipe

DescribeChemistry

Augments ProteinDatum with bonds_list and angles_list a list of atomic indexes connected by bonds and angles

ProteinMetric

AssemblyDatum

AssemblyMetric

ApplyMetricsToProtein

+
+
+

Module Contents

+
+
+class moleculib.assembly.metrics.MetricsPipe(metrics_list: List[Callable])
+
+ +
+
+class moleculib.assembly.metrics.DescribeChemistry
+

Bases: ProteinTransform

+

Augments ProteinDatum with bonds_list and angles_list a list of atomic indexes connected by bonds and angles +that should have invariant behavior according to chemistry +Note that indexing is performed at atom level, that is, as residue_dim atom_dim -> (residue_dim atom_dim)

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.assembly.metrics.ProteinMetric
+
+ +
+
+class moleculib.assembly.metrics.AssemblyDatum(idcode: str = None, protein_data: List[moleculib.protein.datum.ProteinDatum] = None, molecule_data: List[moleculib.molecule.datum.MoleculeDatum] = None)
+

Bases: simple_pytree.Pytree

+
+
+from_datalist()
+
+ +
+
+filter_proteins(keep=None, drop=None)
+

indices to keep or drop

+
+ +
+
+plot(view, viewer=None, protein_style=dict(), molecule_style=dict())
+
+ +
+
+classmethod from_filepath(filepath, idcode=None)
+
+ +
+
+classmethod fetch_pdb_id(idcode, save_path=None)
+
+ +
+ +
+
+class moleculib.assembly.metrics.AssemblyMetric
+
+
+abstract transform(datum: moleculib.assembly.datum.AssemblyDatum) moleculib.assembly.datum.AssemblyDatum
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.assembly.metrics.ApplyMetricsToProtein(protein_metrics: List[moleculib.protein.metrics.ProteinMetric])
+

Bases: AssemblyMetric

+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/assembly/transform/index.html b/autoapi/moleculib/assembly/transform/index.html new file mode 100644 index 0000000..b2d512b --- /dev/null +++ b/autoapi/moleculib/assembly/transform/index.html @@ -0,0 +1,407 @@ + + + + + + + + + + moleculib :: moleculib.assembly.transform + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.assembly.transform

+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

AssemblyDatum

ProteinDatum

Incorporates protein data to MolecularDatum

ProteinTransform

Abstract class for transformation of ProteinDatum datapoints

AssemblyTransform

Abstract class for transformation of ProteinDatum datapoints

ApplyToProteins

Abstract class for transformation of ProteinDatum datapoints

ComplexPad

Abstract class for transformation of ProteinDatum datapoints

FilterProteinChains

Abstract class for transformation of ProteinDatum datapoints

StackProteins

Abstract class for transformation of ProteinDatum datapoints

UnstackProteins

Abstract class for transformation of ProteinDatum datapoints

+
+
+

Module Contents

+
+
+class moleculib.assembly.transform.AssemblyDatum(idcode: str = None, protein_data: List[moleculib.protein.datum.ProteinDatum] = None, molecule_data: List[moleculib.molecule.datum.MoleculeDatum] = None)
+

Bases: simple_pytree.Pytree

+
+
+from_datalist()
+
+ +
+
+filter_proteins(keep=None, drop=None)
+

indices to keep or drop

+
+ +
+
+plot(view, viewer=None, protein_style=dict(), molecule_style=dict())
+
+ +
+
+classmethod from_filepath(filepath, idcode=None)
+
+ +
+
+classmethod fetch_pdb_id(idcode, save_path=None)
+
+ +
+ +
+
+class moleculib.assembly.transform.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+class moleculib.assembly.transform.ProteinTransform
+

Abstract class for transformation of ProteinDatum datapoints

+
+
+abstract transform(datum: moleculib.protein.datum.ProteinDatum) moleculib.protein.datum.ProteinDatum
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.assembly.transform.AssemblyTransform
+

Abstract class for transformation of ProteinDatum datapoints

+
+
+abstract transform(datum: moleculib.assembly.datum.AssemblyDatum) moleculib.assembly.datum.AssemblyDatum
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.assembly.transform.ApplyToProteins(protein_transform: List[moleculib.protein.transform.ProteinTransform])
+

Bases: AssemblyTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.assembly.transform.ComplexPad(num_chains)
+

Bases: AssemblyTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.assembly.transform.FilterProteinChains(num_chains)
+

Bases: AssemblyTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.assembly.transform.StackProteins
+

Bases: AssemblyTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.assembly.transform.UnstackProteins
+

Bases: AssemblyTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/graphics/py3Dmol/index.html b/autoapi/moleculib/graphics/py3Dmol/index.html new file mode 100644 index 0000000..42aba9d --- /dev/null +++ b/autoapi/moleculib/graphics/py3Dmol/index.html @@ -0,0 +1,400 @@ + + + + + + + + + + moleculib :: moleculib.graphics.py3Dmol + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.graphics.py3Dmol

+
+

Attributes

+ + + + + + +

DEFAULT_COLORS

+
+
+

Classes

+ + + + + + + + + + + + + + + + + + +

ProteinDatum

Incorporates protein data to MolecularDatum

MoleculeDatum

NucleicDatum

Incorporates Biotite nucleic sequence data

PlotPy3DmolSamples

PlotDensity

+
+
+

Functions

+ + + + + + + + + + + + + + + +

plot_py3dmol(data[, color])

plot_py3dmol_grid(grid[, window_size])

traj_to_pdb(traj[, num_steps, head, tail])

plot_py3dmol_traj(traj, view, viewer[, num_steps])

+
+
+

Module Contents

+
+
+class moleculib.graphics.py3Dmol.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+class moleculib.graphics.py3Dmol.MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs)
+
+
+empty()
+
+ +
+
+to_atom_array()
+
+ +
+
+to_sdf_str()
+
+ +
+
+plot(view, viewer=None, color=None)
+
+ +
+ +
+
+class moleculib.graphics.py3Dmol.NucleicDatum(idcode: str, resolution: float, sequence: biotite.sequence.NucleotideSequence, nuc_token: numpy.ndarray, nuc_index: numpy.ndarray, nuc_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates Biotite nucleic sequence data +# and reshapes atom arrays to residue-based representation

+
+
+classmethod empty_nuc()
+
+ +
+
+classmethod from_filepath(filepath)
+
+ +
+
+classmethod fetch_pdb_id(id, save_path=None)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum')
+
+ +
+ +
+
+moleculib.graphics.py3Dmol.DEFAULT_COLORS = ['cyan', 'orange', 'lime']
+
+ +
+
+moleculib.graphics.py3Dmol.plot_py3dmol(data, color: str = 'DEFAULT', **kwargs)
+
+ +
+
+class moleculib.graphics.py3Dmol.PlotPy3DmolSamples(plot_func: Callable, num_samples=None, window_size=(250, 250), pairs=False)
+
+ +
+
+class moleculib.graphics.py3Dmol.PlotDensity(num_samples=None, window_size=(250, 250), pairs=False)
+
+
+plot_density(grid, density, atom_coord)
+
+ +
+ +
+
+moleculib.graphics.py3Dmol.plot_py3dmol_grid(grid, window_size=(250, 250), **kwargs)
+
+ +
+
+moleculib.graphics.py3Dmol.traj_to_pdb(traj, num_steps=100, head=0, tail=5)
+
+ +
+
+moleculib.graphics.py3Dmol.plot_py3dmol_traj(traj, view, viewer, num_steps=100)
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/index.html b/autoapi/moleculib/index.html new file mode 100644 index 0000000..23ae1a6 --- /dev/null +++ b/autoapi/moleculib/index.html @@ -0,0 +1,155 @@ + + + + + + + + + + moleculib :: moleculib + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib

+
+

Subpackages

+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/alphabet/index.html b/autoapi/moleculib/molecule/alphabet/index.html new file mode 100644 index 0000000..e991d76 --- /dev/null +++ b/autoapi/moleculib/molecule/alphabet/index.html @@ -0,0 +1,167 @@ + + + + + + + + + + moleculib :: moleculib.molecule.alphabet + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule.alphabet

+
+

Attributes

+ + + + + + + + + +

elements

PERIODIC_TABLE

+
+
+

Module Contents

+
+
+moleculib.molecule.alphabet.elements
+
+ +
+
+moleculib.molecule.alphabet.PERIODIC_TABLE = ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl',...
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/batch/index.html b/autoapi/moleculib/molecule/batch/index.html new file mode 100644 index 0000000..2e64a91 --- /dev/null +++ b/autoapi/moleculib/molecule/batch/index.html @@ -0,0 +1,272 @@ + + + + + + + + + + moleculib :: moleculib.molecule.batch + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule.batch

+
+

Classes

+ + + + + + + + + + + + + + + +

MoleculeDatum

MoleculeCollator

Abstract class for collation of multiple ProteinDatum instances

MoleculePadBatch

Abstract class for collation of multiple ProteinDatum instances

MoleculeGeometricBatch

Abstract class for collation of multiple ProteinDatum instances

+
+
+

Module Contents

+
+
+class moleculib.molecule.batch.MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs)
+
+
+empty()
+
+ +
+
+to_atom_array()
+
+ +
+
+to_sdf_str()
+
+ +
+
+plot(view, viewer=None, color=None)
+
+ +
+ +
+
+class moleculib.molecule.batch.MoleculeCollator
+

Abstract class for collation of multiple ProteinDatum instances +into a single batch instance

+
+
+classmethod collate(data_list: List[moleculib.molecule.datum.MoleculeDatum])
+
+
Abstractmethod:
+

+
+

Takes a list of ProteinDatum instances and produces +a ProteinCollate instance with all the instances collated +according to the appropriate collate function

+
+ +
+
+abstract revert() List[moleculib.molecule.datum.MoleculeDatum]
+

Reverts a batch to its original list form

+
+ +
+
+to(device: str) MoleculeCollator
+
+ +
+
+torch() MoleculeCollator
+
+ +
+
+to_dict(attrs=None)
+
+ +
+ +
+
+class moleculib.molecule.batch.MoleculePadBatch(**kwargs)
+

Bases: MoleculeCollator

+

Abstract class for collation of multiple ProteinDatum instances +into a single batch instance

+
+
+revert(constructor=MoleculeDatum)
+

Reverts a batch to its original list form

+
+ +
+
+classmethod collate(data_list)
+

Takes a list of ProteinDatum instances and produces +a ProteinCollate instance with all the instances collated +according to the appropriate collate function

+
+ +
+ +
+
+class moleculib.molecule.batch.MoleculeGeometricBatch(batch_index, num_nodes, **kwargs)
+

Bases: MoleculeCollator

+

Abstract class for collation of multiple ProteinDatum instances +into a single batch instance

+
+
+revert(constructor=MoleculeDatum)
+

Reverts a batch to its original list form

+
+ +
+
+classmethod collate(data_list)
+

Takes a list of ProteinDatum instances and produces +a ProteinCollate instance with all the instances collated +according to the appropriate collate function

+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/dataset/index.html b/autoapi/moleculib/molecule/dataset/index.html new file mode 100644 index 0000000..0996b70 --- /dev/null +++ b/autoapi/moleculib/molecule/dataset/index.html @@ -0,0 +1,591 @@ + + + + + + + + + + moleculib :: moleculib.molecule.dataset + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule.dataset

+
+

Attributes

+ + + + + + +

elements

+
+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

MoleculeTransform

Abstract class for transformation of MoleculeDatum datapoints

MoleculePad

Abstract class for transformation of MoleculeDatum datapoints

DescribeGraph

Abstract class for transformation of MoleculeDatum datapoints

Permuter

Permute the atoms of a molecule and the bonds

Centralize

Abstract class for transformation of MoleculeDatum datapoints

AtomFeatures

Compute atomistic features from the atom tokens

StandardizeProperties

Abstract class for transformation of MoleculeDatum datapoints

SortAtoms

Abstract class for transformation of MoleculeDatum datapoints

PairPad

Abstract class for transformation of MoleculeDatum datapoints

CrossdockDatum

PDBBindDatum

PDBMoleculeDatum

QM9Datum

RSDatum

ReactDatum

MISATODatum

DensityDatum

PDBMoleculeDataset

Holds MoleculeDatum dataset with specified PDB IDs

QM9Dataset

RSDataset

PreProcessedDataset

+
+
+

Functions

+ + + + + + + + + + + + +

pids_file_to_list(pids_path)

extract_rdkit_mol_properties(mol)

create_pdb(trajectory_coordinates, atoms_type, ...)

+
+
+

Module Contents

+
+
+class moleculib.molecule.dataset.MoleculeTransform
+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+abstract transform(datum: moleculib.molecule.datum.MoleculeDatum) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.dataset.MoleculePad(pad_size: int)
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.MoleculeDatum) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.dataset.DescribeGraph
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.QM9Datum) moleculib.molecule.datum.QM9Datum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.dataset.Permuter(seed: int = 0)
+

Bases: MoleculeTransform

+

Permute the atoms of a molecule and the bonds

+
+
+transform(datum: moleculib.molecule.datum.MoleculeDatum) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.dataset.Centralize
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.dataset.AtomFeatures
+

Bases: MoleculeTransform

+

Compute atomistic features from the atom tokens

+
+
+shift(x, f)
+
+ +
+
+transform(datum: moleculib.molecule.datum.QM9Datum) moleculib.molecule.datum.QM9Datum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.dataset.StandardizeProperties
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.QM9Datum) moleculib.molecule.datum.QM9Datum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.dataset.SortAtoms
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.MoleculeDatum) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.dataset.PairPad
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.MoleculeDatum, attrs: dict) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+moleculib.molecule.dataset.pids_file_to_list(pids_path)
+
+ +
+
+moleculib.molecule.dataset.extract_rdkit_mol_properties(mol)
+
+ +
+
+moleculib.molecule.dataset.elements
+
+ +
+
+class moleculib.molecule.dataset.CrossdockDatum(*args, **kwargs)
+

Bases: MoleculeDatum

+
+
+AA_NAME_SYM
+
+ +
+
+AA_NAME_NUMBER
+
+ +
+
+AA_NUMBER_NAME
+
+ +
+
+coord_center()
+
+ +
+
+protein_pdb_str()
+
+ +
+ +
+
+class moleculib.molecule.dataset.PDBBindDatum(*args, **kwargs)
+

Bases: MoleculeDatum

+
+
+coord_center()
+
+ +
+
+protein_pdb_str()
+
+ +
+
+pocket_pdb_str()
+
+ +
+ +
+
+class moleculib.molecule.dataset.PDBMoleculeDatum(idcode: str, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_name: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray)
+
+
+classmethod empty_molecule()
+
+ +
+
+classmethod from_filepath(filepath, ligand=None)
+
+ +
+
+classmethod fetch_pdb_id(id, save_path=None, ligand=None)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+
+ +
+
+to_atom_array()
+
+ +
+
+to_sdf_str()
+
+ +
+ +
+
+class moleculib.molecule.dataset.QM9Datum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, stds: numpy.ndarray, **kwargs)
+

Bases: MoleculeDatum

+
+ +
+
+class moleculib.molecule.dataset.RSDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, adjacency: numpy.ndarray, laplacian: numpy.ndarray, **kwargs)
+

Bases: MoleculeDatum

+
+ +
+
+class moleculib.molecule.dataset.ReactDatum(token, reacts, prods, reacts_mask, prods_mask, mask, protein_token, protein_mask)
+

Bases: MoleculeDatum

+
+
+centralize()
+
+ +
+ +
+
+class moleculib.molecule.dataset.MISATODatum(*args, **kwargs)
+

Bases: MoleculeDatum

+
+
+replace(**kwargs)
+
+ +
+
+at(i)
+
+ +
+
+neighborhood_idxs(r)
+
+ +
+
+keep_neighborhood(r)
+
+ +
+
+dehydrate()
+
+ +
+
+pdb_str(frame)
+
+ +
+ +
+
+class moleculib.molecule.dataset.DensityDatum(*args, **kwargs)
+

Bases: MoleculeDatum

+
+ +
+
+moleculib.molecule.dataset.create_pdb(trajectory_coordinates, atoms_type, atoms_number, atoms_residue, molecules_begin_atom_index)
+
+ +
+
+class moleculib.molecule.dataset.PDBMoleculeDataset(base_path: str, transform: List[moleculib.molecule.transform.MoleculeTransform] = None, attrs: List[str] | str = 'all', metadata: pandas.DataFrame = None, max_resolution: float = None, min_atom_count: int = None, max_atom_count: int = None, frac: float = 1.0, preload: bool = False, preload_num_workers: int = 10)
+

Bases: torch.utils.data.Dataset

+

Holds MoleculeDatum dataset with specified PDB IDs

+
+

Arguments:

+
+
base_pathstr

directory to store all PDB files

+
+
pdb_idsList[str]

list of all Molecule IDs that should be in the dataset

+
+
formatstr

the file format for each PDB file, either “npz” or “pdb”

+
+
attrsUnion[str, List[str]]

a partial list of Molecule attributes that should be in each Molecule

+
+
+
+
+load_index(idx)
+
+ +
+
+classmethod build(pdb_ids: List[str] = None, save: bool = True, save_path: str = None, max_workers: int = 1, **kwargs)
+

Builds dataset from scratch given specified pdb_ids, prepares +data and metadata for later use.

+
+ +
+
+ +
+
+class moleculib.molecule.dataset.QM9Dataset(base_path='QM9', full_data=True, num_train=None, num_val=None, num_test=None, molecule_transform: List = [], permute=False, centralize=True, use_atom_features=True, standardize=True, shuffle=False, _split='train', _data=None, _max_atoms=29, _padding=True, to_split=True)
+

Bases: torch.utils.data.Dataset

+
+ +
+
+class moleculib.molecule.dataset.RSDataset(base_path='ChIRo', molecule_transform: List = [], permute=False, use_atom_features=True, max_num_atoms=50, _split='train')
+

Bases: torch.utils.data.Dataset

+
+ +
+
+class moleculib.molecule.dataset.PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False)
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/datum/index.html b/autoapi/moleculib/molecule/datum/index.html new file mode 100644 index 0000000..33a6c3f --- /dev/null +++ b/autoapi/moleculib/molecule/datum/index.html @@ -0,0 +1,409 @@ + + + + + + + + + + moleculib :: moleculib.molecule.datum + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule.datum

+
+

Attributes

+ + + + + + + + + +

elements

PERIODIC_TABLE

+
+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

MoleculeDatum

QM9Datum

RSDatum

PDBMoleculeDatum

CrossdockDatum

PDBBindDatum

DensityDatum

MISATODatum

ReactDatum

+
+
+

Functions

+ + + + + + + + + + + + +

register_pytree(Datum)

pdb_to_atom_array(mmtf_file)

create_pdb(trajectory_coordinates, atoms_type, ...)

+
+
+

Module Contents

+
+
+moleculib.molecule.datum.elements
+
+ +
+
+moleculib.molecule.datum.PERIODIC_TABLE = ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl',...
+
+ +
+
+moleculib.molecule.datum.register_pytree(Datum)
+
+ +
+
+moleculib.molecule.datum.pdb_to_atom_array(mmtf_file)
+
+ +
+
+moleculib.molecule.datum.create_pdb(trajectory_coordinates, atoms_type, atoms_number, atoms_residue, molecules_begin_atom_index)
+
+ +
+
+class moleculib.molecule.datum.MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs)
+
+
+empty()
+
+ +
+
+to_atom_array()
+
+ +
+
+to_sdf_str()
+
+ +
+
+plot(view, viewer=None, color=None)
+
+ +
+ +
+
+class moleculib.molecule.datum.QM9Datum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, stds: numpy.ndarray, **kwargs)
+

Bases: MoleculeDatum

+
+ +
+
+class moleculib.molecule.datum.RSDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, adjacency: numpy.ndarray, laplacian: numpy.ndarray, **kwargs)
+

Bases: MoleculeDatum

+
+ +
+
+class moleculib.molecule.datum.PDBMoleculeDatum(idcode: str, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_name: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray)
+
+
+classmethod empty_molecule()
+
+ +
+
+classmethod from_filepath(filepath, ligand=None)
+
+ +
+
+classmethod fetch_pdb_id(id, save_path=None, ligand=None)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+
+ +
+
+to_atom_array()
+
+ +
+
+to_sdf_str()
+
+ +
+ +
+
+class moleculib.molecule.datum.CrossdockDatum(*args, **kwargs)
+

Bases: MoleculeDatum

+
+
+AA_NAME_SYM
+
+ +
+
+AA_NAME_NUMBER
+
+ +
+
+AA_NUMBER_NAME
+
+ +
+
+coord_center()
+
+ +
+
+protein_pdb_str()
+
+ +
+ +
+
+class moleculib.molecule.datum.PDBBindDatum(*args, **kwargs)
+

Bases: MoleculeDatum

+
+
+coord_center()
+
+ +
+
+protein_pdb_str()
+
+ +
+
+pocket_pdb_str()
+
+ +
+ +
+
+class moleculib.molecule.datum.DensityDatum(*args, **kwargs)
+

Bases: MoleculeDatum

+
+ +
+
+class moleculib.molecule.datum.MISATODatum(*args, **kwargs)
+

Bases: MoleculeDatum

+
+
+replace(**kwargs)
+
+ +
+
+at(i)
+
+ +
+
+neighborhood_idxs(r)
+
+ +
+
+keep_neighborhood(r)
+
+ +
+
+dehydrate()
+
+ +
+
+pdb_str(frame)
+
+ +
+ +
+
+class moleculib.molecule.datum.ReactDatum(token, reacts, prods, reacts_mask, prods_mask, mask, protein_token, protein_mask)
+

Bases: MoleculeDatum

+
+
+centralize()
+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/h5_to_pdb/index.html b/autoapi/moleculib/molecule/h5_to_pdb/index.html new file mode 100644 index 0000000..2c88399 --- /dev/null +++ b/autoapi/moleculib/molecule/h5_to_pdb/index.html @@ -0,0 +1,285 @@ + + + + + + + + + + moleculib :: moleculib.molecule.h5_to_pdb + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule.h5_to_pdb

+

MISATO, a database for protein-ligand interactions +Copyright (C) 2023

+
+
+

This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2.1 of the License, or (at your option) any later version.

+

This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details.

+

You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

+
+

Attributes

+ + + + + + + + + +

atomic_numbers_Map

parser

+
+
+

Functions

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

get_maps([mapdir])

get_entries(struct, f, frame)

get_entries_QM(struct, f)

get_atom_name(i, atoms_number, residue_atom_index, ...)

update_residue_indices(residue_number, i, type_string, ...)

If the atom sequence has O-N icnrease the residueNumber

insert_TERS(i, molecules_begin_atom_index, ...)

We have to insert TERs for the endings of the molecule

create_pdb(trajectory_coordinates, atoms_type, ...)

create_pdb_lines_MD(trajectory_coordinates, ...)

We go through each atom line and bring the inputs in the pdb format

create_pdb_lines_QM(trajectory_coordinates, ...)

We go through each atom line and bring the inputs in the pdb format

write_pdb(struct, specification, lines)

main(args)

+
+
+

Module Contents

+
+
+moleculib.molecule.h5_to_pdb.atomic_numbers_Map
+
+ +
+
+moleculib.molecule.h5_to_pdb.get_maps(mapdir='/u/ilanm/moleculib/moleculib/molecule/Maps/')
+
+ +
+
+moleculib.molecule.h5_to_pdb.get_entries(struct, f, frame)
+
+ +
+
+moleculib.molecule.h5_to_pdb.get_entries_QM(struct, f)
+
+ +
+
+moleculib.molecule.h5_to_pdb.get_atom_name(i, atoms_number, residue_atom_index, residue_name, type_string, nameMap)
+
+ +
+
+moleculib.molecule.h5_to_pdb.update_residue_indices(residue_number, i, type_string, atoms_type, atoms_residue, residue_name, residue_atom_index, residue_Map, typeMap)
+

If the atom sequence has O-N icnrease the residueNumber

+
+ +
+
+moleculib.molecule.h5_to_pdb.insert_TERS(i, molecules_begin_atom_index, residue_number, residue_atom_index, lines)
+

We have to insert TERs for the endings of the molecule

+
+ +
+
+moleculib.molecule.h5_to_pdb.create_pdb(trajectory_coordinates, atoms_type, atoms_number, atoms_residue, molecules_begin_atom_index)
+
+ +
+
+moleculib.molecule.h5_to_pdb.create_pdb_lines_MD(trajectory_coordinates, atoms_type, atoms_number, atoms_residue, molecules_begin_atom_index, typeMap, residue_Map, nameMap)
+

We go through each atom line and bring the inputs in the pdb format

+
+ +
+
+moleculib.molecule.h5_to_pdb.create_pdb_lines_QM(trajectory_coordinates, atoms_number, nameMap)
+

We go through each atom line and bring the inputs in the pdb format

+
+ +
+
+moleculib.molecule.h5_to_pdb.write_pdb(struct, specification, lines)
+
+ +
+
+moleculib.molecule.h5_to_pdb.main(args)
+
+ +
+
+moleculib.molecule.h5_to_pdb.parser
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/index.html b/autoapi/moleculib/molecule/index.html new file mode 100644 index 0000000..56a933d --- /dev/null +++ b/autoapi/moleculib/molecule/index.html @@ -0,0 +1,163 @@ + + + + + + + + + + moleculib :: moleculib.molecule + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule

+
+

Subpackages

+ +
+
+

Submodules

+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/tests/index.html b/autoapi/moleculib/molecule/tests/index.html new file mode 100644 index 0000000..54d50ae --- /dev/null +++ b/autoapi/moleculib/molecule/tests/index.html @@ -0,0 +1,149 @@ + + + + + + + + + + moleculib :: moleculib.molecule.tests + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule.tests

+
+

Submodules

+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/tests/loader_test/index.html b/autoapi/moleculib/molecule/tests/loader_test/index.html new file mode 100644 index 0000000..ca4afff --- /dev/null +++ b/autoapi/moleculib/molecule/tests/loader_test/index.html @@ -0,0 +1,175 @@ + + + + + + + + + + moleculib :: moleculib.molecule.tests.loader_test + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule.tests.loader_test

+
+

Functions

+ + + + + + + + + + + + +

test_dataloader()

test_dataload_from_filesystem()

check_dataloader_batch_size(pids, bs)

+
+
+

Module Contents

+
+
+moleculib.molecule.tests.loader_test.test_dataloader()
+
+ +
+
+moleculib.molecule.tests.loader_test.test_dataload_from_filesystem()
+
+ +
+
+moleculib.molecule.tests.loader_test.check_dataloader_batch_size(pids, bs)
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/transform/index.html b/autoapi/moleculib/molecule/transform/index.html new file mode 100644 index 0000000..8217b9f --- /dev/null +++ b/autoapi/moleculib/molecule/transform/index.html @@ -0,0 +1,426 @@ + + + + + + + + + + moleculib :: moleculib.molecule.transform + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule.transform

+
+

Attributes

+ + + + + + +

elements

+
+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

MoleculeDatum

QM9Datum

MoleculeTransform

Abstract class for transformation of MoleculeDatum datapoints

MoleculeCrop

Abstract class for transformation of MoleculeDatum datapoints

MoleculePad

Abstract class for transformation of MoleculeDatum datapoints

PairPad

Abstract class for transformation of MoleculeDatum datapoints

Centralize

Abstract class for transformation of MoleculeDatum datapoints

SingleBonds

Abstract class for transformation of MoleculeDatum datapoints

CastToBFloat

Abstract class for transformation of MoleculeDatum datapoints

DescribeGraph

Abstract class for transformation of MoleculeDatum datapoints

Permuter

Permute the atoms of a molecule and the bonds

SortAtoms

Abstract class for transformation of MoleculeDatum datapoints

AtomFeatures

Compute atomistic features from the atom tokens

StandardizeProperties

Abstract class for transformation of MoleculeDatum datapoints

+
+
+

Functions

+ + + + + + +

pad_array(array, total_size[, value])

+
+
+

Module Contents

+
+
+class moleculib.molecule.transform.MoleculeDatum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, **kwargs)
+
+
+empty()
+
+ +
+
+to_atom_array()
+
+ +
+
+to_sdf_str()
+
+ +
+
+plot(view, viewer=None, color=None)
+
+ +
+ +
+
+class moleculib.molecule.transform.QM9Datum(atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, bonds: numpy.ndarray, properties: numpy.ndarray, stds: numpy.ndarray, **kwargs)
+

Bases: MoleculeDatum

+
+ +
+
+moleculib.molecule.transform.pad_array(array, total_size, value=0)
+
+ +
+
+moleculib.molecule.transform.elements
+
+ +
+
+class moleculib.molecule.transform.MoleculeTransform
+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+abstract transform(datum: moleculib.molecule.datum.MoleculeDatum) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.MoleculeCrop(crop_size: int)
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.MoleculeDatum, cut=None) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.MoleculePad(pad_size: int)
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.MoleculeDatum) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.PairPad
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.MoleculeDatum, attrs: dict) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.Centralize
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.SingleBonds
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.CastToBFloat
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.DescribeGraph
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.QM9Datum) moleculib.molecule.datum.QM9Datum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.Permuter(seed: int = 0)
+

Bases: MoleculeTransform

+

Permute the atoms of a molecule and the bonds

+
+
+transform(datum: moleculib.molecule.datum.MoleculeDatum) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.SortAtoms
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.MoleculeDatum) moleculib.molecule.datum.MoleculeDatum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.AtomFeatures
+

Bases: MoleculeTransform

+

Compute atomistic features from the atom tokens

+
+
+shift(x, f)
+
+ +
+
+transform(datum: moleculib.molecule.datum.QM9Datum) moleculib.molecule.datum.QM9Datum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+class moleculib.molecule.transform.StandardizeProperties
+

Bases: MoleculeTransform

+

Abstract class for transformation of MoleculeDatum datapoints

+
+
+transform(datum: moleculib.molecule.datum.QM9Datum) moleculib.molecule.datum.QM9Datum
+

Takes as input an individual data point, processes +the values in it and returns a new MoleculeDatum

+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/molecule/utils/index.html b/autoapi/moleculib/molecule/utils/index.html new file mode 100644 index 0000000..aa8b02e --- /dev/null +++ b/autoapi/moleculib/molecule/utils/index.html @@ -0,0 +1,262 @@ + + + + + + + + + + moleculib :: moleculib.molecule.utils + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.molecule.utils

+
+

Attributes

+ + + + + + + + + + + + + + + +

home_dir

config

ACCEPTED_FORMATS

ACCEPTED_TYPES

+
+
+

Functions

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

pdb_to_atom_array(mmtf_file)

pids_file_to_list(pids_path)

pad_array(array, total_size[, value])

plot_py3dmol_grid(grid[, window_size, spin])

plot_dock(grid[, window_size, spin])

inner_stack(pytrees)

inner_split(pytree)

register_pytree(Datum)

extract_rdkit_mol_properties(mol)

+
+
+

Module Contents

+
+
+moleculib.molecule.utils.home_dir
+
+ +
+
+moleculib.molecule.utils.config
+
+ +
+
+moleculib.molecule.utils.pdb_to_atom_array(mmtf_file)
+
+ +
+
+moleculib.molecule.utils.pids_file_to_list(pids_path)
+
+ +
+
+moleculib.molecule.utils.pad_array(array, total_size, value=0)
+
+ +
+
+moleculib.molecule.utils.plot_py3dmol_grid(grid, window_size=(250, 250), spin=False)
+
+ +
+
+moleculib.molecule.utils.plot_dock(grid, window_size=(400, 400), spin=False)
+
+ +
+
+moleculib.molecule.utils.inner_stack(pytrees)
+
+ +
+
+moleculib.molecule.utils.inner_split(pytree)
+
+ +
+
+moleculib.molecule.utils.ACCEPTED_FORMATS
+
+ +
+
+moleculib.molecule.utils.ACCEPTED_TYPES
+
+ +
+
+moleculib.molecule.utils.register_pytree(Datum)
+
+ +
+
+moleculib.molecule.utils.extract_rdkit_mol_properties(mol)
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/nucleic/alphabet/index.html b/autoapi/moleculib/nucleic/alphabet/index.html new file mode 100644 index 0000000..b0e2c28 --- /dev/null +++ b/autoapi/moleculib/nucleic/alphabet/index.html @@ -0,0 +1,334 @@ + + + + + + + + + + moleculib :: moleculib.nucleic.alphabet + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.nucleic.alphabet

+
+

Attributes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

UNK_TOKEN

MAX_RES_ATOMS

base_atoms_per_nuc

backbone_atoms_DNA

backbone_atoms_RNA

special_tokens

atoms_per_nuc

MAX_DNA_ATOMS

all_atoms

all_atoms

all_atoms_tokens

elements

all_atoms_elements

all_nucs

all_nucs

all_nucs_tokens

all_nucs_atom_mask

all_nucs_atom_tokens

atom_to_nucs_index

atom_to_nucs_mask

+
+
+

Functions

+ + + + + + + + + +

atom_index(→ int)

get_nucleotide_index(→ int)

+
+
+

Module Contents

+
+
+moleculib.nucleic.alphabet.UNK_TOKEN = 1
+
+ +
+
+moleculib.nucleic.alphabet.MAX_RES_ATOMS = 14
+
+ +
+
+moleculib.nucleic.alphabet.base_atoms_per_nuc
+
+ +
+
+moleculib.nucleic.alphabet.backbone_atoms_DNA = ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O3'", "O4'", "O5'"]
+
+ +
+
+moleculib.nucleic.alphabet.backbone_atoms_RNA = ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O2'", "O3'", "O4'", "O5'"]
+
+ +
+
+moleculib.nucleic.alphabet.special_tokens = ['PAD', 'UNK']
+
+ +
+
+moleculib.nucleic.alphabet.atoms_per_nuc
+
+ +
+
+moleculib.nucleic.alphabet.MAX_DNA_ATOMS
+
+ +
+
+moleculib.nucleic.alphabet.all_atoms
+
+ +
+
+moleculib.nucleic.alphabet.all_atoms
+
+ +
+
+moleculib.nucleic.alphabet.all_atoms_tokens
+
+ +
+
+moleculib.nucleic.alphabet.elements
+
+ +
+
+moleculib.nucleic.alphabet.all_atoms_elements
+
+ +
+
+moleculib.nucleic.alphabet.all_nucs
+
+ +
+
+moleculib.nucleic.alphabet.all_nucs
+
+ +
+
+moleculib.nucleic.alphabet.all_nucs_tokens
+
+ +
+
+moleculib.nucleic.alphabet.all_nucs_atom_mask
+
+ +
+
+moleculib.nucleic.alphabet.all_nucs_atom_tokens
+
+ +
+
+moleculib.nucleic.alphabet.atom_index(atom: str) int
+
+ +
+
+moleculib.nucleic.alphabet.get_nucleotide_index(nucleotide: str) int
+
+ +
+
+moleculib.nucleic.alphabet.atom_to_nucs_index
+
+ +
+
+moleculib.nucleic.alphabet.atom_to_nucs_mask
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/nucleic/batch/index.html b/autoapi/moleculib/nucleic/batch/index.html new file mode 100644 index 0000000..42e762d --- /dev/null +++ b/autoapi/moleculib/nucleic/batch/index.html @@ -0,0 +1,141 @@ + + + + + + + + + + moleculib :: moleculib.nucleic.batch + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.nucleic.batch

+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/nucleic/dataset/index.html b/autoapi/moleculib/nucleic/dataset/index.html new file mode 100644 index 0000000..cd16fa5 --- /dev/null +++ b/autoapi/moleculib/nucleic/dataset/index.html @@ -0,0 +1,168 @@ + + + + + + + + + + moleculib :: moleculib.nucleic.dataset + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.nucleic.dataset

+
+

Classes

+ + + + + + + + + +

PreProcessedDataset

RNADataset

+
+
+

Module Contents

+
+
+class moleculib.nucleic.dataset.PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False)
+
+ +
+
+class moleculib.nucleic.dataset.RNADataset(base_path, transform: List[Callable] = None, shuffle=True)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/nucleic/datum/index.html b/autoapi/moleculib/nucleic/datum/index.html new file mode 100644 index 0000000..83829b3 --- /dev/null +++ b/autoapi/moleculib/nucleic/datum/index.html @@ -0,0 +1,431 @@ + + + + + + + + + + moleculib :: moleculib.nucleic.datum + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.nucleic.datum

+
+

Attributes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

UNK_TOKEN

MAX_RES_ATOMS

base_atoms_per_nuc

backbone_atoms_DNA

backbone_atoms_RNA

special_tokens

atoms_per_nuc

MAX_DNA_ATOMS

all_atoms

all_atoms_tokens

elements

all_atoms_elements

all_nucs

all_nucs_tokens

all_nucs_atom_mask

all_nucs_atom_tokens

atom_to_nucs_index

atom_to_nucs_mask

home_dir

config

rna_res_names

dna_res_names

dna_res_tokens

rna_res_tokens

dna_datum

+
+
+

Classes

+ + + + + + +

NucleicDatum

Incorporates Biotite nucleic sequence data

+
+
+

Functions

+ + + + + + + + + + + + +

atom_index(→ int)

get_nucleotide_index(→ int)

pdb_to_atom_array(pdb_path[, RNA])

+
+
+

Module Contents

+
+
+moleculib.nucleic.datum.UNK_TOKEN = 1
+
+ +
+
+moleculib.nucleic.datum.MAX_RES_ATOMS = 14
+
+ +
+
+moleculib.nucleic.datum.base_atoms_per_nuc
+
+ +
+
+moleculib.nucleic.datum.backbone_atoms_DNA = ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O3'", "O4'", "O5'"]
+
+ +
+
+moleculib.nucleic.datum.backbone_atoms_RNA = ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O2'", "O3'", "O4'", "O5'"]
+
+ +
+
+moleculib.nucleic.datum.special_tokens = ['PAD', 'UNK']
+
+ +
+
+moleculib.nucleic.datum.atoms_per_nuc
+
+ +
+
+moleculib.nucleic.datum.MAX_DNA_ATOMS
+
+ +
+
+moleculib.nucleic.datum.all_atoms
+
+ +
+
+moleculib.nucleic.datum.all_atoms_tokens
+
+ +
+
+moleculib.nucleic.datum.elements
+
+ +
+
+moleculib.nucleic.datum.all_atoms_elements
+
+ +
+
+moleculib.nucleic.datum.all_nucs
+
+ +
+
+moleculib.nucleic.datum.all_nucs_tokens
+
+ +
+
+moleculib.nucleic.datum.all_nucs_atom_mask
+
+ +
+
+moleculib.nucleic.datum.all_nucs_atom_tokens
+
+ +
+
+moleculib.nucleic.datum.atom_index(atom: str) int
+
+ +
+
+moleculib.nucleic.datum.get_nucleotide_index(nucleotide: str) int
+
+ +
+
+moleculib.nucleic.datum.atom_to_nucs_index
+
+ +
+
+moleculib.nucleic.datum.atom_to_nucs_mask
+
+ +
+
+moleculib.nucleic.datum.home_dir
+
+ +
+
+moleculib.nucleic.datum.config
+
+ +
+
+moleculib.nucleic.datum.pdb_to_atom_array(pdb_path, RNA=True)
+
+ +
+
+class moleculib.nucleic.datum.NucleicDatum(idcode: str, resolution: float, sequence: biotite.sequence.NucleotideSequence, nuc_token: numpy.ndarray, nuc_index: numpy.ndarray, nuc_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates Biotite nucleic sequence data +# and reshapes atom arrays to residue-based representation

+
+
+classmethod empty_nuc()
+
+ +
+
+classmethod from_filepath(filepath)
+
+ +
+
+classmethod fetch_pdb_id(id, save_path=None)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum')
+
+ +
+ +
+
+moleculib.nucleic.datum.rna_res_names = ['A', 'U', 'RT', 'G', 'C', 'I']
+
+ +
+
+moleculib.nucleic.datum.dna_res_names = ['DA', 'DU', 'DT', 'DG', 'DC', 'DI']
+
+ +
+
+moleculib.nucleic.datum.dna_res_tokens
+
+ +
+
+moleculib.nucleic.datum.rna_res_tokens
+
+ +
+
+moleculib.nucleic.datum.dna_datum
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/nucleic/index.html b/autoapi/moleculib/nucleic/index.html new file mode 100644 index 0000000..f3efca8 --- /dev/null +++ b/autoapi/moleculib/nucleic/index.html @@ -0,0 +1,154 @@ + + + + + + + + + + moleculib :: moleculib.nucleic + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.nucleic

+
+

Submodules

+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/nucleic/transform/index.html b/autoapi/moleculib/nucleic/transform/index.html new file mode 100644 index 0000000..7c1a974 --- /dev/null +++ b/autoapi/moleculib/nucleic/transform/index.html @@ -0,0 +1,449 @@ + + + + + + + + + + moleculib :: moleculib.nucleic.transform + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.nucleic.transform

+
+

Attributes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

dna_res_tokens

rna_res_tokens

UNK_TOKEN

MAX_RES_ATOMS

base_atoms_per_nuc

backbone_atoms_DNA

backbone_atoms_RNA

special_tokens

atoms_per_nuc

MAX_DNA_ATOMS

all_atoms

all_atoms_tokens

elements

all_atoms_elements

all_nucs

all_nucs_tokens

all_nucs_atom_mask

all_nucs_atom_tokens

atom_to_nucs_index

atom_to_nucs_mask

+
+
+

Classes

+ + + + + + + + + + + + + + + +

NucleicDatum

Incorporates Biotite nucleic sequence data

NucTransform

Abstract class for nucleic transform

NucCrop

Abstract class for nucleic transform

NucPad

Abstract class for nucleic transform

+
+
+

Functions

+ + + + + + + + + + + + + + + +

atom_index(→ int)

get_nucleotide_index(→ int)

pad_array(array, total_size)

pids_file_to_list(pids_path)

+
+
+

Module Contents

+
+
+class moleculib.nucleic.transform.NucleicDatum(idcode: str, resolution: float, sequence: biotite.sequence.NucleotideSequence, nuc_token: numpy.ndarray, nuc_index: numpy.ndarray, nuc_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates Biotite nucleic sequence data +# and reshapes atom arrays to residue-based representation

+
+
+classmethod empty_nuc()
+
+ +
+
+classmethod from_filepath(filepath)
+
+ +
+
+classmethod fetch_pdb_id(id, save_path=None)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum')
+
+ +
+ +
+
+moleculib.nucleic.transform.dna_res_tokens
+
+ +
+
+moleculib.nucleic.transform.rna_res_tokens
+
+ +
+
+moleculib.nucleic.transform.UNK_TOKEN = 1
+
+ +
+
+moleculib.nucleic.transform.MAX_RES_ATOMS = 14
+
+ +
+
+moleculib.nucleic.transform.base_atoms_per_nuc
+
+ +
+
+moleculib.nucleic.transform.backbone_atoms_DNA = ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O3'", "O4'", "O5'"]
+
+ +
+
+moleculib.nucleic.transform.backbone_atoms_RNA = ['P', 'OP1', 'OP2', 'OP3', "C1'", "C2'", "C3'", "C4'", "C5'", "O2'", "O3'", "O4'", "O5'"]
+
+ +
+
+moleculib.nucleic.transform.special_tokens = ['PAD', 'UNK']
+
+ +
+
+moleculib.nucleic.transform.atoms_per_nuc
+
+ +
+
+moleculib.nucleic.transform.MAX_DNA_ATOMS
+
+ +
+
+moleculib.nucleic.transform.all_atoms
+
+ +
+
+moleculib.nucleic.transform.all_atoms_tokens
+
+ +
+
+moleculib.nucleic.transform.elements
+
+ +
+
+moleculib.nucleic.transform.all_atoms_elements
+
+ +
+
+moleculib.nucleic.transform.all_nucs
+
+ +
+
+moleculib.nucleic.transform.all_nucs_tokens
+
+ +
+
+moleculib.nucleic.transform.all_nucs_atom_mask
+
+ +
+
+moleculib.nucleic.transform.all_nucs_atom_tokens
+
+ +
+
+moleculib.nucleic.transform.atom_index(atom: str) int
+
+ +
+
+moleculib.nucleic.transform.get_nucleotide_index(nucleotide: str) int
+
+ +
+
+moleculib.nucleic.transform.atom_to_nucs_index
+
+ +
+
+moleculib.nucleic.transform.atom_to_nucs_mask
+
+ +
+
+moleculib.nucleic.transform.pad_array(array, total_size)
+
+ +
+
+moleculib.nucleic.transform.pids_file_to_list(pids_path)
+
+ +
+
+class moleculib.nucleic.transform.NucTransform
+

Abstract class for nucleic transform

+
+
+abstract transform(datum: moleculib.nucleic.datum.NucleicDatum) moleculib.nucleic.datum.NucleicDatum
+

Takes as input an individual data point, processes +the values in it and returns a new NucleicDatum

+
+ +
+ +
+
+class moleculib.nucleic.transform.NucCrop(crop_len)
+

Bases: NucTransform

+

Abstract class for nucleic transform

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new NucleicDatum

+
+ +
+ +
+
+class moleculib.nucleic.transform.NucPad(pad_size)
+

Bases: NucTransform

+

Abstract class for nucleic transform

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new NucleicDatum

+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/nucleic/utils/index.html b/autoapi/moleculib/nucleic/utils/index.html new file mode 100644 index 0000000..589b0b4 --- /dev/null +++ b/autoapi/moleculib/nucleic/utils/index.html @@ -0,0 +1,198 @@ + + + + + + + + + + moleculib :: moleculib.nucleic.utils + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.nucleic.utils

+
+

Attributes

+ + + + + + + + + +

home_dir

config

+
+
+

Functions

+ + + + + + + + + + + + +

pdb_to_atom_array(pdb_path)

pids_file_to_list(pids_path)

pad_array(array, total_size)

+
+
+

Module Contents

+
+
+moleculib.nucleic.utils.home_dir
+
+ +
+
+moleculib.nucleic.utils.config
+
+ +
+
+moleculib.nucleic.utils.pdb_to_atom_array(pdb_path)
+
+ +
+
+moleculib.nucleic.utils.pids_file_to_list(pids_path)
+
+ +
+
+moleculib.nucleic.utils.pad_array(array, total_size)
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/alphabet/index.html b/autoapi/moleculib/protein/alphabet/index.html new file mode 100644 index 0000000..2a530cc --- /dev/null +++ b/autoapi/moleculib/protein/alphabet/index.html @@ -0,0 +1,374 @@ + + + + + + + + + + moleculib :: moleculib.protein.alphabet + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.alphabet

+
+

Attributes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

UNK_TOKEN

van_der_walls_radii

sidechain_atoms_per_residue

sidechain_chemistry_per_residue

backbone_atoms

backbone_chemistry

special_tokens

atoms_per_residue

all_atoms

all_atoms

all_atoms_tokens

elements

all_atoms_elements

all_atoms_radii

all_residues

all_residues

all_residues_tokens

all_residues_atom_mask

all_residues_atom_tokens

bond_lens_arr

max_arr_size

bond_lens_arr

atom_to_residues_index

atom_to_residues_mask

+
+
+

Functions

+ + + + + + + + + + + + +

geometry_to_per_residue_indexing_array([property])

atom_index(→ int)

get_residue_index(→ int)

+
+
+

Module Contents

+
+
+moleculib.protein.alphabet.UNK_TOKEN = 1
+
+ +
+
+moleculib.protein.alphabet.van_der_walls_radii
+
+ +
+
+moleculib.protein.alphabet.sidechain_atoms_per_residue
+
+ +
+
+moleculib.protein.alphabet.sidechain_chemistry_per_residue
+
+ +
+
+moleculib.protein.alphabet.backbone_atoms = ['N', 'CA', 'C', 'O']
+
+ +
+
+moleculib.protein.alphabet.backbone_chemistry
+
+ +
+
+moleculib.protein.alphabet.special_tokens = ['PAD', 'MASK', 'UNK']
+
+ +
+
+moleculib.protein.alphabet.atoms_per_residue
+
+ +
+
+moleculib.protein.alphabet.all_atoms
+
+ +
+
+moleculib.protein.alphabet.all_atoms
+
+ +
+
+moleculib.protein.alphabet.all_atoms_tokens
+
+ +
+
+moleculib.protein.alphabet.elements
+
+ +
+
+moleculib.protein.alphabet.all_atoms_elements
+
+ +
+
+moleculib.protein.alphabet.all_atoms_radii
+
+ +
+
+moleculib.protein.alphabet.all_residues
+
+ +
+
+moleculib.protein.alphabet.all_residues
+
+ +
+
+moleculib.protein.alphabet.all_residues_tokens
+
+ +
+
+moleculib.protein.alphabet.all_residues_atom_mask
+
+ +
+
+moleculib.protein.alphabet.all_residues_atom_tokens
+
+ +
+
+moleculib.protein.alphabet.geometry_to_per_residue_indexing_array(property='bonds')
+
+ +
+
+moleculib.protein.alphabet.bond_lens_arr
+
+ +
+
+moleculib.protein.alphabet.max_arr_size
+
+ +
+
+moleculib.protein.alphabet.bond_lens_arr
+
+ +
+
+moleculib.protein.alphabet.atom_index(atom: str) int
+
+ +
+
+moleculib.protein.alphabet.get_residue_index(residue: str) int
+
+ +
+
+moleculib.protein.alphabet.atom_to_residues_index
+
+ +
+
+moleculib.protein.alphabet.atom_to_residues_mask
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/batch/index.html b/autoapi/moleculib/protein/batch/index.html new file mode 100644 index 0000000..ad0e026 --- /dev/null +++ b/autoapi/moleculib/protein/batch/index.html @@ -0,0 +1,378 @@ + + + + + + + + + + moleculib :: moleculib.protein.batch + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.batch

+
+

Attributes

+ + + + + + +

backbone_atoms

+
+
+

Classes

+ + + + + + + + + + + + + + + +

ProteinDatum

Incorporates protein data to MolecularDatum

ProteinCollator

Abstract class for collation of multiple ProteinDatum instances

PadBatch

Abstract class for collation of multiple ProteinDatum instances

GeometricBatch

Abstract class for collation of multiple ProteinDatum instances

+
+
+

Functions

+ + + + + + +

pad_array(array, total_size)

+
+
+

Module Contents

+
+
+moleculib.protein.batch.backbone_atoms = ['N', 'CA', 'C', 'O']
+
+ +
+
+class moleculib.protein.batch.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+moleculib.protein.batch.pad_array(array, total_size)
+
+ +
+
+class moleculib.protein.batch.ProteinCollator
+

Abstract class for collation of multiple ProteinDatum instances +into a single batch instance

+
+
+classmethod collate(data_list: List[moleculib.protein.datum.ProteinDatum])
+
+
Abstractmethod:
+

+
+

Takes a list of ProteinDatum instances and produces +a ProteinCollate instance with all the instances collated +according to the appropriate collate function

+
+ +
+
+abstract revert() List[moleculib.protein.datum.ProteinDatum]
+

Reverts a batch to its original list form

+
+ +
+
+to(device: str) ProteinCollator
+
+ +
+
+torch() ProteinCollator
+
+ +
+
+to_dict(attrs=None)
+
+ +
+ +
+
+class moleculib.protein.batch.PadBatch(**kwargs)
+

Bases: ProteinCollator

+

Abstract class for collation of multiple ProteinDatum instances +into a single batch instance

+
+
+revert(constructor=ProteinDatum)
+

Reverts a batch to its original list form

+
+ +
+
+classmethod collate(data_list)
+

Takes a list of ProteinDatum instances and produces +a ProteinCollate instance with all the instances collated +according to the appropriate collate function

+
+ +
+ +
+
+class moleculib.protein.batch.GeometricBatch(batch_index, num_nodes, **kwargs)
+

Bases: ProteinCollator

+

Abstract class for collation of multiple ProteinDatum instances +into a single batch instance

+
+
+revert(constructor=ProteinDatum)
+

Reverts a batch to its original list form

+
+ +
+
+classmethod collate(data_list)
+

Takes a list of ProteinDatum instances and produces +a ProteinCollate instance with all the instances collated +according to the appropriate collate function

+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/dataset/index.html b/autoapi/moleculib/protein/dataset/index.html new file mode 100644 index 0000000..a275f65 --- /dev/null +++ b/autoapi/moleculib/protein/dataset/index.html @@ -0,0 +1,506 @@ + + + + + + + + + + moleculib :: moleculib.protein.dataset + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.dataset

+
+

Attributes

+ + + + + + + + + + + + + + + + + + + + + +

UNK_TOKEN

MAX_COMPLEX_SIZE

PDB_HEADER_FIELDS

CHAIN_COUNTER_FIELDS

PDB_METADATA_FIELDS

SAMPLE_PDBS

+
+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

ProteinDatum

Incorporates protein data to MolecularDatum

ProteinTransform

Abstract class for transformation of ProteinDatum datapoints

PreProcessedDataset

PDBDataset

Holds ProteinDatum dataset with specified PDB IDs

MonomerDataset

Holds ProteinDatum dataset with specified PDB IDs

TinyPDBDataset

FrameDiffDataset

TinyPDBDataset

FoldingDiffDataset

FoldDataset

EnzymeCommissionDataset

GeneOntologyDataset

FuncDataset

ScaffoldsDataset

FastFoldingDataset

+
+
+

Functions

+ + + + + + +

pids_file_to_list(pids_path)

+
+
+

Module Contents

+
+
+moleculib.protein.dataset.UNK_TOKEN = 1
+
+ +
+
+class moleculib.protein.dataset.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+class moleculib.protein.dataset.ProteinTransform
+

Abstract class for transformation of ProteinDatum datapoints

+
+
+abstract transform(datum: moleculib.protein.datum.ProteinDatum) moleculib.protein.datum.ProteinDatum
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+moleculib.protein.dataset.pids_file_to_list(pids_path)
+
+ +
+
+class moleculib.protein.dataset.PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False)
+
+ +
+
+moleculib.protein.dataset.MAX_COMPLEX_SIZE = 32
+
+ +
+
+moleculib.protein.dataset.PDB_HEADER_FIELDS
+
+ +
+
+moleculib.protein.dataset.CHAIN_COUNTER_FIELDS
+
+ +
+
+moleculib.protein.dataset.PDB_METADATA_FIELDS
+
+ +
+
+moleculib.protein.dataset.SAMPLE_PDBS = ['1C5E', '1C9O', '1CKU', '1CSE', '7ZKR', '7ZYS', '8AJQ', '8AQL', '8DCH']
+
+ +
+
+class moleculib.protein.dataset.PDBDataset(base_path: str, transform: moleculib.protein.transform.ProteinTransform = None, attrs: List[str] | str = 'all', metadata: pandas.DataFrame = None, max_resolution: float = None, min_sequence_length: int = None, max_sequence_length: int = None, frac: float = 1.0, preload: bool = False, preload_num_workers: int = 10, keep_ids: List[str] = None, filter_ids=None)
+

Holds ProteinDatum dataset with specified PDB IDs

+
+

Arguments:

+
+
base_pathstr

directory to store all PDB files

+
+
pdb_idsList[str]

list of all protein IDs that should be in the dataset

+
+
formatstr

the file format for each PDB file, either “npz” or “pdb”

+
+
attrsUnion[str, List[str]]

a partial list of protein attributes that should be in each protein

+
+
+
+
+load_index(idx)
+
+ +
+
+abstract parse(molecules)
+
+ +
+
+classmethod build(pdb_ids: List[str] = None, save: bool = True, save_path: str = None, max_workers: int = 1, format: str = 'mmtf', **kwargs)
+

Builds dataset from scratch given specified pdb_ids, prepares +data and metadata for later use.

+
+ +
+
+ +
+
+class moleculib.protein.dataset.MonomerDataset(base_path: str, metadata: pandas.DataFrame = None, single_chain: bool = True, **kwargs)
+

Bases: PDBDataset

+

Holds ProteinDatum dataset with specified PDB IDs

+
+

Arguments:

+
+
base_pathstr

directory to store all PDB files

+
+
pdb_idsList[str]

list of all protein IDs that should be in the dataset

+
+
formatstr

the file format for each PDB file, either “npz” or “pdb”

+
+
attrsUnion[str, List[str]]

a partial list of protein attributes that should be in each protein

+
+
+
+
+parse(header, datum)
+
+ +
+
+ +
+
+class moleculib.protein.dataset.TinyPDBDataset(base_path, transform: List[Callable] = None, shuffle=True)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.protein.dataset.FrameDiffDataset(base_path, transform: List[Callable] = None, shuffle=True)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.protein.dataset.TinyPDBDataset(base_path, transform: List[Callable] = None, shuffle=True)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.protein.dataset.FoldingDiffDataset(base_path, transform: List[Callable] = None, shuffle=True)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.protein.dataset.FoldDataset(base_path, transform: List[Callable] = None, shuffle=True)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.protein.dataset.EnzymeCommissionDataset(base_path, transform: List[Callable] = None, shuffle=True)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.protein.dataset.GeneOntologyDataset(base_path, transform: List[Callable] = None, level='mf', shuffle=True)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.protein.dataset.FuncDataset(base_path, transform: List[Callable] = None, shuffle=True)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.protein.dataset.ScaffoldsDataset(base_path, transform: List[Callable] = None, shuffle=True, val_split=0.0)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.protein.dataset.FastFoldingDataset(protein='chignolin', num_files=-1, tau=0, stride=1, time_sort=False, buffer=100, preload=True, shuffle=False)
+

Bases: torch.utils.data.Dataset

+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/datum/index.html b/autoapi/moleculib/protein/datum/index.html new file mode 100644 index 0000000..b977f67 --- /dev/null +++ b/autoapi/moleculib/protein/datum/index.html @@ -0,0 +1,325 @@ + + + + + + + + + + moleculib :: moleculib.protein.datum + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.datum

+
+

Attributes

+ + + + + + + + + + + + + + + +

all_atoms

all_residues

backbone_atoms

atom_to_residues_index

+
+
+

Classes

+ + + + + + + + + +

ProteinSequence

ProteinDatum

Incorporates protein data to MolecularDatum

+
+
+

Functions

+ + + + + + + + + +

atom_index(→ int)

get_residue_index(→ int)

+
+
+

Module Contents

+
+
+moleculib.protein.datum.all_atoms
+
+ +
+
+moleculib.protein.datum.all_residues
+
+ +
+
+moleculib.protein.datum.backbone_atoms = ['N', 'CA', 'C', 'O']
+
+ +
+
+moleculib.protein.datum.atom_index(atom: str) int
+
+ +
+
+moleculib.protein.datum.atom_to_residues_index
+
+ +
+
+moleculib.protein.datum.get_residue_index(residue: str) int
+
+ +
+
+class moleculib.protein.datum.ProteinSequence(idcode: str, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, **kwargs)
+
+ +
+
+class moleculib.protein.datum.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/index.html b/autoapi/moleculib/protein/index.html new file mode 100644 index 0000000..2704062 --- /dev/null +++ b/autoapi/moleculib/protein/index.html @@ -0,0 +1,165 @@ + + + + + + + + + + moleculib :: moleculib.protein + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ + + +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/jax_utils/index.html b/autoapi/moleculib/protein/jax_utils/index.html new file mode 100644 index 0000000..7090879 --- /dev/null +++ b/autoapi/moleculib/protein/jax_utils/index.html @@ -0,0 +1,220 @@ + + + + + + + + + + moleculib :: moleculib.protein.jax_utils + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.jax_utils

+

stringarray: JAX-compatible object array for manipulating strings.

+
+

Classes

+ + + + + + +

StringArray

StringArray: JAX-compatible representation of an array of strings.

+
+
+

Module Contents

+
+
+class moleculib.protein.jax_utils.StringArray(data: str | List[str] | numpy.ndarray | StringArray)
+

StringArray: JAX-compatible representation of an array of strings.

+

Examples

+
>>> arr = StringArray(['A', 'B', 'C', 'D'])
+>>> arr
+StringArray(['A', 'B', 'C', 'D'], dtype=object)
+>>> len(arr)
+4
+>>> arr.shape
+(4,)
+>>> arr.dtype
+dtype('O')
+>>> arr[0]
+StringArray('A', dtype=object)
+
+
+
+
+dtype
+
+ +
+
+shape
+
+ +
+
+size
+
+ +
+
+ndim
+
+ +
+
+T
+
+ +
+
+transpose(*axes: int) StringArray
+
+ +
+
+ravel() StringArray
+
+ +
+
+reshape(*args, **kwargs) StringArray
+
+ +
+
+astype(dtype: numpy.dtype) StringArray
+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/measures/index.html b/autoapi/moleculib/protein/measures/index.html new file mode 100644 index 0000000..6ae5b1b --- /dev/null +++ b/autoapi/moleculib/protein/measures/index.html @@ -0,0 +1,159 @@ + + + + + + + + + + moleculib :: moleculib.protein.measures + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.measures

+
+

Attributes

+ + + + + + +

STANDARD_CHEMICAL_MEASURES

+
+
+

Module Contents

+
+
+moleculib.protein.measures.STANDARD_CHEMICAL_MEASURES
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/metrics/index.html b/autoapi/moleculib/protein/metrics/index.html new file mode 100644 index 0000000..ae9f741 --- /dev/null +++ b/autoapi/moleculib/protein/metrics/index.html @@ -0,0 +1,416 @@ + + + + + + + + + + moleculib :: moleculib.protein.metrics + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.metrics

+
+

Attributes

+ + + + + + +

STANDARD_CHEMICAL_MEASURES

+
+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

ProteinDatum

Incorporates protein data to MolecularDatum

ProteinMetric

AlignedRootMeanSquareDeviation

CountClashes

ChemicalDeviationMetric

StandardBondDeviation

StandardAngleDeviation

StandardDihedralDeviation

DescribeChemistry

Augments ProteinDatum with bonds_list and angles_list a list of atomic indexes connected by bonds and angles

StandardChemicalDeviation

+
+
+

Functions

+ + + + + + + + + + + + + + + + + + + + + +

safe_norm(→ jax.numpy.ndarray)

safe_norm(x) = norm(x) if norm(x) != 0 else 1.0

norm(→ numpy.ndarray)

normalize(→ numpy.ndarray)

measure_bonds(coord, idx)

measure_angles(coords, idx)

measure_dihedrals(coords, indices)

+
+
+

Module Contents

+
+
+moleculib.protein.metrics.STANDARD_CHEMICAL_MEASURES
+
+ +
+
+class moleculib.protein.metrics.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+moleculib.protein.metrics.safe_norm(vector: jax.numpy.ndarray, axis: int = -1) jax.numpy.ndarray
+

safe_norm(x) = norm(x) if norm(x) != 0 else 1.0

+
+ +
+
+class moleculib.protein.metrics.ProteinMetric
+
+ +
+
+class moleculib.protein.metrics.AlignedRootMeanSquareDeviation
+

Bases: ProteinMetric

+
+ +
+
+class moleculib.protein.metrics.CountClashes(radius_multiplier=0.8, smooth: bool = False)
+

Bases: ProteinMetric

+
+ +
+
+moleculib.protein.metrics.norm(vector: numpy.ndarray) numpy.ndarray
+
+ +
+
+moleculib.protein.metrics.normalize(vector: numpy.ndarray) numpy.ndarray
+
+ +
+
+moleculib.protein.metrics.measure_bonds(coord, idx)
+
+ +
+
+moleculib.protein.metrics.measure_angles(coords, idx)
+
+ +
+
+moleculib.protein.metrics.measure_dihedrals(coords, indices)
+
+ +
+
+class moleculib.protein.metrics.ChemicalDeviationMetric(key, measure, var_clip=0.0, num_interactive_atoms=1)
+

Bases: ProteinMetric

+
+ +
+
+class moleculib.protein.metrics.StandardBondDeviation
+

Bases: ChemicalDeviationMetric

+
+ +
+
+class moleculib.protein.metrics.StandardAngleDeviation
+

Bases: ChemicalDeviationMetric

+
+ +
+
+class moleculib.protein.metrics.StandardDihedralDeviation(var_clip=0.1)
+

Bases: ChemicalDeviationMetric

+
+ +
+
+class moleculib.protein.metrics.DescribeChemistry
+

Bases: ProteinTransform

+

Augments ProteinDatum with bonds_list and angles_list a list of atomic indexes connected by bonds and angles +that should have invariant behavior according to chemistry +Note that indexing is performed at atom level, that is, as residue_dim atom_dim -> (residue_dim atom_dim)

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.metrics.StandardChemicalDeviation
+

Bases: ProteinMetric

+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/tests/index.html b/autoapi/moleculib/protein/tests/index.html new file mode 100644 index 0000000..fdf7437 --- /dev/null +++ b/autoapi/moleculib/protein/tests/index.html @@ -0,0 +1,149 @@ + + + + + + + + + + moleculib :: moleculib.protein.tests + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.tests

+
+

Submodules

+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/tests/loader_test/index.html b/autoapi/moleculib/protein/tests/loader_test/index.html new file mode 100644 index 0000000..84d98c1 --- /dev/null +++ b/autoapi/moleculib/protein/tests/loader_test/index.html @@ -0,0 +1,175 @@ + + + + + + + + + + moleculib :: moleculib.protein.tests.loader_test + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.tests.loader_test

+
+

Functions

+ + + + + + + + + + + + +

test_dataloader()

test_dataload_from_filesystem()

check_dataloader_batch_size(pids, bs)

+
+
+

Module Contents

+
+
+moleculib.protein.tests.loader_test.test_dataloader()
+
+ +
+
+moleculib.protein.tests.loader_test.test_dataload_from_filesystem()
+
+ +
+
+moleculib.protein.tests.loader_test.check_dataloader_batch_size(pids, bs)
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/transform/index.html b/autoapi/moleculib/protein/transform/index.html new file mode 100644 index 0000000..d436722 --- /dev/null +++ b/autoapi/moleculib/protein/transform/index.html @@ -0,0 +1,605 @@ + + + + + + + + + + moleculib :: moleculib.protein.transform + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.transform

+
+

Attributes

+ + + + + + + + + + + + + + + + + + + + + + + + +

all_atoms

all_residues

all_atoms_elements

all_atoms_radii

backbone_atoms

bond_lens_arr

SSE_TOKENS

+
+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

ProteinDatum

Incorporates protein data to MolecularDatum

ProteinTransform

Abstract class for transformation of ProteinDatum datapoints

ProteinCrop

Abstract class for transformation of ProteinDatum datapoints

ProteinRescale

Abstract class for transformation of ProteinDatum datapoints

BackboneOnly

Abstract class for transformation of ProteinDatum datapoints

CaOnly

Abstract class for transformation of ProteinDatum datapoints

ProteinPad

Abstract class for transformation of ProteinDatum datapoints

ListBonds

Abstract class for transformation of ProteinDatum datapoints

ListAngles

Abstract class for transformation of ProteinDatum datapoints

ListDihedrals

Abstract class for transformation of ProteinDatum datapoints

ListMirrorFlips

Abstract class for transformation of ProteinDatum datapoints

DescribeChemistry

Augments ProteinDatum with bonds_list and angles_list a list of atomic indexes connected by bonds and angles

TokenizeSequenceBoundaries

Augments ProteinDatum with boundary_token and boundary_mask

MaybeMirror

Abstract class for transformation of ProteinDatum datapoints

AnnotateSecondaryStructure

Abstract class for transformation of ProteinDatum datapoints

MaskResidues

Abstract class for transformation of ProteinDatum datapoints

+
+
+

Functions

+ + + + + + + + + + + + +

pad_array(array, total_size)

normalize(vector)

measure_chirality(coords)

+
+
+

Module Contents

+
+
+class moleculib.protein.transform.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+moleculib.protein.transform.all_atoms
+
+ +
+
+moleculib.protein.transform.all_residues
+
+ +
+
+moleculib.protein.transform.all_atoms_elements
+
+ +
+
+moleculib.protein.transform.all_atoms_radii
+
+ +
+
+moleculib.protein.transform.backbone_atoms = ['N', 'CA', 'C', 'O']
+
+ +
+
+moleculib.protein.transform.bond_lens_arr
+
+ +
+
+moleculib.protein.transform.pad_array(array, total_size)
+
+ +
+
+class moleculib.protein.transform.ProteinTransform
+

Abstract class for transformation of ProteinDatum datapoints

+
+
+abstract transform(datum: moleculib.protein.datum.ProteinDatum) moleculib.protein.datum.ProteinDatum
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.ProteinCrop(crop_size)
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum, cut=None)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.ProteinRescale(factor)
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.BackboneOnly(filter: bool = True, keep_seq: bool = False)
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.CaOnly(filter: bool = True, keep_seq: bool = False)
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.ProteinPad(pad_size: int, random_position: bool = False)
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum: moleculib.protein.datum.ProteinDatum) moleculib.protein.datum.ProteinDatum
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.ListBonds(peptide_bonds: bool = True)
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.ListAngles
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.ListDihedrals
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.ListMirrorFlips
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.DescribeChemistry
+

Bases: ProteinTransform

+

Augments ProteinDatum with bonds_list and angles_list a list of atomic indexes connected by bonds and angles +that should have invariant behavior according to chemistry +Note that indexing is performed at atom level, that is, as residue_dim atom_dim -> (residue_dim atom_dim)

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.TokenizeSequenceBoundaries
+

Bases: ProteinTransform

+

Augments ProteinDatum with boundary_token and boundary_mask

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+moleculib.protein.transform.normalize(vector)
+
+ +
+
+moleculib.protein.transform.measure_chirality(coords)
+
+ +
+
+class moleculib.protein.transform.MaybeMirror(hand='left')
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+moleculib.protein.transform.SSE_TOKENS = ['', 'c', 'a', 'b']
+
+ +
+
+class moleculib.protein.transform.AnnotateSecondaryStructure
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum: moleculib.protein.datum.ProteinDatum)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.protein.transform.MaskResidues(mask_ratio: float = 0.0, contiguous: float = 0.0)
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum: moleculib.protein.datum.ProteinDatum, mask=None)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/protein/utils/index.html b/autoapi/moleculib/protein/utils/index.html new file mode 100644 index 0000000..2cd4220 --- /dev/null +++ b/autoapi/moleculib/protein/utils/index.html @@ -0,0 +1,325 @@ + + + + + + + + + + moleculib :: moleculib.protein.utils + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.protein.utils

+
+

Attributes

+ + + + + + + + + +

home_dir

config

+
+
+

Classes

+ + + + + + +

ProteinDatum

Incorporates protein data to MolecularDatum

+
+
+

Functions

+ + + + + + + + + + + + + + + + + + +

pdb_to_atom_array(pdb_path)

pids_file_to_list(pids_path)

pad_array(array, total_size)

measure_rmsd(x, y[, mode])

rigid_Kabsch_3D(Q, P)

+
+
+

Module Contents

+
+
+class moleculib.protein.utils.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+moleculib.protein.utils.home_dir
+
+ +
+
+moleculib.protein.utils.config
+
+ +
+
+moleculib.protein.utils.pdb_to_atom_array(pdb_path)
+
+ +
+
+moleculib.protein.utils.pids_file_to_list(pids_path)
+
+ +
+
+moleculib.protein.utils.pad_array(array, total_size)
+
+ +
+
+moleculib.protein.utils.measure_rmsd(x: moleculib.protein.datum.ProteinDatum, y: moleculib.protein.datum.ProteinDatum, mode='all_atom')
+
+ +
+
+moleculib.protein.utils.rigid_Kabsch_3D(Q, P)
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/sequence/dataset/index.html b/autoapi/moleculib/sequence/dataset/index.html new file mode 100644 index 0000000..f94d06c --- /dev/null +++ b/autoapi/moleculib/sequence/dataset/index.html @@ -0,0 +1,278 @@ + + + + + + + + + + moleculib :: moleculib.sequence.dataset + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.sequence.dataset

+
+

Attributes

+ + + + + + +

UNK_TOKEN

+
+
+

Classes

+ + + + + + + + + + + + + + + + + + +

ProteinTransform

Abstract class for transformation of ProteinDatum datapoints

SeqDatum

Incorporates protein data to MolecularDatum

ElutedLigandDataset

MHCBindingAffinityDataset

GFPFitnessDataset

+
+
+

Functions

+ + + + + + +

onehot_encode_datum(sequencedatum)

+
+
+

Module Contents

+
+
+moleculib.sequence.dataset.UNK_TOKEN = 1
+
+ +
+
+class moleculib.sequence.dataset.ProteinTransform
+

Abstract class for transformation of ProteinDatum datapoints

+
+
+abstract transform(datum: moleculib.protein.datum.ProteinDatum) moleculib.protein.datum.ProteinDatum
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.sequence.dataset.SeqDatum(idcode: str, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+onehot_encode_datum()
+
+ +
+
+classmethod empty_seqrecord()
+
+ +
+
+classmethod from_tokens(residues)
+

Fasta file would only have sequence entry +:param filepath: +:return:

+
+ +
+
+classmethod from_filepath(filepath)
+

Fasta file would only have sequence entry +:param filepath: +:return:

+
+ +
+
+classmethod from_sequence(idcode, sequence)
+

Fasta file would only have sequence entry +:param filepath: +:return:

+
+ +
+
+classmethod from_pdb_id(pdb_id, chain_id=None)
+
+ +
+
+classmethod from_uniprot_id(uniprotid, save_path=None)
+
+ +
+ +
+
+moleculib.sequence.dataset.onehot_encode_datum(sequencedatum: moleculib.sequence.datum.SeqDatum)
+
+ +
+
+class moleculib.sequence.dataset.ElutedLigandDataset(base_path: str, transform: moleculib.protein.transform.ProteinTransform = None, encode_one_hot: bool = True)
+

Bases: torch.utils.data.Dataset

+
+ +
+
+class moleculib.sequence.dataset.MHCBindingAffinityDataset(base_path: str, transform: moleculib.protein.transform.ProteinTransform = None)
+

Bases: torch.utils.data.Dataset

+
+ +
+
+class moleculib.sequence.dataset.GFPFitnessDataset(base_path: str, transform: moleculib.protein.transform.ProteinTransform = None, encode_one_hot: bool = True, encode_lm: bool = False, lm_model: str = 'esm')
+

Bases: torch.utils.data.Dataset

+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/sequence/datum/index.html b/autoapi/moleculib/sequence/datum/index.html new file mode 100644 index 0000000..c6adeb3 --- /dev/null +++ b/autoapi/moleculib/sequence/datum/index.html @@ -0,0 +1,251 @@ + + + + + + + + + + moleculib :: moleculib.sequence.datum + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.sequence.datum

+
+

Attributes

+ + + + + + + + + + + + +

all_residues

API_URL

allowed_aa

+
+
+

Classes

+ + + + + + +

SeqDatum

Incorporates protein data to MolecularDatum

+
+
+

Functions

+ + + + + + +

get_residue_index(→ int)

+
+
+

Module Contents

+
+
+moleculib.sequence.datum.all_residues
+
+ +
+
+moleculib.sequence.datum.get_residue_index(residue: str) int
+
+ +
+
+moleculib.sequence.datum.API_URL = 'https://rest.uniprot.org'
+
+ +
+
+moleculib.sequence.datum.allowed_aa = ['ALA', 'ARG', 'ASN', 'ASP', 'CYS', 'GLN', 'GLU', 'GLY', 'HIS', 'ILE', 'LEU', 'LYS', 'MET',...
+
+ +
+
+class moleculib.sequence.datum.SeqDatum(idcode: str, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+onehot_encode_datum()
+
+ +
+
+classmethod empty_seqrecord()
+
+ +
+
+classmethod from_tokens(residues)
+

Fasta file would only have sequence entry +:param filepath: +:return:

+
+ +
+
+classmethod from_filepath(filepath)
+

Fasta file would only have sequence entry +:param filepath: +:return:

+
+ +
+
+classmethod from_sequence(idcode, sequence)
+

Fasta file would only have sequence entry +:param filepath: +:return:

+
+ +
+
+classmethod from_pdb_id(pdb_id, chain_id=None)
+
+ +
+
+classmethod from_uniprot_id(uniprotid, save_path=None)
+
+ +
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/sequence/index.html b/autoapi/moleculib/sequence/index.html new file mode 100644 index 0000000..f6e47d4 --- /dev/null +++ b/autoapi/moleculib/sequence/index.html @@ -0,0 +1,153 @@ + + + + + + + + + + moleculib :: moleculib.sequence + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.sequence

+
+

Submodules

+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/sequence/metrics/index.html b/autoapi/moleculib/sequence/metrics/index.html new file mode 100644 index 0000000..c446be8 --- /dev/null +++ b/autoapi/moleculib/sequence/metrics/index.html @@ -0,0 +1,141 @@ + + + + + + + + + + moleculib :: moleculib.sequence.metrics + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.sequence.metrics

+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/sequence/transform/index.html b/autoapi/moleculib/sequence/transform/index.html new file mode 100644 index 0000000..afa619a --- /dev/null +++ b/autoapi/moleculib/sequence/transform/index.html @@ -0,0 +1,141 @@ + + + + + + + + + + moleculib :: moleculib.sequence.transform + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.sequence.transform

+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/sequence/utils/index.html b/autoapi/moleculib/sequence/utils/index.html new file mode 100644 index 0000000..712197d --- /dev/null +++ b/autoapi/moleculib/sequence/utils/index.html @@ -0,0 +1,214 @@ + + + + + + + + + + moleculib :: moleculib.sequence.utils + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.sequence.utils

+
+

Attributes

+ + + + + + +

alphabet

+
+
+

Functions

+ + + + + + + + + + + + + + + + + + + + + +

onehot_encode_datum(sequencedatum)

decode_one_hot(x)

residue_tokens_to_sequence(sequencedatum)

load_fasta_file(→ List[Tuple[str]])

save_fasta_file(sequences, names, save_path)

one_hot_encode_seq(protein_seq[, max_length])

+
+
+

Module Contents

+
+
+moleculib.sequence.utils.alphabet = ['A', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'K', 'L', 'M', 'N', 'P', 'Q', 'R', 'S', 'T', 'V', 'W', 'Y', 'X']
+
+ +
+
+moleculib.sequence.utils.onehot_encode_datum(sequencedatum: SeqDatum)
+
+ +
+
+moleculib.sequence.utils.decode_one_hot(x)
+
+ +
+
+moleculib.sequence.utils.residue_tokens_to_sequence(sequencedatum: SeqDatum)
+
+ +
+
+moleculib.sequence.utils.load_fasta_file(input: str) List[Tuple[str]]
+
+ +
+
+moleculib.sequence.utils.save_fasta_file(sequences, names, save_path)
+
+ +
+
+moleculib.sequence.utils.one_hot_encode_seq(protein_seq, max_length=14)
+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/traj/dataset/index.html b/autoapi/moleculib/traj/dataset/index.html new file mode 100644 index 0000000..168323b --- /dev/null +++ b/autoapi/moleculib/traj/dataset/index.html @@ -0,0 +1,399 @@ + + + + + + + + + + moleculib :: moleculib.traj.dataset + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.traj.dataset

+
+

Attributes

+ + + + + + +

NUM_STEPS

+
+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

ProteinDatum

Incorporates protein data to MolecularDatum

ProteinCrop

Abstract class for transformation of ProteinDatum datapoints

Dataset

PreProcessedDataset

MODELDataset

Holds ProteinDatum dataset across trajectories

AdKEquilibriumDataset

Holds ProteinDatum dataset across trajectories

AdKTransitionsDataset

Holds ProteinDatum dataset across trajectories

AtlasDataset

AtlasEIF4EDataset

TimewarpDataset

Exposes datasets from the Timewarp paper.

TimewarpDatasetPreprocessed

+
+
+

Module Contents

+
+
+class moleculib.traj.dataset.ProteinDatum(idcode: str, resolution: float, sequence: biotite.sequence.ProteinSequence, residue_token: numpy.ndarray, residue_index: numpy.ndarray, residue_mask: numpy.ndarray, chain_token: numpy.ndarray, atom_token: numpy.ndarray, atom_coord: numpy.ndarray, atom_mask: numpy.ndarray, **kwargs)
+

Incorporates protein data to MolecularDatum +and reshapes atom arrays to residue-based representation

+
+
+static separate_chains(datum)
+
+ +
+
+classmethod empty()
+
+ +
+
+replace(**kwargs)
+
+ +
+
+classmethod from_filepath(filepath, format=None, idcode=None, chain_id=None, chain=None, model=1)
+
+ +
+
+classmethod fetch_pdb_id(id, format='pdb', chain=None, model=None, save_path=None)
+
+ +
+
+set(**kwargs)
+
+ +
+
+classmethod from_atom_array(atom_array, header)
+

Reshapes atom array to residue-indexed representation to +build a protein datum.

+
+ +
+
+apply_bonds(f)
+
+ +
+
+apply_angles(f)
+
+ +
+
+apply_dihedrals(f)
+
+ +
+
+to_dict(attrs=None)
+
+ +
+
+numpy()
+
+ +
+
+to_pdb_str()
+
+ +
+
+plot(view, viewer=None, sphere=False, ribbon=True, sidechain=True, color='spectrum', colors=None)
+
+ +
+
+align_to(other, window=None)
+

Aligns the current protein datum to another protein datum based on CA atoms.

+
+ +
+
+save_mmcif(filepath)
+

Saves the protein datum to an mmcif file.

+
+ +
+
+to_dict()
+
+ +
+
+classmethod from_dict(dict_)
+
+ +
+ +
+
+class moleculib.traj.dataset.ProteinCrop(crop_size)
+

Bases: ProteinTransform

+

Abstract class for transformation of ProteinDatum datapoints

+
+
+transform(datum, cut=None)
+

Takes as input an individual data point, processes +the values in it and returns a new ProteinDatum

+
+ +
+ +
+
+class moleculib.traj.dataset.Dataset(transform: List[Callable] = None)
+
+ +
+
+class moleculib.traj.dataset.PreProcessedDataset(splits, transform: List[Callable] = None, shuffle=True, pre_transform=False)
+
+ +
+
+class moleculib.traj.dataset.MODELDataset(base_path: str, frac: float = 1.0, transform: list = [], num_steps=5, crop_size: int = 64)
+

Bases: moleculib.abstract.dataset.Dataset

+

Holds ProteinDatum dataset across trajectories +as catalogued in Molecular Dynamics Extended Library (MODEL)

+
+

Arguments:

+
+
base_pathstr

directory to store all PDB files

+
+
formatstr

the file format for each PDB file, either “npz” or “pdb”

+
+
+
+
+ +
+
+class moleculib.traj.dataset.AdKEquilibriumDataset(base_path: str, transform: list = [], num_steps=15)
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+

Holds ProteinDatum dataset across trajectories +as catalogued in Molecular Dynamics Extended Library (MODEL)

+
+

Arguments:

+
+
base_pathstr

directory to store all PDB files

+
+
formatstr

the file format for each PDB file, either “npz” or “pdb”

+
+
+
+
+ +
+
+class moleculib.traj.dataset.AdKTransitionsDataset(base_path: str, frac: float = 1.0, transform: list = [], num_steps=15, split: str = 'train')
+

Bases: moleculib.abstract.dataset.Dataset

+

Holds ProteinDatum dataset across trajectories +as catalogued in Molecular Dynamics Extended Library (MODEL)

+
+

Arguments:

+
+
base_pathstr

directory to store all PDB files

+
+
formatstr

the file format for each PDB file, either “npz” or “pdb”

+
+
+
+
+ +
+
+moleculib.traj.dataset.NUM_STEPS = 1000
+
+ +
+
+class moleculib.traj.dataset.AtlasDataset(base_path: str, tau: int = None, transform: list = [], mode: str = 'next_step', single_protein: bool = False, min_sequence_size: int = 12, max_sequence_size: int = 512, expansion_factor: int = 100)
+

Bases: moleculib.abstract.dataset.Dataset

+
+ +
+
+class moleculib.traj.dataset.AtlasEIF4EDataset(base_path, transform=[])
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+class moleculib.traj.dataset.TimewarpDataset(dataset: str, split: str, tau: int, max_files: int | None = None)
+

Exposes datasets from the Timewarp paper.

+
+ +
+
+class moleculib.traj.dataset.TimewarpDatasetPreprocessed(split_info: Dict[str, Any])
+

Bases: moleculib.abstract.dataset.PreProcessedDataset

+
+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/autoapi/moleculib/traj/index.html b/autoapi/moleculib/traj/index.html new file mode 100644 index 0000000..4ff6555 --- /dev/null +++ b/autoapi/moleculib/traj/index.html @@ -0,0 +1,149 @@ + + + + + + + + + + moleculib :: moleculib.traj + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

moleculib.traj

+
+

Submodules

+ +
+
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/genindex.html b/genindex.html new file mode 100644 index 0000000..55be116 --- /dev/null +++ b/genindex.html @@ -0,0 +1,2448 @@ + + + + + + + + + moleculib :: Index + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ + +

Index

+ +
+ A + | B + | C + | D + | E + | F + | G + | H + | I + | K + | L + | M + | N + | O + | P + | Q + | R + | S + | T + | U + | V + | W + +
+

A

+ + + +
+ +

B

+ + + +
+ +

C

+ + + +
+ +

D

+ + + +
+ +

E

+ + + +
+ +

F

+ + + +
+ +

G

+ + + +
+ +

H

+ + +
+ +

I

+ + + +
+ +

K

+ + +
+ +

L

+ + + +
+ +

M

+ + + +
    +
  • + moleculib.abstract.metrics + +
  • +
  • + moleculib.abstract.transform + +
  • +
  • + moleculib.assembly + +
  • +
  • + moleculib.assembly.dataset + +
  • +
  • + moleculib.assembly.datum + +
  • +
  • + moleculib.assembly.metrics + +
  • +
  • + moleculib.assembly.transform + +
  • +
  • + moleculib.graphics.py3Dmol + +
  • +
  • + moleculib.molecule + +
  • +
  • + moleculib.molecule.alphabet + +
  • +
  • + moleculib.molecule.batch + +
  • +
  • + moleculib.molecule.dataset + +
  • +
  • + moleculib.molecule.datum + +
  • +
  • + moleculib.molecule.h5_to_pdb + +
  • +
  • + moleculib.molecule.tests + +
  • +
  • + moleculib.molecule.tests.loader_test + +
  • +
  • + moleculib.molecule.transform + +
  • +
  • + moleculib.molecule.utils + +
  • +
  • + moleculib.nucleic + +
  • +
  • + moleculib.nucleic.alphabet + +
  • +
  • + moleculib.nucleic.batch + +
  • +
  • + moleculib.nucleic.dataset + +
  • +
  • + moleculib.nucleic.datum + +
  • +
  • + moleculib.nucleic.transform + +
  • +
  • + moleculib.nucleic.utils + +
  • +
  • + moleculib.protein + +
  • +
  • + moleculib.protein.alphabet + +
  • +
  • + moleculib.protein.batch + +
  • +
  • + moleculib.protein.dataset + +
  • +
  • + moleculib.protein.datum + +
  • +
  • + moleculib.protein.jax_utils + +
  • +
  • + moleculib.protein.measures + +
  • +
  • + moleculib.protein.metrics + +
  • +
  • + moleculib.protein.tests + +
  • +
  • + moleculib.protein.tests.loader_test + +
  • +
  • + moleculib.protein.transform + +
  • +
  • + moleculib.protein.utils + +
  • +
  • + moleculib.sequence + +
  • +
  • + moleculib.sequence.dataset + +
  • +
  • + moleculib.sequence.datum + +
  • +
  • + moleculib.sequence.metrics + +
  • +
  • + moleculib.sequence.transform + +
  • +
  • + moleculib.sequence.utils + +
  • +
  • + moleculib.traj + +
  • +
  • + moleculib.traj.dataset + +
  • +
  • MonomerDataset (class in moleculib.protein.dataset) +
  • +
+ +

N

+ + + +
+ +

O

+ + +
+ +

P

+ + + +
+ +

Q

+ + +
+ +

R

+ + + +
+ +

S

+ + + +
+ +

T

+ + + +
+ +

U

+ + + +
+ +

V

+ + +
+ +

W

+ + +
+ + + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..ffb082c --- /dev/null +++ b/index.html @@ -0,0 +1,171 @@ + + + + + + + + + + moleculib :: Getting Started + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ +
+

Getting Started

+

moleculib is a comprehensive Python package designed to streamline the processing and management of biomolecular data within machine learning workflows. It empowers researchers and developers with a robust set of functionalities, simplifying complex data pipelines and accelerating the journey from raw biomolecular data to valuable insights.

+
    +
  • Data Processing: preprocessing and cleaning capabilities for data normalization and feature engineering.

  • +
  • Machine Learning-First: designed to readily integrate with Jax and pytrees in machine learning pipelines.

  • +
  • Reproducibility: modular classes and workflows for better organization and reproducibility.

  • +
+ + +
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/objects.inv b/objects.inv new file mode 100644 index 0000000..d79324a Binary files /dev/null and b/objects.inv differ diff --git a/py-modindex.html b/py-modindex.html new file mode 100644 index 0000000..9dfd5e7 --- /dev/null +++ b/py-modindex.html @@ -0,0 +1,387 @@ + + + + + + + + + moleculib :: Python Module Index + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ + +

Python Module Index

+ +
+ m +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 
+ m
+ moleculib +
    + moleculib.abstract +
    + moleculib.abstract.dataset +
    + moleculib.abstract.metrics +
    + moleculib.abstract.transform +
    + moleculib.assembly +
    + moleculib.assembly.dataset +
    + moleculib.assembly.datum +
    + moleculib.assembly.metrics +
    + moleculib.assembly.transform +
    + moleculib.graphics.py3Dmol +
    + moleculib.molecule +
    + moleculib.molecule.alphabet +
    + moleculib.molecule.batch +
    + moleculib.molecule.dataset +
    + moleculib.molecule.datum +
    + moleculib.molecule.h5_to_pdb +
    + moleculib.molecule.tests +
    + moleculib.molecule.tests.loader_test +
    + moleculib.molecule.transform +
    + moleculib.molecule.utils +
    + moleculib.nucleic +
    + moleculib.nucleic.alphabet +
    + moleculib.nucleic.batch +
    + moleculib.nucleic.dataset +
    + moleculib.nucleic.datum +
    + moleculib.nucleic.transform +
    + moleculib.nucleic.utils +
    + moleculib.protein +
    + moleculib.protein.alphabet +
    + moleculib.protein.batch +
    + moleculib.protein.dataset +
    + moleculib.protein.datum +
    + moleculib.protein.jax_utils +
    + moleculib.protein.measures +
    + moleculib.protein.metrics +
    + moleculib.protein.tests +
    + moleculib.protein.tests.loader_test +
    + moleculib.protein.transform +
    + moleculib.protein.utils +
    + moleculib.sequence +
    + moleculib.sequence.dataset +
    + moleculib.sequence.datum +
    + moleculib.sequence.metrics +
    + moleculib.sequence.transform +
    + moleculib.sequence.utils +
    + moleculib.traj +
    + moleculib.traj.dataset +
+ + +
+
+ +
+ + + + + + + +
+ +
+ +
+ + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/search.html b/search.html new file mode 100644 index 0000000..ce03338 --- /dev/null +++ b/search.html @@ -0,0 +1,149 @@ + + + + + + + + + moleculib :: Search + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ +

moleculib Documentation

+ +
+
+ +
+ +
+
+ + + + +
+ +
+ + +
+
+ +
+ + + + + + + +
+ +
+ + + +
+ + + + \ No newline at end of file diff --git a/searchindex.js b/searchindex.js new file mode 100644 index 0000000..102a5d6 --- /dev/null +++ b/searchindex.js @@ -0,0 +1 @@ +Search.setIndex({"alltitles": {"API Reference": [[0, "api-reference"]], "Arguments:": [[14, "arguments"], [31, "arguments"], [31, "id1"], [47, "arguments"], [47, "id1"], [47, "id2"]], "Attributes": [[10, "attributes"], [12, "attributes"], [14, "attributes"], [15, "attributes"], [16, "attributes"], [20, "attributes"], [21, "attributes"], [22, "attributes"], [25, "attributes"], [27, "attributes"], [28, "attributes"], [29, "attributes"], [30, "attributes"], [31, "attributes"], [32, "attributes"], [35, "attributes"], [36, "attributes"], [39, "attributes"], [40, "attributes"], [41, "attributes"], [42, "attributes"], [46, "attributes"], [47, "attributes"]], "Classes": [[1, "classes"], [3, "classes"], [5, "classes"], [6, "classes"], [8, "classes"], [9, "classes"], [10, "classes"], [13, "classes"], [14, "classes"], [15, "classes"], [20, "classes"], [24, "classes"], [25, "classes"], [27, "classes"], [30, "classes"], [31, "classes"], [32, "classes"], [34, "classes"], [36, "classes"], [39, "classes"], [40, "classes"], [41, "classes"], [42, "classes"], [47, "classes"]], "Functions": [[10, "functions"], [14, "functions"], [15, "functions"], [16, "functions"], [19, "functions"], [20, "functions"], [21, "functions"], [22, "functions"], [25, "functions"], [27, "functions"], [28, "functions"], [29, "functions"], [30, "functions"], [31, "functions"], [32, "functions"], [36, "functions"], [38, "functions"], [39, "functions"], [40, "functions"], [41, "functions"], [42, "functions"], [46, "functions"]], "Getting Started": [[49, "getting-started"]], "Module Contents": [[1, "module-contents"], [3, "module-contents"], [5, "module-contents"], [6, "module-contents"], [8, "module-contents"], [9, "module-contents"], [10, "module-contents"], [12, "module-contents"], [13, "module-contents"], [14, "module-contents"], [15, "module-contents"], [16, "module-contents"], [19, "module-contents"], [20, "module-contents"], [21, "module-contents"], [22, "module-contents"], [24, "module-contents"], [25, "module-contents"], [27, "module-contents"], [28, "module-contents"], [29, "module-contents"], [30, "module-contents"], [31, "module-contents"], [32, "module-contents"], [34, "module-contents"], [35, "module-contents"], [36, "module-contents"], [38, "module-contents"], [39, "module-contents"], [40, "module-contents"], [41, "module-contents"], [42, "module-contents"], [46, "module-contents"], [47, "module-contents"]], "Submodules": [[2, "submodules"], [7, "submodules"], [17, "submodules"], [18, "submodules"], [26, "submodules"], [33, "submodules"], [37, "submodules"], [43, "submodules"], [48, "submodules"]], "Subpackages": [[11, "subpackages"], [17, "subpackages"], [33, "subpackages"]], "moleculib": [[11, "module-moleculib"]], "moleculib.abstract": [[2, "module-moleculib.abstract"]], "moleculib.abstract.dataset": [[1, "module-moleculib.abstract.dataset"]], "moleculib.abstract.metrics": [[3, "module-moleculib.abstract.metrics"]], "moleculib.abstract.transform": [[4, "module-moleculib.abstract.transform"]], "moleculib.assembly": [[7, "module-moleculib.assembly"]], "moleculib.assembly.dataset": [[5, "module-moleculib.assembly.dataset"]], "moleculib.assembly.datum": [[6, "module-moleculib.assembly.datum"]], "moleculib.assembly.metrics": [[8, "module-moleculib.assembly.metrics"]], "moleculib.assembly.transform": [[9, "module-moleculib.assembly.transform"]], "moleculib.graphics.py3Dmol": [[10, "module-moleculib.graphics.py3Dmol"]], "moleculib.molecule": [[17, "module-moleculib.molecule"]], "moleculib.molecule.alphabet": [[12, "module-moleculib.molecule.alphabet"]], "moleculib.molecule.batch": [[13, "module-moleculib.molecule.batch"]], "moleculib.molecule.dataset": [[14, "module-moleculib.molecule.dataset"]], "moleculib.molecule.datum": [[15, "module-moleculib.molecule.datum"]], "moleculib.molecule.h5_to_pdb": [[16, "module-moleculib.molecule.h5_to_pdb"]], "moleculib.molecule.tests": [[18, "module-moleculib.molecule.tests"]], "moleculib.molecule.tests.loader_test": [[19, "module-moleculib.molecule.tests.loader_test"]], "moleculib.molecule.transform": [[20, "module-moleculib.molecule.transform"]], "moleculib.molecule.utils": [[21, "module-moleculib.molecule.utils"]], "moleculib.nucleic": [[26, "module-moleculib.nucleic"]], "moleculib.nucleic.alphabet": [[22, "module-moleculib.nucleic.alphabet"]], "moleculib.nucleic.batch": [[23, "module-moleculib.nucleic.batch"]], "moleculib.nucleic.dataset": [[24, "module-moleculib.nucleic.dataset"]], "moleculib.nucleic.datum": [[25, "module-moleculib.nucleic.datum"]], "moleculib.nucleic.transform": [[27, "module-moleculib.nucleic.transform"]], "moleculib.nucleic.utils": [[28, "module-moleculib.nucleic.utils"]], "moleculib.protein": [[33, "module-moleculib.protein"]], "moleculib.protein.alphabet": [[29, "module-moleculib.protein.alphabet"]], "moleculib.protein.batch": [[30, "module-moleculib.protein.batch"]], "moleculib.protein.dataset": [[31, "module-moleculib.protein.dataset"]], "moleculib.protein.datum": [[32, "module-moleculib.protein.datum"]], "moleculib.protein.jax_utils": [[34, "module-moleculib.protein.jax_utils"]], "moleculib.protein.measures": [[35, "module-moleculib.protein.measures"]], "moleculib.protein.metrics": [[36, "module-moleculib.protein.metrics"]], "moleculib.protein.tests": [[37, "module-moleculib.protein.tests"]], "moleculib.protein.tests.loader_test": [[38, "module-moleculib.protein.tests.loader_test"]], "moleculib.protein.transform": [[39, "module-moleculib.protein.transform"]], "moleculib.protein.utils": [[40, "module-moleculib.protein.utils"]], "moleculib.sequence": [[43, "module-moleculib.sequence"]], "moleculib.sequence.dataset": [[41, "module-moleculib.sequence.dataset"]], "moleculib.sequence.datum": [[42, "module-moleculib.sequence.datum"]], "moleculib.sequence.metrics": [[44, "module-moleculib.sequence.metrics"]], "moleculib.sequence.transform": [[45, "module-moleculib.sequence.transform"]], "moleculib.sequence.utils": [[46, "module-moleculib.sequence.utils"]], "moleculib.traj": [[48, "module-moleculib.traj"]], "moleculib.traj.dataset": [[47, "module-moleculib.traj.dataset"]]}, "docnames": ["autoapi/index", "autoapi/moleculib/abstract/dataset/index", "autoapi/moleculib/abstract/index", "autoapi/moleculib/abstract/metrics/index", "autoapi/moleculib/abstract/transform/index", "autoapi/moleculib/assembly/dataset/index", "autoapi/moleculib/assembly/datum/index", "autoapi/moleculib/assembly/index", "autoapi/moleculib/assembly/metrics/index", "autoapi/moleculib/assembly/transform/index", "autoapi/moleculib/graphics/py3Dmol/index", "autoapi/moleculib/index", "autoapi/moleculib/molecule/alphabet/index", "autoapi/moleculib/molecule/batch/index", "autoapi/moleculib/molecule/dataset/index", "autoapi/moleculib/molecule/datum/index", "autoapi/moleculib/molecule/h5_to_pdb/index", "autoapi/moleculib/molecule/index", "autoapi/moleculib/molecule/tests/index", "autoapi/moleculib/molecule/tests/loader_test/index", "autoapi/moleculib/molecule/transform/index", "autoapi/moleculib/molecule/utils/index", "autoapi/moleculib/nucleic/alphabet/index", "autoapi/moleculib/nucleic/batch/index", "autoapi/moleculib/nucleic/dataset/index", "autoapi/moleculib/nucleic/datum/index", "autoapi/moleculib/nucleic/index", "autoapi/moleculib/nucleic/transform/index", "autoapi/moleculib/nucleic/utils/index", "autoapi/moleculib/protein/alphabet/index", "autoapi/moleculib/protein/batch/index", "autoapi/moleculib/protein/dataset/index", "autoapi/moleculib/protein/datum/index", "autoapi/moleculib/protein/index", "autoapi/moleculib/protein/jax_utils/index", "autoapi/moleculib/protein/measures/index", "autoapi/moleculib/protein/metrics/index", "autoapi/moleculib/protein/tests/index", "autoapi/moleculib/protein/tests/loader_test/index", "autoapi/moleculib/protein/transform/index", "autoapi/moleculib/protein/utils/index", "autoapi/moleculib/sequence/dataset/index", "autoapi/moleculib/sequence/datum/index", "autoapi/moleculib/sequence/index", "autoapi/moleculib/sequence/metrics/index", "autoapi/moleculib/sequence/transform/index", "autoapi/moleculib/sequence/utils/index", "autoapi/moleculib/traj/dataset/index", "autoapi/moleculib/traj/index", "index"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1}, "filenames": ["autoapi/index.rst", "autoapi/moleculib/abstract/dataset/index.rst", "autoapi/moleculib/abstract/index.rst", "autoapi/moleculib/abstract/metrics/index.rst", "autoapi/moleculib/abstract/transform/index.rst", "autoapi/moleculib/assembly/dataset/index.rst", "autoapi/moleculib/assembly/datum/index.rst", "autoapi/moleculib/assembly/index.rst", "autoapi/moleculib/assembly/metrics/index.rst", "autoapi/moleculib/assembly/transform/index.rst", "autoapi/moleculib/graphics/py3Dmol/index.rst", "autoapi/moleculib/index.rst", "autoapi/moleculib/molecule/alphabet/index.rst", "autoapi/moleculib/molecule/batch/index.rst", "autoapi/moleculib/molecule/dataset/index.rst", "autoapi/moleculib/molecule/datum/index.rst", "autoapi/moleculib/molecule/h5_to_pdb/index.rst", "autoapi/moleculib/molecule/index.rst", "autoapi/moleculib/molecule/tests/index.rst", "autoapi/moleculib/molecule/tests/loader_test/index.rst", "autoapi/moleculib/molecule/transform/index.rst", "autoapi/moleculib/molecule/utils/index.rst", "autoapi/moleculib/nucleic/alphabet/index.rst", "autoapi/moleculib/nucleic/batch/index.rst", "autoapi/moleculib/nucleic/dataset/index.rst", "autoapi/moleculib/nucleic/datum/index.rst", "autoapi/moleculib/nucleic/index.rst", "autoapi/moleculib/nucleic/transform/index.rst", "autoapi/moleculib/nucleic/utils/index.rst", "autoapi/moleculib/protein/alphabet/index.rst", "autoapi/moleculib/protein/batch/index.rst", "autoapi/moleculib/protein/dataset/index.rst", "autoapi/moleculib/protein/datum/index.rst", "autoapi/moleculib/protein/index.rst", "autoapi/moleculib/protein/jax_utils/index.rst", "autoapi/moleculib/protein/measures/index.rst", "autoapi/moleculib/protein/metrics/index.rst", "autoapi/moleculib/protein/tests/index.rst", "autoapi/moleculib/protein/tests/loader_test/index.rst", "autoapi/moleculib/protein/transform/index.rst", "autoapi/moleculib/protein/utils/index.rst", "autoapi/moleculib/sequence/dataset/index.rst", "autoapi/moleculib/sequence/datum/index.rst", "autoapi/moleculib/sequence/index.rst", "autoapi/moleculib/sequence/metrics/index.rst", "autoapi/moleculib/sequence/transform/index.rst", "autoapi/moleculib/sequence/utils/index.rst", "autoapi/moleculib/traj/dataset/index.rst", "autoapi/moleculib/traj/index.rst", "index.rst"], "indexentries": {"aa_name_number (moleculib.molecule.dataset.crossdockdatum attribute)": [[14, "moleculib.molecule.dataset.CrossdockDatum.AA_NAME_NUMBER", false]], "aa_name_number (moleculib.molecule.datum.crossdockdatum attribute)": [[15, "moleculib.molecule.datum.CrossdockDatum.AA_NAME_NUMBER", false]], "aa_name_sym (moleculib.molecule.dataset.crossdockdatum attribute)": [[14, "moleculib.molecule.dataset.CrossdockDatum.AA_NAME_SYM", false]], "aa_name_sym (moleculib.molecule.datum.crossdockdatum attribute)": [[15, "moleculib.molecule.datum.CrossdockDatum.AA_NAME_SYM", false]], "aa_number_name (moleculib.molecule.dataset.crossdockdatum attribute)": [[14, "moleculib.molecule.dataset.CrossdockDatum.AA_NUMBER_NAME", false]], "aa_number_name (moleculib.molecule.datum.crossdockdatum attribute)": [[15, "moleculib.molecule.datum.CrossdockDatum.AA_NUMBER_NAME", false]], "accepted_formats (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.ACCEPTED_FORMATS", false]], "accepted_types (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.ACCEPTED_TYPES", false]], "adkequilibriumdataset (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.AdKEquilibriumDataset", false]], "adktransitionsdataset (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.AdKTransitionsDataset", false]], "align_to() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.align_to", false]], "align_to() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.align_to", false]], "align_to() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.align_to", false]], "align_to() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.align_to", false]], "align_to() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.align_to", false]], "align_to() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.align_to", false]], "align_to() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.align_to", false]], "align_to() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.align_to", false]], "align_to() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.align_to", false]], "align_to() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.align_to", false]], "alignedrootmeansquaredeviation (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.AlignedRootMeanSquareDeviation", false]], "all_atoms (in module moleculib.nucleic.alphabet)": [[22, "id0", false], [22, "moleculib.nucleic.alphabet.all_atoms", false]], "all_atoms (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.all_atoms", false]], "all_atoms (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.all_atoms", false]], "all_atoms (in module moleculib.protein.alphabet)": [[29, "id0", false], [29, "moleculib.protein.alphabet.all_atoms", false]], "all_atoms (in module moleculib.protein.datum)": [[32, "moleculib.protein.datum.all_atoms", false]], "all_atoms (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.all_atoms", false]], "all_atoms_elements (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.all_atoms_elements", false]], "all_atoms_elements (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.all_atoms_elements", false]], "all_atoms_elements (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.all_atoms_elements", false]], "all_atoms_elements (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.all_atoms_elements", false]], "all_atoms_elements (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.all_atoms_elements", false]], "all_atoms_radii (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.all_atoms_radii", false]], "all_atoms_radii (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.all_atoms_radii", false]], "all_atoms_tokens (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.all_atoms_tokens", false]], "all_atoms_tokens (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.all_atoms_tokens", false]], "all_atoms_tokens (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.all_atoms_tokens", false]], "all_atoms_tokens (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.all_atoms_tokens", false]], "all_nucs (in module moleculib.nucleic.alphabet)": [[22, "id1", false], [22, "moleculib.nucleic.alphabet.all_nucs", false]], "all_nucs (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.all_nucs", false]], "all_nucs (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.all_nucs", false]], "all_nucs_atom_mask (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.all_nucs_atom_mask", false]], "all_nucs_atom_mask (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.all_nucs_atom_mask", false]], "all_nucs_atom_mask (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.all_nucs_atom_mask", false]], "all_nucs_atom_tokens (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.all_nucs_atom_tokens", false]], "all_nucs_atom_tokens (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.all_nucs_atom_tokens", false]], "all_nucs_atom_tokens (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.all_nucs_atom_tokens", false]], "all_nucs_tokens (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.all_nucs_tokens", false]], "all_nucs_tokens (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.all_nucs_tokens", false]], "all_nucs_tokens (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.all_nucs_tokens", false]], "all_residues (in module moleculib.protein.alphabet)": [[29, "id1", false], [29, "moleculib.protein.alphabet.all_residues", false]], "all_residues (in module moleculib.protein.datum)": [[32, "moleculib.protein.datum.all_residues", false]], "all_residues (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.all_residues", false]], "all_residues (in module moleculib.sequence.datum)": [[42, "moleculib.sequence.datum.all_residues", false]], "all_residues_atom_mask (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.all_residues_atom_mask", false]], "all_residues_atom_tokens (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.all_residues_atom_tokens", false]], "all_residues_tokens (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.all_residues_tokens", false]], "allowed_aa (in module moleculib.sequence.datum)": [[42, "moleculib.sequence.datum.allowed_aa", false]], "alphabet (in module moleculib.sequence.utils)": [[46, "moleculib.sequence.utils.alphabet", false]], "annotatesecondarystructure (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.AnnotateSecondaryStructure", false]], "api_url (in module moleculib.sequence.datum)": [[42, "moleculib.sequence.datum.API_URL", false]], "apply_angles() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.apply_angles", false]], "apply_angles() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.apply_angles", false]], "apply_angles() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.apply_angles", false]], "apply_angles() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.apply_angles", false]], "apply_angles() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.apply_angles", false]], "apply_angles() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.apply_angles", false]], "apply_angles() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.apply_angles", false]], "apply_angles() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.apply_angles", false]], "apply_angles() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.apply_angles", false]], "apply_angles() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.apply_angles", false]], "apply_bonds() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.apply_bonds", false]], "apply_bonds() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.apply_bonds", false]], "apply_bonds() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.apply_bonds", false]], "apply_bonds() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.apply_bonds", false]], "apply_bonds() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.apply_bonds", false]], "apply_bonds() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.apply_bonds", false]], "apply_bonds() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.apply_bonds", false]], "apply_bonds() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.apply_bonds", false]], "apply_bonds() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.apply_bonds", false]], "apply_bonds() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.apply_bonds", false]], "apply_dihedrals() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.apply_dihedrals", false]], "apply_dihedrals() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.apply_dihedrals", false]], "apply_dihedrals() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.apply_dihedrals", false]], "apply_dihedrals() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.apply_dihedrals", false]], "apply_dihedrals() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.apply_dihedrals", false]], "apply_dihedrals() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.apply_dihedrals", false]], "apply_dihedrals() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.apply_dihedrals", false]], "apply_dihedrals() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.apply_dihedrals", false]], "apply_dihedrals() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.apply_dihedrals", false]], "apply_dihedrals() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.apply_dihedrals", false]], "applymetricstoprotein (class in moleculib.assembly.metrics)": [[8, "moleculib.assembly.metrics.ApplyMetricsToProtein", false]], "applytoproteins (class in moleculib.assembly.transform)": [[9, "moleculib.assembly.transform.ApplyToProteins", false]], "assemblydatum (class in moleculib.assembly.datum)": [[6, "moleculib.assembly.datum.AssemblyDatum", false]], "assemblydatum (class in moleculib.assembly.metrics)": [[8, "moleculib.assembly.metrics.AssemblyDatum", false]], "assemblydatum (class in moleculib.assembly.transform)": [[9, "moleculib.assembly.transform.AssemblyDatum", false]], "assemblymetric (class in moleculib.assembly.metrics)": [[8, "moleculib.assembly.metrics.AssemblyMetric", false]], "assemblytransform (class in moleculib.assembly.transform)": [[9, "moleculib.assembly.transform.AssemblyTransform", false]], "astype() (moleculib.protein.jax_utils.stringarray method)": [[34, "moleculib.protein.jax_utils.StringArray.astype", false]], "at() (moleculib.molecule.dataset.misatodatum method)": [[14, "moleculib.molecule.dataset.MISATODatum.at", false]], "at() (moleculib.molecule.datum.misatodatum method)": [[15, "moleculib.molecule.datum.MISATODatum.at", false]], "atlasdataset (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.AtlasDataset", false]], "atlaseif4edataset (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.AtlasEIF4EDataset", false]], "atom_index() (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.atom_index", false]], "atom_index() (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.atom_index", false]], "atom_index() (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.atom_index", false]], "atom_index() (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.atom_index", false]], "atom_index() (in module moleculib.protein.datum)": [[32, "moleculib.protein.datum.atom_index", false]], "atom_to_nucs_index (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.atom_to_nucs_index", false]], "atom_to_nucs_index (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.atom_to_nucs_index", false]], "atom_to_nucs_index (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.atom_to_nucs_index", false]], "atom_to_nucs_mask (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.atom_to_nucs_mask", false]], "atom_to_nucs_mask (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.atom_to_nucs_mask", false]], "atom_to_nucs_mask (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.atom_to_nucs_mask", false]], "atom_to_residues_index (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.atom_to_residues_index", false]], "atom_to_residues_index (in module moleculib.protein.datum)": [[32, "moleculib.protein.datum.atom_to_residues_index", false]], "atom_to_residues_mask (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.atom_to_residues_mask", false]], "atomfeatures (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.AtomFeatures", false]], "atomfeatures (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.AtomFeatures", false]], "atomic_numbers_map (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.atomic_numbers_Map", false]], "atoms_per_nuc (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.atoms_per_nuc", false]], "atoms_per_nuc (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.atoms_per_nuc", false]], "atoms_per_nuc (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.atoms_per_nuc", false]], "atoms_per_residue (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.atoms_per_residue", false]], "backbone_atoms (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.backbone_atoms", false]], "backbone_atoms (in module moleculib.protein.batch)": [[30, "moleculib.protein.batch.backbone_atoms", false]], "backbone_atoms (in module moleculib.protein.datum)": [[32, "moleculib.protein.datum.backbone_atoms", false]], "backbone_atoms (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.backbone_atoms", false]], "backbone_atoms_dna (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.backbone_atoms_DNA", false]], "backbone_atoms_dna (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.backbone_atoms_DNA", false]], "backbone_atoms_dna (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.backbone_atoms_DNA", false]], "backbone_atoms_rna (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.backbone_atoms_RNA", false]], "backbone_atoms_rna (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.backbone_atoms_RNA", false]], "backbone_atoms_rna (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.backbone_atoms_RNA", false]], "backbone_chemistry (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.backbone_chemistry", false]], "backboneonly (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.BackboneOnly", false]], "base_atoms_per_nuc (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.base_atoms_per_nuc", false]], "base_atoms_per_nuc (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.base_atoms_per_nuc", false]], "base_atoms_per_nuc (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.base_atoms_per_nuc", false]], "bond_lens_arr (in module moleculib.protein.alphabet)": [[29, "id2", false], [29, "moleculib.protein.alphabet.bond_lens_arr", false]], "bond_lens_arr (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.bond_lens_arr", false]], "build() (moleculib.molecule.dataset.pdbmoleculedataset class method)": [[14, "moleculib.molecule.dataset.PDBMoleculeDataset.build", false]], "build() (moleculib.protein.dataset.pdbdataset class method)": [[31, "moleculib.protein.dataset.PDBDataset.build", false]], "caonly (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.CaOnly", false]], "casttobfloat (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.CastToBFloat", false]], "centralize (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.Centralize", false]], "centralize (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.Centralize", false]], "centralize() (moleculib.molecule.dataset.reactdatum method)": [[14, "moleculib.molecule.dataset.ReactDatum.centralize", false]], "centralize() (moleculib.molecule.datum.reactdatum method)": [[15, "moleculib.molecule.datum.ReactDatum.centralize", false]], "chain_counter_fields (in module moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.CHAIN_COUNTER_FIELDS", false]], "check_dataloader_batch_size() (in module moleculib.molecule.tests.loader_test)": [[19, "moleculib.molecule.tests.loader_test.check_dataloader_batch_size", false]], "check_dataloader_batch_size() (in module moleculib.protein.tests.loader_test)": [[38, "moleculib.protein.tests.loader_test.check_dataloader_batch_size", false]], "chemicaldeviationmetric (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.ChemicalDeviationMetric", false]], "chromadataset (class in moleculib.assembly.dataset)": [[5, "moleculib.assembly.dataset.ChromaDataset", false]], "collate() (moleculib.molecule.batch.moleculecollator class method)": [[13, "moleculib.molecule.batch.MoleculeCollator.collate", false]], "collate() (moleculib.molecule.batch.moleculegeometricbatch class method)": [[13, "moleculib.molecule.batch.MoleculeGeometricBatch.collate", false]], "collate() (moleculib.molecule.batch.moleculepadbatch class method)": [[13, "moleculib.molecule.batch.MoleculePadBatch.collate", false]], "collate() (moleculib.protein.batch.geometricbatch class method)": [[30, "moleculib.protein.batch.GeometricBatch.collate", false]], "collate() (moleculib.protein.batch.padbatch class method)": [[30, "moleculib.protein.batch.PadBatch.collate", false]], "collate() (moleculib.protein.batch.proteincollator class method)": [[30, "moleculib.protein.batch.ProteinCollator.collate", false]], "complexpad (class in moleculib.assembly.transform)": [[9, "moleculib.assembly.transform.ComplexPad", false]], "config (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.config", false]], "config (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.config", false]], "config (in module moleculib.nucleic.utils)": [[28, "moleculib.nucleic.utils.config", false]], "config (in module moleculib.protein.utils)": [[40, "moleculib.protein.utils.config", false]], "coord_center() (moleculib.molecule.dataset.crossdockdatum method)": [[14, "moleculib.molecule.dataset.CrossdockDatum.coord_center", false]], "coord_center() (moleculib.molecule.dataset.pdbbinddatum method)": [[14, "moleculib.molecule.dataset.PDBBindDatum.coord_center", false]], "coord_center() (moleculib.molecule.datum.crossdockdatum method)": [[15, "moleculib.molecule.datum.CrossdockDatum.coord_center", false]], "coord_center() (moleculib.molecule.datum.pdbbinddatum method)": [[15, "moleculib.molecule.datum.PDBBindDatum.coord_center", false]], "countclashes (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.CountClashes", false]], "create_pdb() (in module moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.create_pdb", false]], "create_pdb() (in module moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.create_pdb", false]], "create_pdb() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.create_pdb", false]], "create_pdb_lines_md() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.create_pdb_lines_MD", false]], "create_pdb_lines_qm() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.create_pdb_lines_QM", false]], "crossdockdatum (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.CrossdockDatum", false]], "crossdockdatum (class in moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.CrossdockDatum", false]], "dataset (class in moleculib.abstract.dataset)": [[1, "moleculib.abstract.dataset.Dataset", false]], "dataset (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.Dataset", false]], "decode_one_hot() (in module moleculib.sequence.utils)": [[46, "moleculib.sequence.utils.decode_one_hot", false]], "default_colors (in module moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.DEFAULT_COLORS", false]], "dehydrate() (moleculib.molecule.dataset.misatodatum method)": [[14, "moleculib.molecule.dataset.MISATODatum.dehydrate", false]], "dehydrate() (moleculib.molecule.datum.misatodatum method)": [[15, "moleculib.molecule.datum.MISATODatum.dehydrate", false]], "densitydatum (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.DensityDatum", false]], "densitydatum (class in moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.DensityDatum", false]], "describechemistry (class in moleculib.assembly.metrics)": [[8, "moleculib.assembly.metrics.DescribeChemistry", false]], "describechemistry (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.DescribeChemistry", false]], "describechemistry (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.DescribeChemistry", false]], "describegraph (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.DescribeGraph", false]], "describegraph (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.DescribeGraph", false]], "dna_datum (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.dna_datum", false]], "dna_res_names (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.dna_res_names", false]], "dna_res_tokens (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.dna_res_tokens", false]], "dna_res_tokens (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.dna_res_tokens", false]], "dtype (moleculib.protein.jax_utils.stringarray attribute)": [[34, "moleculib.protein.jax_utils.StringArray.dtype", false]], "elements (in module moleculib.molecule.alphabet)": [[12, "moleculib.molecule.alphabet.elements", false]], "elements (in module moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.elements", false]], "elements (in module moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.elements", false]], "elements (in module moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.elements", false]], "elements (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.elements", false]], "elements (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.elements", false]], "elements (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.elements", false]], "elements (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.elements", false]], "elutedliganddataset (class in moleculib.sequence.dataset)": [[41, "moleculib.sequence.dataset.ElutedLigandDataset", false]], "empty() (moleculib.assembly.datum.moleculedatum method)": [[6, "moleculib.assembly.datum.MoleculeDatum.empty", false]], "empty() (moleculib.assembly.datum.proteindatum class method)": [[6, "moleculib.assembly.datum.ProteinDatum.empty", false]], "empty() (moleculib.assembly.transform.proteindatum class method)": [[9, "moleculib.assembly.transform.ProteinDatum.empty", false]], "empty() (moleculib.graphics.py3dmol.moleculedatum method)": [[10, "moleculib.graphics.py3Dmol.MoleculeDatum.empty", false]], "empty() (moleculib.graphics.py3dmol.proteindatum class method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.empty", false]], "empty() (moleculib.molecule.batch.moleculedatum method)": [[13, "moleculib.molecule.batch.MoleculeDatum.empty", false]], "empty() (moleculib.molecule.datum.moleculedatum method)": [[15, "moleculib.molecule.datum.MoleculeDatum.empty", false]], "empty() (moleculib.molecule.transform.moleculedatum method)": [[20, "moleculib.molecule.transform.MoleculeDatum.empty", false]], "empty() (moleculib.protein.batch.proteindatum class method)": [[30, "moleculib.protein.batch.ProteinDatum.empty", false]], "empty() (moleculib.protein.dataset.proteindatum class method)": [[31, "moleculib.protein.dataset.ProteinDatum.empty", false]], "empty() (moleculib.protein.datum.proteindatum class method)": [[32, "moleculib.protein.datum.ProteinDatum.empty", false]], "empty() (moleculib.protein.metrics.proteindatum class method)": [[36, "moleculib.protein.metrics.ProteinDatum.empty", false]], "empty() (moleculib.protein.transform.proteindatum class method)": [[39, "moleculib.protein.transform.ProteinDatum.empty", false]], "empty() (moleculib.protein.utils.proteindatum class method)": [[40, "moleculib.protein.utils.ProteinDatum.empty", false]], "empty() (moleculib.traj.dataset.proteindatum class method)": [[47, "moleculib.traj.dataset.ProteinDatum.empty", false]], "empty_molecule() (moleculib.molecule.dataset.pdbmoleculedatum class method)": [[14, "moleculib.molecule.dataset.PDBMoleculeDatum.empty_molecule", false]], "empty_molecule() (moleculib.molecule.datum.pdbmoleculedatum class method)": [[15, "moleculib.molecule.datum.PDBMoleculeDatum.empty_molecule", false]], "empty_nuc() (moleculib.graphics.py3dmol.nucleicdatum class method)": [[10, "moleculib.graphics.py3Dmol.NucleicDatum.empty_nuc", false]], "empty_nuc() (moleculib.nucleic.datum.nucleicdatum class method)": [[25, "moleculib.nucleic.datum.NucleicDatum.empty_nuc", false]], "empty_nuc() (moleculib.nucleic.transform.nucleicdatum class method)": [[27, "moleculib.nucleic.transform.NucleicDatum.empty_nuc", false]], "empty_seqrecord() (moleculib.sequence.dataset.seqdatum class method)": [[41, "moleculib.sequence.dataset.SeqDatum.empty_seqrecord", false]], "empty_seqrecord() (moleculib.sequence.datum.seqdatum class method)": [[42, "moleculib.sequence.datum.SeqDatum.empty_seqrecord", false]], "enzymecommissiondataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.EnzymeCommissionDataset", false]], "extract_rdkit_mol_properties() (in module moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.extract_rdkit_mol_properties", false]], "extract_rdkit_mol_properties() (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.extract_rdkit_mol_properties", false]], "fastfoldingdataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.FastFoldingDataset", false]], "fetch_pdb_id() (moleculib.assembly.datum.assemblydatum class method)": [[6, "moleculib.assembly.datum.AssemblyDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.assembly.datum.proteindatum class method)": [[6, "moleculib.assembly.datum.ProteinDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.assembly.metrics.assemblydatum class method)": [[8, "moleculib.assembly.metrics.AssemblyDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.assembly.transform.assemblydatum class method)": [[9, "moleculib.assembly.transform.AssemblyDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.assembly.transform.proteindatum class method)": [[9, "moleculib.assembly.transform.ProteinDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.graphics.py3dmol.nucleicdatum class method)": [[10, "moleculib.graphics.py3Dmol.NucleicDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.graphics.py3dmol.proteindatum class method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.molecule.dataset.pdbmoleculedatum class method)": [[14, "moleculib.molecule.dataset.PDBMoleculeDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.molecule.datum.pdbmoleculedatum class method)": [[15, "moleculib.molecule.datum.PDBMoleculeDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.nucleic.datum.nucleicdatum class method)": [[25, "moleculib.nucleic.datum.NucleicDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.nucleic.transform.nucleicdatum class method)": [[27, "moleculib.nucleic.transform.NucleicDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.protein.batch.proteindatum class method)": [[30, "moleculib.protein.batch.ProteinDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.protein.dataset.proteindatum class method)": [[31, "moleculib.protein.dataset.ProteinDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.protein.datum.proteindatum class method)": [[32, "moleculib.protein.datum.ProteinDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.protein.metrics.proteindatum class method)": [[36, "moleculib.protein.metrics.ProteinDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.protein.transform.proteindatum class method)": [[39, "moleculib.protein.transform.ProteinDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.protein.utils.proteindatum class method)": [[40, "moleculib.protein.utils.ProteinDatum.fetch_pdb_id", false]], "fetch_pdb_id() (moleculib.traj.dataset.proteindatum class method)": [[47, "moleculib.traj.dataset.ProteinDatum.fetch_pdb_id", false]], "filter_proteins() (moleculib.assembly.datum.assemblydatum method)": [[6, "moleculib.assembly.datum.AssemblyDatum.filter_proteins", false]], "filter_proteins() (moleculib.assembly.metrics.assemblydatum method)": [[8, "moleculib.assembly.metrics.AssemblyDatum.filter_proteins", false]], "filter_proteins() (moleculib.assembly.transform.assemblydatum method)": [[9, "moleculib.assembly.transform.AssemblyDatum.filter_proteins", false]], "filterproteinchains (class in moleculib.assembly.transform)": [[9, "moleculib.assembly.transform.FilterProteinChains", false]], "folddataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.FoldDataset", false]], "foldingdiffdataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.FoldingDiffDataset", false]], "framediffdataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.FrameDiffDataset", false]], "from_atom_array() (moleculib.assembly.datum.proteindatum class method)": [[6, "moleculib.assembly.datum.ProteinDatum.from_atom_array", false]], "from_atom_array() (moleculib.assembly.transform.proteindatum class method)": [[9, "moleculib.assembly.transform.ProteinDatum.from_atom_array", false]], "from_atom_array() (moleculib.graphics.py3dmol.nucleicdatum class method)": [[10, "moleculib.graphics.py3Dmol.NucleicDatum.from_atom_array", false]], "from_atom_array() (moleculib.graphics.py3dmol.proteindatum class method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.from_atom_array", false]], "from_atom_array() (moleculib.molecule.dataset.pdbmoleculedatum class method)": [[14, "moleculib.molecule.dataset.PDBMoleculeDatum.from_atom_array", false]], "from_atom_array() (moleculib.molecule.datum.pdbmoleculedatum class method)": [[15, "moleculib.molecule.datum.PDBMoleculeDatum.from_atom_array", false]], "from_atom_array() (moleculib.nucleic.datum.nucleicdatum class method)": [[25, "moleculib.nucleic.datum.NucleicDatum.from_atom_array", false]], "from_atom_array() (moleculib.nucleic.transform.nucleicdatum class method)": [[27, "moleculib.nucleic.transform.NucleicDatum.from_atom_array", false]], "from_atom_array() (moleculib.protein.batch.proteindatum class method)": [[30, "moleculib.protein.batch.ProteinDatum.from_atom_array", false]], "from_atom_array() (moleculib.protein.dataset.proteindatum class method)": [[31, "moleculib.protein.dataset.ProteinDatum.from_atom_array", false]], "from_atom_array() (moleculib.protein.datum.proteindatum class method)": [[32, "moleculib.protein.datum.ProteinDatum.from_atom_array", false]], "from_atom_array() (moleculib.protein.metrics.proteindatum class method)": [[36, "moleculib.protein.metrics.ProteinDatum.from_atom_array", false]], "from_atom_array() (moleculib.protein.transform.proteindatum class method)": [[39, "moleculib.protein.transform.ProteinDatum.from_atom_array", false]], "from_atom_array() (moleculib.protein.utils.proteindatum class method)": [[40, "moleculib.protein.utils.ProteinDatum.from_atom_array", false]], "from_atom_array() (moleculib.traj.dataset.proteindatum class method)": [[47, "moleculib.traj.dataset.ProteinDatum.from_atom_array", false]], "from_datalist() (moleculib.assembly.datum.assemblydatum method)": [[6, "moleculib.assembly.datum.AssemblyDatum.from_datalist", false]], "from_datalist() (moleculib.assembly.metrics.assemblydatum method)": [[8, "moleculib.assembly.metrics.AssemblyDatum.from_datalist", false]], "from_datalist() (moleculib.assembly.transform.assemblydatum method)": [[9, "moleculib.assembly.transform.AssemblyDatum.from_datalist", false]], "from_dict() (moleculib.assembly.datum.proteindatum class method)": [[6, "moleculib.assembly.datum.ProteinDatum.from_dict", false]], "from_dict() (moleculib.assembly.transform.proteindatum class method)": [[9, "moleculib.assembly.transform.ProteinDatum.from_dict", false]], "from_dict() (moleculib.graphics.py3dmol.proteindatum class method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.from_dict", false]], "from_dict() (moleculib.protein.batch.proteindatum class method)": [[30, "moleculib.protein.batch.ProteinDatum.from_dict", false]], "from_dict() (moleculib.protein.dataset.proteindatum class method)": [[31, "moleculib.protein.dataset.ProteinDatum.from_dict", false]], "from_dict() (moleculib.protein.datum.proteindatum class method)": [[32, "moleculib.protein.datum.ProteinDatum.from_dict", false]], "from_dict() (moleculib.protein.metrics.proteindatum class method)": [[36, "moleculib.protein.metrics.ProteinDatum.from_dict", false]], "from_dict() (moleculib.protein.transform.proteindatum class method)": [[39, "moleculib.protein.transform.ProteinDatum.from_dict", false]], "from_dict() (moleculib.protein.utils.proteindatum class method)": [[40, "moleculib.protein.utils.ProteinDatum.from_dict", false]], "from_dict() (moleculib.traj.dataset.proteindatum class method)": [[47, "moleculib.traj.dataset.ProteinDatum.from_dict", false]], "from_filepath() (moleculib.assembly.datum.assemblydatum class method)": [[6, "moleculib.assembly.datum.AssemblyDatum.from_filepath", false]], "from_filepath() (moleculib.assembly.datum.proteindatum class method)": [[6, "moleculib.assembly.datum.ProteinDatum.from_filepath", false]], "from_filepath() (moleculib.assembly.metrics.assemblydatum class method)": [[8, "moleculib.assembly.metrics.AssemblyDatum.from_filepath", false]], "from_filepath() (moleculib.assembly.transform.assemblydatum class method)": [[9, "moleculib.assembly.transform.AssemblyDatum.from_filepath", false]], "from_filepath() (moleculib.assembly.transform.proteindatum class method)": [[9, "moleculib.assembly.transform.ProteinDatum.from_filepath", false]], "from_filepath() (moleculib.graphics.py3dmol.nucleicdatum class method)": [[10, "moleculib.graphics.py3Dmol.NucleicDatum.from_filepath", false]], "from_filepath() (moleculib.graphics.py3dmol.proteindatum class method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.from_filepath", false]], "from_filepath() (moleculib.molecule.dataset.pdbmoleculedatum class method)": [[14, "moleculib.molecule.dataset.PDBMoleculeDatum.from_filepath", false]], "from_filepath() (moleculib.molecule.datum.pdbmoleculedatum class method)": [[15, "moleculib.molecule.datum.PDBMoleculeDatum.from_filepath", false]], "from_filepath() (moleculib.nucleic.datum.nucleicdatum class method)": [[25, "moleculib.nucleic.datum.NucleicDatum.from_filepath", false]], "from_filepath() (moleculib.nucleic.transform.nucleicdatum class method)": [[27, "moleculib.nucleic.transform.NucleicDatum.from_filepath", false]], "from_filepath() (moleculib.protein.batch.proteindatum class method)": [[30, "moleculib.protein.batch.ProteinDatum.from_filepath", false]], "from_filepath() (moleculib.protein.dataset.proteindatum class method)": [[31, "moleculib.protein.dataset.ProteinDatum.from_filepath", false]], "from_filepath() (moleculib.protein.datum.proteindatum class method)": [[32, "moleculib.protein.datum.ProteinDatum.from_filepath", false]], "from_filepath() (moleculib.protein.metrics.proteindatum class method)": [[36, "moleculib.protein.metrics.ProteinDatum.from_filepath", false]], "from_filepath() (moleculib.protein.transform.proteindatum class method)": [[39, "moleculib.protein.transform.ProteinDatum.from_filepath", false]], "from_filepath() (moleculib.protein.utils.proteindatum class method)": [[40, "moleculib.protein.utils.ProteinDatum.from_filepath", false]], "from_filepath() (moleculib.sequence.dataset.seqdatum class method)": [[41, "moleculib.sequence.dataset.SeqDatum.from_filepath", false]], "from_filepath() (moleculib.sequence.datum.seqdatum class method)": [[42, "moleculib.sequence.datum.SeqDatum.from_filepath", false]], "from_filepath() (moleculib.traj.dataset.proteindatum class method)": [[47, "moleculib.traj.dataset.ProteinDatum.from_filepath", false]], "from_pdb_id() (moleculib.sequence.dataset.seqdatum class method)": [[41, "moleculib.sequence.dataset.SeqDatum.from_pdb_id", false]], "from_pdb_id() (moleculib.sequence.datum.seqdatum class method)": [[42, "moleculib.sequence.datum.SeqDatum.from_pdb_id", false]], "from_sequence() (moleculib.sequence.dataset.seqdatum class method)": [[41, "moleculib.sequence.dataset.SeqDatum.from_sequence", false]], "from_sequence() (moleculib.sequence.datum.seqdatum class method)": [[42, "moleculib.sequence.datum.SeqDatum.from_sequence", false]], "from_tokens() (moleculib.sequence.dataset.seqdatum class method)": [[41, "moleculib.sequence.dataset.SeqDatum.from_tokens", false]], "from_tokens() (moleculib.sequence.datum.seqdatum class method)": [[42, "moleculib.sequence.datum.SeqDatum.from_tokens", false]], "from_uniprot_id() (moleculib.sequence.dataset.seqdatum class method)": [[41, "moleculib.sequence.dataset.SeqDatum.from_uniprot_id", false]], "from_uniprot_id() (moleculib.sequence.datum.seqdatum class method)": [[42, "moleculib.sequence.datum.SeqDatum.from_uniprot_id", false]], "funcdataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.FuncDataset", false]], "geneontologydataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.GeneOntologyDataset", false]], "geometricbatch (class in moleculib.protein.batch)": [[30, "moleculib.protein.batch.GeometricBatch", false]], "geometry_to_per_residue_indexing_array() (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.geometry_to_per_residue_indexing_array", false]], "get_atom_name() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.get_atom_name", false]], "get_entries() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.get_entries", false]], "get_entries_qm() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.get_entries_QM", false]], "get_maps() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.get_maps", false]], "get_nucleotide_index() (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.get_nucleotide_index", false]], "get_nucleotide_index() (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.get_nucleotide_index", false]], "get_nucleotide_index() (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.get_nucleotide_index", false]], "get_residue_index() (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.get_residue_index", false]], "get_residue_index() (in module moleculib.protein.datum)": [[32, "moleculib.protein.datum.get_residue_index", false]], "get_residue_index() (in module moleculib.sequence.datum)": [[42, "moleculib.sequence.datum.get_residue_index", false]], "gfpfitnessdataset (class in moleculib.sequence.dataset)": [[41, "moleculib.sequence.dataset.GFPFitnessDataset", false]], "home_dir (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.home_dir", false]], "home_dir (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.home_dir", false]], "home_dir (in module moleculib.nucleic.utils)": [[28, "moleculib.nucleic.utils.home_dir", false]], "home_dir (in module moleculib.protein.utils)": [[40, "moleculib.protein.utils.home_dir", false]], "inner_split() (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.inner_split", false]], "inner_stack() (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.inner_stack", false]], "insert_ters() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.insert_TERS", false]], "keep_neighborhood() (moleculib.molecule.dataset.misatodatum method)": [[14, "moleculib.molecule.dataset.MISATODatum.keep_neighborhood", false]], "keep_neighborhood() (moleculib.molecule.datum.misatodatum method)": [[15, "moleculib.molecule.datum.MISATODatum.keep_neighborhood", false]], "listangles (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.ListAngles", false]], "listbonds (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.ListBonds", false]], "listdihedrals (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.ListDihedrals", false]], "listmirrorflips (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.ListMirrorFlips", false]], "load_fasta_file() (in module moleculib.sequence.utils)": [[46, "moleculib.sequence.utils.load_fasta_file", false]], "load_index() (moleculib.molecule.dataset.pdbmoleculedataset method)": [[14, "moleculib.molecule.dataset.PDBMoleculeDataset.load_index", false]], "load_index() (moleculib.protein.dataset.pdbdataset method)": [[31, "moleculib.protein.dataset.PDBDataset.load_index", false]], "main() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.main", false]], "maskresidues (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.MaskResidues", false]], "max_arr_size (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.max_arr_size", false]], "max_complex_size (in module moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.MAX_COMPLEX_SIZE", false]], "max_dna_atoms (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.MAX_DNA_ATOMS", false]], "max_dna_atoms (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.MAX_DNA_ATOMS", false]], "max_dna_atoms (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.MAX_DNA_ATOMS", false]], "max_res_atoms (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.MAX_RES_ATOMS", false]], "max_res_atoms (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.MAX_RES_ATOMS", false]], "max_res_atoms (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.MAX_RES_ATOMS", false]], "maybemirror (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.MaybeMirror", false]], "measure_angles() (in module moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.measure_angles", false]], "measure_bonds() (in module moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.measure_bonds", false]], "measure_chirality() (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.measure_chirality", false]], "measure_dihedrals() (in module moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.measure_dihedrals", false]], "measure_rmsd() (in module moleculib.protein.utils)": [[40, "moleculib.protein.utils.measure_rmsd", false]], "metricspipe (class in moleculib.abstract.metrics)": [[3, "moleculib.abstract.metrics.MetricsPipe", false]], "metricspipe (class in moleculib.assembly.metrics)": [[8, "moleculib.assembly.metrics.MetricsPipe", false]], "mhcbindingaffinitydataset (class in moleculib.sequence.dataset)": [[41, "moleculib.sequence.dataset.MHCBindingAffinityDataset", false]], "misatodatum (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.MISATODatum", false]], "misatodatum (class in moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.MISATODatum", false]], "modeldataset (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.MODELDataset", false]], "module": [[1, "module-moleculib.abstract.dataset", false], [2, "module-moleculib.abstract", false], [3, "module-moleculib.abstract.metrics", false], [4, "module-moleculib.abstract.transform", false], [5, "module-moleculib.assembly.dataset", false], [6, "module-moleculib.assembly.datum", false], [7, "module-moleculib.assembly", false], [8, "module-moleculib.assembly.metrics", false], [9, "module-moleculib.assembly.transform", false], [10, "module-moleculib.graphics.py3Dmol", false], [11, "module-moleculib", false], [12, "module-moleculib.molecule.alphabet", false], [13, "module-moleculib.molecule.batch", false], [14, "module-moleculib.molecule.dataset", false], [15, "module-moleculib.molecule.datum", false], [16, "module-moleculib.molecule.h5_to_pdb", false], [17, "module-moleculib.molecule", false], [18, "module-moleculib.molecule.tests", false], [19, "module-moleculib.molecule.tests.loader_test", false], [20, "module-moleculib.molecule.transform", false], [21, "module-moleculib.molecule.utils", false], [22, "module-moleculib.nucleic.alphabet", false], [23, "module-moleculib.nucleic.batch", false], [24, "module-moleculib.nucleic.dataset", false], [25, "module-moleculib.nucleic.datum", false], [26, "module-moleculib.nucleic", false], [27, "module-moleculib.nucleic.transform", false], [28, "module-moleculib.nucleic.utils", false], [29, "module-moleculib.protein.alphabet", false], [30, "module-moleculib.protein.batch", false], [31, "module-moleculib.protein.dataset", false], [32, "module-moleculib.protein.datum", false], [33, "module-moleculib.protein", false], [34, "module-moleculib.protein.jax_utils", false], [35, "module-moleculib.protein.measures", false], [36, "module-moleculib.protein.metrics", false], [37, "module-moleculib.protein.tests", false], [38, "module-moleculib.protein.tests.loader_test", false], [39, "module-moleculib.protein.transform", false], [40, "module-moleculib.protein.utils", false], [41, "module-moleculib.sequence.dataset", false], [42, "module-moleculib.sequence.datum", false], [43, "module-moleculib.sequence", false], [44, "module-moleculib.sequence.metrics", false], [45, "module-moleculib.sequence.transform", false], [46, "module-moleculib.sequence.utils", false], [47, "module-moleculib.traj.dataset", false], [48, "module-moleculib.traj", false]], "moleculecollator (class in moleculib.molecule.batch)": [[13, "moleculib.molecule.batch.MoleculeCollator", false]], "moleculecrop (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.MoleculeCrop", false]], "moleculedatum (class in moleculib.assembly.datum)": [[6, "moleculib.assembly.datum.MoleculeDatum", false]], "moleculedatum (class in moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.MoleculeDatum", false]], "moleculedatum (class in moleculib.molecule.batch)": [[13, "moleculib.molecule.batch.MoleculeDatum", false]], "moleculedatum (class in moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.MoleculeDatum", false]], "moleculedatum (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.MoleculeDatum", false]], "moleculegeometricbatch (class in moleculib.molecule.batch)": [[13, "moleculib.molecule.batch.MoleculeGeometricBatch", false]], "moleculepad (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.MoleculePad", false]], "moleculepad (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.MoleculePad", false]], "moleculepadbatch (class in moleculib.molecule.batch)": [[13, "moleculib.molecule.batch.MoleculePadBatch", false]], "moleculetransform (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.MoleculeTransform", false]], "moleculetransform (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.MoleculeTransform", false]], "moleculib": [[11, "module-moleculib", false]], "moleculib.abstract": [[2, "module-moleculib.abstract", false]], "moleculib.abstract.dataset": [[1, "module-moleculib.abstract.dataset", false]], "moleculib.abstract.metrics": [[3, "module-moleculib.abstract.metrics", false]], "moleculib.abstract.transform": [[4, "module-moleculib.abstract.transform", false]], "moleculib.assembly": [[7, "module-moleculib.assembly", false]], "moleculib.assembly.dataset": [[5, "module-moleculib.assembly.dataset", false]], "moleculib.assembly.datum": [[6, "module-moleculib.assembly.datum", false]], "moleculib.assembly.metrics": [[8, "module-moleculib.assembly.metrics", false]], "moleculib.assembly.transform": [[9, "module-moleculib.assembly.transform", false]], "moleculib.graphics.py3dmol": [[10, "module-moleculib.graphics.py3Dmol", false]], "moleculib.molecule": [[17, "module-moleculib.molecule", false]], "moleculib.molecule.alphabet": [[12, "module-moleculib.molecule.alphabet", false]], "moleculib.molecule.batch": [[13, "module-moleculib.molecule.batch", false]], "moleculib.molecule.dataset": [[14, "module-moleculib.molecule.dataset", false]], "moleculib.molecule.datum": [[15, "module-moleculib.molecule.datum", false]], "moleculib.molecule.h5_to_pdb": [[16, "module-moleculib.molecule.h5_to_pdb", false]], "moleculib.molecule.tests": [[18, "module-moleculib.molecule.tests", false]], "moleculib.molecule.tests.loader_test": [[19, "module-moleculib.molecule.tests.loader_test", false]], "moleculib.molecule.transform": [[20, "module-moleculib.molecule.transform", false]], "moleculib.molecule.utils": [[21, "module-moleculib.molecule.utils", false]], "moleculib.nucleic": [[26, "module-moleculib.nucleic", false]], "moleculib.nucleic.alphabet": [[22, "module-moleculib.nucleic.alphabet", false]], "moleculib.nucleic.batch": [[23, "module-moleculib.nucleic.batch", false]], "moleculib.nucleic.dataset": [[24, "module-moleculib.nucleic.dataset", false]], "moleculib.nucleic.datum": [[25, "module-moleculib.nucleic.datum", false]], "moleculib.nucleic.transform": [[27, "module-moleculib.nucleic.transform", false]], "moleculib.nucleic.utils": [[28, "module-moleculib.nucleic.utils", false]], "moleculib.protein": [[33, "module-moleculib.protein", false]], "moleculib.protein.alphabet": [[29, "module-moleculib.protein.alphabet", false]], "moleculib.protein.batch": [[30, "module-moleculib.protein.batch", false]], "moleculib.protein.dataset": [[31, "module-moleculib.protein.dataset", false]], "moleculib.protein.datum": [[32, "module-moleculib.protein.datum", false]], "moleculib.protein.jax_utils": [[34, "module-moleculib.protein.jax_utils", false]], "moleculib.protein.measures": [[35, "module-moleculib.protein.measures", false]], "moleculib.protein.metrics": [[36, "module-moleculib.protein.metrics", false]], "moleculib.protein.tests": [[37, "module-moleculib.protein.tests", false]], "moleculib.protein.tests.loader_test": [[38, "module-moleculib.protein.tests.loader_test", false]], "moleculib.protein.transform": [[39, "module-moleculib.protein.transform", false]], "moleculib.protein.utils": [[40, "module-moleculib.protein.utils", false]], "moleculib.sequence": [[43, "module-moleculib.sequence", false]], "moleculib.sequence.dataset": [[41, "module-moleculib.sequence.dataset", false]], "moleculib.sequence.datum": [[42, "module-moleculib.sequence.datum", false]], "moleculib.sequence.metrics": [[44, "module-moleculib.sequence.metrics", false]], "moleculib.sequence.transform": [[45, "module-moleculib.sequence.transform", false]], "moleculib.sequence.utils": [[46, "module-moleculib.sequence.utils", false]], "moleculib.traj": [[48, "module-moleculib.traj", false]], "moleculib.traj.dataset": [[47, "module-moleculib.traj.dataset", false]], "monomerdataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.MonomerDataset", false]], "ndim (moleculib.protein.jax_utils.stringarray attribute)": [[34, "moleculib.protein.jax_utils.StringArray.ndim", false]], "neighborhood_idxs() (moleculib.molecule.dataset.misatodatum method)": [[14, "moleculib.molecule.dataset.MISATODatum.neighborhood_idxs", false]], "neighborhood_idxs() (moleculib.molecule.datum.misatodatum method)": [[15, "moleculib.molecule.datum.MISATODatum.neighborhood_idxs", false]], "norm() (in module moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.norm", false]], "normalize() (in module moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.normalize", false]], "normalize() (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.normalize", false]], "nuccrop (class in moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.NucCrop", false]], "nucleicdatum (class in moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.NucleicDatum", false]], "nucleicdatum (class in moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.NucleicDatum", false]], "nucleicdatum (class in moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.NucleicDatum", false]], "nucpad (class in moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.NucPad", false]], "nuctransform (class in moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.NucTransform", false]], "num_steps (in module moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.NUM_STEPS", false]], "numpy() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.numpy", false]], "numpy() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.numpy", false]], "numpy() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.numpy", false]], "numpy() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.numpy", false]], "numpy() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.numpy", false]], "numpy() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.numpy", false]], "numpy() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.numpy", false]], "numpy() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.numpy", false]], "numpy() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.numpy", false]], "numpy() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.numpy", false]], "one_hot_encode_seq() (in module moleculib.sequence.utils)": [[46, "moleculib.sequence.utils.one_hot_encode_seq", false]], "onehot_encode_datum() (in module moleculib.sequence.dataset)": [[41, "moleculib.sequence.dataset.onehot_encode_datum", false]], "onehot_encode_datum() (in module moleculib.sequence.utils)": [[46, "moleculib.sequence.utils.onehot_encode_datum", false]], "onehot_encode_datum() (moleculib.sequence.dataset.seqdatum method)": [[41, "moleculib.sequence.dataset.SeqDatum.onehot_encode_datum", false]], "onehot_encode_datum() (moleculib.sequence.datum.seqdatum method)": [[42, "moleculib.sequence.datum.SeqDatum.onehot_encode_datum", false]], "pad_array() (in module moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.pad_array", false]], "pad_array() (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.pad_array", false]], "pad_array() (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.pad_array", false]], "pad_array() (in module moleculib.nucleic.utils)": [[28, "moleculib.nucleic.utils.pad_array", false]], "pad_array() (in module moleculib.protein.batch)": [[30, "moleculib.protein.batch.pad_array", false]], "pad_array() (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.pad_array", false]], "pad_array() (in module moleculib.protein.utils)": [[40, "moleculib.protein.utils.pad_array", false]], "padbatch (class in moleculib.protein.batch)": [[30, "moleculib.protein.batch.PadBatch", false]], "pairpad (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.PairPad", false]], "pairpad (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.PairPad", false]], "parse() (moleculib.protein.dataset.monomerdataset method)": [[31, "moleculib.protein.dataset.MonomerDataset.parse", false]], "parse() (moleculib.protein.dataset.pdbdataset method)": [[31, "moleculib.protein.dataset.PDBDataset.parse", false]], "parser (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.parser", false]], "pdb_header_fields (in module moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.PDB_HEADER_FIELDS", false]], "pdb_metadata_fields (in module moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.PDB_METADATA_FIELDS", false]], "pdb_str() (moleculib.molecule.dataset.misatodatum method)": [[14, "moleculib.molecule.dataset.MISATODatum.pdb_str", false]], "pdb_str() (moleculib.molecule.datum.misatodatum method)": [[15, "moleculib.molecule.datum.MISATODatum.pdb_str", false]], "pdb_to_atom_array() (in module moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.pdb_to_atom_array", false]], "pdb_to_atom_array() (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.pdb_to_atom_array", false]], "pdb_to_atom_array() (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.pdb_to_atom_array", false]], "pdb_to_atom_array() (in module moleculib.nucleic.utils)": [[28, "moleculib.nucleic.utils.pdb_to_atom_array", false]], "pdb_to_atom_array() (in module moleculib.protein.utils)": [[40, "moleculib.protein.utils.pdb_to_atom_array", false]], "pdbbinddatum (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.PDBBindDatum", false]], "pdbbinddatum (class in moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.PDBBindDatum", false]], "pdbdataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.PDBDataset", false]], "pdbmoleculedataset (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.PDBMoleculeDataset", false]], "pdbmoleculedatum (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.PDBMoleculeDatum", false]], "pdbmoleculedatum (class in moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.PDBMoleculeDatum", false]], "periodic_table (in module moleculib.molecule.alphabet)": [[12, "moleculib.molecule.alphabet.PERIODIC_TABLE", false]], "periodic_table (in module moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.PERIODIC_TABLE", false]], "permuter (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.Permuter", false]], "permuter (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.Permuter", false]], "pids_file_to_list() (in module moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.pids_file_to_list", false]], "pids_file_to_list() (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.pids_file_to_list", false]], "pids_file_to_list() (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.pids_file_to_list", false]], "pids_file_to_list() (in module moleculib.nucleic.utils)": [[28, "moleculib.nucleic.utils.pids_file_to_list", false]], "pids_file_to_list() (in module moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.pids_file_to_list", false]], "pids_file_to_list() (in module moleculib.protein.utils)": [[40, "moleculib.protein.utils.pids_file_to_list", false]], "plot() (moleculib.assembly.datum.assemblydatum method)": [[6, "moleculib.assembly.datum.AssemblyDatum.plot", false]], "plot() (moleculib.assembly.datum.moleculedatum method)": [[6, "moleculib.assembly.datum.MoleculeDatum.plot", false]], "plot() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.plot", false]], "plot() (moleculib.assembly.metrics.assemblydatum method)": [[8, "moleculib.assembly.metrics.AssemblyDatum.plot", false]], "plot() (moleculib.assembly.transform.assemblydatum method)": [[9, "moleculib.assembly.transform.AssemblyDatum.plot", false]], "plot() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.plot", false]], "plot() (moleculib.graphics.py3dmol.moleculedatum method)": [[10, "moleculib.graphics.py3Dmol.MoleculeDatum.plot", false]], "plot() (moleculib.graphics.py3dmol.nucleicdatum method)": [[10, "moleculib.graphics.py3Dmol.NucleicDatum.plot", false]], "plot() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.plot", false]], "plot() (moleculib.molecule.batch.moleculedatum method)": [[13, "moleculib.molecule.batch.MoleculeDatum.plot", false]], "plot() (moleculib.molecule.datum.moleculedatum method)": [[15, "moleculib.molecule.datum.MoleculeDatum.plot", false]], "plot() (moleculib.molecule.transform.moleculedatum method)": [[20, "moleculib.molecule.transform.MoleculeDatum.plot", false]], "plot() (moleculib.nucleic.datum.nucleicdatum method)": [[25, "moleculib.nucleic.datum.NucleicDatum.plot", false]], "plot() (moleculib.nucleic.transform.nucleicdatum method)": [[27, "moleculib.nucleic.transform.NucleicDatum.plot", false]], "plot() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.plot", false]], "plot() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.plot", false]], "plot() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.plot", false]], "plot() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.plot", false]], "plot() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.plot", false]], "plot() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.plot", false]], "plot() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.plot", false]], "plot_density() (moleculib.graphics.py3dmol.plotdensity method)": [[10, "moleculib.graphics.py3Dmol.PlotDensity.plot_density", false]], "plot_dock() (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.plot_dock", false]], "plot_py3dmol() (in module moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.plot_py3dmol", false]], "plot_py3dmol_grid() (in module moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.plot_py3dmol_grid", false]], "plot_py3dmol_grid() (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.plot_py3dmol_grid", false]], "plot_py3dmol_traj() (in module moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.plot_py3dmol_traj", false]], "plotdensity (class in moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.PlotDensity", false]], "plotpy3dmolsamples (class in moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.PlotPy3DmolSamples", false]], "pocket_pdb_str() (moleculib.molecule.dataset.pdbbinddatum method)": [[14, "moleculib.molecule.dataset.PDBBindDatum.pocket_pdb_str", false]], "pocket_pdb_str() (moleculib.molecule.datum.pdbbinddatum method)": [[15, "moleculib.molecule.datum.PDBBindDatum.pocket_pdb_str", false]], "preprocesseddataset (class in moleculib.abstract.dataset)": [[1, "moleculib.abstract.dataset.PreProcessedDataset", false]], "preprocesseddataset (class in moleculib.assembly.dataset)": [[5, "moleculib.assembly.dataset.PreProcessedDataset", false]], "preprocesseddataset (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.PreProcessedDataset", false]], "preprocesseddataset (class in moleculib.nucleic.dataset)": [[24, "moleculib.nucleic.dataset.PreProcessedDataset", false]], "preprocesseddataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.PreProcessedDataset", false]], "preprocesseddataset (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.PreProcessedDataset", false]], "protein_pdb_str() (moleculib.molecule.dataset.crossdockdatum method)": [[14, "moleculib.molecule.dataset.CrossdockDatum.protein_pdb_str", false]], "protein_pdb_str() (moleculib.molecule.dataset.pdbbinddatum method)": [[14, "moleculib.molecule.dataset.PDBBindDatum.protein_pdb_str", false]], "protein_pdb_str() (moleculib.molecule.datum.crossdockdatum method)": [[15, "moleculib.molecule.datum.CrossdockDatum.protein_pdb_str", false]], "protein_pdb_str() (moleculib.molecule.datum.pdbbinddatum method)": [[15, "moleculib.molecule.datum.PDBBindDatum.protein_pdb_str", false]], "proteincollator (class in moleculib.protein.batch)": [[30, "moleculib.protein.batch.ProteinCollator", false]], "proteincrop (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.ProteinCrop", false]], "proteincrop (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.ProteinCrop", false]], "proteindatum (class in moleculib.assembly.datum)": [[6, "moleculib.assembly.datum.ProteinDatum", false]], "proteindatum (class in moleculib.assembly.transform)": [[9, "moleculib.assembly.transform.ProteinDatum", false]], "proteindatum (class in moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum", false]], "proteindatum (class in moleculib.protein.batch)": [[30, "moleculib.protein.batch.ProteinDatum", false]], "proteindatum (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.ProteinDatum", false]], "proteindatum (class in moleculib.protein.datum)": [[32, "moleculib.protein.datum.ProteinDatum", false]], "proteindatum (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.ProteinDatum", false]], "proteindatum (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.ProteinDatum", false]], "proteindatum (class in moleculib.protein.utils)": [[40, "moleculib.protein.utils.ProteinDatum", false]], "proteindatum (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.ProteinDatum", false]], "proteinmetric (class in moleculib.assembly.metrics)": [[8, "moleculib.assembly.metrics.ProteinMetric", false]], "proteinmetric (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.ProteinMetric", false]], "proteinpad (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.ProteinPad", false]], "proteinrescale (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.ProteinRescale", false]], "proteinsequence (class in moleculib.protein.datum)": [[32, "moleculib.protein.datum.ProteinSequence", false]], "proteintransform (class in moleculib.assembly.transform)": [[9, "moleculib.assembly.transform.ProteinTransform", false]], "proteintransform (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.ProteinTransform", false]], "proteintransform (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.ProteinTransform", false]], "proteintransform (class in moleculib.sequence.dataset)": [[41, "moleculib.sequence.dataset.ProteinTransform", false]], "qm9dataset (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.QM9Dataset", false]], "qm9datum (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.QM9Datum", false]], "qm9datum (class in moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.QM9Datum", false]], "qm9datum (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.QM9Datum", false]], "ravel() (moleculib.protein.jax_utils.stringarray method)": [[34, "moleculib.protein.jax_utils.StringArray.ravel", false]], "reactdatum (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.ReactDatum", false]], "reactdatum (class in moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.ReactDatum", false]], "register_pytree() (in module moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.register_pytree", false]], "register_pytree() (in module moleculib.molecule.utils)": [[21, "moleculib.molecule.utils.register_pytree", false]], "replace() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.replace", false]], "replace() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.replace", false]], "replace() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.replace", false]], "replace() (moleculib.molecule.dataset.misatodatum method)": [[14, "moleculib.molecule.dataset.MISATODatum.replace", false]], "replace() (moleculib.molecule.datum.misatodatum method)": [[15, "moleculib.molecule.datum.MISATODatum.replace", false]], "replace() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.replace", false]], "replace() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.replace", false]], "replace() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.replace", false]], "replace() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.replace", false]], "replace() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.replace", false]], "replace() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.replace", false]], "replace() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.replace", false]], "reshape() (moleculib.protein.jax_utils.stringarray method)": [[34, "moleculib.protein.jax_utils.StringArray.reshape", false]], "residue_tokens_to_sequence() (in module moleculib.sequence.utils)": [[46, "moleculib.sequence.utils.residue_tokens_to_sequence", false]], "revert() (moleculib.molecule.batch.moleculecollator method)": [[13, "moleculib.molecule.batch.MoleculeCollator.revert", false]], "revert() (moleculib.molecule.batch.moleculegeometricbatch method)": [[13, "moleculib.molecule.batch.MoleculeGeometricBatch.revert", false]], "revert() (moleculib.molecule.batch.moleculepadbatch method)": [[13, "moleculib.molecule.batch.MoleculePadBatch.revert", false]], "revert() (moleculib.protein.batch.geometricbatch method)": [[30, "moleculib.protein.batch.GeometricBatch.revert", false]], "revert() (moleculib.protein.batch.padbatch method)": [[30, "moleculib.protein.batch.PadBatch.revert", false]], "revert() (moleculib.protein.batch.proteincollator method)": [[30, "moleculib.protein.batch.ProteinCollator.revert", false]], "rigid_kabsch_3d() (in module moleculib.protein.utils)": [[40, "moleculib.protein.utils.rigid_Kabsch_3D", false]], "rna_res_names (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.rna_res_names", false]], "rna_res_tokens (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.rna_res_tokens", false]], "rna_res_tokens (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.rna_res_tokens", false]], "rnadataset (class in moleculib.nucleic.dataset)": [[24, "moleculib.nucleic.dataset.RNADataset", false]], "rsdataset (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.RSDataset", false]], "rsdatum (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.RSDatum", false]], "rsdatum (class in moleculib.molecule.datum)": [[15, "moleculib.molecule.datum.RSDatum", false]], "safe_norm() (in module moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.safe_norm", false]], "sample_pdbs (in module moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.SAMPLE_PDBS", false]], "save_fasta_file() (in module moleculib.sequence.utils)": [[46, "moleculib.sequence.utils.save_fasta_file", false]], "save_mmcif() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.save_mmcif", false]], "save_mmcif() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.save_mmcif", false]], "save_mmcif() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.save_mmcif", false]], "save_mmcif() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.save_mmcif", false]], "save_mmcif() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.save_mmcif", false]], "save_mmcif() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.save_mmcif", false]], "save_mmcif() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.save_mmcif", false]], "save_mmcif() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.save_mmcif", false]], "save_mmcif() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.save_mmcif", false]], "save_mmcif() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.save_mmcif", false]], "scaffoldsdataset (class in moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.ScaffoldsDataset", false]], "separate_chains() (moleculib.assembly.datum.proteindatum static method)": [[6, "moleculib.assembly.datum.ProteinDatum.separate_chains", false]], "separate_chains() (moleculib.assembly.transform.proteindatum static method)": [[9, "moleculib.assembly.transform.ProteinDatum.separate_chains", false]], "separate_chains() (moleculib.graphics.py3dmol.proteindatum static method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.separate_chains", false]], "separate_chains() (moleculib.protein.batch.proteindatum static method)": [[30, "moleculib.protein.batch.ProteinDatum.separate_chains", false]], "separate_chains() (moleculib.protein.dataset.proteindatum static method)": [[31, "moleculib.protein.dataset.ProteinDatum.separate_chains", false]], "separate_chains() (moleculib.protein.datum.proteindatum static method)": [[32, "moleculib.protein.datum.ProteinDatum.separate_chains", false]], "separate_chains() (moleculib.protein.metrics.proteindatum static method)": [[36, "moleculib.protein.metrics.ProteinDatum.separate_chains", false]], "separate_chains() (moleculib.protein.transform.proteindatum static method)": [[39, "moleculib.protein.transform.ProteinDatum.separate_chains", false]], "separate_chains() (moleculib.protein.utils.proteindatum static method)": [[40, "moleculib.protein.utils.ProteinDatum.separate_chains", false]], "separate_chains() (moleculib.traj.dataset.proteindatum static method)": [[47, "moleculib.traj.dataset.ProteinDatum.separate_chains", false]], "seqdatum (class in moleculib.sequence.dataset)": [[41, "moleculib.sequence.dataset.SeqDatum", false]], "seqdatum (class in moleculib.sequence.datum)": [[42, "moleculib.sequence.datum.SeqDatum", false]], "set() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.set", false]], "set() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.set", false]], "set() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.set", false]], "set() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.set", false]], "set() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.set", false]], "set() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.set", false]], "set() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.set", false]], "set() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.set", false]], "set() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.set", false]], "set() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.set", false]], "shape (moleculib.protein.jax_utils.stringarray attribute)": [[34, "moleculib.protein.jax_utils.StringArray.shape", false]], "shift() (moleculib.molecule.dataset.atomfeatures method)": [[14, "moleculib.molecule.dataset.AtomFeatures.shift", false]], "shift() (moleculib.molecule.transform.atomfeatures method)": [[20, "moleculib.molecule.transform.AtomFeatures.shift", false]], "sidechain_atoms_per_residue (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.sidechain_atoms_per_residue", false]], "sidechain_chemistry_per_residue (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.sidechain_chemistry_per_residue", false]], "singlebonds (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.SingleBonds", false]], "size (moleculib.protein.jax_utils.stringarray attribute)": [[34, "moleculib.protein.jax_utils.StringArray.size", false]], "sortatoms (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.SortAtoms", false]], "sortatoms (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.SortAtoms", false]], "special_tokens (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.special_tokens", false]], "special_tokens (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.special_tokens", false]], "special_tokens (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.special_tokens", false]], "special_tokens (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.special_tokens", false]], "sse_tokens (in module moleculib.protein.transform)": [[39, "moleculib.protein.transform.SSE_TOKENS", false]], "stackproteins (class in moleculib.assembly.transform)": [[9, "moleculib.assembly.transform.StackProteins", false]], "standard_chemical_measures (in module moleculib.protein.measures)": [[35, "moleculib.protein.measures.STANDARD_CHEMICAL_MEASURES", false]], "standard_chemical_measures (in module moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.STANDARD_CHEMICAL_MEASURES", false]], "standardangledeviation (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.StandardAngleDeviation", false]], "standardbonddeviation (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.StandardBondDeviation", false]], "standardchemicaldeviation (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.StandardChemicalDeviation", false]], "standarddihedraldeviation (class in moleculib.protein.metrics)": [[36, "moleculib.protein.metrics.StandardDihedralDeviation", false]], "standardizeproperties (class in moleculib.molecule.dataset)": [[14, "moleculib.molecule.dataset.StandardizeProperties", false]], "standardizeproperties (class in moleculib.molecule.transform)": [[20, "moleculib.molecule.transform.StandardizeProperties", false]], "stringarray (class in moleculib.protein.jax_utils)": [[34, "moleculib.protein.jax_utils.StringArray", false]], "t (moleculib.protein.jax_utils.stringarray attribute)": [[34, "moleculib.protein.jax_utils.StringArray.T", false]], "test_dataload_from_filesystem() (in module moleculib.molecule.tests.loader_test)": [[19, "moleculib.molecule.tests.loader_test.test_dataload_from_filesystem", false]], "test_dataload_from_filesystem() (in module moleculib.protein.tests.loader_test)": [[38, "moleculib.protein.tests.loader_test.test_dataload_from_filesystem", false]], "test_dataloader() (in module moleculib.molecule.tests.loader_test)": [[19, "moleculib.molecule.tests.loader_test.test_dataloader", false]], "test_dataloader() (in module moleculib.protein.tests.loader_test)": [[38, "moleculib.protein.tests.loader_test.test_dataloader", false]], "timewarpdataset (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.TimewarpDataset", false]], "timewarpdatasetpreprocessed (class in moleculib.traj.dataset)": [[47, "moleculib.traj.dataset.TimewarpDatasetPreprocessed", false]], "tinypdbdataset (class in moleculib.protein.dataset)": [[31, "id2", false], [31, "moleculib.protein.dataset.TinyPDBDataset", false]], "to() (moleculib.molecule.batch.moleculecollator method)": [[13, "moleculib.molecule.batch.MoleculeCollator.to", false]], "to() (moleculib.protein.batch.proteincollator method)": [[30, "moleculib.protein.batch.ProteinCollator.to", false]], "to_atom_array() (moleculib.assembly.datum.moleculedatum method)": [[6, "moleculib.assembly.datum.MoleculeDatum.to_atom_array", false]], "to_atom_array() (moleculib.graphics.py3dmol.moleculedatum method)": [[10, "moleculib.graphics.py3Dmol.MoleculeDatum.to_atom_array", false]], "to_atom_array() (moleculib.molecule.batch.moleculedatum method)": [[13, "moleculib.molecule.batch.MoleculeDatum.to_atom_array", false]], "to_atom_array() (moleculib.molecule.dataset.pdbmoleculedatum method)": [[14, "moleculib.molecule.dataset.PDBMoleculeDatum.to_atom_array", false]], "to_atom_array() (moleculib.molecule.datum.moleculedatum method)": [[15, "moleculib.molecule.datum.MoleculeDatum.to_atom_array", false]], "to_atom_array() (moleculib.molecule.datum.pdbmoleculedatum method)": [[15, "moleculib.molecule.datum.PDBMoleculeDatum.to_atom_array", false]], "to_atom_array() (moleculib.molecule.transform.moleculedatum method)": [[20, "moleculib.molecule.transform.MoleculeDatum.to_atom_array", false]], "to_dict() (moleculib.assembly.datum.proteindatum method)": [[6, "id0", false], [6, "moleculib.assembly.datum.ProteinDatum.to_dict", false]], "to_dict() (moleculib.assembly.transform.proteindatum method)": [[9, "id0", false], [9, "moleculib.assembly.transform.ProteinDatum.to_dict", false]], "to_dict() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "id0", false], [10, "moleculib.graphics.py3Dmol.ProteinDatum.to_dict", false]], "to_dict() (moleculib.molecule.batch.moleculecollator method)": [[13, "moleculib.molecule.batch.MoleculeCollator.to_dict", false]], "to_dict() (moleculib.protein.batch.proteincollator method)": [[30, "moleculib.protein.batch.ProteinCollator.to_dict", false]], "to_dict() (moleculib.protein.batch.proteindatum method)": [[30, "id0", false], [30, "moleculib.protein.batch.ProteinDatum.to_dict", false]], "to_dict() (moleculib.protein.dataset.proteindatum method)": [[31, "id0", false], [31, "moleculib.protein.dataset.ProteinDatum.to_dict", false]], "to_dict() (moleculib.protein.datum.proteindatum method)": [[32, "id0", false], [32, "moleculib.protein.datum.ProteinDatum.to_dict", false]], "to_dict() (moleculib.protein.metrics.proteindatum method)": [[36, "id0", false], [36, "moleculib.protein.metrics.ProteinDatum.to_dict", false]], "to_dict() (moleculib.protein.transform.proteindatum method)": [[39, "id0", false], [39, "moleculib.protein.transform.ProteinDatum.to_dict", false]], "to_dict() (moleculib.protein.utils.proteindatum method)": [[40, "id0", false], [40, "moleculib.protein.utils.ProteinDatum.to_dict", false]], "to_dict() (moleculib.traj.dataset.proteindatum method)": [[47, "id0", false], [47, "moleculib.traj.dataset.ProteinDatum.to_dict", false]], "to_pdb_str() (moleculib.assembly.datum.proteindatum method)": [[6, "moleculib.assembly.datum.ProteinDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.assembly.transform.proteindatum method)": [[9, "moleculib.assembly.transform.ProteinDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.graphics.py3dmol.nucleicdatum method)": [[10, "moleculib.graphics.py3Dmol.NucleicDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.graphics.py3dmol.proteindatum method)": [[10, "moleculib.graphics.py3Dmol.ProteinDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.nucleic.datum.nucleicdatum method)": [[25, "moleculib.nucleic.datum.NucleicDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.nucleic.transform.nucleicdatum method)": [[27, "moleculib.nucleic.transform.NucleicDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.protein.batch.proteindatum method)": [[30, "moleculib.protein.batch.ProteinDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.protein.dataset.proteindatum method)": [[31, "moleculib.protein.dataset.ProteinDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.protein.datum.proteindatum method)": [[32, "moleculib.protein.datum.ProteinDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.protein.metrics.proteindatum method)": [[36, "moleculib.protein.metrics.ProteinDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.protein.transform.proteindatum method)": [[39, "moleculib.protein.transform.ProteinDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.protein.utils.proteindatum method)": [[40, "moleculib.protein.utils.ProteinDatum.to_pdb_str", false]], "to_pdb_str() (moleculib.traj.dataset.proteindatum method)": [[47, "moleculib.traj.dataset.ProteinDatum.to_pdb_str", false]], "to_sdf_str() (moleculib.assembly.datum.moleculedatum method)": [[6, "moleculib.assembly.datum.MoleculeDatum.to_sdf_str", false]], "to_sdf_str() (moleculib.graphics.py3dmol.moleculedatum method)": [[10, "moleculib.graphics.py3Dmol.MoleculeDatum.to_sdf_str", false]], "to_sdf_str() (moleculib.molecule.batch.moleculedatum method)": [[13, "moleculib.molecule.batch.MoleculeDatum.to_sdf_str", false]], "to_sdf_str() (moleculib.molecule.dataset.pdbmoleculedatum method)": [[14, "moleculib.molecule.dataset.PDBMoleculeDatum.to_sdf_str", false]], "to_sdf_str() (moleculib.molecule.datum.moleculedatum method)": [[15, "moleculib.molecule.datum.MoleculeDatum.to_sdf_str", false]], "to_sdf_str() (moleculib.molecule.datum.pdbmoleculedatum method)": [[15, "moleculib.molecule.datum.PDBMoleculeDatum.to_sdf_str", false]], "to_sdf_str() (moleculib.molecule.transform.moleculedatum method)": [[20, "moleculib.molecule.transform.MoleculeDatum.to_sdf_str", false]], "tokenizesequenceboundaries (class in moleculib.protein.transform)": [[39, "moleculib.protein.transform.TokenizeSequenceBoundaries", false]], "torch() (moleculib.molecule.batch.moleculecollator method)": [[13, "moleculib.molecule.batch.MoleculeCollator.torch", false]], "torch() (moleculib.protein.batch.proteincollator method)": [[30, "moleculib.protein.batch.ProteinCollator.torch", false]], "traj_to_pdb() (in module moleculib.graphics.py3dmol)": [[10, "moleculib.graphics.py3Dmol.traj_to_pdb", false]], "transform() (moleculib.assembly.metrics.assemblymetric method)": [[8, "moleculib.assembly.metrics.AssemblyMetric.transform", false]], "transform() (moleculib.assembly.metrics.describechemistry method)": [[8, "moleculib.assembly.metrics.DescribeChemistry.transform", false]], "transform() (moleculib.assembly.transform.applytoproteins method)": [[9, "moleculib.assembly.transform.ApplyToProteins.transform", false]], "transform() (moleculib.assembly.transform.assemblytransform method)": [[9, "moleculib.assembly.transform.AssemblyTransform.transform", false]], "transform() (moleculib.assembly.transform.complexpad method)": [[9, "moleculib.assembly.transform.ComplexPad.transform", false]], "transform() (moleculib.assembly.transform.filterproteinchains method)": [[9, "moleculib.assembly.transform.FilterProteinChains.transform", false]], "transform() (moleculib.assembly.transform.proteintransform method)": [[9, "moleculib.assembly.transform.ProteinTransform.transform", false]], "transform() (moleculib.assembly.transform.stackproteins method)": [[9, "moleculib.assembly.transform.StackProteins.transform", false]], "transform() (moleculib.assembly.transform.unstackproteins method)": [[9, "moleculib.assembly.transform.UnstackProteins.transform", false]], "transform() (moleculib.molecule.dataset.atomfeatures method)": [[14, "moleculib.molecule.dataset.AtomFeatures.transform", false]], "transform() (moleculib.molecule.dataset.centralize method)": [[14, "moleculib.molecule.dataset.Centralize.transform", false]], "transform() (moleculib.molecule.dataset.describegraph method)": [[14, "moleculib.molecule.dataset.DescribeGraph.transform", false]], "transform() (moleculib.molecule.dataset.moleculepad method)": [[14, "moleculib.molecule.dataset.MoleculePad.transform", false]], "transform() (moleculib.molecule.dataset.moleculetransform method)": [[14, "moleculib.molecule.dataset.MoleculeTransform.transform", false]], "transform() (moleculib.molecule.dataset.pairpad method)": [[14, "moleculib.molecule.dataset.PairPad.transform", false]], "transform() (moleculib.molecule.dataset.permuter method)": [[14, "moleculib.molecule.dataset.Permuter.transform", false]], "transform() (moleculib.molecule.dataset.sortatoms method)": [[14, "moleculib.molecule.dataset.SortAtoms.transform", false]], "transform() (moleculib.molecule.dataset.standardizeproperties method)": [[14, "moleculib.molecule.dataset.StandardizeProperties.transform", false]], "transform() (moleculib.molecule.transform.atomfeatures method)": [[20, "moleculib.molecule.transform.AtomFeatures.transform", false]], "transform() (moleculib.molecule.transform.casttobfloat method)": [[20, "moleculib.molecule.transform.CastToBFloat.transform", false]], "transform() (moleculib.molecule.transform.centralize method)": [[20, "moleculib.molecule.transform.Centralize.transform", false]], "transform() (moleculib.molecule.transform.describegraph method)": [[20, "moleculib.molecule.transform.DescribeGraph.transform", false]], "transform() (moleculib.molecule.transform.moleculecrop method)": [[20, "moleculib.molecule.transform.MoleculeCrop.transform", false]], "transform() (moleculib.molecule.transform.moleculepad method)": [[20, "moleculib.molecule.transform.MoleculePad.transform", false]], "transform() (moleculib.molecule.transform.moleculetransform method)": [[20, "moleculib.molecule.transform.MoleculeTransform.transform", false]], "transform() (moleculib.molecule.transform.pairpad method)": [[20, "moleculib.molecule.transform.PairPad.transform", false]], "transform() (moleculib.molecule.transform.permuter method)": [[20, "moleculib.molecule.transform.Permuter.transform", false]], "transform() (moleculib.molecule.transform.singlebonds method)": [[20, "moleculib.molecule.transform.SingleBonds.transform", false]], "transform() (moleculib.molecule.transform.sortatoms method)": [[20, "moleculib.molecule.transform.SortAtoms.transform", false]], "transform() (moleculib.molecule.transform.standardizeproperties method)": [[20, "moleculib.molecule.transform.StandardizeProperties.transform", false]], "transform() (moleculib.nucleic.transform.nuccrop method)": [[27, "moleculib.nucleic.transform.NucCrop.transform", false]], "transform() (moleculib.nucleic.transform.nucpad method)": [[27, "moleculib.nucleic.transform.NucPad.transform", false]], "transform() (moleculib.nucleic.transform.nuctransform method)": [[27, "moleculib.nucleic.transform.NucTransform.transform", false]], "transform() (moleculib.protein.dataset.proteintransform method)": [[31, "moleculib.protein.dataset.ProteinTransform.transform", false]], "transform() (moleculib.protein.metrics.describechemistry method)": [[36, "moleculib.protein.metrics.DescribeChemistry.transform", false]], "transform() (moleculib.protein.transform.annotatesecondarystructure method)": [[39, "moleculib.protein.transform.AnnotateSecondaryStructure.transform", false]], "transform() (moleculib.protein.transform.backboneonly method)": [[39, "moleculib.protein.transform.BackboneOnly.transform", false]], "transform() (moleculib.protein.transform.caonly method)": [[39, "moleculib.protein.transform.CaOnly.transform", false]], "transform() (moleculib.protein.transform.describechemistry method)": [[39, "moleculib.protein.transform.DescribeChemistry.transform", false]], "transform() (moleculib.protein.transform.listangles method)": [[39, "moleculib.protein.transform.ListAngles.transform", false]], "transform() (moleculib.protein.transform.listbonds method)": [[39, "moleculib.protein.transform.ListBonds.transform", false]], "transform() (moleculib.protein.transform.listdihedrals method)": [[39, "moleculib.protein.transform.ListDihedrals.transform", false]], "transform() (moleculib.protein.transform.listmirrorflips method)": [[39, "moleculib.protein.transform.ListMirrorFlips.transform", false]], "transform() (moleculib.protein.transform.maskresidues method)": [[39, "moleculib.protein.transform.MaskResidues.transform", false]], "transform() (moleculib.protein.transform.maybemirror method)": [[39, "moleculib.protein.transform.MaybeMirror.transform", false]], "transform() (moleculib.protein.transform.proteincrop method)": [[39, "moleculib.protein.transform.ProteinCrop.transform", false]], "transform() (moleculib.protein.transform.proteinpad method)": [[39, "moleculib.protein.transform.ProteinPad.transform", false]], "transform() (moleculib.protein.transform.proteinrescale method)": [[39, "moleculib.protein.transform.ProteinRescale.transform", false]], "transform() (moleculib.protein.transform.proteintransform method)": [[39, "moleculib.protein.transform.ProteinTransform.transform", false]], "transform() (moleculib.protein.transform.tokenizesequenceboundaries method)": [[39, "moleculib.protein.transform.TokenizeSequenceBoundaries.transform", false]], "transform() (moleculib.sequence.dataset.proteintransform method)": [[41, "moleculib.sequence.dataset.ProteinTransform.transform", false]], "transform() (moleculib.traj.dataset.proteincrop method)": [[47, "moleculib.traj.dataset.ProteinCrop.transform", false]], "transpose() (moleculib.protein.jax_utils.stringarray method)": [[34, "moleculib.protein.jax_utils.StringArray.transpose", false]], "unk_token (in module moleculib.nucleic.alphabet)": [[22, "moleculib.nucleic.alphabet.UNK_TOKEN", false]], "unk_token (in module moleculib.nucleic.datum)": [[25, "moleculib.nucleic.datum.UNK_TOKEN", false]], "unk_token (in module moleculib.nucleic.transform)": [[27, "moleculib.nucleic.transform.UNK_TOKEN", false]], "unk_token (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.UNK_TOKEN", false]], "unk_token (in module moleculib.protein.dataset)": [[31, "moleculib.protein.dataset.UNK_TOKEN", false]], "unk_token (in module moleculib.sequence.dataset)": [[41, "moleculib.sequence.dataset.UNK_TOKEN", false]], "unstackproteins (class in moleculib.assembly.transform)": [[9, "moleculib.assembly.transform.UnstackProteins", false]], "update_residue_indices() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.update_residue_indices", false]], "van_der_walls_radii (in module moleculib.protein.alphabet)": [[29, "moleculib.protein.alphabet.van_der_walls_radii", false]], "write_pdb() (in module moleculib.molecule.h5_to_pdb)": [[16, "moleculib.molecule.h5_to_pdb.write_pdb", false]]}, "objects": {"": [[11, 0, 0, "-", "moleculib"]], "moleculib": [[2, 0, 0, "-", "abstract"], [7, 0, 0, "-", "assembly"], [17, 0, 0, "-", "molecule"], [26, 0, 0, "-", "nucleic"], [33, 0, 0, "-", "protein"], [43, 0, 0, "-", "sequence"], [48, 0, 0, "-", "traj"]], "moleculib.abstract": [[1, 0, 0, "-", "dataset"], [3, 0, 0, "-", "metrics"], [4, 0, 0, "-", "transform"]], "moleculib.abstract.dataset": [[1, 1, 1, "", "Dataset"], [1, 1, 1, "", "PreProcessedDataset"]], "moleculib.abstract.metrics": [[3, 1, 1, "", "MetricsPipe"]], "moleculib.assembly": [[5, 0, 0, "-", "dataset"], [6, 0, 0, "-", "datum"], [8, 0, 0, "-", "metrics"], [9, 0, 0, "-", "transform"]], "moleculib.assembly.dataset": [[5, 1, 1, "", "ChromaDataset"], [5, 1, 1, "", "PreProcessedDataset"]], "moleculib.assembly.datum": [[6, 1, 1, "", "AssemblyDatum"], [6, 1, 1, "", "MoleculeDatum"], [6, 1, 1, "", "ProteinDatum"]], "moleculib.assembly.datum.AssemblyDatum": [[6, 2, 1, "", "fetch_pdb_id"], [6, 2, 1, "", "filter_proteins"], [6, 2, 1, "", "from_datalist"], [6, 2, 1, "", "from_filepath"], [6, 2, 1, "", "plot"]], "moleculib.assembly.datum.MoleculeDatum": [[6, 2, 1, "", "empty"], [6, 2, 1, "", "plot"], [6, 2, 1, "", "to_atom_array"], [6, 2, 1, "", "to_sdf_str"]], "moleculib.assembly.datum.ProteinDatum": [[6, 2, 1, "", "align_to"], [6, 2, 1, "", "apply_angles"], [6, 2, 1, "", "apply_bonds"], [6, 2, 1, "", "apply_dihedrals"], [6, 2, 1, "", "empty"], [6, 2, 1, "", "fetch_pdb_id"], [6, 2, 1, "", "from_atom_array"], [6, 2, 1, "", "from_dict"], [6, 2, 1, "", "from_filepath"], [6, 2, 1, "", "numpy"], [6, 2, 1, "", "plot"], [6, 2, 1, "", "replace"], [6, 2, 1, "", "save_mmcif"], [6, 2, 1, "", "separate_chains"], [6, 2, 1, "", "set"], [6, 2, 1, "id0", "to_dict"], [6, 2, 1, "", "to_pdb_str"]], "moleculib.assembly.metrics": [[8, 1, 1, "", "ApplyMetricsToProtein"], [8, 1, 1, "", "AssemblyDatum"], [8, 1, 1, "", "AssemblyMetric"], [8, 1, 1, "", "DescribeChemistry"], [8, 1, 1, "", "MetricsPipe"], [8, 1, 1, "", "ProteinMetric"]], "moleculib.assembly.metrics.AssemblyDatum": [[8, 2, 1, "", "fetch_pdb_id"], [8, 2, 1, "", "filter_proteins"], [8, 2, 1, "", "from_datalist"], [8, 2, 1, "", "from_filepath"], [8, 2, 1, "", "plot"]], "moleculib.assembly.metrics.AssemblyMetric": [[8, 2, 1, "", "transform"]], "moleculib.assembly.metrics.DescribeChemistry": [[8, 2, 1, "", "transform"]], "moleculib.assembly.transform": [[9, 1, 1, "", "ApplyToProteins"], [9, 1, 1, "", "AssemblyDatum"], [9, 1, 1, "", "AssemblyTransform"], [9, 1, 1, "", "ComplexPad"], [9, 1, 1, "", "FilterProteinChains"], [9, 1, 1, "", "ProteinDatum"], [9, 1, 1, "", "ProteinTransform"], [9, 1, 1, "", "StackProteins"], [9, 1, 1, "", "UnstackProteins"]], "moleculib.assembly.transform.ApplyToProteins": [[9, 2, 1, "", "transform"]], "moleculib.assembly.transform.AssemblyDatum": [[9, 2, 1, "", "fetch_pdb_id"], [9, 2, 1, "", "filter_proteins"], [9, 2, 1, "", "from_datalist"], [9, 2, 1, "", "from_filepath"], [9, 2, 1, "", "plot"]], "moleculib.assembly.transform.AssemblyTransform": [[9, 2, 1, "", "transform"]], "moleculib.assembly.transform.ComplexPad": [[9, 2, 1, "", "transform"]], "moleculib.assembly.transform.FilterProteinChains": [[9, 2, 1, "", "transform"]], "moleculib.assembly.transform.ProteinDatum": [[9, 2, 1, "", "align_to"], [9, 2, 1, "", "apply_angles"], [9, 2, 1, "", "apply_bonds"], [9, 2, 1, "", "apply_dihedrals"], [9, 2, 1, "", "empty"], [9, 2, 1, "", "fetch_pdb_id"], [9, 2, 1, "", "from_atom_array"], [9, 2, 1, "", "from_dict"], [9, 2, 1, "", "from_filepath"], [9, 2, 1, "", "numpy"], [9, 2, 1, "", "plot"], [9, 2, 1, "", "replace"], [9, 2, 1, "", "save_mmcif"], [9, 2, 1, "", "separate_chains"], [9, 2, 1, "", "set"], [9, 2, 1, "id0", "to_dict"], [9, 2, 1, "", "to_pdb_str"]], "moleculib.assembly.transform.ProteinTransform": [[9, 2, 1, "", "transform"]], "moleculib.assembly.transform.StackProteins": [[9, 2, 1, "", "transform"]], "moleculib.assembly.transform.UnstackProteins": [[9, 2, 1, "", "transform"]], "moleculib.graphics": [[10, 0, 0, "-", "py3Dmol"]], "moleculib.graphics.py3Dmol": [[10, 3, 1, "", "DEFAULT_COLORS"], [10, 1, 1, "", "MoleculeDatum"], [10, 1, 1, "", "NucleicDatum"], [10, 1, 1, "", "PlotDensity"], [10, 1, 1, "", "PlotPy3DmolSamples"], [10, 1, 1, "", "ProteinDatum"], [10, 4, 1, "", "plot_py3dmol"], [10, 4, 1, "", "plot_py3dmol_grid"], [10, 4, 1, "", "plot_py3dmol_traj"], [10, 4, 1, "", "traj_to_pdb"]], "moleculib.graphics.py3Dmol.MoleculeDatum": [[10, 2, 1, "", "empty"], [10, 2, 1, "", "plot"], [10, 2, 1, "", "to_atom_array"], [10, 2, 1, "", "to_sdf_str"]], "moleculib.graphics.py3Dmol.NucleicDatum": [[10, 2, 1, "", "empty_nuc"], [10, 2, 1, "", "fetch_pdb_id"], [10, 2, 1, "", "from_atom_array"], [10, 2, 1, "", "from_filepath"], [10, 2, 1, "", "plot"], [10, 2, 1, "", "to_pdb_str"]], "moleculib.graphics.py3Dmol.PlotDensity": [[10, 2, 1, "", "plot_density"]], "moleculib.graphics.py3Dmol.ProteinDatum": [[10, 2, 1, "", "align_to"], [10, 2, 1, "", "apply_angles"], [10, 2, 1, "", "apply_bonds"], [10, 2, 1, "", "apply_dihedrals"], [10, 2, 1, "", "empty"], [10, 2, 1, "", "fetch_pdb_id"], [10, 2, 1, "", "from_atom_array"], [10, 2, 1, "", "from_dict"], [10, 2, 1, "", "from_filepath"], [10, 2, 1, "", "numpy"], [10, 2, 1, "", "plot"], [10, 2, 1, "", "replace"], [10, 2, 1, "", "save_mmcif"], [10, 2, 1, "", "separate_chains"], [10, 2, 1, "", "set"], [10, 2, 1, "id0", "to_dict"], [10, 2, 1, "", "to_pdb_str"]], "moleculib.molecule": [[12, 0, 0, "-", "alphabet"], [13, 0, 0, "-", "batch"], [14, 0, 0, "-", "dataset"], [15, 0, 0, "-", "datum"], [16, 0, 0, "-", "h5_to_pdb"], [18, 0, 0, "-", "tests"], [20, 0, 0, "-", "transform"], [21, 0, 0, "-", "utils"]], "moleculib.molecule.alphabet": [[12, 3, 1, "", "PERIODIC_TABLE"], [12, 3, 1, "", "elements"]], "moleculib.molecule.batch": [[13, 1, 1, "", "MoleculeCollator"], [13, 1, 1, "", "MoleculeDatum"], [13, 1, 1, "", "MoleculeGeometricBatch"], [13, 1, 1, "", "MoleculePadBatch"]], "moleculib.molecule.batch.MoleculeCollator": [[13, 2, 1, "", "collate"], [13, 2, 1, "", "revert"], [13, 2, 1, "", "to"], [13, 2, 1, "", "to_dict"], [13, 2, 1, "", "torch"]], "moleculib.molecule.batch.MoleculeDatum": [[13, 2, 1, "", "empty"], [13, 2, 1, "", "plot"], [13, 2, 1, "", "to_atom_array"], [13, 2, 1, "", "to_sdf_str"]], "moleculib.molecule.batch.MoleculeGeometricBatch": [[13, 2, 1, "", "collate"], [13, 2, 1, "", "revert"]], "moleculib.molecule.batch.MoleculePadBatch": [[13, 2, 1, "", "collate"], [13, 2, 1, "", "revert"]], "moleculib.molecule.dataset": [[14, 1, 1, "", "AtomFeatures"], [14, 1, 1, "", "Centralize"], [14, 1, 1, "", "CrossdockDatum"], [14, 1, 1, "", "DensityDatum"], [14, 1, 1, "", "DescribeGraph"], [14, 1, 1, "", "MISATODatum"], [14, 1, 1, "", "MoleculePad"], [14, 1, 1, "", "MoleculeTransform"], [14, 1, 1, "", "PDBBindDatum"], [14, 1, 1, "", "PDBMoleculeDataset"], [14, 1, 1, "", "PDBMoleculeDatum"], [14, 1, 1, "", "PairPad"], [14, 1, 1, "", "Permuter"], [14, 1, 1, "", "PreProcessedDataset"], [14, 1, 1, "", "QM9Dataset"], [14, 1, 1, "", "QM9Datum"], [14, 1, 1, "", "RSDataset"], [14, 1, 1, "", "RSDatum"], [14, 1, 1, "", "ReactDatum"], [14, 1, 1, "", "SortAtoms"], [14, 1, 1, "", "StandardizeProperties"], [14, 4, 1, "", "create_pdb"], [14, 3, 1, "", "elements"], [14, 4, 1, "", "extract_rdkit_mol_properties"], [14, 4, 1, "", "pids_file_to_list"]], "moleculib.molecule.dataset.AtomFeatures": [[14, 2, 1, "", "shift"], [14, 2, 1, "", "transform"]], "moleculib.molecule.dataset.Centralize": [[14, 2, 1, "", "transform"]], "moleculib.molecule.dataset.CrossdockDatum": [[14, 5, 1, "", "AA_NAME_NUMBER"], [14, 5, 1, "", "AA_NAME_SYM"], [14, 5, 1, "", "AA_NUMBER_NAME"], [14, 2, 1, "", "coord_center"], [14, 2, 1, "", "protein_pdb_str"]], "moleculib.molecule.dataset.DescribeGraph": [[14, 2, 1, "", "transform"]], "moleculib.molecule.dataset.MISATODatum": [[14, 2, 1, "", "at"], [14, 2, 1, "", "dehydrate"], [14, 2, 1, "", "keep_neighborhood"], [14, 2, 1, "", "neighborhood_idxs"], [14, 2, 1, "", "pdb_str"], [14, 2, 1, "", "replace"]], "moleculib.molecule.dataset.MoleculePad": [[14, 2, 1, "", "transform"]], "moleculib.molecule.dataset.MoleculeTransform": [[14, 2, 1, "", "transform"]], "moleculib.molecule.dataset.PDBBindDatum": [[14, 2, 1, "", "coord_center"], [14, 2, 1, "", "pocket_pdb_str"], [14, 2, 1, "", "protein_pdb_str"]], "moleculib.molecule.dataset.PDBMoleculeDataset": [[14, 2, 1, "", "build"], [14, 2, 1, "", "load_index"]], "moleculib.molecule.dataset.PDBMoleculeDatum": [[14, 2, 1, "", "empty_molecule"], [14, 2, 1, "", "fetch_pdb_id"], [14, 2, 1, "", "from_atom_array"], [14, 2, 1, "", "from_filepath"], [14, 2, 1, "", "to_atom_array"], [14, 2, 1, "", "to_sdf_str"]], "moleculib.molecule.dataset.PairPad": [[14, 2, 1, "", "transform"]], "moleculib.molecule.dataset.Permuter": [[14, 2, 1, "", "transform"]], "moleculib.molecule.dataset.ReactDatum": [[14, 2, 1, "", "centralize"]], "moleculib.molecule.dataset.SortAtoms": [[14, 2, 1, "", "transform"]], "moleculib.molecule.dataset.StandardizeProperties": [[14, 2, 1, "", "transform"]], "moleculib.molecule.datum": [[15, 1, 1, "", "CrossdockDatum"], [15, 1, 1, "", "DensityDatum"], [15, 1, 1, "", "MISATODatum"], [15, 1, 1, "", "MoleculeDatum"], [15, 1, 1, "", "PDBBindDatum"], [15, 1, 1, "", "PDBMoleculeDatum"], [15, 3, 1, "", "PERIODIC_TABLE"], [15, 1, 1, "", "QM9Datum"], [15, 1, 1, "", "RSDatum"], [15, 1, 1, "", "ReactDatum"], [15, 4, 1, "", "create_pdb"], [15, 3, 1, "", "elements"], [15, 4, 1, "", "pdb_to_atom_array"], [15, 4, 1, "", "register_pytree"]], "moleculib.molecule.datum.CrossdockDatum": [[15, 5, 1, "", "AA_NAME_NUMBER"], [15, 5, 1, "", "AA_NAME_SYM"], [15, 5, 1, "", "AA_NUMBER_NAME"], [15, 2, 1, "", "coord_center"], [15, 2, 1, "", "protein_pdb_str"]], "moleculib.molecule.datum.MISATODatum": [[15, 2, 1, "", "at"], [15, 2, 1, "", "dehydrate"], [15, 2, 1, "", "keep_neighborhood"], [15, 2, 1, "", "neighborhood_idxs"], [15, 2, 1, "", "pdb_str"], [15, 2, 1, "", "replace"]], "moleculib.molecule.datum.MoleculeDatum": [[15, 2, 1, "", "empty"], [15, 2, 1, "", "plot"], [15, 2, 1, "", "to_atom_array"], [15, 2, 1, "", "to_sdf_str"]], "moleculib.molecule.datum.PDBBindDatum": [[15, 2, 1, "", "coord_center"], [15, 2, 1, "", "pocket_pdb_str"], [15, 2, 1, "", "protein_pdb_str"]], "moleculib.molecule.datum.PDBMoleculeDatum": [[15, 2, 1, "", "empty_molecule"], [15, 2, 1, "", "fetch_pdb_id"], [15, 2, 1, "", "from_atom_array"], [15, 2, 1, "", "from_filepath"], [15, 2, 1, "", "to_atom_array"], [15, 2, 1, "", "to_sdf_str"]], "moleculib.molecule.datum.ReactDatum": [[15, 2, 1, "", "centralize"]], "moleculib.molecule.h5_to_pdb": [[16, 3, 1, "", "atomic_numbers_Map"], [16, 4, 1, "", "create_pdb"], [16, 4, 1, "", "create_pdb_lines_MD"], [16, 4, 1, "", "create_pdb_lines_QM"], [16, 4, 1, "", "get_atom_name"], [16, 4, 1, "", "get_entries"], [16, 4, 1, "", "get_entries_QM"], [16, 4, 1, "", "get_maps"], [16, 4, 1, "", "insert_TERS"], [16, 4, 1, "", "main"], [16, 3, 1, "", "parser"], [16, 4, 1, "", "update_residue_indices"], [16, 4, 1, "", "write_pdb"]], "moleculib.molecule.tests": [[19, 0, 0, "-", "loader_test"]], "moleculib.molecule.tests.loader_test": [[19, 4, 1, "", "check_dataloader_batch_size"], [19, 4, 1, "", "test_dataload_from_filesystem"], [19, 4, 1, "", "test_dataloader"]], "moleculib.molecule.transform": [[20, 1, 1, "", "AtomFeatures"], [20, 1, 1, "", "CastToBFloat"], [20, 1, 1, "", "Centralize"], [20, 1, 1, "", "DescribeGraph"], [20, 1, 1, "", "MoleculeCrop"], [20, 1, 1, "", "MoleculeDatum"], [20, 1, 1, "", "MoleculePad"], [20, 1, 1, "", "MoleculeTransform"], [20, 1, 1, "", "PairPad"], [20, 1, 1, "", "Permuter"], [20, 1, 1, "", "QM9Datum"], [20, 1, 1, "", "SingleBonds"], [20, 1, 1, "", "SortAtoms"], [20, 1, 1, "", "StandardizeProperties"], [20, 3, 1, "", "elements"], [20, 4, 1, "", "pad_array"]], "moleculib.molecule.transform.AtomFeatures": [[20, 2, 1, "", "shift"], [20, 2, 1, "", "transform"]], "moleculib.molecule.transform.CastToBFloat": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.Centralize": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.DescribeGraph": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.MoleculeCrop": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.MoleculeDatum": [[20, 2, 1, "", "empty"], [20, 2, 1, "", "plot"], [20, 2, 1, "", "to_atom_array"], [20, 2, 1, "", "to_sdf_str"]], "moleculib.molecule.transform.MoleculePad": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.MoleculeTransform": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.PairPad": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.Permuter": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.SingleBonds": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.SortAtoms": [[20, 2, 1, "", "transform"]], "moleculib.molecule.transform.StandardizeProperties": [[20, 2, 1, "", "transform"]], "moleculib.molecule.utils": [[21, 3, 1, "", "ACCEPTED_FORMATS"], [21, 3, 1, "", "ACCEPTED_TYPES"], [21, 3, 1, "", "config"], [21, 4, 1, "", "extract_rdkit_mol_properties"], [21, 3, 1, "", "home_dir"], [21, 4, 1, "", "inner_split"], [21, 4, 1, "", "inner_stack"], [21, 4, 1, "", "pad_array"], [21, 4, 1, "", "pdb_to_atom_array"], [21, 4, 1, "", "pids_file_to_list"], [21, 4, 1, "", "plot_dock"], [21, 4, 1, "", "plot_py3dmol_grid"], [21, 4, 1, "", "register_pytree"]], "moleculib.nucleic": [[22, 0, 0, "-", "alphabet"], [23, 0, 0, "-", "batch"], [24, 0, 0, "-", "dataset"], [25, 0, 0, "-", "datum"], [27, 0, 0, "-", "transform"], [28, 0, 0, "-", "utils"]], "moleculib.nucleic.alphabet": [[22, 3, 1, "", "MAX_DNA_ATOMS"], [22, 3, 1, "", "MAX_RES_ATOMS"], [22, 3, 1, "", "UNK_TOKEN"], [22, 3, 1, "id0", "all_atoms"], [22, 3, 1, "", "all_atoms_elements"], [22, 3, 1, "", "all_atoms_tokens"], [22, 3, 1, "id1", "all_nucs"], [22, 3, 1, "", "all_nucs_atom_mask"], [22, 3, 1, "", "all_nucs_atom_tokens"], [22, 3, 1, "", "all_nucs_tokens"], [22, 4, 1, "", "atom_index"], [22, 3, 1, "", "atom_to_nucs_index"], [22, 3, 1, "", "atom_to_nucs_mask"], [22, 3, 1, "", "atoms_per_nuc"], [22, 3, 1, "", "backbone_atoms_DNA"], [22, 3, 1, "", "backbone_atoms_RNA"], [22, 3, 1, "", "base_atoms_per_nuc"], [22, 3, 1, "", "elements"], [22, 4, 1, "", "get_nucleotide_index"], [22, 3, 1, "", "special_tokens"]], "moleculib.nucleic.dataset": [[24, 1, 1, "", "PreProcessedDataset"], [24, 1, 1, "", "RNADataset"]], "moleculib.nucleic.datum": [[25, 3, 1, "", "MAX_DNA_ATOMS"], [25, 3, 1, "", "MAX_RES_ATOMS"], [25, 1, 1, "", "NucleicDatum"], [25, 3, 1, "", "UNK_TOKEN"], [25, 3, 1, "", "all_atoms"], [25, 3, 1, "", "all_atoms_elements"], [25, 3, 1, "", "all_atoms_tokens"], [25, 3, 1, "", "all_nucs"], [25, 3, 1, "", "all_nucs_atom_mask"], [25, 3, 1, "", "all_nucs_atom_tokens"], [25, 3, 1, "", "all_nucs_tokens"], [25, 4, 1, "", "atom_index"], [25, 3, 1, "", "atom_to_nucs_index"], [25, 3, 1, "", "atom_to_nucs_mask"], [25, 3, 1, "", "atoms_per_nuc"], [25, 3, 1, "", "backbone_atoms_DNA"], [25, 3, 1, "", "backbone_atoms_RNA"], [25, 3, 1, "", "base_atoms_per_nuc"], [25, 3, 1, "", "config"], [25, 3, 1, "", "dna_datum"], [25, 3, 1, "", "dna_res_names"], [25, 3, 1, "", "dna_res_tokens"], [25, 3, 1, "", "elements"], [25, 4, 1, "", "get_nucleotide_index"], [25, 3, 1, "", "home_dir"], [25, 4, 1, "", "pdb_to_atom_array"], [25, 3, 1, "", "rna_res_names"], [25, 3, 1, "", "rna_res_tokens"], [25, 3, 1, "", "special_tokens"]], "moleculib.nucleic.datum.NucleicDatum": [[25, 2, 1, "", "empty_nuc"], [25, 2, 1, "", "fetch_pdb_id"], [25, 2, 1, "", "from_atom_array"], [25, 2, 1, "", "from_filepath"], [25, 2, 1, "", "plot"], [25, 2, 1, "", "to_pdb_str"]], "moleculib.nucleic.transform": [[27, 3, 1, "", "MAX_DNA_ATOMS"], [27, 3, 1, "", "MAX_RES_ATOMS"], [27, 1, 1, "", "NucCrop"], [27, 1, 1, "", "NucPad"], [27, 1, 1, "", "NucTransform"], [27, 1, 1, "", "NucleicDatum"], [27, 3, 1, "", "UNK_TOKEN"], [27, 3, 1, "", "all_atoms"], [27, 3, 1, "", "all_atoms_elements"], [27, 3, 1, "", "all_atoms_tokens"], [27, 3, 1, "", "all_nucs"], [27, 3, 1, "", "all_nucs_atom_mask"], [27, 3, 1, "", "all_nucs_atom_tokens"], [27, 3, 1, "", "all_nucs_tokens"], [27, 4, 1, "", "atom_index"], [27, 3, 1, "", "atom_to_nucs_index"], [27, 3, 1, "", "atom_to_nucs_mask"], [27, 3, 1, "", "atoms_per_nuc"], [27, 3, 1, "", "backbone_atoms_DNA"], [27, 3, 1, "", "backbone_atoms_RNA"], [27, 3, 1, "", "base_atoms_per_nuc"], [27, 3, 1, "", "dna_res_tokens"], [27, 3, 1, "", "elements"], [27, 4, 1, "", "get_nucleotide_index"], [27, 4, 1, "", "pad_array"], [27, 4, 1, "", "pids_file_to_list"], [27, 3, 1, "", "rna_res_tokens"], [27, 3, 1, "", "special_tokens"]], "moleculib.nucleic.transform.NucCrop": [[27, 2, 1, "", "transform"]], "moleculib.nucleic.transform.NucPad": [[27, 2, 1, "", "transform"]], "moleculib.nucleic.transform.NucTransform": [[27, 2, 1, "", "transform"]], "moleculib.nucleic.transform.NucleicDatum": [[27, 2, 1, "", "empty_nuc"], [27, 2, 1, "", "fetch_pdb_id"], [27, 2, 1, "", "from_atom_array"], [27, 2, 1, "", "from_filepath"], [27, 2, 1, "", "plot"], [27, 2, 1, "", "to_pdb_str"]], "moleculib.nucleic.utils": [[28, 3, 1, "", "config"], [28, 3, 1, "", "home_dir"], [28, 4, 1, "", "pad_array"], [28, 4, 1, "", "pdb_to_atom_array"], [28, 4, 1, "", "pids_file_to_list"]], "moleculib.protein": [[29, 0, 0, "-", "alphabet"], [30, 0, 0, "-", "batch"], [31, 0, 0, "-", "dataset"], [32, 0, 0, "-", "datum"], [34, 0, 0, "-", "jax_utils"], [35, 0, 0, "-", "measures"], [36, 0, 0, "-", "metrics"], [37, 0, 0, "-", "tests"], [39, 0, 0, "-", "transform"], [40, 0, 0, "-", "utils"]], "moleculib.protein.alphabet": [[29, 3, 1, "", "UNK_TOKEN"], [29, 3, 1, "id0", "all_atoms"], [29, 3, 1, "", "all_atoms_elements"], [29, 3, 1, "", "all_atoms_radii"], [29, 3, 1, "", "all_atoms_tokens"], [29, 3, 1, "id1", "all_residues"], [29, 3, 1, "", "all_residues_atom_mask"], [29, 3, 1, "", "all_residues_atom_tokens"], [29, 3, 1, "", "all_residues_tokens"], [29, 4, 1, "", "atom_index"], [29, 3, 1, "", "atom_to_residues_index"], [29, 3, 1, "", "atom_to_residues_mask"], [29, 3, 1, "", "atoms_per_residue"], [29, 3, 1, "", "backbone_atoms"], [29, 3, 1, "", "backbone_chemistry"], [29, 3, 1, "id2", "bond_lens_arr"], [29, 3, 1, "", "elements"], [29, 4, 1, "", "geometry_to_per_residue_indexing_array"], [29, 4, 1, "", "get_residue_index"], [29, 3, 1, "", "max_arr_size"], [29, 3, 1, "", "sidechain_atoms_per_residue"], [29, 3, 1, "", "sidechain_chemistry_per_residue"], [29, 3, 1, "", "special_tokens"], [29, 3, 1, "", "van_der_walls_radii"]], "moleculib.protein.batch": [[30, 1, 1, "", "GeometricBatch"], [30, 1, 1, "", "PadBatch"], [30, 1, 1, "", "ProteinCollator"], [30, 1, 1, "", "ProteinDatum"], [30, 3, 1, "", "backbone_atoms"], [30, 4, 1, "", "pad_array"]], "moleculib.protein.batch.GeometricBatch": [[30, 2, 1, "", "collate"], [30, 2, 1, "", "revert"]], "moleculib.protein.batch.PadBatch": [[30, 2, 1, "", "collate"], [30, 2, 1, "", "revert"]], "moleculib.protein.batch.ProteinCollator": [[30, 2, 1, "", "collate"], [30, 2, 1, "", "revert"], [30, 2, 1, "", "to"], [30, 2, 1, "", "to_dict"], [30, 2, 1, "", "torch"]], "moleculib.protein.batch.ProteinDatum": [[30, 2, 1, "", "align_to"], [30, 2, 1, "", "apply_angles"], [30, 2, 1, "", "apply_bonds"], [30, 2, 1, "", "apply_dihedrals"], [30, 2, 1, "", "empty"], [30, 2, 1, "", "fetch_pdb_id"], [30, 2, 1, "", "from_atom_array"], [30, 2, 1, "", "from_dict"], [30, 2, 1, "", "from_filepath"], [30, 2, 1, "", "numpy"], [30, 2, 1, "", "plot"], [30, 2, 1, "", "replace"], [30, 2, 1, "", "save_mmcif"], [30, 2, 1, "", "separate_chains"], [30, 2, 1, "", "set"], [30, 2, 1, "id0", "to_dict"], [30, 2, 1, "", "to_pdb_str"]], "moleculib.protein.dataset": [[31, 3, 1, "", "CHAIN_COUNTER_FIELDS"], [31, 1, 1, "", "EnzymeCommissionDataset"], [31, 1, 1, "", "FastFoldingDataset"], [31, 1, 1, "", "FoldDataset"], [31, 1, 1, "", "FoldingDiffDataset"], [31, 1, 1, "", "FrameDiffDataset"], [31, 1, 1, "", "FuncDataset"], [31, 1, 1, "", "GeneOntologyDataset"], [31, 3, 1, "", "MAX_COMPLEX_SIZE"], [31, 1, 1, "", "MonomerDataset"], [31, 1, 1, "", "PDBDataset"], [31, 3, 1, "", "PDB_HEADER_FIELDS"], [31, 3, 1, "", "PDB_METADATA_FIELDS"], [31, 1, 1, "", "PreProcessedDataset"], [31, 1, 1, "", "ProteinDatum"], [31, 1, 1, "", "ProteinTransform"], [31, 3, 1, "", "SAMPLE_PDBS"], [31, 1, 1, "", "ScaffoldsDataset"], [31, 1, 1, "id2", "TinyPDBDataset"], [31, 3, 1, "", "UNK_TOKEN"], [31, 4, 1, "", "pids_file_to_list"]], "moleculib.protein.dataset.MonomerDataset": [[31, 2, 1, "", "parse"]], "moleculib.protein.dataset.PDBDataset": [[31, 2, 1, "", "build"], [31, 2, 1, "", "load_index"], [31, 2, 1, "", "parse"]], "moleculib.protein.dataset.ProteinDatum": [[31, 2, 1, "", "align_to"], [31, 2, 1, "", "apply_angles"], [31, 2, 1, "", "apply_bonds"], [31, 2, 1, "", "apply_dihedrals"], [31, 2, 1, "", "empty"], [31, 2, 1, "", "fetch_pdb_id"], [31, 2, 1, "", "from_atom_array"], [31, 2, 1, "", "from_dict"], [31, 2, 1, "", "from_filepath"], [31, 2, 1, "", "numpy"], [31, 2, 1, "", "plot"], [31, 2, 1, "", "replace"], [31, 2, 1, "", "save_mmcif"], [31, 2, 1, "", "separate_chains"], [31, 2, 1, "", "set"], [31, 2, 1, "id0", "to_dict"], [31, 2, 1, "", "to_pdb_str"]], "moleculib.protein.dataset.ProteinTransform": [[31, 2, 1, "", "transform"]], "moleculib.protein.datum": [[32, 1, 1, "", "ProteinDatum"], [32, 1, 1, "", "ProteinSequence"], [32, 3, 1, "", "all_atoms"], [32, 3, 1, "", "all_residues"], [32, 4, 1, "", "atom_index"], [32, 3, 1, "", "atom_to_residues_index"], [32, 3, 1, "", "backbone_atoms"], [32, 4, 1, "", "get_residue_index"]], "moleculib.protein.datum.ProteinDatum": [[32, 2, 1, "", "align_to"], [32, 2, 1, "", "apply_angles"], [32, 2, 1, "", "apply_bonds"], [32, 2, 1, "", "apply_dihedrals"], [32, 2, 1, "", "empty"], [32, 2, 1, "", "fetch_pdb_id"], [32, 2, 1, "", "from_atom_array"], [32, 2, 1, "", "from_dict"], [32, 2, 1, "", "from_filepath"], [32, 2, 1, "", "numpy"], [32, 2, 1, "", "plot"], [32, 2, 1, "", "replace"], [32, 2, 1, "", "save_mmcif"], [32, 2, 1, "", "separate_chains"], [32, 2, 1, "", "set"], [32, 2, 1, "id0", "to_dict"], [32, 2, 1, "", "to_pdb_str"]], "moleculib.protein.jax_utils": [[34, 1, 1, "", "StringArray"]], "moleculib.protein.jax_utils.StringArray": [[34, 5, 1, "", "T"], [34, 2, 1, "", "astype"], [34, 5, 1, "", "dtype"], [34, 5, 1, "", "ndim"], [34, 2, 1, "", "ravel"], [34, 2, 1, "", "reshape"], [34, 5, 1, "", "shape"], [34, 5, 1, "", "size"], [34, 2, 1, "", "transpose"]], "moleculib.protein.measures": [[35, 3, 1, "", "STANDARD_CHEMICAL_MEASURES"]], "moleculib.protein.metrics": [[36, 1, 1, "", "AlignedRootMeanSquareDeviation"], [36, 1, 1, "", "ChemicalDeviationMetric"], [36, 1, 1, "", "CountClashes"], [36, 1, 1, "", "DescribeChemistry"], [36, 1, 1, "", "ProteinDatum"], [36, 1, 1, "", "ProteinMetric"], [36, 3, 1, "", "STANDARD_CHEMICAL_MEASURES"], [36, 1, 1, "", "StandardAngleDeviation"], [36, 1, 1, "", "StandardBondDeviation"], [36, 1, 1, "", "StandardChemicalDeviation"], [36, 1, 1, "", "StandardDihedralDeviation"], [36, 4, 1, "", "measure_angles"], [36, 4, 1, "", "measure_bonds"], [36, 4, 1, "", "measure_dihedrals"], [36, 4, 1, "", "norm"], [36, 4, 1, "", "normalize"], [36, 4, 1, "", "safe_norm"]], "moleculib.protein.metrics.DescribeChemistry": [[36, 2, 1, "", "transform"]], "moleculib.protein.metrics.ProteinDatum": [[36, 2, 1, "", "align_to"], [36, 2, 1, "", "apply_angles"], [36, 2, 1, "", "apply_bonds"], [36, 2, 1, "", "apply_dihedrals"], [36, 2, 1, "", "empty"], [36, 2, 1, "", "fetch_pdb_id"], [36, 2, 1, "", "from_atom_array"], [36, 2, 1, "", "from_dict"], [36, 2, 1, "", "from_filepath"], [36, 2, 1, "", "numpy"], [36, 2, 1, "", "plot"], [36, 2, 1, "", "replace"], [36, 2, 1, "", "save_mmcif"], [36, 2, 1, "", "separate_chains"], [36, 2, 1, "", "set"], [36, 2, 1, "id0", "to_dict"], [36, 2, 1, "", "to_pdb_str"]], "moleculib.protein.tests": [[38, 0, 0, "-", "loader_test"]], "moleculib.protein.tests.loader_test": [[38, 4, 1, "", "check_dataloader_batch_size"], [38, 4, 1, "", "test_dataload_from_filesystem"], [38, 4, 1, "", "test_dataloader"]], "moleculib.protein.transform": [[39, 1, 1, "", "AnnotateSecondaryStructure"], [39, 1, 1, "", "BackboneOnly"], [39, 1, 1, "", "CaOnly"], [39, 1, 1, "", "DescribeChemistry"], [39, 1, 1, "", "ListAngles"], [39, 1, 1, "", "ListBonds"], [39, 1, 1, "", "ListDihedrals"], [39, 1, 1, "", "ListMirrorFlips"], [39, 1, 1, "", "MaskResidues"], [39, 1, 1, "", "MaybeMirror"], [39, 1, 1, "", "ProteinCrop"], [39, 1, 1, "", "ProteinDatum"], [39, 1, 1, "", "ProteinPad"], [39, 1, 1, "", "ProteinRescale"], [39, 1, 1, "", "ProteinTransform"], [39, 3, 1, "", "SSE_TOKENS"], [39, 1, 1, "", "TokenizeSequenceBoundaries"], [39, 3, 1, "", "all_atoms"], [39, 3, 1, "", "all_atoms_elements"], [39, 3, 1, "", "all_atoms_radii"], [39, 3, 1, "", "all_residues"], [39, 3, 1, "", "backbone_atoms"], [39, 3, 1, "", "bond_lens_arr"], [39, 4, 1, "", "measure_chirality"], [39, 4, 1, "", "normalize"], [39, 4, 1, "", "pad_array"]], "moleculib.protein.transform.AnnotateSecondaryStructure": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.BackboneOnly": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.CaOnly": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.DescribeChemistry": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.ListAngles": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.ListBonds": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.ListDihedrals": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.ListMirrorFlips": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.MaskResidues": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.MaybeMirror": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.ProteinCrop": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.ProteinDatum": [[39, 2, 1, "", "align_to"], [39, 2, 1, "", "apply_angles"], [39, 2, 1, "", "apply_bonds"], [39, 2, 1, "", "apply_dihedrals"], [39, 2, 1, "", "empty"], [39, 2, 1, "", "fetch_pdb_id"], [39, 2, 1, "", "from_atom_array"], [39, 2, 1, "", "from_dict"], [39, 2, 1, "", "from_filepath"], [39, 2, 1, "", "numpy"], [39, 2, 1, "", "plot"], [39, 2, 1, "", "replace"], [39, 2, 1, "", "save_mmcif"], [39, 2, 1, "", "separate_chains"], [39, 2, 1, "", "set"], [39, 2, 1, "id0", "to_dict"], [39, 2, 1, "", "to_pdb_str"]], "moleculib.protein.transform.ProteinPad": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.ProteinRescale": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.ProteinTransform": [[39, 2, 1, "", "transform"]], "moleculib.protein.transform.TokenizeSequenceBoundaries": [[39, 2, 1, "", "transform"]], "moleculib.protein.utils": [[40, 1, 1, "", "ProteinDatum"], [40, 3, 1, "", "config"], [40, 3, 1, "", "home_dir"], [40, 4, 1, "", "measure_rmsd"], [40, 4, 1, "", "pad_array"], [40, 4, 1, "", "pdb_to_atom_array"], [40, 4, 1, "", "pids_file_to_list"], [40, 4, 1, "", "rigid_Kabsch_3D"]], "moleculib.protein.utils.ProteinDatum": [[40, 2, 1, "", "align_to"], [40, 2, 1, "", "apply_angles"], [40, 2, 1, "", "apply_bonds"], [40, 2, 1, "", "apply_dihedrals"], [40, 2, 1, "", "empty"], [40, 2, 1, "", "fetch_pdb_id"], [40, 2, 1, "", "from_atom_array"], [40, 2, 1, "", "from_dict"], [40, 2, 1, "", "from_filepath"], [40, 2, 1, "", "numpy"], [40, 2, 1, "", "plot"], [40, 2, 1, "", "replace"], [40, 2, 1, "", "save_mmcif"], [40, 2, 1, "", "separate_chains"], [40, 2, 1, "", "set"], [40, 2, 1, "id0", "to_dict"], [40, 2, 1, "", "to_pdb_str"]], "moleculib.sequence": [[41, 0, 0, "-", "dataset"], [42, 0, 0, "-", "datum"], [44, 0, 0, "-", "metrics"], [45, 0, 0, "-", "transform"], [46, 0, 0, "-", "utils"]], "moleculib.sequence.dataset": [[41, 1, 1, "", "ElutedLigandDataset"], [41, 1, 1, "", "GFPFitnessDataset"], [41, 1, 1, "", "MHCBindingAffinityDataset"], [41, 1, 1, "", "ProteinTransform"], [41, 1, 1, "", "SeqDatum"], [41, 3, 1, "", "UNK_TOKEN"], [41, 4, 1, "", "onehot_encode_datum"]], "moleculib.sequence.dataset.ProteinTransform": [[41, 2, 1, "", "transform"]], "moleculib.sequence.dataset.SeqDatum": [[41, 2, 1, "", "empty_seqrecord"], [41, 2, 1, "", "from_filepath"], [41, 2, 1, "", "from_pdb_id"], [41, 2, 1, "", "from_sequence"], [41, 2, 1, "", "from_tokens"], [41, 2, 1, "", "from_uniprot_id"], [41, 2, 1, "", "onehot_encode_datum"]], "moleculib.sequence.datum": [[42, 3, 1, "", "API_URL"], [42, 1, 1, "", "SeqDatum"], [42, 3, 1, "", "all_residues"], [42, 3, 1, "", "allowed_aa"], [42, 4, 1, "", "get_residue_index"]], "moleculib.sequence.datum.SeqDatum": [[42, 2, 1, "", "empty_seqrecord"], [42, 2, 1, "", "from_filepath"], [42, 2, 1, "", "from_pdb_id"], [42, 2, 1, "", "from_sequence"], [42, 2, 1, "", "from_tokens"], [42, 2, 1, "", "from_uniprot_id"], [42, 2, 1, "", "onehot_encode_datum"]], "moleculib.sequence.utils": [[46, 3, 1, "", "alphabet"], [46, 4, 1, "", "decode_one_hot"], [46, 4, 1, "", "load_fasta_file"], [46, 4, 1, "", "one_hot_encode_seq"], [46, 4, 1, "", "onehot_encode_datum"], [46, 4, 1, "", "residue_tokens_to_sequence"], [46, 4, 1, "", "save_fasta_file"]], "moleculib.traj": [[47, 0, 0, "-", "dataset"]], "moleculib.traj.dataset": [[47, 1, 1, "", "AdKEquilibriumDataset"], [47, 1, 1, "", "AdKTransitionsDataset"], [47, 1, 1, "", "AtlasDataset"], [47, 1, 1, "", "AtlasEIF4EDataset"], [47, 1, 1, "", "Dataset"], [47, 1, 1, "", "MODELDataset"], [47, 3, 1, "", "NUM_STEPS"], [47, 1, 1, "", "PreProcessedDataset"], [47, 1, 1, "", "ProteinCrop"], [47, 1, 1, "", "ProteinDatum"], [47, 1, 1, "", "TimewarpDataset"], [47, 1, 1, "", "TimewarpDatasetPreprocessed"]], "moleculib.traj.dataset.ProteinCrop": [[47, 2, 1, "", "transform"]], "moleculib.traj.dataset.ProteinDatum": [[47, 2, 1, "", "align_to"], [47, 2, 1, "", "apply_angles"], [47, 2, 1, "", "apply_bonds"], [47, 2, 1, "", "apply_dihedrals"], [47, 2, 1, "", "empty"], [47, 2, 1, "", "fetch_pdb_id"], [47, 2, 1, "", "from_atom_array"], [47, 2, 1, "", "from_dict"], [47, 2, 1, "", "from_filepath"], [47, 2, 1, "", "numpy"], [47, 2, 1, "", "plot"], [47, 2, 1, "", "replace"], [47, 2, 1, "", "save_mmcif"], [47, 2, 1, "", "separate_chains"], [47, 2, 1, "", "set"], [47, 2, 1, "id0", "to_dict"], [47, 2, 1, "", "to_pdb_str"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "data", "Python data"], "4": ["py", "function", "Python function"], "5": ["py", "attribute", "Python attribute"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:data", "4": "py:function", "5": "py:attribute"}, "terms": {"": [12, 15, 16, 46], "0": [10, 14, 20, 21, 31, 34, 36, 39, 47], "02110": 16, "1": [0, 6, 9, 10, 14, 16, 22, 25, 27, 29, 30, 31, 32, 36, 39, 40, 41, 47], "10": [14, 31], "100": [10, 31, 47], "1000": 47, "12": 47, "1301": 16, "14": [22, 25, 27, 46], "15": 47, "1c5e": 31, "1c9o": 31, "1cku": 31, "1cse": 31, "2": 16, "2023": 16, "250": [10, 21], "29": 14, "32": 31, "4": 34, "400": 21, "5": [10, 47], "50": 14, "51": 16, "512": 47, "64": 47, "7zkr": 31, "7zy": 31, "8": 36, "8ajq": 31, "8aql": 31, "8dch": 31, "A": [16, 25, 34, 46], "Be": [12, 15], "FOR": 16, "If": 16, "It": 49, "_data": 14, "_max_atom": 14, "_pad": 14, "_split": 14, "aa_name_numb": [14, 15], "aa_name_sym": [14, 15], "aa_number_nam": [14, 15], "abstract": [0, 5, 8, 9, 11, 13, 14, 20, 24, 27, 30, 31, 39, 41, 47, 49], "abstractmethod": [13, 30], "acceler": 49, "accepted_format": 21, "accepted_typ": 21, "accord": [8, 13, 30, 36, 39], "across": 47, "adjac": [14, 15], "adkequilibriumdataset": 47, "adktransitionsdataset": 47, "al": [12, 15], "ala": 42, "align": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "align_to": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "alignedrootmeansquaredevi": 36, "all": [13, 14, 30, 31, 47], "all_atom": [22, 25, 27, 29, 32, 39, 40], "all_atoms_el": [22, 25, 27, 29, 39], "all_atoms_radii": [29, 39], "all_atoms_token": [22, 25, 27, 29], "all_nuc": [22, 25, 27], "all_nucs_atom_mask": [22, 25, 27], "all_nucs_atom_token": [22, 25, 27], "all_nucs_token": [22, 25, 27], "all_residu": [29, 32, 39, 42], "all_residues_atom_mask": 29, "all_residues_atom_token": 29, "all_residues_token": 29, "allowed_aa": 42, "along": 16, "alphabet": [0, 17, 26, 33, 46], "an": [6, 8, 9, 10, 14, 20, 27, 30, 31, 32, 34, 36, 39, 40, 41, 47], "angl": [8, 36, 39], "angles_list": [8, 36, 39], "ani": [16, 47], "annotatesecondarystructur": 39, "anoth": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "api": 49, "api_url": 42, "apply_angl": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "apply_bond": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "apply_dihedr": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "applymetricstoprotein": 8, "applytoprotein": 9, "appropri": [13, 30], "arg": [14, 15, 16, 34, 42], "arr": 34, "arrai": [6, 9, 10, 20, 21, 25, 27, 28, 30, 31, 32, 34, 36, 39, 40, 41, 42, 47], "asn": 42, "asp": 42, "assembli": [0, 11, 49], "assemblydatum": [6, 8, 9], "assemblymetr": 8, "assemblytransform": 9, "astyp": 34, "atlasdataset": 47, "atlaseif4edataset": 47, "atom": [6, 8, 9, 10, 14, 16, 20, 22, 25, 27, 29, 30, 31, 32, 36, 39, 40, 41, 42, 47], "atom_arrai": [6, 9, 10, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 47], "atom_coord": [6, 9, 10, 13, 14, 15, 20, 25, 27, 30, 31, 32, 36, 39, 40, 47], "atom_dim": [8, 36, 39], "atom_index": [22, 25, 27, 29, 32], "atom_mask": [6, 9, 10, 13, 14, 15, 20, 25, 27, 30, 31, 32, 36, 39, 40, 47], "atom_nam": [14, 15], "atom_to_nucs_index": [22, 25, 27], "atom_to_nucs_mask": [22, 25, 27], "atom_to_residues_index": [29, 32], "atom_to_residues_mask": 29, "atom_token": [6, 9, 10, 13, 14, 15, 20, 25, 27, 30, 31, 32, 36, 39, 40, 47], "atomfeatur": [14, 20], "atomic_numbers_map": 16, "atomist": [14, 20], "atoms_numb": [14, 15, 16], "atoms_per_nuc": [22, 25, 27], "atoms_per_residu": 29, "atoms_residu": [14, 15, 16], "atoms_typ": [14, 15, 16], "attr": [6, 9, 10, 13, 14, 20, 30, 31, 32, 36, 39, 40, 47], "augment": [8, 36, 39], "auto": 0, "autoapi": 0, "ax": 34, "axi": 36, "b": [12, 15, 19, 34, 38, 39], "backbone_atom": [29, 30, 32, 39], "backbone_atoms_dna": [22, 25, 27], "backbone_atoms_rna": [22, 25, 27], "backbone_chemistri": 29, "backboneonli": 39, "base": [5, 6, 8, 9, 10, 13, 14, 15, 20, 24, 25, 27, 30, 31, 32, 36, 39, 40, 41, 42, 47], "base_atoms_per_nuc": [22, 25, 27], "base_path": [5, 14, 24, 31, 41, 47], "batch": [0, 17, 26, 33], "batch_index": [13, 30], "behavior": [8, 36, 39], "benass": 16, "better": 49, "biomolecular": 49, "biotit": [6, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 41, 42, 47], "bond": [6, 8, 10, 13, 14, 15, 20, 29, 36, 39], "bond_lens_arr": [29, 39], "bonds_list": [8, 36, 39], "bool": [14, 31, 36, 39, 41, 47], "boston": 16, "boundary_mask": 39, "boundary_token": 39, "bring": 16, "buffer": 31, "build": [6, 9, 10, 14, 25, 27, 30, 31, 32, 36, 39, 40, 47], "c": [12, 15, 16, 25, 29, 30, 32, 34, 39, 46], "c1": [22, 25, 27], "c2": [22, 25, 27], "c3": [22, 25, 27], "c4": [22, 25, 27], "c5": [22, 25, 27], "ca": [6, 9, 10, 29, 30, 31, 32, 36, 39, 40, 47], "callabl": [1, 3, 5, 8, 10, 14, 24, 31, 47], "can": 16, "caonli": 39, "capabl": 49, "casttobfloat": 20, "catalogu": 47, "central": [14, 15, 20], "chain": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "chain_counter_field": 31, "chain_id": [6, 9, 10, 30, 31, 32, 36, 39, 40, 41, 42, 47], "chain_token": [6, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 47], "check_dataloader_batch_s": [19, 38], "chemicaldeviationmetr": 36, "chemistri": [8, 36, 39], "chignolin": 31, "chiro": 14, "chromadataset": 5, "cl": [12, 15], "class": 49, "classmethod": [6, 8, 9, 10, 13, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 41, 42, 47], "clean": 49, "collat": [13, 30], "color": [6, 9, 10, 13, 15, 20, 25, 27, 30, 31, 32, 36, 39, 40, 47], "compat": 34, "complex": 49, "complexpad": 9, "comprehens": 49, "comput": [14, 20], "config": [21, 25, 28, 40], "connect": [8, 36, 39], "constructor": [13, 30], "contain": 0, "contigu": 39, "coord": [36, 39], "coord_cent": [14, 15], "copi": 16, "copyright": 16, "countclash": 36, "creat": 0, "create_pdb": [14, 15, 16], "create_pdb_lines_md": 16, "create_pdb_lines_qm": 16, "crop_len": 27, "crop_siz": [20, 39, 47], "crossdockdatum": [14, 15], "current": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "cut": [20, 39, 47], "cy": 42, "cyan": 10, "d": [34, 46], "da": 25, "data": [6, 8, 9, 10, 14, 20, 25, 27, 30, 31, 32, 34, 36, 39, 40, 41, 42, 47, 49], "data_list": [13, 30], "databas": 16, "datafram": [14, 31], "datapoint": [9, 14, 20, 31, 39, 41, 47], "dataset": [0, 2, 7, 17, 26, 33, 43, 48], "datum": [0, 7, 8, 9, 10, 13, 14, 17, 20, 21, 26, 27, 30, 31, 33, 36, 39, 40, 41, 43, 47], "dc": 25, "de": 16, "decode_one_hot": 46, "default": 10, "default_color": 10, "dehydr": [14, 15], "densiti": 10, "densitydatum": [14, 15], "describechemistri": [8, 36, 39], "describegraph": [14, 20], "design": 49, "detail": 16, "develop": 49, "devic": [13, 30], "dg": 25, "di": 25, "dict": [6, 8, 9, 14, 20, 47], "dict_": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "directori": [14, 31, 47], "distribut": 16, "dna_datum": 25, "dna_res_nam": 25, "dna_res_token": [25, 27], "document": 0, "drop": [6, 8, 9], "dt": 25, "dtype": 34, "du": 25, "dynam": 47, "e": 46, "each": [14, 16, 31, 47], "either": [14, 16, 31, 47], "element": [12, 14, 15, 20, 22, 25, 27, 29], "els": 36, "elutedliganddataset": 41, "empow": 49, "empti": [6, 9, 10, 13, 15, 20, 30, 31, 32, 36, 39, 40, 47], "empty_molecul": [14, 15], "empty_nuc": [10, 25, 27], "empty_seqrecord": [41, 42], "encode_lm": 41, "encode_one_hot": 41, "end": 16, "engin": 49, "entri": [41, 42], "enzymecommissiondataset": 31, "erinc": 16, "erin\u00e7": 16, "esm": 41, "even": 16, "exampl": 34, "expansion_factor": 47, "expos": 47, "extend": 47, "extract_rdkit_mol_properti": [14, 21], "f": [6, 9, 10, 12, 14, 15, 16, 20, 30, 31, 32, 36, 39, 40, 46, 47], "factor": 39, "fals": [1, 5, 6, 9, 10, 14, 21, 24, 25, 27, 30, 31, 32, 36, 39, 40, 41, 47], "fasta": [41, 42], "fastfoldingdataset": 31, "featur": [14, 20, 49], "fetch_pdb_id": [6, 8, 9, 10, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 47], "fifth": 16, "file": [6, 9, 10, 14, 30, 31, 32, 36, 39, 40, 41, 42, 47], "filepath": [6, 8, 9, 10, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 41, 42, 47], "filip": 16, "filter": 39, "filter_id": 31, "filter_protein": [6, 8, 9], "filterproteinchain": 9, "first": 49, "fit": 16, "float": [6, 9, 10, 14, 25, 27, 30, 31, 32, 36, 39, 40, 47], "floor": 16, "folddataset": 31, "foldingdiffdataset": 31, "form": [13, 30], "format": [6, 9, 10, 14, 16, 30, 31, 32, 36, 39, 40, 47], "foundat": 16, "frac": [14, 31, 47], "frame": [14, 15, 16], "framediffdataset": 31, "franklin": 16, "free": 16, "from": [14, 20, 31, 47, 49], "from_atom_arrai": [6, 9, 10, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 47], "from_datalist": [6, 8, 9], "from_dict": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "from_filepath": [6, 8, 9, 10, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 41, 42, 47], "from_pdb_id": [41, 42], "from_sequ": [41, 42], "from_token": [41, 42], "from_uniprot_id": [41, 42], "full_data": 14, "funcdataset": 31, "function": [13, 49], "fz": 16, "g": [25, 46], "geneontologydataset": 31, "gener": [0, 16], "geometricbatch": 30, "geometry_to_per_residue_indexing_arrai": 29, "get_atom_nam": 16, "get_entri": 16, "get_entries_qm": 16, "get_map": 16, "get_nucleotide_index": [22, 25, 27], "get_residue_index": [29, 32, 42], "gfpfitnessdataset": 41, "given": [14, 31], "gln": 42, "glu": 42, "gly": 42, "gnu": 16, "go": 16, "grid": [10, 21], "h": [12, 15, 46], "h5_to_pdb": [0, 17], "ha": 16, "hand": 39, "have": [8, 16, 36, 39, 41, 42], "he": [12, 15], "head": 10, "header": [6, 9, 10, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 47], "helmholtz": 16, "hi": 42, "hold": [14, 31, 47], "home_dir": [21, 25, 28, 40], "hope": 16, "http": 42, "i": [8, 14, 15, 16, 25, 36, 39, 46, 49], "icnreas": 16, "id": [6, 9, 10, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 47], "idcod": [6, 8, 9, 10, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 41, 42, 47], "idx": [14, 31, 36], "il": 42, "ilanm": 16, "impli": 16, "inc": 16, "incorpor": [6, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 41, 42, 47], "index": [6, 8, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 47, 49], "indic": [6, 8, 9, 36], "individu": [8, 9, 14, 20, 27, 31, 36, 39, 41, 47], "inner_split": 21, "inner_stack": 21, "input": [8, 9, 14, 16, 20, 27, 31, 36, 39, 41, 46, 47], "insert": 16, "insert_t": 16, "insight": 49, "instanc": [13, 30], "int": [14, 20, 22, 25, 27, 29, 31, 32, 34, 36, 39, 42, 47], "integr": 49, "interact": 16, "invari": [8, 36, 39], "its": [13, 30], "jax": [34, 36, 49], "jax_util": [0, 33], "journei": 49, "juelich": 16, "k": 46, "keep": [6, 8, 9], "keep_id": 31, "keep_neighborhood": [14, 15], "keep_seq": 39, "kei": 36, "kwarg": [6, 9, 10, 13, 14, 15, 20, 25, 27, 30, 31, 32, 34, 36, 39, 40, 41, 42, 47], "l": 46, "laplacian": [14, 15], "later": [14, 16, 31], "learn": 49, "left": 39, "len": 34, "lesser": 16, "leu": 42, "level": [8, 31, 36, 39], "li": [12, 15], "librari": [16, 47], "licens": 16, "ligand": [14, 15, 16], "lime": 10, "line": 16, "list": [1, 3, 5, 6, 8, 9, 13, 14, 24, 30, 31, 34, 36, 39, 46, 47], "listangl": 39, "listbond": 39, "listdihedr": 39, "listmirrorflip": 39, "lm_model": 41, "load_fasta_fil": 46, "load_index": [14, 31], "loader_test": [0, 18, 37], "ly": 42, "m": 46, "ma": 16, "machin": 49, "main": 16, "manag": 49, "manipul": 34, "map": 16, "mapdir": 16, "mask": [14, 15, 29, 39], "mask_ratio": 39, "maskresidu": 39, "max_arr_s": 29, "max_atom_count": 14, "max_complex_s": 31, "max_dna_atom": [22, 25, 27], "max_fil": 47, "max_length": 46, "max_num_atom": 14, "max_res_atom": [22, 25, 27], "max_resolut": [14, 31], "max_sequence_length": 31, "max_sequence_s": 47, "max_work": [14, 31], "maybemirror": 39, "measur": [0, 33, 36], "measure_angl": 36, "measure_bond": 36, "measure_chir": 39, "measure_dihedr": 36, "measure_rmsd": 40, "menez": 16, "merchant": 16, "merdivan": 16, "met": 42, "metadata": [14, 31], "metric": [0, 2, 7, 33, 43], "metrics_list": [3, 8], "metricspip": [3, 8], "mf": 31, "mg": [12, 15], "mhcbindingaffinitydataset": 41, "min_atom_count": 14, "min_sequence_length": 31, "min_sequence_s": 47, "misato": 16, "misatodatum": [14, 15], "mmcif": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "mmtf": 31, "mmtf_file": [15, 21], "mode": [40, 47], "model": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "modeldataset": 47, "modifi": 16, "modular": 49, "mol": [14, 21], "molecul": [0, 6, 8, 9, 11, 31, 49], "molecular": 47, "moleculardatum": [6, 9, 10, 30, 31, 32, 36, 39, 40, 41, 42, 47], "molecule_data": [6, 8, 9], "molecule_styl": [6, 8, 9], "molecule_transform": 14, "moleculecol": 13, "moleculecrop": 20, "moleculedatum": [6, 8, 9, 10, 13, 14, 15, 20], "moleculegeometricbatch": 13, "moleculepad": [14, 20], "moleculepadbatch": 13, "molecules_begin_atom_index": [14, 15, 16], "moleculetransform": [14, 20], "moleculib": [0, 49], "monomerdataset": 31, "more": 16, "multipl": [13, 30], "munich": 16, "n": [12, 15, 16, 29, 30, 32, 39, 46], "na": [12, 15], "name": 46, "namemap": 16, "ndarrai": [6, 9, 10, 13, 14, 15, 20, 25, 27, 30, 31, 32, 34, 36, 39, 40, 41, 42, 47], "ndim": 34, "ne": [12, 15], "neighborhood_idx": [14, 15], "new": [8, 9, 14, 20, 27, 31, 36, 39, 41, 47], "next_step": 47, "none": [1, 5, 6, 8, 9, 10, 13, 14, 15, 20, 24, 25, 27, 30, 31, 32, 36, 39, 40, 41, 42, 47], "norm": 36, "normal": [36, 39, 49], "note": [8, 36, 39], "npz": [14, 31, 47], "nuc_index": [10, 25, 27], "nuc_mask": [10, 25, 27], "nuc_token": [10, 25, 27], "nuccrop": 27, "nucleic": [0, 10, 11, 49], "nucleicdatum": [10, 25, 27], "nucleotid": [22, 25, 27], "nucleotidesequ": [10, 25, 27], "nucpad": 27, "nuctransform": 27, "num_chain": 9, "num_fil": 31, "num_interactive_atom": 36, "num_nod": [13, 30], "num_sampl": 10, "num_step": [10, 47], "num_test": 14, "num_train": 14, "num_val": 14, "numpi": [6, 9, 10, 13, 14, 15, 20, 25, 27, 30, 31, 32, 34, 36, 39, 40, 41, 42, 47], "o": [12, 15, 16, 29, 30, 32, 34, 39], "o2": [22, 25, 27], "o3": [22, 25, 27], "o4": [22, 25, 27], "o5": [22, 25, 27], "object": 34, "one_hot_encode_seq": 46, "onehot_encode_datum": [41, 42, 46], "onli": [41, 42], "op1": [22, 25, 27], "op2": [22, 25, 27], "op3": [22, 25, 27], "option": 16, "orang": 10, "org": 42, "organ": 49, "origin": [13, 30], "other": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "p": [12, 15, 22, 25, 27, 40, 46], "packag": 49, "pad": [22, 25, 27, 29], "pad_arrai": [20, 21, 27, 28, 30, 39, 40], "pad_siz": [14, 20, 27, 39], "padbatch": 30, "page": 0, "pair": 10, "pairpad": [14, 20], "panda": [14, 31], "paper": 47, "param": [41, 42], "pars": 31, "parser": 16, "partial": [14, 31], "particular": 16, "pdb": [6, 9, 10, 14, 16, 30, 31, 32, 36, 39, 40, 47], "pdb_header_field": 31, "pdb_id": [14, 31, 41, 42], "pdb_metadata_field": 31, "pdb_path": [25, 28, 40], "pdb_str": [14, 15], "pdb_to_atom_arrai": [15, 21, 25, 28, 40], "pdbbinddatum": [14, 15], "pdbdataset": 31, "pdbmoleculedataset": 14, "pdbmoleculedatum": [14, 15], "peptide_bond": 39, "perform": [8, 36, 39], "periodic_t": [12, 15], "permut": [14, 20], "pid": [19, 38], "pids_file_to_list": [14, 21, 27, 28, 31, 40], "pids_path": [14, 21, 27, 28, 31, 40], "pipelin": 49, "plot": [6, 8, 9, 10, 13, 15, 20, 25, 27, 30, 31, 32, 36, 39, 40, 47], "plot_dens": 10, "plot_dock": 21, "plot_func": 10, "plot_py3dmol": 10, "plot_py3dmol_grid": [10, 21], "plot_py3dmol_traj": 10, "plotdens": 10, "plotpy3dmolsampl": 10, "pocket_pdb_str": [14, 15], "point": [8, 9, 14, 20, 27, 31, 36, 39, 41, 47], "pre_transform": [1, 5, 14, 24, 31, 47], "preload": [14, 31], "preload_num_work": [14, 31], "prepar": [14, 31], "preprocess": 49, "preprocesseddataset": [1, 5, 14, 24, 31, 47], "process": [8, 9, 14, 20, 27, 31, 36, 39, 41, 47, 49], "prod": [14, 15], "prods_mask": [14, 15], "produc": [13, 30], "properti": [14, 15, 20, 29], "protein": [0, 6, 8, 9, 10, 11, 16, 25, 27, 41, 42, 47, 49], "protein_data": [6, 8, 9], "protein_mask": [14, 15], "protein_metr": 8, "protein_pdb_str": [14, 15], "protein_seq": 46, "protein_styl": [6, 8, 9], "protein_token": [14, 15], "protein_transform": 9, "proteincol": [13, 30], "proteincrop": [39, 47], "proteindatum": [6, 8, 9, 10, 13, 30, 31, 32, 36, 39, 40, 41, 47], "proteinmetr": [8, 36], "proteinpad": 39, "proteinrescal": 39, "proteinsequ": [6, 9, 10, 30, 31, 32, 36, 39, 40, 41, 42, 47], "proteintransform": [8, 9, 31, 36, 39, 41, 47], "public": 16, "publish": 16, "purpos": 16, "python": 49, "pytre": [6, 8, 9, 21, 49], "q": [40, 46], "qm9": 14, "qm9dataset": 14, "qm9datum": [14, 15, 20], "r": [14, 15, 46], "radius_multipli": 36, "random_posit": 39, "ravel": 34, "raw": 49, "react": [14, 15], "reactdatum": [14, 15], "reacts_mask": [14, 15], "readili": 49, "receiv": 16, "redistribut": 16, "reduc": 5, "refer": 49, "register_pytre": [15, 21], "replac": [6, 9, 10, 14, 15, 30, 31, 32, 36, 39, 40, 47], "represent": [6, 9, 10, 25, 27, 30, 31, 32, 34, 36, 39, 40, 41, 42, 47], "reproduc": 49, "research": 49, "reshap": [6, 9, 10, 25, 27, 30, 31, 32, 34, 36, 39, 40, 41, 42, 47], "residu": [6, 9, 10, 25, 27, 29, 30, 31, 32, 36, 39, 40, 41, 42, 47], "residue_atom_index": 16, "residue_dim": [8, 36, 39], "residue_index": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "residue_map": 16, "residue_mask": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "residue_nam": 16, "residue_numb": 16, "residue_token": [6, 9, 10, 30, 31, 32, 36, 39, 40, 41, 42, 47], "residue_tokens_to_sequ": 46, "residuenumb": 16, "resolut": [6, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 47], "rest": 42, "return": [8, 9, 14, 20, 27, 31, 36, 39, 41, 42, 47], "revert": [13, 30], "ribbon": [6, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 47], "rigid_kabsch_3d": 40, "rna": 25, "rna_res_nam": 25, "rna_res_token": [25, 27], "rnadataset": 24, "robust": 49, "rsdataset": 14, "rsdatum": [14, 15], "rt": 25, "sabrina": 16, "safe_norm": 36, "sample_pdb": 31, "save": [6, 9, 10, 14, 30, 31, 32, 36, 39, 40, 47], "save_fasta_fil": 46, "save_mmcif": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "save_path": [6, 8, 9, 10, 14, 15, 25, 27, 30, 31, 32, 36, 39, 40, 41, 42, 46, 47], "scaffoldsdataset": 31, "scratch": [14, 31], "see": 16, "seed": [14, 20], "separate_chain": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "seqdatum": [41, 42, 46], "sequenc": [0, 6, 9, 10, 11, 16, 25, 27, 30, 31, 32, 36, 39, 40, 47, 49], "sequencedatum": [41, 46], "set": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47, 49], "shape": 34, "shift": [14, 20], "should": [8, 14, 16, 31, 36, 39], "shuffl": [1, 5, 14, 24, 31, 47], "si": [12, 15], "sidechain": [6, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 47], "sidechain_atoms_per_residu": 29, "sidechain_chemistry_per_residu": 29, "siebenmorgen": 16, "simple_pytre": [6, 8, 9], "simplifi": 49, "singl": [13, 30], "single_chain": 31, "single_protein": 47, "singlebond": 20, "size": 34, "smooth": 36, "softwar": 16, "sortatom": [14, 20], "special_token": [22, 25, 27, 29], "specif": 16, "specifi": [14, 31], "spectrum": [6, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 47], "sphere": [6, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 47], "sphinx": 0, "spin": 21, "split": [1, 5, 14, 24, 31, 47], "split_info": 47, "sse_token": 39, "stackprotein": 9, "standard": 14, "standard_chemical_measur": [35, 36], "standardangledevi": 36, "standardbonddevi": 36, "standardchemicaldevi": 36, "standarddihedraldevi": 36, "standardizeproperti": [14, 20], "static": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "std": [14, 15, 20], "store": [14, 31, 47], "str": [6, 8, 9, 10, 13, 14, 15, 22, 25, 27, 29, 30, 31, 32, 34, 36, 39, 40, 41, 42, 46, 47], "streamlin": 49, "street": 16, "stride": 31, "string": 34, "stringarrai": 34, "struct": 16, "subpackag": 49, "t": [34, 46], "tail": 10, "take": [8, 9, 13, 14, 20, 27, 30, 31, 36, 39, 41, 47], "tau": [31, 47], "ter": 16, "term": 16, "test": [0, 17, 33], "test_dataload": [19, 38], "test_dataload_from_filesystem": [19, 38], "thi": [0, 16], "through": 16, "till": 16, "time_sort": 31, "timewarp": 47, "timewarpdataset": 47, "timewarpdatasetpreprocess": 47, "tinypdbdataset": 31, "to_atom_arrai": [6, 10, 13, 14, 15, 20], "to_dict": [6, 9, 10, 13, 30, 31, 32, 36, 39, 40, 47], "to_pdb_str": [6, 9, 10, 25, 27, 30, 31, 32, 36, 39, 40, 47], "to_sdf_str": [6, 10, 13, 14, 15, 20], "to_split": 14, "token": [14, 15, 20], "tokenizesequenceboundari": 39, "torch": [13, 14, 30, 31, 41], "total_s": [20, 21, 27, 28, 30, 39, 40], "train": [14, 47], "traj": [0, 10, 11, 49], "traj_to_pdb": 10, "trajectori": 47, "trajectory_coordin": [14, 15, 16], "transform": [0, 1, 2, 5, 7, 8, 14, 17, 24, 26, 31, 33, 36, 41, 43, 47], "transpos": 34, "true": [1, 5, 6, 9, 10, 14, 24, 25, 27, 30, 31, 32, 36, 39, 40, 41, 47], "tupl": 46, "type_str": 16, "typemap": 16, "u": [16, 25], "under": 16, "union": [14, 31], "uniprot": 42, "uniprotid": [41, 42], "unk": [22, 25, 27, 29], "unk_token": [22, 25, 27, 29, 31, 41], "unstackprotein": 9, "update_residue_indic": 16, "us": [14, 16, 31], "usa": 16, "use_atom_featur": 14, "util": [0, 14, 17, 26, 31, 33, 41, 43], "v": 46, "val_split": 31, "valu": [8, 9, 14, 20, 21, 27, 31, 36, 39, 41, 47], "valuabl": 49, "van_der_walls_radii": 29, "var_clip": 36, "vector": [36, 39], "version": 16, "view": [6, 8, 9, 10, 13, 15, 20, 25, 27, 30, 31, 32, 36, 39, 40, 47], "viewer": [6, 8, 9, 10, 13, 15, 20, 25, 27, 30, 31, 32, 36, 39, 40, 47], "w": 46, "warranti": 16, "we": 16, "window": [6, 9, 10, 30, 31, 32, 36, 39, 40, 47], "window_s": [10, 21], "within": 49, "without": 16, "workflow": 49, "would": [41, 42], "write": 16, "write_pdb": 16, "x": [14, 20, 36, 40, 46], "y": [40, 46], "you": 16, "your": 16}, "titles": ["API Reference", "moleculib.abstract.dataset", "moleculib.abstract", "moleculib.abstract.metrics", "moleculib.abstract.transform", "moleculib.assembly.dataset", "moleculib.assembly.datum", "moleculib.assembly", "moleculib.assembly.metrics", "moleculib.assembly.transform", "moleculib.graphics.py3Dmol", "moleculib", "moleculib.molecule.alphabet", "moleculib.molecule.batch", "moleculib.molecule.dataset", "moleculib.molecule.datum", "moleculib.molecule.h5_to_pdb", "moleculib.molecule", "moleculib.molecule.tests", "moleculib.molecule.tests.loader_test", "moleculib.molecule.transform", "moleculib.molecule.utils", "moleculib.nucleic.alphabet", "moleculib.nucleic.batch", "moleculib.nucleic.dataset", "moleculib.nucleic.datum", "moleculib.nucleic", "moleculib.nucleic.transform", "moleculib.nucleic.utils", "moleculib.protein.alphabet", "moleculib.protein.batch", "moleculib.protein.dataset", "moleculib.protein.datum", "moleculib.protein", "moleculib.protein.jax_utils", "moleculib.protein.measures", "moleculib.protein.metrics", "moleculib.protein.tests", "moleculib.protein.tests.loader_test", "moleculib.protein.transform", "moleculib.protein.utils", "moleculib.sequence.dataset", "moleculib.sequence.datum", "moleculib.sequence", "moleculib.sequence.metrics", "moleculib.sequence.transform", "moleculib.sequence.utils", "moleculib.traj.dataset", "moleculib.traj", "Getting Started"], "titleterms": {"abstract": [1, 2, 3, 4], "alphabet": [12, 22, 29], "api": 0, "argument": [14, 31, 47], "assembli": [5, 6, 7, 8, 9], "attribut": [10, 12, 14, 15, 16, 20, 21, 22, 25, 27, 28, 29, 30, 31, 32, 35, 36, 39, 40, 41, 42, 46, 47], "batch": [13, 23, 30], "class": [1, 3, 5, 6, 8, 9, 10, 13, 14, 15, 20, 24, 25, 27, 30, 31, 32, 34, 36, 39, 40, 41, 42, 47], "content": [1, 3, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 36, 38, 39, 40, 41, 42, 46, 47], "dataset": [1, 5, 14, 24, 31, 41, 47], "datum": [6, 15, 25, 32, 42], "function": [10, 14, 15, 16, 19, 20, 21, 22, 25, 27, 28, 29, 30, 31, 32, 36, 38, 39, 40, 41, 42, 46], "get": 49, "graphic": 10, "h5_to_pdb": 16, "jax_util": 34, "loader_test": [19, 38], "measur": 35, "metric": [3, 8, 36, 44], "modul": [1, 3, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 36, 38, 39, 40, 41, 42, 46, 47], "molecul": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21], "moleculib": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48], "nucleic": [22, 23, 24, 25, 26, 27, 28], "protein": [29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40], "py3dmol": 10, "refer": 0, "sequenc": [41, 42, 43, 44, 45, 46], "start": 49, "submodul": [2, 7, 17, 18, 26, 33, 37, 43, 48], "subpackag": [11, 17, 33], "test": [18, 19, 37, 38], "traj": [47, 48], "transform": [4, 9, 20, 27, 39, 45], "util": [21, 28, 40, 46]}}) \ No newline at end of file