# HG changeset patch # User bgruening # Date 1566406762 14400 # Node ID f06523fe7828d117a7c9f4524e7a915bb49fe536 # Parent c5003e3c507d596e550573cc3fadf2ce3e2b841e "planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/bismark commit ce4520063ab4d016dd5c5680c0f03eae849b150c" diff -r c5003e3c507d -r f06523fe7828 bismark_bowtie2_wrapper.xml --- a/bismark_bowtie2_wrapper.xml Thu Aug 01 10:46:45 2019 -0400 +++ b/bismark_bowtie2_wrapper.xml Wed Aug 21 12:59:22 2019 -0400 @@ -1,4 +1,4 @@ - + Bisulfite reads mapper bismark @@ -119,9 +119,6 @@ ## default 2 --max-reseed $params.max_reseed - ## default 70 - ##--maqerr $params.maqerr - ## default unlimited #if $params.qupto != 0: --qupto $params.qupto @@ -130,6 +127,10 @@ --skip-reads $params.skip_reads #end if + #if $params.score_min != "": + --score-min '${params.score_min}' + #end if + ## if set, disable the original behaviour $params.no_mixed ## if set, disable the original behaviour @@ -252,9 +253,7 @@ - + @@ -268,6 +267,8 @@ + + @@ -511,6 +512,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r c5003e3c507d -r f06523fe7828 bismark_wrapper.py --- a/bismark_wrapper.py Thu Aug 01 10:46:45 2019 -0400 +++ b/bismark_wrapper.py Wed Aug 21 12:59:22 2019 -0400 @@ -71,6 +71,7 @@ parser.add_argument('--non-directional', dest='non_directional', action="store_true") parser.add_argument('--skip-reads', dest='skip_reads', type=int) + parser.add_argument('--score-min', dest='score_min', type=str) parser.add_argument('--qupto', type=int) # paired end options @@ -88,10 +89,7 @@ parser.add_argument('--seed-mismatches', dest='seed_mismatches', type=int) # default 2 parser.add_argument('--max-reseed', dest='max_reseed', type=int) - """ - # default 70 - parser.add_argument( '--maqerr', dest='maqerr', type=int ) - """ + """ The number of megabytes of memory a given thread is given to store path @@ -181,6 +179,8 @@ cmd.append('--no-mixed') if args.skip_reads: cmd.extend(['--skip', str(args.skip_reads)]) + if args.score_min: + cmd.extend(['--score_min', str(args.score_min)]) if args.qupto: cmd.extend(['--upto', 'args.qupto']) if args.phred64: diff -r c5003e3c507d -r f06523fe7828 test-data/mapped_reads_custom.bam Binary file test-data/mapped_reads_custom.bam has changed diff -r c5003e3c507d -r f06523fe7828 test-data/mapping_report_custom.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/mapping_report_custom.txt Wed Aug 21 12:59:22 2019 -0400 @@ -0,0 +1,42 @@ +Bismark report for: input_1.fq.gz (version: v0.22.1) +Option '--directional' specified (default mode): alignments to complementary strands (CTOT, CTOB) were ignored (i.e. not performed) +Bismark was run with Bowtie 2 against the bisulfite genome of /tmp/tmp53fiEn/ with the specified options: -q -L 20 -D 15 -R 2 --score-min L,0,-0.8 --ignore-quals --quiet + +Final Alignment report +====================== +Sequences analysed in total: 44115 +Number of alignments with a unique best hit from the different alignments: 1992 +Mapping efficiency: 4.5% +Sequences with no alignments under any condition: 40786 +Sequences did not map uniquely: 1337 +Sequences which were discarded because genomic sequence could not be extracted: 0 + +Number of sequences with unique best (first) alignment came from the bowtie output: +CT/CT: 832 ((converted) top strand) +CT/GA: 1160 ((converted) bottom strand) +GA/CT: 0 (complementary to (converted) top strand) +GA/GA: 0 (complementary to (converted) bottom strand) + +Number of alignments to (merely theoretical) complementary strands being rejected in total: 0 + +Final Cytosine Methylation Report +================================= +Total number of C's analysed: 31956 + +Total methylated C's in CpG context: 564 +Total methylated C's in CHG context: 249 +Total methylated C's in CHH context: 882 +Total methylated C's in Unknown context: 36 + +Total unmethylated C's in CpG context: 608 +Total unmethylated C's in CHG context: 6183 +Total unmethylated C's in CHH context: 23470 +Total unmethylated C's in Unknown context: 232 + +C methylated in CpG context: 48.1% +C methylated in CHG context: 3.9% +C methylated in CHH context: 3.6% +C methylated in Unknown context (CN or CHN): 13.4% + + +Bismark completed in 0d 0h 0m 8s diff -r c5003e3c507d -r f06523fe7828 test-data/summary_custom.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/summary_custom.txt Wed Aug 21 12:59:22 2019 -0400 @@ -0,0 +1,495 @@ +Create a temporary index with the offered files from the user. Utilizing the script: bismark_genome_preparation +Generating index with: 'bismark_genome_preparation --bowtie2 /tmp/tmpProAS5' +Writing bisulfite genomes out into a single MFA (multi FastA) file + +Bisulfite Genome Indexer version v0.22.1 (last modified: 14 April 2019) + +Step I - Prepare genome folders - completed + + + +Total number of conversions performed: +C->T: 146875 +G->A: 150504 + +Step II - Genome bisulfite conversions - completed + + +Bismark Genome Preparation - Step III: Launching the Bowtie 2 indexer +Please be aware that this process can - depending on genome size - take several hours! +Settings: + Output files: "BS_CT.*.bt2" + Line rate: 6 (line is 64 bytes) + Lines per side: 1 (side is 64 bytes) + Offset rate: 4 (one in 16) + FTable chars: 10 + Strings: unpacked + Max bucket size: default + Max bucket size, sqrt multiplier: default + Max bucket size, len divisor: 4 + Difference-cover sample period: 1024 + Endianness: little + Actual local endianness: little + Sanity checking: disabled + Assertions: disabled + Random seed: 0 + Sizeofs: void*:8, int:4, long:8, size_t:8 +Input files DNA, FASTA: + genome_mfa.CT_conversion.fa +Building a SMALL index +Reading reference sizes + Time reading reference sizes: 00:00:00 +Calculating joined length +Writing header +Reserving space for joined string +Joining reference sequences + Time to join reference sequences: 00:00:00 +bmax according to bmaxDivN setting: 189039 +Using parameters --bmax 141780 --dcv 1024 + Doing ahead-of-time memory usage test + Passed! Constructing with these parameters: --bmax 141780 --dcv 1024 +Constructing suffix-array element generator +Building DifferenceCoverSample + Building sPrime + Building sPrimeOrder + V-Sorting samples + V-Sorting samples time: 00:00:00 + Allocating rank array + Ranking v-sort output + Ranking v-sort output time: 00:00:00 + Invoking Larsson-Sadakane on ranks + Invoking Larsson-Sadakane on ranks time: 00:00:00 + Sanity-checking and returning +Building samples +Reserving space for 12 sample suffixes +Generating random suffixes +QSorting 12 sample offsets, eliminating duplicates +QSorting sample offsets, eliminating duplicates time: 00:00:00 +Multikey QSorting 12 samples + (Using difference cover) + Multikey QSorting samples time: 00:00:00 +Calculating bucket sizes +Splitting and merging + Splitting and merging time: 00:00:00 +Avg bucket size: 756159 (target: 141779) +Converting suffix-array elements to index image +Allocating ftab, absorbFtab +Entering Ebwt loop +Getting block 1 of 1 + No samples; assembling all-inclusive block + Sorting block of length 756159 for bucket 1 + (Using difference cover) + Sorting block time: xxxx +Returning block of 756160 for bucket 1 +Exited Ebwt loop +fchr[A]: 0 +fchr[C]: 235897 +fchr[G]: 235897 +fchr[T]: 386401 +fchr[$]: 756159 +Exiting Ebwt::buildToDisk() +Returning from initFromVector +Wrote 4446745 bytes to primary EBWT file: BS_CT.1.bt2 +Wrote 189044 bytes to secondary EBWT file: BS_CT.2.bt2 +Re-opening _in1 and _in2 as input streams +Returning from Ebwt constructor +Headers: + len: 756159 + bwtLen: 756160 + sz: 189040 + bwtSz: 189040 + lineRate: 6 + offRate: 4 + offMask: 0xfffffff0 + ftabChars: 10 + eftabLen: 20 + eftabSz: 80 + ftabLen: 1048577 + ftabSz: 4194308 + offsLen: 47260 + offsSz: 189040 + lineSz: 64 + sideSz: 64 + sideBwtSz: 48 + sideBwtLen: 192 + numSides: 3939 + numLines: 3939 + ebwtTotLen: 252096 + ebwtTotSz: 252096 + color: 0 + reverse: 0 +Total time for call to driver() for forward index: xxxx +Reading reference sizes + Time reading reference sizes: 00:00:00 +Calculating joined length +Writing header +Reserving space for joined string +Joining reference sequences + Time to join reference sequences: 00:00:00 + Time to reverse reference sequence: 00:00:00 +bmax according to bmaxDivN setting: 189039 +Using parameters --bmax 141780 --dcv 1024 + Doing ahead-of-time memory usage test + Passed! Constructing with these parameters: --bmax 141780 --dcv 1024 +Constructing suffix-array element generator +Building DifferenceCoverSample + Building sPrime + Building sPrimeOrder + V-Sorting samples + V-Sorting samples time: 00:00:00 + Allocating rank array + Ranking v-sort output + Ranking v-sort output time: 00:00:00 + Invoking Larsson-Sadakane on ranks + Invoking Larsson-Sadakane on ranks time: 00:00:00 + Sanity-checking and returning +Building samples +Reserving space for 12 sample suffixes +Generating random suffixes +QSorting 12 sample offsets, eliminating duplicates +QSorting sample offsets, eliminating duplicates time: 00:00:00 +Multikey QSorting 12 samples + (Using difference cover) + Multikey QSorting samples time: 00:00:00 +Calculating bucket sizes +Splitting and merging + Splitting and merging time: 00:00:00 +Avg bucket size: 756159 (target: 141779) +Converting suffix-array elements to index image +Allocating ftab, absorbFtab +Entering Ebwt loop +Getting block 1 of 1 + No samples; assembling all-inclusive block + Sorting block of length 756159 for bucket 1 + (Using difference cover) + Sorting block time: xxxx +Returning block of 756160 for bucket 1 +Exited Ebwt loop +fchr[A]: 0 +fchr[C]: 235897 +fchr[G]: 235897 +fchr[T]: 386401 +fchr[$]: 756159 +Exiting Ebwt::buildToDisk() +Returning from initFromVector +Wrote 4446745 bytes to primary EBWT file: BS_CT.rev.1.bt2 +Wrote 189044 bytes to secondary EBWT file: BS_CT.rev.2.bt2 +Re-opening _in1 and _in2 as input streams +Returning from Ebwt constructor +Headers: + len: 756159 + bwtLen: 756160 + sz: 189040 + bwtSz: 189040 + lineRate: 6 + offRate: 4 + offMask: 0xfffffff0 + ftabChars: 10 + eftabLen: 20 + eftabSz: 80 + ftabLen: 1048577 + ftabSz: 4194308 + offsLen: 47260 + offsSz: 189040 + lineSz: 64 + sideSz: 64 + sideBwtSz: 48 + sideBwtLen: 192 + numSides: 3939 + numLines: 3939 + ebwtTotLen: 252096 + ebwtTotSz: 252096 + color: 0 + reverse: 1 +Total time for backward call to driver() for mirror index: 00:00:01 +Settings: + Output files: "BS_GA.*.bt2" + Line rate: 6 (line is 64 bytes) + Lines per side: 1 (side is 64 bytes) + Offset rate: 4 (one in 16) + FTable chars: 10 + Strings: unpacked + Max bucket size: default + Max bucket size, sqrt multiplier: default + Max bucket size, len divisor: 4 + Difference-cover sample period: 1024 + Endianness: little + Actual local endianness: little + Sanity checking: disabled + Assertions: disabled + Random seed: 0 + Sizeofs: void*:8, int:4, long:8, size_t:8 +Input files DNA, FASTA: + genome_mfa.GA_conversion.fa +Building a SMALL index +Reading reference sizes + Time reading reference sizes: 00:00:00 +Calculating joined length +Writing header +Reserving space for joined string +Joining reference sequences + Time to join reference sequences: 00:00:00 +bmax according to bmaxDivN setting: 189039 +Using parameters --bmax 141780 --dcv 1024 + Doing ahead-of-time memory usage test + Passed! Constructing with these parameters: --bmax 141780 --dcv 1024 +Constructing suffix-array element generator +Building DifferenceCoverSample + Building sPrime + Building sPrimeOrder + V-Sorting samples + V-Sorting samples time: 00:00:00 + Allocating rank array + Ranking v-sort output + Ranking v-sort output time: 00:00:00 + Invoking Larsson-Sadakane on ranks + Invoking Larsson-Sadakane on ranks time: 00:00:00 + Sanity-checking and returning +Building samples +Reserving space for 12 sample suffixes +Generating random suffixes +QSorting 12 sample offsets, eliminating duplicates +QSorting sample offsets, eliminating duplicates time: 00:00:00 +Multikey QSorting 12 samples + (Using difference cover) + Multikey QSorting samples time: 00:00:00 +Calculating bucket sizes +Splitting and merging + Splitting and merging time: 00:00:00 +Avg bucket size: 756159 (target: 141779) +Converting suffix-array elements to index image +Allocating ftab, absorbFtab +Entering Ebwt loop +Getting block 1 of 1 + No samples; assembling all-inclusive block + Sorting block of length 756159 for bucket 1 + (Using difference cover) + Sorting block time: xxxx +Returning block of 756160 for bucket 1 +Exited Ebwt loop +fchr[A]: 0 +fchr[C]: 386401 +fchr[G]: 533276 +fchr[T]: 533276 +fchr[$]: 756159 +Exiting Ebwt::buildToDisk() +Returning from initFromVector +Wrote 4446745 bytes to primary EBWT file: BS_GA.1.bt2 +Wrote 189044 bytes to secondary EBWT file: BS_GA.2.bt2 +Re-opening _in1 and _in2 as input streams +Returning from Ebwt constructor +Headers: + len: 756159 + bwtLen: 756160 + sz: 189040 + bwtSz: 189040 + lineRate: 6 + offRate: 4 + offMask: 0xfffffff0 + ftabChars: 10 + eftabLen: 20 + eftabSz: 80 + ftabLen: 1048577 + ftabSz: 4194308 + offsLen: 47260 + offsSz: 189040 + lineSz: 64 + sideSz: 64 + sideBwtSz: 48 + sideBwtLen: 192 + numSides: 3939 + numLines: 3939 + ebwtTotLen: 252096 + ebwtTotSz: 252096 + color: 0 + reverse: 0 +Total time for call to driver() for forward index: xxxx +Reading reference sizes + Time reading reference sizes: 00:00:00 +Calculating joined length +Writing header +Reserving space for joined string +Joining reference sequences + Time to join reference sequences: 00:00:00 + Time to reverse reference sequence: 00:00:00 +bmax according to bmaxDivN setting: 189039 +Using parameters --bmax 141780 --dcv 1024 + Doing ahead-of-time memory usage test + Passed! Constructing with these parameters: --bmax 141780 --dcv 1024 +Constructing suffix-array element generator +Building DifferenceCoverSample + Building sPrime + Building sPrimeOrder + V-Sorting samples + V-Sorting samples time: 00:00:00 + Allocating rank array + Ranking v-sort output + Ranking v-sort output time: 00:00:00 + Invoking Larsson-Sadakane on ranks + Invoking Larsson-Sadakane on ranks time: 00:00:00 + Sanity-checking and returning +Building samples +Reserving space for 12 sample suffixes +Generating random suffixes +QSorting 12 sample offsets, eliminating duplicates +QSorting sample offsets, eliminating duplicates time: 00:00:00 +Multikey QSorting 12 samples + (Using difference cover) + Multikey QSorting samples time: 00:00:00 +Calculating bucket sizes +Splitting and merging + Splitting and merging time: 00:00:00 +Avg bucket size: 756159 (target: 141779) +Converting suffix-array elements to index image +Allocating ftab, absorbFtab +Entering Ebwt loop +Getting block 1 of 1 + No samples; assembling all-inclusive block + Sorting block of length 756159 for bucket 1 + (Using difference cover) + Sorting block time: xxxx +Returning block of 756160 for bucket 1 +Exited Ebwt loop +fchr[A]: 0 +fchr[C]: 386401 +fchr[G]: 533276 +fchr[T]: 533276 +fchr[$]: 756159 +Exiting Ebwt::buildToDisk() +Returning from initFromVector +Wrote 4446745 bytes to primary EBWT file: BS_GA.rev.1.bt2 +Wrote 189044 bytes to secondary EBWT file: BS_GA.rev.2.bt2 +Re-opening _in1 and _in2 as input streams +Returning from Ebwt constructor +Headers: + len: 756159 + bwtLen: 756160 + sz: 189040 + bwtSz: 189040 + lineRate: 6 + offRate: 4 + offMask: 0xfffffff0 + ftabChars: 10 + eftabLen: 20 + eftabSz: 80 + ftabLen: 1048577 + ftabSz: 4194308 + offsLen: 47260 + offsSz: 189040 + lineSz: 64 + sideSz: 64 + sideBwtSz: 48 + sideBwtLen: 192 + numSides: 3939 + numLines: 3939 + ebwtTotLen: 252096 + ebwtTotSz: 252096 + color: 0 + reverse: 1 +Total time for backward call to driver() for mirror index: 00:00:01 +Running bismark with: 'bismark --bam --gzip --temp_dir /tmp/tmpvcY9eC -o /tmp/tmpvcY9eC/results --quiet --fastq -L 20 -D 15 -R 2 --score_min L,0,-0.8 --un --ambiguous /tmp/tmpProAS5 input_1.fq.gz' +Bowtie 2 seems to be working fine (tested command 'bowtie2 --version' [2.3.5]) +Output format is BAM (default) +Alignments will be written out in BAM format. Samtools found here: '/home/abretaud/miniconda3/envs/mulled-v1-9f2317dbfb405ed6926c55752e5c11678eee3256a6ea680d1c0f912251153030/bin/samtools' +Reference genome folder provided is /tmp/tmpProAS5/ (absolute path is '/tmp/tmpProAS5/)' +FastQ format specified + +Input files to be analysed (in current folder '/tmp/tmpq6T4hb/job_working_directory/000/4/working'): +input_1.fq.gz +Library is assumed to be strand-specific (directional), alignments to strands complementary to the original top or bottom strands will be ignored (i.e. not performed!) +Created output directory /tmp/tmpvcY9eC/results/! + +Output will be written into the directory: /tmp/tmpvcY9eC/results/ + +Using temp directory: /tmp/tmpvcY9eC +Temporary files will be written into the directory: /tmp/tmpvcY9eC/ +Setting parallelization to single-threaded (default) + +Summary of all aligner options: -q -L 20 -D 15 -R 2 --score-min L,0,-0.8 --ignore-quals --quiet +Current working directory is: /tmp/tmpq6T4hb/job_working_directory/000/4/working + +Now reading in and storing sequence information of the genome specified in: /tmp/tmpProAS5/ + +chr chrY_JH584300_random (182347 bp) +chr chrY_JH584301_random (259875 bp) +chr chrY_JH584302_random (155838 bp) +chr chrY_JH584303_random (158099 bp) + +Single-core mode: setting pid to 1 + +Single-end alignments will be performed +======================================= + +Input file is in FastQ format +Writing a C -> T converted version of the input file input_1.fq.gz to /tmp/tmpvcY9eC/input_1.fq.gz_C_to_T.fastq.gz + +Created C -> T converted version of the FastQ file input_1.fq.gz (44115 sequences in total) + +Input file is input_1.fq.gz_C_to_T.fastq.gz (FastQ) + +Now running 2 instances of Bowtie 2 against the bisulfite genome of /tmp/tmpProAS5/ with the specified options: -q -L 20 -D 15 -R 2 --score-min L,0,-0.2 --ignore-quals --quiet + +Now starting the Bowtie 2 aligner for CTreadCTgenome (reading in sequences from /tmp/tmpvcY9eC/input_1.fq.gz_C_to_T.fastq.gz with options -q -L 20 -D 15 -R 2 --score-min L,0,-0.2 --ignore-quals --quiet --norc) +Using Bowtie 2 index: /tmp/tmpProAS5/Bisulfite_Genome/CT_conversion/BS_CT + +Found first alignment: 1_1 4 * 0 0 * * 0 0 TTGTATATATTAGATAAATTAATTTTTTTTGTTTGTATGTTAAATTTTTTAATTAATTTATTAATATTTTGTGAATTTTTAGATA AAAAAEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEAEEAEEEEEE YT:Z:UU +Now starting the Bowtie 2 aligner for CTreadGAgenome (reading in sequences from /tmp/tmpvcY9eC/input_1.fq.gz_C_to_T.fastq.gz with options -q -L 20 -D 15 -R 2 --score-min L,0,-0.2 --ignore-quals --quiet --nofw) +Using Bowtie 2 index: /tmp/tmpProAS5/Bisulfite_Genome/GA_conversion/BS_GA + +Found first alignment: 1_1 4 * 0 0 * * 0 0 TTGTATATATTAGATAAATTAATTTTTTTTGTTTGTATGTTAAATTTTTTAATTAATTTATTAATATTTTGTGAATTTTTAGATA AAAAAEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEAEEAEEEEEE YT:Z:UU + +>>> Writing bisulfite mapping results to /tmp/tmpvcY9eC/results/input_1_bismark_bt2.bam <<< + +Unmapped sequences will be written to /tmp/tmpvcY9eC/results/input_1.fq.gz_unmapped_reads.fq.gz +Ambiguously mapping sequences will be written to /tmp/tmpvcY9eC/results/input_1.fq.gz_ambiguous_reads.fq.gz + +Reading in the sequence file input_1.fq.gz +Processed 44115 sequences in total + + +Successfully deleted the temporary file /tmp/tmpvcY9eC/input_1.fq.gz_C_to_T.fastq.gz + +Final Alignment report +====================== +Sequences analysed in total: 44115 +Number of alignments with a unique best hit from the different alignments: 1992 +Mapping efficiency: 4.5% + +Sequences with no alignments under any condition: 40786 +Sequences did not map uniquely: 1337 +Sequences which were discarded because genomic sequence could not be extracted: 0 + +Number of sequences with unique best (first) alignment came from the bowtie output: +CT/CT: 832 ((converted) top strand) +CT/GA: 1160 ((converted) bottom strand) +GA/CT: 0 (complementary to (converted) top strand) +GA/GA: 0 (complementary to (converted) bottom strand) + +Number of alignments to (merely theoretical) complementary strands being rejected in total: 0 + +Final Cytosine Methylation Report +================================= +Total number of C's analysed: 31956 + +Total methylated C's in CpG context: 564 +Total methylated C's in CHG context: 249 +Total methylated C's in CHH context: 882 +Total methylated C's in Unknown context: 36 + +Total unmethylated C's in CpG context: 608 +Total unmethylated C's in CHG context: 6183 +Total unmethylated C's in CHH context: 23470 +Total unmethylated C's in Unknown context: 232 + +C methylated in CpG context: 48.1% +C methylated in CHG context: 3.9% +C methylated in CHH context: 3.6% +C methylated in Unknown context (CN or CHN): 13.4% + + +Bismark completed in xxxx + +==================== +Bismark run complete +==================== +