docs: def dockprep(self, force_rerun=False):
          """Prepare a PDB file for docking by first converting it to mol2 format.
  
          Args:
              force_rerun (bool): If method should be rerun even if output file exists
  
          """
          log.debug('{}: running dock preparation...'.format(self.id))
  
          prep_mol2 = op.join(self.dock_dir, '{}_prep.mol2'.format(self.id))
          prep_py = op.join(self.dock_dir, "prep.py")
  
          if ssbio.utils.force_rerun(flag=force_rerun, outfile=prep_mol2):
              with open(prep_py, "w") as f:
                  f.write('import chimera\n')
                  f.write('from DockPrep import prep\n')
                  f.write('models = chimera.openModels.list(modelTypes=[chimera.Molecule])\n')
                  f.write('prep(models)\n')
                  f.write('from WriteMol2 import writeMol2\n')
                  f.write('writeMol2(models, "{}")\n'.format(prep_mol2))
  
              cmd = 'chimera --nogui {} {}'.format(self.structure_path, prep_py)
              os.system(cmd)
              os.remove(prep_py)
              os.remove('{}c'.format(prep_py))
  
          if ssbio.utils.is_non_zero_file(prep_mol2):
              self.dockprep_path = prep_mol2
              log.debug('{}: successful dockprep execution'.format(self.dockprep_path))
          else:
              log.critical('{}: dockprep failed to run on PDB file'.format(self.structure_path))