def refineConsensus(ai, arrowConfig, polishDiploid=False): """ Given a MultiReadMutationScorer, identify and apply favorable template mutations. Return (consensus, didConverge) :: (str, bool) """ cfg = cc.PolishConfig(arrowConfig.maxIterations, arrowConfig.mutationSeparation, arrowConfig.mutationNeighborhood, polishDiploid) if arrowConfig.maskRadius: _ = cc.Polish(ai, cfg) ai.MaskIntervals(arrowConfig.maskRadius, arrowConfig.maskErrorRate) polishResult = cc.Polish(ai, cfg) return str(ai), polishResult.hasConverged
def refineConsensus(ai, arrowConfig): """ Given a MultiReadMutationScorer, identify and apply favorable template mutations. Return (consensus, didConverge) :: (str, bool) """ cfg = cc.PolishConfig(arrowConfig.maxIterations, arrowConfig.mutationSeparation, arrowConfig.mutationNeighborhood) isConverged, nTested, nApplied = cc.Polish(ai, cfg) return str(ai), isConverged