code: def normalise_reads(self):
          
          logging.info('Normalising reads to a kmer depth of 100')
          for sample in self.metadata:
              # Set the name of the normalised read files
              sample.general.normalisedreads = [fastq.split('.fastq.gz')[0] + '_normalised.fastq.gz'
                                                for fastq in sorted(sample.general.fastqfiles)]
              try:
                  # Run the normalisation command
                  out, err, cmd = bbtools.bbnorm(forward_in=sorted(sample.general.trimmedcorrectedfastqfiles)[0],
                                                 forward_out=sample.general.normalisedreads[0],
                                                 returncmd=True,
                                                 threads=self.cpus)
                  sample[self.analysistype].normalisecmd = cmd
                  write_to_logfile(out, err, self.logfile, sample.general.logout, sample.general.logerr, None, None)
              except CalledProcessError:
                  sample.general.normalisedreads = sample.general.trimmedfastqfiles
              except IndexError:
                  sample.general.normalisedreads = list()
docs: Use bbnorm from the bbmap suite of tools to perform read normalisation