(RNABloom assembler, boolean forceOverwrite,
String outdir, String name, String txptNamePrefix,
long sbfSize, int sbfNumHash, long pkbfSize, int pkbfNumHash, int numThreads, boolean noFragDBG,
int sampleSize, int minTranscriptLength, boolean keepArtifact, boolean keepChimera,
boolean reqFragKmersConsistency, boolean restorePairedKmers,
float minKmerCov, String branchFreeExtensionThreshold,
boolean reduceRedundancy, boolean assemblePolya, boolean writeUracil,
String[] refTranscriptPaths, boolean usePacBioPreset, String minimapOptions,
boolean destroyBf)
| 5590 | } |
| 5591 | |
| 5592 | private static void assembleTranscriptsPE(RNABloom assembler, boolean forceOverwrite, |
| 5593 | String outdir, String name, String txptNamePrefix, |
| 5594 | long sbfSize, int sbfNumHash, long pkbfSize, int pkbfNumHash, int numThreads, boolean noFragDBG, |
| 5595 | int sampleSize, int minTranscriptLength, boolean keepArtifact, boolean keepChimera, |
| 5596 | boolean reqFragKmersConsistency, boolean restorePairedKmers, |
| 5597 | float minKmerCov, String branchFreeExtensionThreshold, |
| 5598 | boolean reduceRedundancy, boolean assemblePolya, boolean writeUracil, |
| 5599 | String[] refTranscriptPaths, boolean usePacBioPreset, String minimapOptions, |
| 5600 | boolean destroyBf) throws IOException, InterruptedException { |
| 5601 | |
| 5602 | final File txptsDoneStamp = new File(outdir + File.separator + STAMP_TRANSCRIPTS_DONE); |
| 5603 | final String transcriptsFasta = outdir + File.separator + name + ".transcripts" + FASTA_EXT; |
| 5604 | final String shortTranscriptsFasta = outdir + File.separator + name + ".transcripts.short" + FASTA_EXT; |
| 5605 | |
| 5606 | if (forceOverwrite || !txptsDoneStamp.exists()) { |
| 5607 | Timer timer = new Timer(); |
| 5608 | |
| 5609 | FragmentPaths fragPaths = new FragmentPaths(outdir, name); |
| 5610 | |
| 5611 | final String graphFile = outdir + File.separator + name + ".graph"; |
| 5612 | |
| 5613 | if (!noFragDBG) { |
| 5614 | if (assembler.isGraphInitialized()) { |
| 5615 | assembler.clearDbgBf(); |
| 5616 | assembler.clearRpkBf(); |
| 5617 | } |
| 5618 | |
| 5619 | System.out.println("Rebuilding graph from assembled fragments..."); |
| 5620 | timer.start(); |
| 5621 | if (restorePairedKmers) { |
| 5622 | assembler.setupFragmentPairedKmersBloomFilter(pkbfSize, pkbfNumHash); |
| 5623 | assembler.updateFragmentKmerDistance(graphFile); |
| 5624 | } |
| 5625 | |
| 5626 | assembler.populateGraphFromFragments(fragPaths.asList(assemblePolya), |
| 5627 | refTranscriptPaths == null ? new ArrayList<>() : Arrays.asList(refTranscriptPaths), |
| 5628 | restorePairedKmers, numThreads); |
| 5629 | |
| 5630 | System.out.println("Graph rebuilt in " + timer.elapsedDHMS()); |
| 5631 | } |
| 5632 | |
| 5633 | |
| 5634 | deleteIfExists(transcriptsFasta); |
| 5635 | deleteIfExists(shortTranscriptsFasta); |
| 5636 | |
| 5637 | System.out.println("Assembling transcripts..."); |
| 5638 | timer.start(); |
| 5639 | |
| 5640 | assembler.setupKmerScreeningBloomFilter(sbfSize, sbfNumHash); |
| 5641 | |
| 5642 | assembler.assembleTranscriptsMultiThreaded(fragPaths, |
| 5643 | transcriptsFasta, |
| 5644 | shortTranscriptsFasta, |
| 5645 | graphFile, |
| 5646 | numThreads, |
| 5647 | sampleSize, |
| 5648 | minTranscriptLength, |
| 5649 | keepArtifact, |
no test coverage detected