code: def stripForDDG(self, chains = True, keepHETATM = False, numberOfModels = None, raise_exception = True):
          '''Strips a PDB to ATOM lines. If keepHETATM is True then also retain HETATM lines.
             By default all PDB chains are kept. The chains parameter should be True or a list.
             In the latter case, only those chains in the list are kept.
             Unoccupied ATOM lines are discarded.
             This function also builds maps from PDB numbering to Rosetta numbering and vice versa.
             '''
          if raise_exception:
              raise Exception('This code is deprecated.')
          from Bio.PDB import PDBParser
          resmap = {}
          iresmap = {}
          newlines = []
          residx = 0
          oldres = None
          model_number = 1
          for line in self.lines:
              fieldtype = line[0:6].strip()
              if fieldtype == "ENDMDL":
                  model_number += 1
                  if numberOfModels and (model_number > numberOfModels):
                      break
                  if not numberOfModels:
                      raise Exception("The logic here does not handle multiple models yet.")
              if (fieldtype == "ATOM" or (fieldtype == "HETATM" and keepHETATM)) and (float(line[54:60]) != 0):
                  chain = line[21:22]
                  if (chains == True) or (chain in chains):
                      resid = line[21:27]
                      iCode = line[26:27]
                      if resid != oldres:
                          residx += 1
                          newnumbering = "%s%4.i " % (chain, residx)
                          assert(len(newnumbering) == 6)
                          id = fieldtype + "-" + resid
                          resmap[id] = residx
                          iresmap[residx] = id
                          oldres = resid
                      oldlength = len(line)
                      line = "%s%4.i %s" % (line[0:22], resmap[fieldtype + "-" + resid], line[27:])
                      assert(len(line) == oldlength)
                      newlines.append(line)
          self.lines = newlines
          self.ddGresmap = resmap
          self.ddGiresmap = iresmap
          tmpfile = "/tmp/ddgtemp.pdb"
          self.lines = self.lines or ["\n"]
          F = open(tmpfile,'w')
          F.write(string.join(self.lines, "\n"))
          F.close()
          parser=PDBParser()
          structure=parser.get_structure('tmp', tmpfile)
          os.remove(tmpfile)
          count = 0
          for residue in structure.get_residues():
              count += 1
          assert(count == residx)
          assert(len(resmap) == len(iresmap))