createShuffledSubRangeList

fun createShuffledSubRangeList(targetLen: Int, ranges: Set<SRange>): List<SRange>

The function creates a list of sub-ranges from a given set of SRanges. It takes a set or SRanges, creates subsets of length "targetLen". These are created using a window of 1. This method does NOT change the sequence in the record. It assumes the ranges represent an interval on the sequence. It then shuffles the list prior to returning. This method is used by applications (e.g. pairedInterval() to find negative peaks) which want a list that doesn't prioritize a specific section of a range.

This method was created to faciliate Travis's negative peak algorithm

return: A List of subranges