class_docstr: A class that represents a fragment of a molecule.
  
  It's often convenient to represent a fragment of a molecule. For
  example, if two molecules form a molecular complex, it may be useful
  to create two fragments which represent the subsets of each molecule
  that's close to the other molecule (in the contact region).
  
  Ideally, we'd be able to do this in RDKit direct, but manipulating
  molecular fragments doesn't seem to be supported functionality.
  
  Examples
  --------
  >>> import numpy as np
  >>> from rdkit import Chem
  >>> mol = Chem.MolFromSmiles("C")
  >>> coords = np.array([[0.0, 0.0, 0.0]])
  >>> atom = mol.GetAtoms()[0]
  >>> fragment = MolecularFragment([atom], coords)
class_docstr_tok: ["A","class","that","represents","a","fragment","of","a","molecule",".","It","'s","often","convenient","to","represent","a","fragment","of","a","molecule",".","For","example",",","if","two","molecules","form","a","molecular","complex",",","it","may","be","useful","to","create","two","fragments","which","represent","the","subsets","of","each","molecule","that","'s","close","to","the","other","molecule","(","in","the","contact","region",")",".","Ideally",",","we","'d","be","able","to","do","this","in","RDKit","direct",",","but","manipulating","molecular","fragments","does","n't","seem","to","be","supported","functionality",".","Examples","--","--","--","--",">",">",">","import","numpy","as","np",">",">",">","from","rdkit","import","Chem",">",">",">","mol","=","Chem.MolFromSmiles","(","``","C","''",")",">",">",">","coords","=","np.array","(","[","[","0.0",",","0.0",",","0.0","]","]",")",">",">",">","atom","=","mol.GetAtoms","(",")","[","0","]",">",">",">","fragment","=","MolecularFragment","(","[","atom","]",",","coords",")"]
docstr: Returns the number of atoms
  
  Returns
  -------
  int
      Number of atoms in this fragment.
docstr_tok: ["Returns","the","number","of","atoms","Returns","--","--","--","-","int","Number","of","atoms","in","this","fragment","."]
code: def GetNumAtoms(self) -> int:
      """Returns the number of atoms
  
      Returns
      -------
      int
          Number of atoms in this fragment.
      """
      return len(self.atoms)
  
imports: import itertools
  import numpy
  from typing import List, Optional, Sequence, Set, Tuple, Union
  import logging
  from deepchem.utils.typing import RDKitAtom, RDKitMol
  from deepchem.utils.geometry_utils import compute_pairwise_distances
label_desc: Use image node_id 3 for calling the MolecularFragment obj's underlying member method code with example usage: obj.GetNumAtoms() and returns: len