kkonganti@1: params { kkonganti@1: workflow_conceived_by = 'Kranti Konganti' kkonganti@1: workflow_built_by = 'Kranti Konganti' kkonganti@1: workflow_version = '0.5.0' kkonganti@1: bcs_root_dbdir = '/tool/tool-data/cfsan_bettercallsal_db/latest' kkonganti@1: bcs_db_mode = 'snp' kkonganti@1: bcs_db_mode_index = (params.bcs_db_mode ==~ /snp/ ? '_cluster' : '_serotype') kkonganti@1: bcs_thresholds = 'strict' kkonganti@1: bcs_concat_pe = true kkonganti@1: bbmerge_run = (params.bcs_concat_pe ? false : true) kkonganti@1: bbmerge_adapters = false kkonganti@1: bbmerge_reads = -1 kkonganti@1: bbmerge_ziplevel = 1 kkonganti@1: bbmerge_ordered = false kkonganti@1: bbmerge_qtrim = true kkonganti@1: bbmerge_qtrim2 = false kkonganti@1: bbmerge_trimq = 10 kkonganti@1: bbmerge_minlength = 1 kkonganti@1: bbmerge_tbo = false kkonganti@1: bbmerge_minavgquality = (params.bcs_thresholds ==~ /strict/ ? 30 : 20) kkonganti@1: bbmerge_trimpolya = true kkonganti@1: bbmerge_pfilter = (params.bcs_thresholds ==~ /strict/ ? 1 : false) kkonganti@1: bbmerge_ouq = false kkonganti@1: bbmerge_owq = true kkonganti@1: bbmerge_strict = false kkonganti@1: bbmerge_verystrict = false kkonganti@1: bbmerge_ultrastrict = (params.bcs_thresholds ==~ /strict/ ? true : false) kkonganti@1: bbmerge_maxstrict = false kkonganti@1: bbmerge_loose = false kkonganti@1: bbmerge_veryloose = false kkonganti@1: bbmerge_ultraloose = false kkonganti@1: bbmerge_maxloose = false kkonganti@1: bbmerge_fast = false kkonganti@1: bbmerge_k = 60 kkonganti@1: bbmerge_prealloc = true kkonganti@1: fastp_run = true kkonganti@1: fastp_failed_out = false kkonganti@1: fastp_merged_out = false kkonganti@1: fastp_overlapped_out = false kkonganti@1: fastp_6 = false kkonganti@1: fastp_reads_to_process = 0 kkonganti@1: fastp_fix_mgi_id = false kkonganti@1: fastp_A = false kkonganti@1: fastp_f = 0 kkonganti@1: fastp_t = 0 kkonganti@1: fastp_b = 0 kkonganti@1: fastp_F = 0 kkonganti@1: fastp_T = 0 kkonganti@1: fastp_B = 0 kkonganti@1: fastp_dedup = true kkonganti@1: fastp_dup_calc_accuracy = 6 kkonganti@1: fastp_poly_g_min_len = 10 kkonganti@1: fastp_G = true kkonganti@1: fastp_x = false kkonganti@1: fastp_poly_x_min_len = 10 kkonganti@1: fastp_cut_front = true kkonganti@1: fastp_cut_tail = false kkonganti@1: fastp_cut_right = true kkonganti@1: fastp_W = 20 kkonganti@1: fastp_M = 30 kkonganti@1: fastp_q = 30 kkonganti@1: fastp_u = 40 kkonganti@1: fastp_n = 5 kkonganti@1: fastp_e = 0 kkonganti@1: fastp_l = 35 kkonganti@1: fastp_max_len = 0 kkonganti@1: fastp_y = true kkonganti@1: fastp_Y = 30 kkonganti@1: fastp_U = false kkonganti@1: fastp_umi_loc = false kkonganti@1: fastp_umi_len = false kkonganti@1: fastp_umi_prefix = false kkonganti@1: fastp_umi_skip = false kkonganti@1: fastp_p = true kkonganti@1: fastp_P = 20 kkonganti@1: fastp_use_custom_adapters = false kkonganti@1: fastp_adapter_fasta = (params.fastp_use_custom_adapters ? "${projectDir}" kkonganti@1: + File.separator kkonganti@1: + 'assets' kkonganti@1: + File.separator kkonganti@1: + 'adaptors.fa' : false) kkonganti@1: mashscreen_run = true kkonganti@1: mash_sketch = (params.bcs_root_dbdir kkonganti@1: + File.separator kkonganti@1: + 'mash_sketch' kkonganti@1: + File.separator kkonganti@1: + 'msh.k21.1000h.' kkonganti@1: + params.bcs_db_mode kkonganti@1: + '.msh') kkonganti@1: mashscreen_w = false kkonganti@1: mashscreen_i = false kkonganti@1: mashscreen_v = false kkonganti@1: tuspy_run = true kkonganti@1: tuspy_s = false kkonganti@1: tuspy_m = false kkonganti@1: tuspy_ps = (params.bcs_root_dbdir kkonganti@1: + File.separator kkonganti@1: + 'index_metadata' kkonganti@1: + File.separator kkonganti@1: + 'per_' kkonganti@1: + params.bcs_db_mode kkonganti@1: + params.bcs_db_mode_index kkonganti@1: + '.ACC2SERO.pickle') kkonganti@1: tuspy_gd = (params.bcs_root_dbdir kkonganti@1: + File.separator kkonganti@1: + 'scaffold_genomes') kkonganti@1: tuspy_gds = '_scaffolded_genomic.fna.gz' kkonganti@1: tuspy_n = 10 kkonganti@1: sourmashsketch_run = true kkonganti@1: sourmashsketch_mode = 'dna' kkonganti@1: sourmashsketch_file = false kkonganti@1: sourmashsketch_f = false kkonganti@1: sourmashsketch_merge = false kkonganti@1: sourmashsketch_name = false kkonganti@1: sourmashsketch_p = 'abund,scaled=1000,k=51,k=61,k=71' kkonganti@1: sourmashsketch_singleton = true kkonganti@1: sourmashsketch_randomize = false kkonganti@1: sourmashgather_run = (params.sourmashsketch_run ?: false) kkonganti@1: sourmashgather_n = false kkonganti@1: sourmashgather_thr_bp = false kkonganti@1: sourmashgather_ignoreabn = false kkonganti@1: sourmashgather_prefetch = false kkonganti@1: sourmashgather_noprefetch = false kkonganti@1: sourmashgather_ani_ci = true kkonganti@1: sourmashgather_k = 71 kkonganti@1: sourmashgather_protein = false kkonganti@1: sourmashgather_noprotein = false kkonganti@1: sourmashgather_dayhoff = false kkonganti@1: sourmashgather_nodayhoff = false kkonganti@1: sourmashgather_hp = false kkonganti@1: sourmashgather_nohp = false kkonganti@1: sourmashgather_dna = true kkonganti@1: sourmashgather_nodna = false kkonganti@1: sourmashgather_scaled = false kkonganti@1: sourmashgather_inc_pat = false kkonganti@1: sourmashgather_exc_pat = false kkonganti@1: sourmashsearch_run = (params.sourmashsketch_run && !params.sourmashgather_run ?: false) kkonganti@1: sourmashsearch_n = false kkonganti@1: sourmashsearch_thr = '0' kkonganti@1: sourmashsearch_contain = false kkonganti@1: sourmashsearch_maxcontain = true kkonganti@1: sourmashsearch_ignoreabn = true kkonganti@1: sourmashsearch_ani_ci = false kkonganti@1: sourmashsearch_k = 71 kkonganti@1: sourmashsearch_protein = false kkonganti@1: sourmashsearch_noprotein = false kkonganti@1: sourmashsearch_dayhoff = false kkonganti@1: sourmashsearch_nodayhoff = false kkonganti@1: sourmashsearch_hp = false kkonganti@1: sourmashsearch_nohp = false kkonganti@1: sourmashsearch_dna = true kkonganti@1: sourmashsearch_nodna = false kkonganti@1: sourmashsearch_scaled = false kkonganti@1: sourmashsearch_inc_pat = false kkonganti@1: sourmashsearch_exc_pat = false kkonganti@1: sfhpy_run = true kkonganti@1: sfhpy_fcn = (params.sourmashsearch_run ? 'similarity' : 'f_match') kkonganti@1: sfhpy_fcv = (params.sourmashsearch_run ? 0.9 : 0.1) kkonganti@1: sfhpy_gt = true kkonganti@1: sfhpy_lt = false kkonganti@1: kmaindex_run = true kkonganti@1: kmaindex_t_db = false kkonganti@1: kmaindex_k = 31 kkonganti@1: kmaindex_m = false kkonganti@1: kmaindex_hc = false kkonganti@1: kmaindex_ML = false kkonganti@1: kmaindex_ME = false kkonganti@1: kmaindex_Sparse = false kkonganti@1: kmaindex_ht = false kkonganti@1: kmaindex_hq = false kkonganti@1: kmaindex_and = false kkonganti@1: kmaindex_nbp = false kkonganti@1: kmaalign_run = true kkonganti@1: kmaalign_ignorequals = false kkonganti@1: kmaalign_int = false kkonganti@1: kmaalign_ef = false kkonganti@1: kmaalign_vcf = false kkonganti@1: kmaalign_sam = false kkonganti@1: kmaalign_nc = true kkonganti@1: kmaalign_na = true kkonganti@1: kmaalign_nf = true kkonganti@1: kmaalign_a = false kkonganti@1: kmaalign_and = true kkonganti@1: kmaalign_oa = false kkonganti@1: kmaalign_bc = false kkonganti@1: kmaalign_bcNano = false kkonganti@1: kmaalign_bcd = false kkonganti@1: kmaalign_bcg = false kkonganti@1: kmaalign_ID = (params.bcs_thresholds ==~ /strict/ ? 10.0 : 5.0) kkonganti@1: kmaalign_md = false kkonganti@1: kmaalign_dense = false kkonganti@1: kmaalign_ref_fsa = false kkonganti@1: kmaalign_Mt1 = false kkonganti@1: kmaalign_1t1 = false kkonganti@1: kmaalign_mrs = (params.bcs_thresholds ==~ /strict/ ? 0.99 : 0.90) kkonganti@1: kmaalign_mrc = (params.bcs_thresholds ==~ /strict/ ? 0.99 : 0.90) kkonganti@1: kmaalign_mp = (params.bcs_thresholds ==~ /strict/ ? 30 : 20) kkonganti@1: kmaalign_eq = (params.bcs_thresholds ==~ /strict/ ? 30 : 20) kkonganti@1: kmaalign_mp = (params.kmaalign_ignorequals ? 0 : params.kmaalign_mp) kkonganti@1: kmaalign_eq = (params.kmaalign_ignorequals ? 0 : params.kmaalign_eq) kkonganti@1: kmaalign_mq = false kkonganti@1: kmaalign_5p = false kkonganti@1: kmaalign_3p = false kkonganti@1: kmaalign_apm = false kkonganti@1: kmaalign_cge = false kkonganti@1: kmaalign_mrs = (params.sourmashgather_run ? false : params.kmaalign_mrs) kkonganti@1: kmaalign_and = (params.sourmashgather_run ? false : true) kkonganti@1: kmaalign_ID = (params.sourmashgather_run ? false : params.kmaalign_ID) kkonganti@1: salmonidx_run = true kkonganti@1: salmonidx_k = false kkonganti@1: salmonidx_gencode = false kkonganti@1: salmonidx_features = false kkonganti@1: salmonidx_keepDuplicates = false kkonganti@1: salmonidx_keepFixedFasta = false kkonganti@1: salmonidx_filterSize = false kkonganti@1: salmonidx_sparse = false kkonganti@1: salmonidx_n = false kkonganti@1: salmonidx_decoys = false kkonganti@1: salmonalign_libtype = 'SF' kkonganti@1: gsrpy_run = true kkonganti@1: gsrpy_url = true kkonganti@1: gsrpy_snp_clus_metadata = (params.bcs_root_dbdir kkonganti@1: + File.separator kkonganti@1: + 'download_pdg_metadata' kkonganti@1: + File.separator kkonganti@1: + getPDGRelease(params.bcs_root_dbdir) kkonganti@1: + File.separator kkonganti@1: + getPDGRelease(params.bcs_root_dbdir) kkonganti@1: + '.reference_target.cluster_list.tsv') kkonganti@1: sourmashcompare_mode = 'ani,containment' kkonganti@1: fq_filter_by_len = 0 kkonganti@1: fq_suffix = '.fastq.gz' kkonganti@1: fq2_suffix = '_R2_001.fastq.gz' kkonganti@1: } kkonganti@1: kkonganti@1: /* kkonganti@1: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kkonganti@1: METHOD TO GET PDG RELEASE AND SET REST OF THE METADATA FILES kkonganti@1: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kkonganti@1: */ kkonganti@1: kkonganti@1: def getPDGRelease(db_path) { kkonganti@1: db_path_obj = new File( db_path ) kkonganti@1: def pdg_release = [] kkonganti@1: kkonganti@1: db_path_obj.eachDirRecurse { kkonganti@1: it.toString() =~ /PDG/ \ kkonganti@1: ? pdg_release << it.toString().find(/PDG\d+\.\d+/) \ kkonganti@1: : null kkonganti@1: } kkonganti@1: kkonganti@1: return pdg_release.unique().join('').toString() kkonganti@1: }