From f7532528e0f91432b4c42714578d059d0dbe0e76 Mon Sep 17 00:00:00 2001 From: Veronique Legrand <vlegrand@pasteur.fr> Date: Fri, 29 Apr 2022 12:28:58 +0200 Subject: [PATCH] work in progress for version 2.0; fixed test; still todo : merge tests with those from version 1.9.6 --- configure.ac | 6 ++--- src/CountMinSketch.hpp | 5 ++-- src/Filter.hpp | 11 ++++----- src/ROCKparams.cpp | 6 +++-- src/ROCKparams.h | 4 ++-- src/unit_test_read_utils.cpp | 3 ++- test/rock.sh | 2 +- test/rock_mem.sh | 44 +++++++++++++++++++++++------------- 8 files changed, 47 insertions(+), 34 deletions(-) diff --git a/configure.ac b/configure.ac index 37c685a..4a44bdc 100644 --- a/configure.ac +++ b/configure.ac @@ -1,10 +1,10 @@ dnl Process this file with autoconf to produce a configure script. -AC_PREREQ(2.59) -AC_INIT(rock, 2.0_beta) +AC_PREREQ([2.71]) +AC_INIT([rock],[2.0_beta]) -AC_CANONICAL_SYSTEM +AC_CANONICAL_TARGET AM_INIT_AUTOMAKE() # Checks for programs. diff --git a/src/CountMinSketch.hpp b/src/CountMinSketch.hpp index 24d5d0d..f38eeef 100644 --- a/src/CountMinSketch.hpp +++ b/src/CountMinSketch.hpp @@ -42,6 +42,7 @@ typedef struct { int kappa_prime; int max_filter_size; // max amount of RAM wanted for the CMS. float wanted_max_collision_proba; + int process_PE_separately; } CMSparams; template <typename T> @@ -96,12 +97,12 @@ public: CountMinSketch(int glambda,int gkappa,int gkappa_prime) { init(glambda,gkappa,gkappa_prime); - unsigned int test=hash64to32(657922856560023,0); + //unsigned int test=hash64to32(657922856560023,0); } CountMinSketch(CMSparams parms) { init(parms.lambda,parms.kappa,parms.kappa_prime); - unsigned int test=hash64to32(657922856560023,0); + //unsigned int test=hash64to32(657922856560023,0); } ~CountMinSketch() { diff --git a/src/Filter.hpp b/src/Filter.hpp index e439979..943a28b 100644 --- a/src/Filter.hpp +++ b/src/Filter.hpp @@ -49,8 +49,7 @@ class Filter { ShortCountMinSketch * pShortCMS; FasqQualThreshold qual_thres; - // long nb_bytes_before_fill_CMS,nb_bytes_after_fill_CMS; - //long nb_bytes_CMS; //! Number of bytes taken by the underlying CMS. + int process_PE_separately; void getRSS(); @@ -66,9 +65,7 @@ public: if (parms.kappa<ubytemask) pByteCMS=new ByteCountMinSketch(parms); else pShortCMS=new ShortCountMinSketch(parms); qual_thres=the_qual_thres; - //getRSS(); - //nb_bytes_CMS=0; - //nb_bytes_after_fill_CMS=0; + process_PE_separately=parms.process_PE_separately; } void fillCMS(FqBaseBackend* map_id_backend[],int nb_be,int k,srp* io_sr); @@ -103,7 +100,7 @@ template <typename T> void Filter::underlyingfillCMS(FqBaseBackend* map_id_backe init_DnaSeqStr(&a_seqs[1]); getDNASeqstr(map_id_backend,*it_struct,j,a_seqs,qual_thres.nucl_score_threshold); // decompose dna string into k-mers and turn k_mers into numbers. - decomposeReadInKMerNums(read_p, nbrKmerDecompo,k,a_seqs); + decomposeReadInKMerNums(read_p, nbrKmerDecompo,k,a_seqs,process_PE_separately); // insert k-mers into CMS if overall read satisfies kappa condition. ret=cms->addRead(nbrKmerDecompo); if (!ret) { @@ -145,7 +142,7 @@ template <typename T> void Filter::underlyinglowFilterCMS(FqBaseBackend* map_id_ init_DnaSeqStr(&a_seqs[1]); getDNASeqstr(map_id_backend,*it_struct,j,a_seqs); // decompose dna string into k-mers and turn k_mers into numbers. - decomposeReadInKMerNums(read_p, nbrKmerDecompo,k,a_seqs); + decomposeReadInKMerNums(read_p, nbrKmerDecompo,k,a_seqs,process_PE_separately); ret=cms->isBeneathMinKappa(nbrKmerDecompo); if (ret) it_struct->fileid=0; nbrKmerDecompo.single_or_PE_val.clear(); diff --git a/src/ROCKparams.cpp b/src/ROCKparams.cpp index f46477b..79f0ed9 100755 --- a/src/ROCKparams.cpp +++ b/src/ROCKparams.cpp @@ -41,7 +41,7 @@ const int ROCKparams::undef_ext; void usage(int status) { cout<<endl; - cout<<"ROCK 1.9.6 Copyright (C) 2016-2021 Institut Pasteur"<<endl; + cout<<"ROCK 2.0 Copyright (C) 2016-2022 Institut Pasteur"<<endl; cout<<endl; cout<<"Reducing Over-Covering K-mers within FASTQ file(s)"<<endl; cout<<endl; @@ -65,6 +65,8 @@ void usage(int status) { cout<<" -f <float> maximum expected false positive probability when computing"<<endl; cout<<" the optimal number of hashing functions from the number of"<<endl; cout<<" distinct k-mers specified with option -n (default: 0.05)."<<endl; + cout<<" -p process PE reads separately. This allows the selection of "<<endl; + cout<<" more reads which in some cases gives better assembly results."<<endl; cout<<" -q <int> sets as valid only k-mers made up of nucleotides with"<<endl; cout<<" Phred score (+33 offset) above this cutoff (default: 0)"<<endl; cout<<" -m <int> minimum number of valid k-mer(s) to consider a read;"<<endl; @@ -370,7 +372,7 @@ void ROCKparams::initFromMainOptsArgs(int argc,char ** argv) { //cout<<optarg<<endl; nb_k_mers=strtoul(optarg,&t,10);break; // number of distinct k-mers case 'p': - process_PE_separately=1; + parms.process_PE_separately=1; break; case 'v': verbose_mode=1; diff --git a/src/ROCKparams.h b/src/ROCKparams.h index 137a638..31f727c 100755 --- a/src/ROCKparams.h +++ b/src/ROCKparams.h @@ -70,7 +70,7 @@ class ROCKparams{ unsigned long nb_k_mers; // expected number of k-mers in input data if specified by the user. int k; // size of the k-mers int verbose_mode; - int process_PE_separately; + // int process_PE_separately; std::string input_file,output_file; std::vector<IO_fq_files> single_files; @@ -120,7 +120,7 @@ public: qual_thres.nucl_score_threshold=k_phred_32; qual_thres.k=k; verbose_mode=0; - process_PE_separately=0; + parms.process_PE_separately=0; cms_size=0; expected_collision_proba=0.0; //! collision probability that is computed at the beginning of ROCK from the expected number of distinct k-mers provided by the user. parms.max_filter_size=getNodePhysMemory()/100.0*90-defaultGRPMAXSize; // Prefer not to use all the machine's memory diff --git a/src/unit_test_read_utils.cpp b/src/unit_test_read_utils.cpp index af81c08..04e99c6 100644 --- a/src/unit_test_read_utils.cpp +++ b/src/unit_test_read_utils.cpp @@ -196,6 +196,7 @@ void test_getReadPEWithNQST() { void test_decomposeReadInkMerNums() { int k=5; ReadProcessor read_p(k); + int processPE_separately=1; T_read_numericValues nbrKmerDecompo; @@ -212,7 +213,7 @@ void test_decomposeReadInkMerNums() { strcpy(seq2->fq_record_buf,"@another_fake_stuff\nATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCGATCG\n+\n....@\n"); seq2->start_idx=20; seq2->length=80; - decomposeReadInKMerNums(read_p,nbrKmerDecompo,k,a_seqs); + decomposeReadInKMerNums(read_p,nbrKmerDecompo,k,a_seqs,processPE_separately); assert(nbrKmerDecompo.single_or_PE_val.size()==71+76); assert(nbrKmerDecompo.idx_start_PE2==71); readNumericValues::iterator it; diff --git a/test/rock.sh b/test/rock.sh index 861642e..e7a4b8d 100755 --- a/test/rock.sh +++ b/test/rock.sh @@ -67,7 +67,7 @@ echo "doing more checks on options and error messages" ../src/rock -C 500 -c 400 -k 10 -l 12 -n 85000000 -i ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100.txt -o ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100_filtered.txt|grep "options are mutually exclusive">/dev/null || exit 14 ../src/rock -l 1 -C 500 -c 400 -k 10 -q 3 -m 0 -i ${srcdir}/test/data/iofiles.args/extract_klebsiella_long_reads_100.txt|grep "minimum number of valid k-mer for keeping a read must be an integer">/dev/null || exit 15 ../src/rock -l 1 -C 500 -c 400 -k 10 -q -1 -m 2 -i ${srcdir}/test/data/iofiles.args/extract_klebsiella_long_reads_100.txt|grep "q must be">/dev/null || exit 16 -#../src/rock -C 500 -c 400 -k 10 -q 4 -m 2 -p 10 -i ${srcdir}/test/data/iofiles.args/extract_klebsiella_long_reads_100.txt|grep "value for -p option must be 0, 1 or 2">/dev/null || exit 17 +#../src/rock -C 500 -c 400 -k 10 -q 4 -m 2 -p 10 -i ${srcdir}/test/data/iofiles.args/extract_klebsiella_long_reads_100.txt|grep "p option is a flag. You cannot provide a value for it">/dev/null || exit 17 #../src/rock -C 500 -c 400 -k 10 -q 4 -m 2 -p 1,5 -i ${srcdir}/test/data/iofiles.args/extract_klebsiella_long_reads_100.txt|grep "value for -p option must be 0, 1 or 2">/dev/null || exit 18 #../src/rock -C 500 -c 400 -k 10 -q 4 -m 2 -p -1 -i ${srcdir}/test/data/iofiles.args/extract_klebsiella_long_reads_100.txt|grep "value for -p option must be 0, 1 or 2">/dev/null || exit 17 diff --git a/test/rock_mem.sh b/test/rock_mem.sh index 1d9b0c0..b856469 100755 --- a/test/rock_mem.sh +++ b/test/rock_mem.sh @@ -10,7 +10,7 @@ echo "########################################################################## echo "testing high filter" -../src/rock -C 100 -c 0 -l 2 -i ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100.txt -o ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100_filtered.txt >/dev/null || exit 101 +../src/rock -C 100 -c 0 -l 2 -p -i ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100.txt -o ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100_filtered.txt >/dev/null || exit 101 # output files should be the same size, contain the same elements but not in the same order. nb_PE1=`grep -c "@" ${srcdir}/data/fastq.raw/klebsiella_100_1.fq` @@ -30,7 +30,7 @@ echo " " echo "##################################################################################" echo "testing high filter and -f option" -../src/rock -C 100 -c 0 -l 1 -f 0.05 -i ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100.txt -o ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100_filtered.txt >/dev/null || exit 301 +../src/rock -C 100 -c 0 -l 1 -f 0.05 -p -i ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100.txt -o ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100_filtered.txt >/dev/null || exit 301 # output files should be the same size, contain the same elements but not in the same order. nb_PE1=`grep -c "@" ${srcdir}/data/fastq.raw/klebsiella_100_1.fq` @@ -52,7 +52,7 @@ test $nb_PE2 -eq $nb_PE2_filtered || exit 305 echo " " echo "##################################################################################" echo "testing low filter" -../src/rock -C 100 -c 99 -l 2 -i ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100.txt -o ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100_filtered.txt >/dev/null || exit 106 +../src/rock -C 100 -c 99 -l 2 -p -i ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100.txt -o ${srcdir}/data/iofiles.args/extract_klebsiella_long_reads_100_filtered.txt >/dev/null || exit 106 [ -f "data/fastq.filtered/SRR1222430_1.filtered.fastq" ] || exit 107 [ -f "data/fastq.filtered/SRR1222430_2.filtered.fastq" ] || exit 108 @@ -67,7 +67,7 @@ test $nb_PE2_filtered -eq 0 || exit 110 echo " " echo "##################################################################################" echo "testing that input fastq file names can be provided in command line." -../src/rock -C 100 -c 1 -l 2 ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq ${srcdir}/data/unit/test_single.fq ${srcdir}/data/unit/test_single2.fq >/dev/null || exit 111 +../src/rock -C 100 -c 1 -l 2 -p ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq ${srcdir}/data/unit/test_single.fq ${srcdir}/data/unit/test_single2.fq >/dev/null || exit 111 [ -f "klebsiella_100_1.rock.fq" ] || exit 112 [ -f "klebsiella_100_2.rock.fq" ] || exit 113 @@ -96,9 +96,9 @@ rm -f "test_single2.rock.fq"|| exit 120 echo " " echo "##################################################################################" echo "testing verbose mode" -../src/rock -C 100 -c 1 -l 2 -v ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq ${srcdir}/data/unit/test_single.fq ${srcdir}/data/unit/test_single2.fq|grep "count-min sketch size (Gb)" >/dev/null || exit 125 +../src/rock -C 100 -c 1 -l 2 -p -v ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq ${srcdir}/data/unit/test_single.fq ${srcdir}/data/unit/test_single2.fq|grep "count-min sketch size (Gb)" >/dev/null || exit 125 -../src/rock -C 100 -c 1 -v -n 1000 ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq ${srcdir}/data/unit/test_single.fq ${srcdir}/data/unit/test_single2.fq|grep "expected false positive proba" >/dev/null || exit 126 +../src/rock -C 100 -c 1 -v -p -n 1000 ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq ${srcdir}/data/unit/test_single.fq ${srcdir}/data/unit/test_single2.fq|grep "expected false positive proba" >/dev/null || exit 126 echo "erasing test result files" rm -f "klebsiella_100_1.rock.fq" || exit 127 @@ -126,35 +126,47 @@ expected_diff2="> @SRR1222430.37 37 length=251 \ > A3>333BFA2FF4GBFFDGGCGED?FGEGGHGFFFEEG?AF13@50>///11B13@@1/>//B0?>////<//B/00??@/--:--.;:C000;:0/0009.-9:.00:-.;9/9...-;.--9@--9:////-9-9..////9/;//;9///.9-..--------..99.9.//////;-;--9-.////://9/9.;.-;-99-.//.;////-;?9;...9-9-----9;-.;.;/.-9.;/99=--;" mkdir tmp -../src/rock -C 100 -k 30 -c 1 -l 2 -o ${srcdir}/data/iofiles.args/output_files_noNQ_Thres.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 140 +echo "noNQ_Thres" +../src/rock -C 100 -k 30 -c 1 -l 2 -p -o ${srcdir}/data/iofiles.args/output_files_noNQ_Thres.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 140 -../src/rock -C 100 -k 30 -c 1 -l 2 -q 2 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_very_low.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 141 +echo "noNQ_Thres_very_low" +../src/rock -C 100 -k 30 -c 1 -l 2 -p -q 2 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_very_low.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 141 ret1=`diff tmp/klebsiella_100_1_very_low_qual_thres.fq tmp/klebsiella_100_1_no_qual_thres.fq|wc -l` +echo "before exit 142" test $ret1 -eq 0 || exit 142 ret2=`diff tmp/klebsiella_100_2_very_low_qual_thres.fq tmp/klebsiella_100_2_no_qual_thres.fq|wc -l` +echo "before exit 143" test $ret2 -eq 0 || exit 143 -../src/rock -C 100 -k 30 -c 1 -l 2 -q 12 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_12.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null ||exit 144 +echo "q 12" +../src/rock -C 100 -k 30 -c 1 -l 2 -p -q 12 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_12.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null ||exit 144 -../src/rock -C 100 -k 30 -c 1 -l 2 -q 13 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_13.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null ||exit 145 +echo "q 13" +../src/rock -C 100 -k 30 -c 1 -l 2 -p -q 13 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_13.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null ||exit 145 ret1=`diff tmp/klebsiella_100_1_13_qual_thres.fq tmp/klebsiella_100_1_12_qual_thres.fq|grep -c "@SRR1222430.14"` +echo "before exit 146" test $ret1 -eq 1 || exit 146 ret1=`diff tmp/klebsiella_100_1_13_qual_thres.fq tmp/klebsiella_100_1_12_qual_thres.fq|grep -c "@SRR1222430.24"` +echo "before exit 1461" test $ret1 -eq 1 || exit 1461 ret2=`diff tmp/klebsiella_100_1_13_qual_thres.fq tmp/klebsiella_100_1_12_qual_thres.fq|grep -c "length"` +echo "before exit 147" test $ret2 -eq 4 || exit 147 ret1=`diff tmp/klebsiella_100_2_13_qual_thres.fq tmp/klebsiella_100_2_12_qual_thres.fq|grep -c "@SRR1222430.14"` +echo "before exit 148" test $ret1 -eq 1 || exit 148 ret1=`diff tmp/klebsiella_100_2_13_qual_thres.fq tmp/klebsiella_100_2_12_qual_thres.fq|grep -c "@SRR1222430.24"` +echo "before exit 1481" test $ret1 -eq 1 || exit 1481 ret2=`diff tmp/klebsiella_100_2_13_qual_thres.fq tmp/klebsiella_100_2_12_qual_thres.fq|grep -c "length"` +echo "before exit 149" test $ret2 -eq 4 || exit 149 rm -fr tmp @@ -164,10 +176,10 @@ echo "########################################################################## echo "testing ROCK with a quality score threshold for nucleotides and minimum number of valid k-mer to keep a read." mkdir tmp -echo "../src/rock -C 100 -k 30 -c 1 -l 2 -o ${srcdir}/data/iofiles.args/output_files_noNQ_Thres.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq" -../src/rock -C 100 -k 30 -c 1 -l 2 -o ${srcdir}/data/iofiles.args/output_files_noNQ_Thres.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 150 -echo "../src/rock -C 100 -k 30 -c 1 -l 2 -q 2 -m 5 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_very_low.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq" -../src/rock -C 100 -k 30 -c 1 -l 2 -q 2 -m 5 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_very_low.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 151 +echo "../src/rock -C 100 -k 30 -c 1 -p -l 2 -o ${srcdir}/data/iofiles.args/output_files_noNQ_Thres.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq" +../src/rock -C 100 -k 30 -c 1 -l 2 -p -o ${srcdir}/data/iofiles.args/output_files_noNQ_Thres.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 150 +echo "../src/rock -C 100 -k 30 -c 1 -p -l 2 -q 2 -m 5 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_very_low.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq" +../src/rock -C 100 -k 30 -c 1 -l 2 -p -q 2 -m 5 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_very_low.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 151 ret1=`diff tmp/klebsiella_100_1_very_low_qual_thres.fq tmp/klebsiella_100_1_no_qual_thres.fq|wc -l` test $ret1 -eq 0 || exit 152 @@ -186,7 +198,7 @@ test $ret2 -eq 0 || exit 153 # All reads should be rejected. echo "rock -k 30 -C 100 -c 1 -l 2 -q 13 -m 500 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_13.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq" -../src/rock -k 30 -C 100 -c 1 -l 2 -q 13 -m 500 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_13.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 158 +../src/rock -k 30 -C 100 -c 1 -l 2 -q 13 -p -m 500 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_13.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 158 [ -f "tmp/klebsiella_100_1_13_qual_thres.fq" ] || exit 159 [ -f "tmp/klebsiella_100_2_13_qual_thres.fq" ] || exit 160 @@ -211,7 +223,7 @@ test $ret2 -eq 0 || exit 162 #test $ret1 -eq 400 || exit 162 echo "rock -k 30 -C 100 -c 1 -l 2 -q 13 -m 300 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_13.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq" -../src/rock -k 30 -C 100 -c 1 -l 2 -q 13 -m 300 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_13.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 163 +../src/rock -k 30 -C 100 -c 1 -l 2 -q 13 -p -m 300 -o ${srcdir}/data/iofiles.args/output_files_NQ_Thres_13.txt ${srcdir}/data/fastq.raw/klebsiella_100_1.fq,${srcdir}/data/fastq.raw/klebsiella_100_2.fq >/dev/null || exit 163 [ -f "tmp/klebsiella_100_1_13_qual_thres.fq" ] || exit 164 [ -f "tmp/klebsiella_100_2_13_qual_thres.fq" ] || exit 165 -- GitLab