code: def density(args):
      
      p = OptionParser(density.__doc__)
      p.add_option("--save", default=False, action="store_true",
                   help="Write log densitites of contigs to file")
      p.set_cpus()
      opts, args = p.parse_args(args)
  
      if len(args) != 1:
          sys.exit(not p.print_help())
  
      clmfile, = args
      clm = CLMFile(clmfile)
      pf = clmfile.rsplit(".", 1)[0]
  
      if opts.save:
          logdensities = clm.calculate_densities()
          densityfile = pf + ".density"
          fw = open(densityfile, "w")
          for name, logd in logdensities.items():
              s = clm.tig_to_size[name]
              print("\t".join(str(x) for x in (name, s, logd)), file=fw)
          fw.close()
          logging.debug("Density written to `{}`".format(densityfile))
  
      tourfile = clmfile.rsplit(".", 1)[0] + ".tour"
      tour = clm.activate(tourfile=tourfile, backuptour=False)
      clm.flip_all(tour)
      clm.flip_whole(tour)
      clm.flip_one(tour)
docs: %prog density test.clm
  
      Estimate link density of contigs.