class_docstr: Generate molecule conformers.
  
  Notes
  -----
  Procedure
  1. Generate a pool of conformers.
  2. Minimize conformers.
  3. Prune conformers using an RMSD threshold.
  
  Note that pruning is done _after_ minimization, which differs from the
  protocol described in the references [1]_ [2]_.
  
  References
  ----------
  .. [1] http://rdkit.org/docs/GettingStartedInPython.html#working-with-3d-molecules
  .. [2] http://pubs.acs.org/doi/full/10.1021/ci2004658
  
  Notes
  -----
  This class requires RDKit to be installed.
docstr: Get a force field for a molecule.
  
  Parameters
  ----------
  mol: rdkit.Chem.rdchem.Mol
      RDKit Mol object with embedded conformers.
  conf_id: int, optional
      ID of the conformer to associate with the force field.
  kwargs: dict, optional
      Keyword arguments for force field constructor.
  
  Returns
  -------
  ff: rdkit.ForceField.rdForceField.ForceField
      RDKit force field instance for a molecule.
docstr_tok: ["Get","a","force","field","for","a","molecule",".","Parameters","--","--","--","--","--","mol",":","rdkit.Chem.rdchem.Mol","RDKit","Mol","object","with","embedded","conformers",".","conf_id",":","int",",","optional","ID","of","the","conformer","to","associate","with","the","force","field",".","kwargs",":","dict",",","optional","Keyword","arguments","for","force","field","constructor",".","Returns","--","--","--","-","ff",":","rdkit.ForceField.rdForceField.ForceField","RDKit","force","field","instance","for","a","molecule","."]
code: def get_molecule_force_field(
      self, mol: RDKitMol, conf_id: Optional[int] = None, **kwargs
  ) -> Any:
      """
      Get a force field for a molecule.
  
      Parameters
      ----------
      mol: rdkit.Chem.rdchem.Mol
          RDKit Mol object with embedded conformers.
      conf_id: int, optional
          ID of the conformer to associate with the force field.
      kwargs: dict, optional
          Keyword arguments for force field constructor.
  
      Returns
      -------
      ff: rdkit.ForceField.rdForceField.ForceField
          RDKit force field instance for a molecule.
      """
      try:
          from rdkit.Chem import AllChem
      except ModuleNotFoundError:
          raise ImportError(
              "This function requires RDKit to be installed."
          )
  
      if self.force_field == "uff":
          ff = AllChem.UFFGetMoleculeForceField(
              mol, confId=conf_id, **kwargs
          )
      elif self.force_field.startswith("mmff"):
          AllChem.MMFFSanitizeMolecule(mol)
          mmff_props = AllChem.MMFFGetMoleculeProperties(
              mol, mmffVariant=self.force_field
          )
          ff = AllChem.MMFFGetMoleculeForceField(
              mol, mmff_props, confId=conf_id, **kwargs
          )
      else:
          raise ValueError(
              "Invalid force_field " + "'{}'.".format(self.force_field)
          )
      return ff
  
file_path: deepchem/deepchem/utils/conformers.py
imports: import numpy
  from typing import Any, List, Optional
  from deepchem.utils.typing import RDKitMol
label_desc: Use image node_id 5 for calling the ConformerGenerator obj's underlying member method code with example usage: obj.get_molecule_force_field(mol, conf_id) and returns: ff