forked from nf-core/eager
-
Notifications
You must be signed in to change notification settings - Fork 0
/
nextflow_schema.json
1666 lines (1666 loc) · 132 KB
/
nextflow_schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "https://raw.githubusercontent.com/nf-core/eager/master/nextflow_schema.json",
"title": "nf-core/eager pipeline parameters",
"description": "A fully reproducible and state-of-the-art ancient DNA analysis pipeline",
"type": "object",
"definitions": {
"input_output_options": {
"title": "Input/output options",
"type": "object",
"fa_icon": "fas fa-terminal",
"description": "Define where the pipeline should find input data, and additional metadata.",
"required": [
"input"
],
"properties": {
"input": {
"type": "string",
"default": "null",
"description": "Either paths or URLs to FASTQ/BAM data (must be surrounded with quotes). For paired end data, the path must use '{1,2}' notation to specify read pairs. Alternatively, a path to a TSV file (ending .tsv) containing file paths and sequencing/sample metadata. Allows for merging of multiple lanes/libraries/samples. Please see documentation for template.",
"fa_icon": "fas fa-dna",
"help_text": "There are two possible ways of supplying input sequencing data to nf-core/eager. The most efficient but more simplistic is supplying direct paths (with wildcards) to your FASTQ or BAM files, with each file or pair being considered a single library and each one run independently (e.g. for paired-end data: `--input '/<path>/<to>/*_{R1,R2}_*.fq.gz'`). TSV input requires creation of an extra file by the user (`--input '/<path>/<to>/eager_data.tsv'`) and extra metadata, but allows more powerful lane and library merging. Please see [usage docs](https://nf-co.re/eager/docs/usage#input-specifications) for detailed instructions and specifications."
},
"udg_type": {
"type": "string",
"default": "none",
"description": "Specifies whether you have UDG treated libraries. Set to 'half' for partial treatment, or 'full' for UDG. If not set, libraries are assumed to have no UDG treatment ('none'). Not required for TSV input.",
"fa_icon": "fas fa-vial",
"help_text": "Defines whether Uracil-DNA glycosylase (UDG) treatment was used to remove DNA\ndamage on the sequencing libraries.\n\nSpecify `'none'` if no treatment was performed. If you have partial UDG treated\ndata ([Rohland et al 2016](http://dx.doi.org/10.1098/rstb.2013.0624)), specify\n`'half'`. If you have complete UDG treated data ([Briggs et al.\n2010](https://doi.org/10.1093/nar/gkp1163)), specify `'full'`. \n\nWhen also using PMDtools specifying `'half'` will use a different model for DNA\ndamage assessment in PMDTools (PMDtools: `--UDGhalf`). Specify `'full'` and the\nPMDtools DNA damage assessment will use CpG context only (PMDtools: `--CpG`).\nDefault: `'none'`.\n\n> **Tip**: You should provide a small decoy reference genome with pre-made indices, e.g.\n> the human mtDNA genome, for the mandatory parameter `--fasta` in order to\n> avoid long computational time for generating the index files of the reference\n> genome, even if you do not actually need a reference genome for any downstream\n> analyses.",
"enum": [
"none",
"half",
"full"
]
},
"single_stranded": {
"type": "boolean",
"description": "Specifies that libraries are single stranded. Always affects MALTExtract but will be ignored by pileupCaller with TSV input. Not required for TSV input.",
"fa_icon": "fas fa-minus",
"help_text": "Indicates libraries are single stranded.\n\nCurrently only affects MALTExtract where it will switch on damage patterns\ncalculation mode to single-stranded, (MaltExtract: `--singleStranded`) and\ngenotyping with pileupCaller where a different method is used (pileupCaller:\n`--singleStrandMode`). Default: false\n\nOnly required when using the 'Path' method of `--input`"
},
"single_end": {
"type": "boolean",
"description": "Specifies that the input is single end reads. Not required for TSV input.",
"fa_icon": "fas fa-align-left",
"help_text": "By default, the pipeline expects paired-end data. If you have single-end data, specify this parameter on the command line when you launch the pipeline. It is not possible to run a mixture of single-end and paired-end files in one run.\n\nOnly required when using the 'Path' method of `--input`"
},
"colour_chemistry": {
"type": "integer",
"default": 4,
"description": "Specifies which Illumina sequencing chemistry was used. Used to inform whether to poly-G trim if turned on (see below). Not required for TSV input. Options: 2, 4.",
"fa_icon": "fas fa-palette",
"help_text": "Specifies which Illumina colour chemistry a library was sequenced with. This informs whether to perform poly-G trimming (if `--complexity_filter_poly_g` is also supplied). Only 2 colour chemistry sequencers (e.g. NextSeq or NovaSeq) can generate uncertain poly-G tails (due to 'G' being indicated via a no-colour detection). Default is '4' to indicate e.g. HiSeq or MiSeq platforms, which do not require poly-G trimming. Options: 2, 4. Default: 4\n\nOnly required when using the 'Path' method of input."
},
"bam": {
"type": "boolean",
"description": "Specifies that the input is in BAM format. Not required for TSV input.",
"fa_icon": "fas fa-align-justify",
"help_text": "Specifies the input file type to `--input` is in BAM format. This will automatically also apply `--single_end`.\n\nOnly required when using the 'Path' method of `--input`.\n"
}
},
"help_text": "There are two possible ways of supplying input sequencing data to nf-core/eager.\nThe most efficient but more simplistic is supplying direct paths (with\nwildcards) to your FASTQ or BAM files, with each file or pair being considered a\nsingle library and each one run independently. TSV input requires creation of an\nextra file by the user and extra metadata, but allows more powerful lane and\nlibrary merging."
},
"input_data_additional_options": {
"title": "Input Data Additional Options",
"type": "object",
"description": "Additional options regarding input data.",
"default": "",
"properties": {
"snpcapture_bed": {
"type": "string",
"fa_icon": "fas fa-magnet",
"description": "If library result of SNP capture, path to BED file containing SNPS positions on reference genome.",
"help_text": "Can be used to set a path to a BED file (3/6 column format) of SNP positions of a reference genome, to calculate SNP captured libraries on-target efficiency. This should be used for array or in-solution SNP capture protocols such as 390K, 1240K, etc. If supplied, on-target metrics are automatically generated for you by qualimap."
},
"run_convertinputbam": {
"type": "boolean",
"description": "Turns on conversion of an input BAM file into FASTQ format to allow re-preprocessing (e.g. AdapterRemoval etc.).",
"fa_icon": "fas fa-undo-alt",
"help_text": "Allows you to convert an input BAM file back to FASTQ for downstream processing. Note this is required if you need to perform AdapterRemoval and/or polyG clipping.\n\nIf not turned on, BAMs will automatically be sent to post-mapping steps."
}
},
"fa_icon": "far fa-plus-square"
},
"reference_genome_options": {
"title": "Reference genome options",
"type": "object",
"fa_icon": "fas fa-dna",
"properties": {
"fasta": {
"type": "string",
"fa_icon": "fas fa-font",
"description": "Path or URL to a FASTA reference file (required if not iGenome reference). File suffixes can be: '.fa', '.fn', '.fna', '.fasta'.",
"help_text": "You specify the full path to your reference genome here. The FASTA file can have any file suffix, such as `.fasta`, `.fna`, `.fa`, `.FastA` etc. You may also supply a gzipped reference files, which will be unzipped automatically for you.\n\nFor example:\n\n```bash\n--fasta '/<path>/<to>/my_reference.fasta'\n```\n\n> If you don't specify appropriate `--bwa_index`, `--fasta_index` parameters, the pipeline will create these indices for you automatically. Note that you can save the indices created for you for later by giving the `--save_reference` flag.\n> You must select either a `--fasta` or `--genome`\n"
},
"genome": {
"type": "string",
"description": "Name of iGenomes reference (required if not FASTA reference). Requires argument `--igenomes_ignore false`, as iGenomes is ignored by default in nf-core/eager",
"fa_icon": "fas fa-book",
"help_text": "Alternatively to `--fasta`, the pipeline config files come bundled with paths to the Illumina iGenomes reference index files. If running with docker or AWS, the configuration is set up to use the [AWS-iGenomes](https://ewels.github.io/AWS-iGenomes/) resource.\n\nThere are 31 different species supported in the iGenomes references. To run the pipeline, you must specify which to use with the `--genome` flag.\n\nYou can find the keys to specify the genomes in the [iGenomes config file](../conf/igenomes.config). Common genomes that are supported are:\n\n- Human\n - `--genome GRCh37`\n - `--genome GRCh38`\n- Mouse *\n - `--genome GRCm38`\n- _Drosophila_ *\n - `--genome BDGP6`\n- _S. cerevisiae_ *\n - `--genome 'R64-1-1'`\n\n> \\* Not bundled with nf-core eager by default.\n\nNote that you can use the same configuration setup to save sets of reference files for your own use, even if they are not part of the iGenomes resource. See the [Nextflow documentation](https://www.nextflow.io/docs/latest/config.html) for instructions on where to save such a file.\n\nThe syntax for this reference configuration is as follows:\n\n```nextflow\nparams {\n genomes {\n 'GRCh37' {\n fasta = '<path to the iGenomes genome fasta file>'\n }\n // Any number of additional genomes, key is used with --genome\n }\n}\n**NB** Requires argument `--igenomes_ignore false` as iGenomes ignored by default in nf-core/eager\n\n```"
},
"igenomes_base": {
"type": "string",
"description": "Directory / URL base for iGenomes references.",
"default": "s3://ngi-igenomes/igenomes",
"fa_icon": "fas fa-cloud-download-alt",
"hidden": true
},
"igenomes_ignore": {
"type": "boolean",
"description": "Do not load the iGenomes reference config.",
"fa_icon": "fas fa-ban",
"hidden": true,
"help_text": "Do not load `igenomes.config` when running the pipeline. You may choose this option if you observe clashes between custom parameters and those supplied in `igenomes.config`."
},
"bwa_index": {
"type": "string",
"description": "Path to directory containing pre-made BWA indices (i.e. the directory before the files ending in '.amb' '.ann' '.bwt'. Do not include the files themselves. Most likely the same directory of the file provided with --fasta). If not supplied will be made for you.",
"fa_icon": "fas fa-address-book",
"help_text": "If you want to use pre-existing `bwa index` indices, please supply the **directory** to the FASTA you also specified in `--fasta` nf-core/eager will automagically detect the index files by searching for the FASTA filename with the corresponding `bwa` index file suffixes.\n\nFor example:\n\n```bash\nnextflow run nf-core/eager \\\n-profile test,docker \\\n--input '*{R1,R2}*.fq.gz'\n--fasta 'results/reference_genome/bwa_index/BWAIndex/Mammoth_MT_Krause.fasta' \\\n--bwa_index 'results/reference_genome/bwa_index/BWAIndex/'\n```\n\n> `bwa index` does not give you an option to supply alternative suffixes/names for these indices. Thus, the file names generated by this command _must not_ be changed, otherwise nf-core/eager will not be able to find them."
},
"bt2_index": {
"type": "string",
"description": "Path to directory containing pre-made Bowtie2 indices (i.e. everything before the endings e.g. '.1.bt2', '.2.bt2', '.rev.1.bt2'. Most likely the same value as --fasta). If not supplied will be made for you.",
"fa_icon": "far fa-address-book",
"help_text": "If you want to use pre-existing `bt2 index` indices, please supply the **directory** to the FASTA you also specified in `--fasta`. nf-core/eager will automagically detect the index files by searching for the FASTA filename with the corresponding `bt2` index file suffixes.\n\nFor example:\n\n```bash\nnextflow run nf-core/eager \\\n-profile test,docker \\\n--input '*{R1,R2}*.fq.gz'\n--fasta 'results/reference_genome/bwa_index/BWAIndex/Mammoth_MT_Krause.fasta' \\\n--bwa_index 'results/reference_genome/bt2_index/BT2Index/'\n```\n\n> `bowtie2-build` does not give you an option to supply alternative suffixes/names for these indices. Thus, the file names generated by this command _must not_ be changed, otherwise nf-core/eager will not be able to find them."
},
"fasta_index": {
"type": "string",
"description": "Path to samtools FASTA index (typically ending in '.fai'). If not supplied will be made for you.",
"fa_icon": "far fa-bookmark",
"help_text": "If you want to use a pre-existing `samtools faidx` index, use this to specify the required FASTA index file for the selected reference genome. This should be generated by `samtools faidx` and has a file suffix of `.fai`\n\nFor example:\n\n```bash\n--fasta_index 'Mammoth_MT_Krause.fasta.fai'\n```"
},
"seq_dict": {
"type": "string",
"description": "Path to picard sequence dictionary file (typically ending in '.dict'). If not supplied will be made for you.",
"fa_icon": "fas fa-spell-check",
"help_text": "If you want to use a pre-existing `picard CreateSequenceDictionary` dictionary file, use this to specify the required `.dict` file for the selected reference genome.\n\nFor example:\n\n```bash\n--seq_dict 'Mammoth_MT_Krause.dict'\n```"
},
"large_ref": {
"type": "boolean",
"description": "Specify to generate more recent '.csi' BAM indices. If your reference genome is larger than 3.5GB, this is recommended due to more efficient data handling with the '.csi' format over the older '.bai'.",
"fa_icon": "fas fa-mountain",
"help_text": "This parameter is required to be set for large reference genomes. If your\nreference genome is larger than 3.5GB, the `samtools index` calls in the\npipeline need to generate `CSI` indices instead of `BAI` indices to compensate\nfor the size of the reference genome (with samtools: `-c`). This parameter is\nnot required for smaller references (including the human `hg19` or\n`grch37`/`grch38` references), but `>4GB` genomes have been shown to need `CSI`\nindices. Default: off"
},
"save_reference": {
"type": "boolean",
"description": "If not already supplied by user, turns on saving of generated reference genome indices for later re-usage.",
"fa_icon": "far fa-save",
"help_text": "Use this if you do not have pre-made reference FASTA indices for `bwa`, `samtools` and `picard`. If you turn this on, the indices nf-core/eager generates for you and will be saved in the `<your_output_dir>/results/reference_genomes` for you. If not supplied, nf-core/eager generated index references will be deleted.\n\n> modifies SAMtools index command: `-c`"
}
},
"description": "Specify locations of references and optionally, additional pre-made indices",
"help_text": "All nf-core/eager runs require a reference genome in FASTA format to map reads\nagainst to.\n\nIn addition we provide various options for indexing of different types of\nreference genomes (based on the tools used in the pipeline). nf-core/eager can\nindex reference genomes for you (with options to save these for other analysis),\nbut you can also supply your pre-made indices.\n\nSupplying pre-made indices saves time in pipeline execution and is especially\nadvised when running multiple times on the same cluster system for example. You\ncan even add a resource [specific profile](#profile) that sets paths to\npre-computed reference genomes, saving time when specifying these.\n\n> :warning: you must always supply a reference file. If you want to use\n functionality that does not require one, supply a small decoy genome such as\n phiX or the human mtDNA genome."
},
"output_options": {
"title": "Output options",
"type": "object",
"description": "Specify where to put output files and optional saving of intermediate files",
"default": "",
"properties": {
"outdir": {
"type": "string",
"description": "The output directory where the results will be saved.",
"default": "./results",
"fa_icon": "fas fa-folder-open",
"help_text": "The output directory where the results will be saved. By default will be made in the directory you run the command in under `./results`."
},
"publish_dir_mode": {
"type": "string",
"default": "copy",
"hidden": true,
"description": "Method used to save pipeline results to output directory.",
"help_text": "The Nextflow `publishDir` option specifies which intermediate files should be saved to the output directory. This option tells the pipeline what method should be used to move these files. See [Nextflow docs](https://www.nextflow.io/docs/latest/process.html#publishdir) for details.",
"fa_icon": "fas fa-copy",
"enum": [
"symlink",
"rellink",
"link",
"copy",
"copyNoFollow",
"move"
]
}
},
"fa_icon": "fas fa-cloud-download-alt"
},
"generic_options": {
"title": "Generic options",
"type": "object",
"properties": {
"help": {
"type": "boolean",
"description": "Display help text.",
"hidden": true,
"fa_icon": "fas fa-question-circle"
},
"validate_params": {
"type": "boolean",
"description": "Boolean whether to validate parameters against the schema at runtime",
"default": true,
"fa_icon": "fas fa-check-square",
"hidden": true
},
"email": {
"type": "string",
"description": "Email address for completion summary.",
"fa_icon": "fas fa-envelope",
"help_text": "An email address to send a summary email to when the pipeline is completed.",
"pattern": "^([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5})$"
},
"email_on_fail": {
"type": "string",
"description": "Email address for completion summary, only when pipeline fails.",
"fa_icon": "fas fa-exclamation-triangle",
"pattern": "^([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5})$",
"hidden": true,
"help_text": "Set this parameter to your e-mail address to get a summary e-mail with details of the run if it **fails**. Normally would be the same as in `--email` but can be different. If set in your user config file (`~/.nextflow/config`) then you don't need to specify this on the command line for every run.\n\n> Note that this functionality requires either `mail` or `sendmail` to be installed on your system."
},
"plaintext_email": {
"type": "boolean",
"description": "Send plain-text email instead of HTML.",
"fa_icon": "fas fa-remove-format",
"hidden": true,
"help_text": "Set to receive plain-text e-mails instead of HTML formatted."
},
"max_multiqc_email_size": {
"type": "string",
"description": "File size limit when attaching MultiQC reports to summary emails.",
"default": "25.MB",
"fa_icon": "fas fa-file-upload",
"hidden": true,
"help_text": "If file generated by pipeline exceeds the threshold, it will not be attached."
},
"monochrome_logs": {
"type": "boolean",
"description": "Do not use coloured log outputs.",
"fa_icon": "fas fa-palette",
"hidden": true,
"help_text": "Set to disable colourful command line output and live life in monochrome."
},
"multiqc_config": {
"type": "string",
"description": "Custom config file to supply to MultiQC.",
"fa_icon": "fas fa-cog",
"hidden": true
},
"tracedir": {
"type": "string",
"description": "Directory to keep pipeline Nextflow logs and reports.",
"default": "${params.outdir}/pipeline_info",
"fa_icon": "fas fa-cogs",
"hidden": true
},
"show_hidden_params": {
"type": "boolean",
"fa_icon": "far fa-eye-slash",
"description": "Show all params when using `--help`",
"hidden": true,
"help_text": "By default, parameters set as _hidden_ in the schema are not shown on the command line when a user runs with `--help`. Specifying this option will tell the pipeline to show all parameters."
},
"enable_conda": {
"type": "boolean",
"hidden": true,
"description": "Parameter used for checking conda channels to be set correctly."
},
"schema_ignore_params": {
"type": "string",
"fa_icon": "fas fa-not-equal",
"description": "String to specify ignored parameters for parameter validation",
"hidden": true,
"default": "genomes"
}
},
"fa_icon": "fas fa-file-import",
"description": "Less common options for the pipeline, typically set in a config file.",
"help_text": "These options are common to all nf-core pipelines and allow you to customise some of the core preferences for how the pipeline runs.\n\nTypically these options would be set in a Nextflow config file loaded for all pipeline runs, such as `~/.nextflow/config`."
},
"max_job_request_options": {
"title": "Max job request options",
"type": "object",
"fa_icon": "fab fa-acquisitions-incorporated",
"description": "Set the top limit for requested resources for any single job.",
"help_text": "If you are running on a smaller system, a pipeline step requesting more resources than are available may cause the Nextflow to stop the run with an error. These options allow you to cap the maximum resources requested by any single job so that the pipeline will run on your system.\n\nNote that you can not _increase_ the resources requested by any job using these options. For that you will need your own configuration file. See [the nf-core website](https://nf-co.re/usage/configuration) for details.",
"properties": {
"max_cpus": {
"type": "integer",
"description": "Maximum number of CPUs that can be requested for any single job.",
"default": 16,
"fa_icon": "fas fa-microchip",
"hidden": true,
"help_text": "Use to set an upper-limit for the CPU requirement for each process. Should be an integer e.g. `--max_cpus 1`"
},
"max_memory": {
"type": "string",
"description": "Maximum amount of memory that can be requested for any single job.",
"default": "128.GB",
"fa_icon": "fas fa-memory",
"pattern": "^\\d+(\\.\\d+)?\\.?\\s*(K|M|G|T)?B$",
"hidden": true,
"help_text": "Use to set an upper-limit for the memory requirement for each process. Should be a string in the format integer-unit e.g. `--max_memory '8.GB'`"
},
"max_time": {
"type": "string",
"description": "Maximum amount of time that can be requested for any single job.",
"default": "240.h",
"fa_icon": "far fa-clock",
"pattern": "^(\\d+\\.?\\s*(s|m|h|day)\\s*)+$",
"hidden": true,
"help_text": "Use to set an upper-limit for the time requirement for each process. Should be a string in the format integer-unit e.g. `--max_time '2.h'`"
}
}
},
"institutional_config_options": {
"title": "Institutional config options",
"type": "object",
"fa_icon": "fas fa-university",
"description": "Parameters used to describe centralised config profiles. These generally should not be edited.",
"help_text": "The centralised nf-core configuration profiles use a handful of pipeline parameters to describe themselves. This information is then printed to the Nextflow log when you run a pipeline. You should not need to change these values when you run a pipeline.",
"properties": {
"custom_config_version": {
"type": "string",
"description": "Git commit id for Institutional configs.",
"default": "master",
"hidden": true,
"fa_icon": "fas fa-users-cog",
"help_text": "Provide git commit id for custom Institutional configs hosted at `nf-core/configs`. This was implemented for reproducibility purposes. Default: `master`.\n\n```bash\n## Download and use config file with following git commit id\n--custom_config_version d52db660777c4bf36546ddb188ec530c3ada1b96\n```"
},
"custom_config_base": {
"type": "string",
"description": "Base directory for Institutional configs.",
"default": "https://raw.githubusercontent.com/nf-core/configs/master",
"hidden": true,
"help_text": "If you're running offline, nextflow will not be able to fetch the institutional config files from the internet. If you don't need them, then this is not a problem. If you do need them, you should download the files from the repo and tell nextflow where to find them with the `custom_config_base` option. For example:\n\n```bash\n## Download and unzip the config files\ncd /path/to/my/configs\nwget https://github.com/nf-core/configs/archive/master.zip\nunzip master.zip\n\n## Run the pipeline\ncd /path/to/my/data\nnextflow run /path/to/pipeline/ --custom_config_base /path/to/my/configs/configs-master/\n```\n\n> Note that the nf-core/tools helper package has a `download` command to download all required pipeline files + singularity containers + institutional configs in one go for you, to make this process easier.",
"fa_icon": "fas fa-users-cog"
},
"hostnames": {
"type": "string",
"description": "Institutional configs hostname.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_name": {
"type": "string",
"description": "Institutional config name.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_description": {
"type": "string",
"description": "Institutional config description.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_contact": {
"type": "string",
"description": "Institutional config contact information.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_url": {
"type": "string",
"description": "Institutional config URL link.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"awsqueue": {
"type": "string",
"description": "The AWSBatch JobQueue that needs to be set when running on AWSBatch",
"fa_icon": "fab fa-aws"
},
"awsregion": {
"type": "string",
"default": "eu-west-1",
"description": "The AWS Region for your AWS Batch job to run on",
"fa_icon": "fab fa-aws"
},
"awscli": {
"type": "string",
"description": "Path to the AWS CLI tool",
"fa_icon": "fab fa-aws"
}
}
},
"skip_steps": {
"title": "Skip steps",
"type": "object",
"description": "Skip any of the mentioned steps.",
"default": "",
"properties": {
"skip_fastqc": {
"type": "boolean",
"fa_icon": "fas fa-fast-forward",
"help_text": "Turns off FastQC pre- and post-Adapter Removal, to speed up the pipeline. Use of this flag is most common when data has been previously pre-processed and the post-Adapter Removal mapped reads are being re-mapped to a new reference genome."
},
"skip_adapterremoval": {
"type": "boolean",
"fa_icon": "fas fa-fast-forward",
"help_text": "Turns off adapter trimming and paired-end read merging. Equivalent to setting both `--skip_collapse` and `--skip_trim`."
},
"skip_preseq": {
"type": "boolean",
"fa_icon": "fas fa-fast-forward",
"help_text": "Turns off the computation of library complexity estimation."
},
"skip_deduplication": {
"type": "boolean",
"fa_icon": "fas fa-fast-forward",
"help_text": "Turns off duplicate removal methods DeDup and MarkDuplicates respectively. No duplicates will be removed on any data in the pipeline.\n"
},
"skip_damage_calculation": {
"type": "boolean",
"fa_icon": "fas fa-fast-forward",
"help_text": "Turns off the DamageProfiler module to compute DNA damage profiles.\n"
},
"skip_qualimap": {
"type": "boolean",
"fa_icon": "fas fa-fast-forward",
"help_text": "Turns off QualiMap and thus does not compute coverage and other mapping metrics.\n"
}
},
"fa_icon": "fas fa-fast-forward",
"help_text": "Some of the steps in the pipeline can be executed optionally. If you specify\nspecific steps to be skipped, there won't be any output related to these\nmodules."
},
"complexity_filtering": {
"title": "Complexity filtering",
"type": "object",
"description": "Processing of Illumina two-colour chemistry data.",
"default": "",
"properties": {
"complexity_filter_poly_g": {
"type": "boolean",
"description": "Turn on running poly-G removal on FASTQ files. Will only be performed on 2 colour chemistry machine sequenced libraries.",
"fa_icon": "fas fa-power-off",
"help_text": "Performs a poly-G tail removal step in the beginning of the pipeline using `fastp`, if turned on. This can be useful for trimming ploy-G tails from short-fragments sequenced on two-colour Illumina chemistry such as NextSeqs (where no-fluorescence is read as a G on two-colour chemistry), which can inflate reported GC content values.\n"
},
"complexity_filter_poly_g_min": {
"type": "integer",
"default": 10,
"description": "Specify length of poly-g min for clipping to be performed.",
"fa_icon": "fas fa-ruler-horizontal",
"help_text": "This option can be used to define the minimum length of a poly-G tail to begin low complexity trimming. By default, this is set to a value of `10` unless the user has chosen something specifically using this option.\n\n> Modifies fastp parameter: `--poly_g_min_len`"
}
},
"fa_icon": "fas fa-filter",
"help_text": "More details can be seen in the [fastp\ndocumentation](https://github.com/OpenGene/fastp)\n\nIf using TSV input, this is performed per lane separately"
},
"read_merging_and_adapter_removal": {
"title": "Read merging and adapter removal",
"type": "object",
"description": "Options for adapter clipping and paired-end merging.",
"default": "",
"properties": {
"clip_forward_adaptor": {
"type": "string",
"default": "AGATCGGAAGAGCACACGTCTGAACTCCAGTCAC",
"description": "Specify adapter sequence to be clipped off (forward strand).",
"fa_icon": "fas fa-cut",
"help_text": "Defines the adapter sequence to be used for the forward read. By default, this is set to `'AGATCGGAAGAGCACACGTCTGAACTCCAGTCAC'`.\n\n> Modifies AdapterRemoval parameter: `--adapter1`"
},
"clip_reverse_adaptor": {
"type": "string",
"default": "AGATCGGAAGAGCGTCGTGTAGGGAAAGAGTGTA",
"description": "Specify adapter sequence to be clipped off (reverse strand).",
"fa_icon": "fas fa-cut",
"help_text": "Defines the adapter sequence to be used for the reverse read in paired end sequencing projects. This is set to `'AGATCGGAAGAGCGTCGTGTAGGGAAAGAGTGTA'` by default.\n\n> Modifies AdapterRemoval parameter: `--adapter2`"
},
"clip_readlength": {
"type": "integer",
"default": 30,
"description": "Specify read minimum length to be kept for downstream analysis.",
"fa_icon": "fas fa-ruler",
"help_text": "Defines the minimum read length that is required for reads after merging to be considered for downstream analysis after read merging. Default is `30`.\n\nNote that performing read length filtering at this step is not reliable for correct endogenous DNA calculation, when you have a large percentage of very short reads in your library - such as retrieved in single-stranded library protocols. When you have very few reads passing this length filter, it will artificially inflate your endogenous DNA by creating a very small denominator. In these cases it is recommended to set this to 0, and use `--bam_filter_minreadlength` instead, to filter out 'un-usable' short reads after mapping.\n\n> Modifies AdapterRemoval parameter: `--minlength`\n"
},
"clip_min_read_quality": {
"type": "integer",
"default": 20,
"description": "Specify minimum base quality for trimming off bases.",
"fa_icon": "fas fa-medal",
"help_text": "Defines the minimum read quality per base that is required for a base to be kept. Individual bases at the ends of reads falling below this threshold will be clipped off. Default is set to `20`.\n\n> Modifies AdapterRemoval parameter: `--minquality`"
},
"min_adap_overlap": {
"type": "integer",
"default": 1,
"description": "Specify minimum adapter overlap required for clipping.",
"fa_icon": "fas fa-hands-helping",
"help_text": "Specifies a minimum number of bases that overlap with the adapter sequence before adapters are trimmed from reads. Default is set to `1` base overlap.\n\n> Modifies AdapterRemoval parameter: `--minadapteroverlap`"
},
"skip_collapse": {
"type": "boolean",
"description": "Skip of merging forward and reverse reads together and turns on paired-end alignment for downstream mapping. Only applicable for paired-end libraries.",
"fa_icon": "fas fa-fast-forward",
"help_text": "Turns off the paired-end read merging.\n\nFor example\n\n```bash\n--skip_collapse --input '*_{R1,R2}_*.fastq'\n```\n\nIt is important to use the paired-end wildcard globbing as `--skip_collapse` can only be used on paired-end data!\n\n:warning: If you run this and also with `--clip_readlength` set to something (as is by default), you may end up removing single reads from either the pair1 or pair2 file. These will be NOT be mapped when aligning with either `bwa` or `bowtie`, as both can only accept one (forward) or two (forward and reverse) FASTQs as input.\n\nAlso note that supplying this flag will then also cause downstream mapping steps to run in paired-end mode. This may be more suitable for modern data, or when you want to utilise mate-pair spatial information.\n\n> Modifies AdapterRemoval parameter: `--collapse`"
},
"skip_trim": {
"type": "boolean",
"description": "Skip adapter and quality trimming.",
"fa_icon": "fas fa-fast-forward",
"help_text": "Turns off adapter AND quality trimming.\n\nFor example:\n\n```bash\n--skip_trim --input '*.fastq'\n```\n\n:warning: it is not possible to keep quality trimming (n or base quality) on,\n_and_ skip adapter trimming.\n\n:warning: it is not possible to turn off one or the other of quality\ntrimming or n trimming. i.e. --trimns --trimqualities are both given\nor neither. However setting quality in `--clip_min_read_quality` to 0 would\ntheoretically turn off base quality trimming.\n\n> Modifies AdapterRemoval parameters: `--trimns --trimqualities --adapter1 --adapter2`"
},
"preserve5p": {
"type": "boolean",
"description": "Skip quality base trimming (n, score, window) of 5 prime end.",
"fa_icon": "fas fa-life-ring",
"help_text": "Turns off quality based trimming at the 5p end of reads when any of the --trimns, --trimqualities, or --trimwindows options are used. Only 3p end of reads will be removed.\n\nThis also entirely disables quality based trimming of collapsed reads, since both ends of these are informative for PCR duplicate filtering. Described [here](https://github.com/MikkelSchubert/adapterremoval/issues/32#issuecomment-504758137).\n\n> Modifies AdapterRemoval parameters: `--preserve5p`"
},
"mergedonly": {
"type": "boolean",
"description": "Only use merged reads downstream (un-merged reads and singletons are discarded).",
"fa_icon": "fas fa-handshake",
"help_text": "Specify that only merged reads are sent downstream for analysis.\n\nSingletons (i.e. reads missing a pair), or un-merged reads (where there wasn't sufficient overlap) are discarded.\n\nYou may want to use this if you want ensure only the best quality reads for your analysis, but with the penalty of potentially losing still valid data (even if some reads have slightly lower quality). It is highly recommended when using `--dedupper 'dedup'` (see below)."
},
"qualitymax": {
"type": "integer",
"description": "Specify the maximum Phred score used in input FASTQ files",
"help_text": "Specify maximum Phred score of the quality field of FASTQ files. The quality-score range can vary depending on the machine and version (e.g. see diagram [here](https://en.wikipedia.org/wiki/FASTQ_format#Encoding), and this allows you to increase from the default AdapterRemoval value of `41`.\n\n> Modifies AdapterRemoval parameters: `--qualitymax`",
"default": 41,
"fa_icon": "fas fa-arrow-up"
}
},
"fa_icon": "fas fa-cut",
"help_text": "These options handle various parts of adapter clipping and read merging steps.\n\nMore details can be seen in the [AdapterRemoval\ndocumentation](https://adapterremoval.readthedocs.io/en/latest/)\n\nIf using TSV input, this is performed per lane separately.\n\n> :warning: `--skip_trim` will skip adapter clipping AND quality trimming\n> (n, base quality). It is currently not possible skip one or the other."
},
"mapping": {
"title": "Read mapping to reference genome",
"type": "object",
"description": "Options for reference-genome mapping",
"default": "",
"properties": {
"mapper": {
"title": "Mapper",
"type": "string",
"description": "Specify which mapper to use. Options: 'bwaaln', 'bwamem', 'circularmapper', 'bowtie2'.",
"default": "bwaaln",
"fa_icon": "fas fa-layer-group",
"help_text": "Specify which mapping tool to use. Options are BWA aln (`'bwaaln'`), BWA mem (`'bwamem'`), circularmapper (`'circularmapper'`), or bowtie2 (`bowtie2`). BWA aln is the default and highly suited for short-read ancient DNA. BWA mem can be quite useful for modern DNA, but is rarely used in projects for ancient DNA. CircularMapper enhances the mapping procedure to circular references, using the BWA algorithm but utilizing a extend-remap procedure (see Peltzer et al 2016, Genome Biology for details). Bowtie2 is similar to BWA aln, and has recently been suggested to provide slightly better results under certain conditions ([Poullet and Orlando 2020](https://doi.org/10.3389/fevo.2020.00105)), as well as providing extra functionality (such as FASTQ trimming). Default is 'bwaaln'\n\nMore documentation can be seen for each tool under:\n\n- [BWA aln](http://bio-bwa.sourceforge.net/bwa.shtml#3)\n- [BWA mem](http://bio-bwa.sourceforge.net/bwa.shtml#3)\n- [CircularMapper](https://circularmapper.readthedocs.io/en/latest/contents/userguide.html)\n- [Bowtie2](http://bowtie-bio.sourceforge.net/bowtie2/manual.shtml#command-line)\n",
"enum": [
"bwaaln",
"bwamem",
"circularmapper",
"bowtie2"
]
},
"bwaalnn": {
"type": "number",
"default": 0.04,
"description": "Specify the -n parameter for BWA aln, i.e. amount of allowed mismatches in the alignment.",
"fa_icon": "fas fa-sort-numeric-down",
"help_text": "Configures the `bwa aln -n` parameter, defining how many mismatches are allowed in a read. By default set to `0.04` (following recommendations of [Schubert et al. (2012 _BMC Genomics_)](https://doi.org/10.1186/1471-2164-13-178)), if you're uncertain what to set check out [this](https://apeltzer.shinyapps.io/bwa-mismatches/) Shiny App for more information on how to set this parameter efficiently.\n\n> Modifies bwa aln parameter: `-n`"
},
"bwaalnk": {
"type": "integer",
"default": 2,
"description": "Specify the -k parameter for BWA aln, i.e. maximum edit distance allowed in a seed.",
"fa_icon": "fas fa-drafting-compass",
"help_text": "Configures the `bwa aln -k` parameter for the seeding phase in the mapping algorithm. Default is set to `2`.\n\n> Modifies BWA aln parameter: `-k`"
},
"bwaalnl": {
"type": "integer",
"default": 1024,
"description": "Specify the -l parameter for BWA aln i.e. the length of seeds to be used.",
"fa_icon": "fas fa-ruler-horizontal",
"help_text": "Configures the length of the seed used in `bwa aln -l`. Default is set to be 'turned off' at the recommendation of Schubert et al. ([2012 _BMC Genomics_](https://doi.org/10.1186/1471-2164-13-178)) for ancient DNA with `1024`.\n\nNote: Despite being recommended, turning off seeding can result in long runtimes!\n\n> Modifies BWA aln parameter: `-l`\n"
},
"bwaalno": {
"type": "integer",
"default": 1,
"fa_icon": "fas fa-people-arrows",
"description": "Specify the -o parameter for BWA aln i.e. the number of gaps allowed.",
"help_text": "Configures the number of gaps used in `bwa aln`. Default is set to `bwa` default.\n\n> Modifies BWA aln parameter: `-o`\n"
},
"circularextension": {
"type": "integer",
"default": 500,
"description": "Specify the number of bases to extend reference by (circularmapper only).",
"fa_icon": "fas fa-external-link-alt",
"help_text": "The number of bases to extend the reference genome with. By default this is set to `500` if not specified otherwise.\n\n> Modifies circulargenerator and realignsamfile parameter: `-e`"
},
"circulartarget": {
"type": "string",
"default": "MT",
"description": "Specify the FASTA header of the target chromosome to extend (circularmapper only).",
"fa_icon": "fas fa-bullseye",
"help_text": "The chromosome in your FASTA reference that you'd like to be treated as circular. By default this is set to `MT` but can be configured to match any other chromosome.\n\n> Modifies circulargenerator parameter: `-s`"
},
"circularfilter": {
"type": "boolean",
"description": "Turn on to remove reads that did not map to the circularised genome (circularmapper only).",
"fa_icon": "fas fa-filter",
"help_text": "If you want to filter out reads that don't map to a circular chromosome (and also non-circular chromosome headers) from the resulting BAM file, turn this on. By default this option is turned off.\n> Modifies -f and -x parameters of CircularMapper's realignsamfile\n"
},
"bt2_alignmode": {
"type": "string",
"default": "local",
"description": "Specify the bowtie2 alignment mode. Options: 'local', 'end-to-end'.",
"fa_icon": "fas fa-arrows-alt-h",
"help_text": "The type of read alignment to use. Options are 'local' or 'end-to-end'. Local allows only partial alignment of read, with ends of reads possibly 'soft-clipped' (i.e. remain unaligned/ignored), if the soft-clipped alignment provides best alignment score. End-to-end requires all nucleotides to be aligned. Default is 'local', following [Cahill et al (2018)](https://doi.org/10.1093/molbev/msy018) and [Poullet and Orlando 2020](https://doi.org/10.3389/fevo.2020.00105).\n\n> Modifies Bowtie2 parameters: `--very-fast --fast --sensitive --very-sensitive --very-fast-local --fast-local --sensitive-local --very-sensitive-local`",
"enum": [
"local",
"end-to-end"
]
},
"bt2_sensitivity": {
"type": "string",
"default": "sensitive",
"description": "Specify the level of sensitivity for the bowtie2 alignment mode. Options: 'no-preset', 'very-fast', 'fast', 'sensitive', 'very-sensitive'.",
"fa_icon": "fas fa-microscope",
"help_text": "The Bowtie2 'preset' to use. Options: 'no-preset' 'very-fast', 'fast', 'sensitive', or 'very-sensitive'. These strings apply to both `--bt2_alignmode` options. See the Bowtie2 [manual](http://bowtie-bio.sourceforge.net/bowtie2/manual.shtml#command-line) for actual settings. Default is 'sensitive' (following [Poullet and Orlando (2020)](https://doi.org/10.3389/fevo.2020.00105), when running damaged-data _without_ UDG treatment)\n\n> Modifies Bowtie2 parameters: `--very-fast --fast --sensitive --very-sensitive --very-fast-local --fast-local --sensitive-local --very-sensitive-local`",
"enum": [
"no-preset",
"very-fast",
"fast",
"sensitive",
"very-sensitive"
]
},
"bt2n": {
"type": "integer",
"default": 0,
"description": "Specify the -N parameter for bowtie2 (mismatches in seed). This will override defaults from alignmode/sensitivity.",
"fa_icon": "fas fa-sort-numeric-down",
"help_text": "The number of mismatches allowed in the seed during seed-and-extend procedure of Bowtie2. This will override any values set with `--bt2_sensitivity`. Can either be 0 or 1. Default: 0 (i.e. use`--bt2_sensitivity` defaults).\n\n> Modifies Bowtie2 parameters: `-N`",
"enum": [
0,
1
]
},
"bt2l": {
"type": "integer",
"default": 0,
"description": "Specify the -L parameter for bowtie2 (length of seed substrings). This will override defaults from alignmode/sensitivity.",
"fa_icon": "fas fa-ruler-horizontal",
"help_text": "The length of the seed sub-string to use during seeding. This will override any values set with `--bt2_sensitivity`. Default: 0 (i.e. use`--bt2_sensitivity` defaults: [20 for local and 22 for end-to-end](http://bowtie-bio.sourceforge.net/bowtie2/manual.shtml#command-line).\n\n> Modifies Bowtie2 parameters: `-L`"
},
"bt2_trim5": {
"type": "integer",
"default": 0,
"description": "Specify number of bases to trim off from 5' (left) end of read before alignment.",
"fa_icon": "fas fa-cut",
"help_text": "Number of bases to trim at the 5' (left) end of read prior alignment. Maybe useful when left-over sequencing artefacts of in-line barcodes present Default: 0\n\n> Modifies Bowtie2 parameters: `-bt2_trim5`"
},
"bt2_trim3": {
"type": "integer",
"default": 0,
"description": "Specify number of bases to trim off from 3' (right) end of read before alignment.",
"fa_icon": "fas fa-cut",
"help_text": "Number of bases to trim at the 3' (right) end of read prior alignment. Maybe useful when left-over sequencing artefacts of in-line barcodes present Default: 0.\n\n> Modifies Bowtie2 parameters: `-bt2_trim3`"
},
"bt2_maxins": {
"type": "integer",
"default": 500,
"fa_icon": "fas fa-exchange-alt",
"description": "Specify the maximum fragment length for Bowtie2 paired-end mapping mode only.",
"help_text": "The maximum fragment for valid paired-end alignments. Only for paired-end mapping (i.e. unmerged), and therefore typically only useful for modern data.\n\n See [Bowtie2 documentation](http://bowtie-bio.sourceforge.net/bowtie2/manual.shtml) for more information.\n\n> Modifies Bowtie2 parameters: `--maxins`"
}
},
"fa_icon": "fas fa-layer-group",
"help_text": "If using TSV input, mapping is performed at the library level, i.e. after lane merging.\n"
},
"host_removal": {
"title": "Removal of Host-Mapped Reads",
"type": "object",
"description": "Options for production of host-read removed FASTQ files for privacy reasons.",
"default": "",
"properties": {
"hostremoval_input_fastq": {
"type": "boolean",
"description": "Turn on per-library creation pre-Adapter Removal FASTQ files without reads that mapped to reference (e.g. for public upload of privacy sensitive non-host data)",
"fa_icon": "fas fa-power-off",
"help_text": "Create pre-Adapter Removal FASTQ files without reads that mapped to reference (e.g. for public upload of privacy sensitive non-host data)\n"
},
"hostremoval_mode": {
"type": "string",
"default": "remove",
"description": "Host removal mode. Remove mapped reads completely from FASTQ (remove) or just mask mapped reads sequence by N (replace).",
"fa_icon": "fas fa-mask",
"help_text": "Read removal mode. Remove mapped reads completely (`'remove'`) or just replace mapped reads sequence by N (`'replace'`)\n\n> Modifies extract_map_reads.py parameter: `-m`",
"enum": [
"strip",
"replace",
"remove"
]
}
},
"fa_icon": "fas fa-user-shield",
"help_text": "These parameters are used for removing mapped reads from the original input\nFASTQ files, usually in the context of uploading the original FASTQ files to a\npublic read archive (NCBI SRA/EBI ENA/DDBJ SRA).\n\nThese flags will produce FASTQ files almost identical to your input files,\nexcept that reads with the same read ID as one found in the mapped bam file, are\neither removed or 'masked' (every base replaced with Ns).\n\nThis functionality allows you to provide other researchers who wish to re-use\nyour data to apply their own adapter removal/read merging procedures, while\nmaintaining anonymity for sample donors - for example with microbiome\nresearch.\n\nIf using TSV input, stripping is performed library, i.e. after lane merging."
},
"bam_filtering": {
"title": "BAM Filtering",
"type": "object",
"description": "Options for quality filtering and how to deal with off-target unmapped reads.",
"default": "",
"properties": {
"run_bam_filtering": {
"type": "boolean",
"description": "Turn on filtering of mapping quality, read lengths, or unmapped reads of BAM files.",
"fa_icon": "fas fa-power-off",
"help_text": "Turns on the bam filtering module for either mapping quality filtering or unmapped read treatment.\n"
},
"bam_mapping_quality_threshold": {
"type": "integer",
"default": 0,
"description": "Minimum mapping quality for reads filter.",
"fa_icon": "fas fa-greater-than-equal",
"help_text": "Specify a mapping quality threshold for mapped reads to be kept for downstream analysis. By default keeps all reads and is therefore set to `0` (basically doesn't filter anything).\n\n> Modifies samtools view parameter: `-q`"
},
"bam_filter_minreadlength": {
"type": "integer",
"default": 0,
"fa_icon": "fas fa-ruler-horizontal",
"description": "Specify minimum read length to be kept after mapping.",
"help_text": "Specify minimum length of mapped reads. This filtering will apply at the same time as mapping quality filtering.\n\nIf used _instead_ of minimum length read filtering at AdapterRemoval, this can be useful to get more realistic endogenous DNA percentages, when most of your reads are very short (e.g. in single-stranded libraries) and would otherwise be discarded by AdapterRemoval (thus making an artificially small denominator for a typical endogenous DNA calculation). Note in this context you should not perform mapping quality filtering nor discarding of unmapped reads to ensure a correct denominator of all reads, for the endogenous DNA calculation.\n\n> Modifies filter_bam_fragment_length.py parameter: `-l`"
},
"bam_unmapped_type": {
"type": "string",
"default": "discard",
"description": "Defines whether to discard all unmapped reads, keep only bam and/or keep only fastq format Options: 'discard', 'bam', 'fastq', 'both'.",
"fa_icon": "fas fa-trash-alt",
"help_text": "Defines how to proceed with unmapped reads: `'discard'` removes all unmapped reads, `keep` keeps both unmapped and mapped reads in the same BAM file, `'bam'` keeps unmapped reads as BAM file, `'fastq'` keeps unmapped reads as FastQ file, `both` keeps both BAM and FASTQ files. Default is `discard`. `keep` is what would happen if `--run_bam_filtering` was _not_ supplied.\n\nNote that in all cases, if `--bam_mapping_quality_threshold` is also supplied, mapping quality filtering will still occur on the mapped reads.\n\n> Modifies samtools view parameter: `-f4 -F4`",
"enum": [
"discard",
"keep",
"bam",
"fastq",
"both"
]
}
},
"fa_icon": "fas fa-sort-amount-down",
"help_text": "Users can configure to keep/discard/extract certain groups of reads efficiently\nin the nf-core/eager pipeline.\n\nIf using TSV input, filtering is performed library, i.e. after lane merging.\n\nThis module utilises `samtools view` and `filter_bam_fragment_length.py`"
},
"deduplication": {
"title": "DeDuplication",
"type": "object",
"description": "Options for removal of PCR amplicon duplicates that can artificially inflate coverage.",
"default": "",
"properties": {
"dedupper": {
"type": "string",
"default": "markduplicates",
"description": "Deduplication method to use. Options: 'markduplicates', 'dedup'.",
"fa_icon": "fas fa-object-group",
"help_text": "Sets the duplicate read removal tool. By default uses `markduplicates` from Picard. Alternatively an ancient DNA specific read deduplication tool `dedup` ([Peltzer et al. 2016](http://dx.doi.org/10.1186/s13059-016-0918-z)) is offered.\n\nThis utilises both ends of paired-end data to remove duplicates (i.e. true exact duplicates, as markduplicates will over-zealously deduplicate anything with the same starting position even if the ends are different). DeDup should generally only be used solely on paired-end data otherwise suboptimal deduplication can occur if applied to either single-end or a mix of single-end/paired-end data.\n",
"enum": [
"markduplicates",
"dedup"
]
},
"dedup_all_merged": {
"type": "boolean",
"description": "Turn on treating all reads as merged reads.",
"fa_icon": "fas fa-handshake",
"help_text": "Sets DeDup to treat all reads as merged reads. This is useful if reads are for example not prefixed with `M_` in all cases. Therefore, this can be used as a workaround when also using a mixture of paired-end and single-end data, however this is not recommended (see above).\n\n> Modifies dedup parameter: `-m`"
}
},
"fa_icon": "fas fa-clone",
"help_text": "If using TSV input, deduplication is performed per library, i.e. after lane merging."
},
"library_complexity_analysis": {
"title": "Library Complexity Analysis",
"type": "object",
"description": "Options for calculating library complexity (i.e. how many unique reads are present).",
"default": "",
"properties": {
"preseq_step_size": {
"type": "integer",
"default": 1000,
"description": "Specify the step size of Preseq.",
"fa_icon": "fas fa-shoe-prints",
"help_text": "Can be used to configure the step size of Preseq's `c_curve` method. Can be useful when only few and thus shallow sequencing results are used for extrapolation.\n\n> Modifies preseq c_curve parameter: `-s`"
}
},
"fa_icon": "fas fa-bezier-curve",
"help_text": "nf-core/eager uses Preseq on mapped reads as one method to calculate library\ncomplexity. If DeDup is used, Preseq uses the histogram output of DeDup,\notherwise the sorted non-duplicated BAM file is supplied. Furthermore, if\npaired-end read collapsing is not performed, the `-P` flag is used."
},
"adna_damage_analysis": {
"title": "(aDNA) Damage Analysis",
"type": "object",
"description": "Options for calculating and filtering for characteristic ancient DNA damage patterns.",
"default": "",
"properties": {
"damageprofiler_length": {
"type": "integer",
"default": 100,
"description": "Specify length filter for DamageProfiler.",
"fa_icon": "fas fa-sort-amount-up",
"help_text": "Specifies the length filter for DamageProfiler. By default set to `100`.\n\n> Modifies DamageProfile parameter: `-l`"
},
"damageprofiler_threshold": {
"type": "integer",
"default": 15,
"description": "Specify number of bases of each read to consider for DamageProfiler calculations.",
"fa_icon": "fas fa-ruler-horizontal",
"help_text": "Specifies the length of the read start and end to be considered for profile generation in DamageProfiler. By default set to `15` bases.\n\n> Modifies DamageProfile parameter: `-t`"
},
"damageprofiler_yaxis": {
"type": "number",
"default": 0.3,
"description": "Specify the maximum misincorporation frequency that should be displayed on damage plot. Set to 0 to 'autoscale'.",
"fa_icon": "fas fa-ruler-vertical",
"help_text": "Specifies what the maximum misincorporation frequency should be displayed as, in the DamageProfiler damage plot. This is set to `0.30` (i.e. 30%) by default as this matches the popular [mapDamage2.0](https://ginolhac.github.io/mapDamage) program. However, the default behaviour of DamageProfiler is to 'autoscale' the y-axis maximum to zoom in on any _possible_ damage that may occur (e.g. if the damage is about 10%, the highest value on the y-axis would be set to 0.12). This 'autoscale' behaviour can be turned on by specifying the number to `0`. Default: `0.30`.\n\n> Modifies DamageProfile parameter: `-yaxis_damageplot`"
},
"run_pmdtools": {
"type": "boolean",
"description": "Turn on PMDtools",
"fa_icon": "fas fa-power-off",
"help_text": "Specifies to run PMDTools for damage based read filtering and assessment of DNA damage in sequencing libraries. By default turned off.\n"
},
"pmdtools_range": {
"type": "integer",
"default": 10,
"description": "Specify range of bases for PMDTools to scan for damage.",
"fa_icon": "fas fa-arrows-alt-h",
"help_text": "Specifies the range in which to consider DNA damage from the ends of reads. By default set to `10`.\n\n> Modifies PMDTools parameter: `--range`"
},
"pmdtools_threshold": {
"type": "integer",
"default": 3,
"description": "Specify PMDScore threshold for PMDTools.",
"fa_icon": "fas fa-chart-bar",
"help_text": "Specifies the PMDScore threshold to use in the pipeline when filtering BAM files for DNA damage. Only reads which surpass this damage score are considered for downstream DNA analysis. By default set to `3` if not set specifically by the user.\n\n> Modifies PMDTools parameter: `--threshold`"
},
"pmdtools_reference_mask": {
"type": "string",
"description": "Specify a path to reference mask for PMDTools.",
"fa_icon": "fas fa-mask",
"help_text": "Can be used to set a path to a reference genome mask for PMDTools."
},
"pmdtools_max_reads": {
"type": "integer",
"default": 10000,
"description": "Specify the maximum number of reads to consider for metrics generation.",
"fa_icon": "fas fa-greater-than-equal",
"help_text": "The maximum number of reads used for damage assessment in PMDtools. Can be used to significantly reduce the amount of time required for damage assessment in PMDTools. Note that a too low value can also obtain incorrect results.\n\n> Modifies PMDTools parameter: `-n`"
},
"pmdtools_platypus": {
"type": "boolean",
"description": "Append big list of base frequencies for platypus to output.",
"fa_icon": "fas fa-power-off",
"help_text": "Enables the printing of a wider list of base frequencies used by platypus as an addition to the output base misincorporation frequency table. By default turned off.\n"
},
"run_mapdamage_rescaling": {
"type": "boolean",
"fa_icon": "fas fa-map",
"description": "Turn on damage rescaling of BAM files using mapDamage2 to probabilistically remove damage.",
"help_text": "Turns on mapDamage2's BAM rescaling functionality. This probablistically replaces Ts back to Cs depending on the likelihood this reference-mismatch was originally caused by damage. If the library is specified to be single stranded, this will automatically use the `--single-stranded` mode.\n\nThis functionality does not have any MultiQC output.\n\n:warning: rescaled libraries will not be merged with non-scaled libraries of the same sample for downstream genotyping, as the model may be different for each library. If you wish to merge these, please do this manually and re-run nf-core/eager using the merged BAMs as input. \n\n> Modifies the `--rescale` parameter of mapDamage2"
},
"rescale_length_5p": {
"type": "integer",
"default": 12,
"fa_icon": "fas fa-balance-scale-right",
"description": "Length of read for mapDamage2 to rescale from 5p end.",
"help_text": "Specify the length from the end of the read that mapDamage should rescale.\n\n> Modifies the `--rescale-length-5p` parameter of mapDamage2."
},
"rescale_length_3p": {
"type": "integer",
"default": 12,
"fa_icon": "fas fa-balance-scale-left",
"description": "Length of read for mapDamage2 to rescale from 3p end.",
"help_text": "Specify the length from the end of the read that mapDamage should rescale.\n\n> Modifies the `--rescale-length-3p` parameter of mapDamage2."
}
},
"fa_icon": "fas fa-chart-line",
"help_text": "More documentation can be seen in the follow links for:\n\n- [DamageProfiler](https://github.com/Integrative-Transcriptomics/DamageProfiler)\n- [PMDTools documentation](https://github.com/pontussk/PMDtools)\n\nIf using TSV input, DamageProfiler is performed per library, i.e. after lane\nmerging. PMDtools and BAM Trimming is run after library merging of same-named\nlibrary BAMs that have the same type of UDG treatment. BAM Trimming is only\nperformed on non-UDG and half-UDG treated data.\n"
},
"feature_annotation_statistics": {
"title": "Feature Annotation Statistics",
"type": "object",
"description": "Options for getting reference annotation statistics (e.g. gene coverages)",
"default": "",
"properties": {
"run_bedtools_coverage": {
"type": "boolean",
"description": "Turn on ability to calculate no. reads, depth and breadth coverage of features in reference.",
"fa_icon": "fas fa-chart-area",
"help_text": "Specifies to turn on the bedtools module, producing statistics for breadth (or percent coverage), and depth (or X fold) coverages.\n"
},
"anno_file": {
"type": "string",
"description": "Path to GFF or BED file containing positions of features in reference file (--fasta). Path should be enclosed in quotes.",
"fa_icon": "fas fa-file-signature",
"help_text": "Specify the path to a GFF/BED containing the feature coordinates (or any acceptable input for [`bedtools coverage`](https://bedtools.readthedocs.io/en/latest/content/tools/coverage.html)). Must be in quotes.\n"
}
},
"fa_icon": "fas fa-scroll",
"help_text": "If you're interested in looking at coverage stats for certain features on your\nreference such as genes, SNPs etc., you can use the following bedtools module\nfor this purpose.\n\nMore documentation on bedtools can be seen in the [bedtools\ndocumentation](https://bedtools.readthedocs.io/en/latest/)\n\nIf using TSV input, bedtools is run after library merging of same-named library\nBAMs that have the same type of UDG treatment.\n"
},
"bam_trimming": {
"title": "BAM Trimming",
"type": "object",
"description": "Options for trimming of aligned reads (e.g. to remove damage prior genotyping).",
"default": "",
"properties": {
"run_trim_bam": {
"type": "boolean",
"description": "Turn on BAM trimming. Will only run on non-UDG or half-UDG libraries",
"fa_icon": "fas fa-power-off",
"help_text": "Turns on the BAM trimming method. Trims off `[n]` bases from reads in the deduplicated BAM file. Damage assessment in PMDTools or DamageProfiler remains untouched, as data is routed through this independently. BAM trimming is typically performed to reduce errors during genotyping that can be caused by aDNA damage.\n\nBAM trimming will only be performed on libraries indicated as `--udg_type 'none'` or `--udg_type 'half'`. Complete UDG treatment ('full') should have removed all damage. The amount of bases that will be trimmed off can be set separately for libraries with `--udg_type` `'none'` and `'half'` (see `--bamutils_clip_half_udg_left` / `--bamutils_clip_half_udg_right` / `--bamutils_clip_none_udg_left` / `--bamutils_clip_none_udg_right`).\n\n> Note: additional artefacts such as bar-codes or adapters that could potentially also be trimmed should be removed prior mapping."
},
"bamutils_clip_half_udg_left": {
"type": "integer",
"default": 1,
"fa_icon": "fas fa-ruler-combined",
"description": "Specify the number of bases to clip off reads from 'left' end of read for half-UDG libraries.",
"help_text": "Default set to `1` and clips off one base of the left or right side of reads from libraries whose UDG treatment is set to `half`. Note that reverse reads will automatically be clipped off at the reverse side with this (automatically reverses left and right for the reverse read).\n\n> Modifies bamUtil's trimBam parameter: `-L -R`"
},
"bamutils_clip_half_udg_right": {
"type": "integer",
"default": 1,
"fa_icon": "fas fa-ruler",
"description": "Specify the number of bases to clip off reads from 'right' end of read for half-UDG libraries.",
"help_text": "Default set to `1` and clips off one base of the left or right side of reads from libraries whose UDG treatment is set to `half`. Note that reverse reads will automatically be clipped off at the reverse side with this (automatically reverses left and right for the reverse read).\n\n> Modifies bamUtil's trimBam parameter: `-L -R`"
},
"bamutils_clip_none_udg_left": {
"type": "integer",
"default": 1,
"fa_icon": "fas fa-ruler-combined",
"description": "Specify the number of bases to clip off reads from 'left' end of read for non-UDG libraries.",
"help_text": "Default set to `1` and clips off one base of the left or right side of reads from libraries whose UDG treatment is set to `none`. Note that reverse reads will automatically be clipped off at the reverse side with this (automatically reverses left and right for the reverse read).\n\n> Modifies bamUtil's trimBam parameter: `-L -R`"
},
"bamutils_clip_none_udg_right": {
"type": "integer",
"default": 1,
"fa_icon": "fas fa-ruler",
"description": "Specify the number of bases to clip off reads from 'right' end of read for non-UDG libraries.",
"help_text": "Default set to `1` and clips off one base of the left or right side of reads from libraries whose UDG treatment is set to `none`. Note that reverse reads will automatically be clipped off at the reverse side with this (automatically reverses left and right for the reverse read).\n\n> Modifies bamUtil's trimBam parameter: `-L -R`"
},
"bamutils_softclip": {
"type": "boolean",
"description": "Turn on using softclip instead of hard masking.",
"fa_icon": "fas fa-paint-roller",
"help_text": "By default, nf-core/eager uses hard clipping and sets clipped bases to `N` with quality `!` in the BAM output. Turn this on to use soft-clipping instead, masking reads at the read ends respectively using the CIGAR string.\n\n> Modifies bam trimBam parameter: `-c`"
}
},
"fa_icon": "fas fa-eraser",
"help_text": "For some library preparation protocols, users might want to clip off damaged\nbases before applying genotyping methods. This can be done in nf-core/eager\nautomatically by turning on the `--run_trim_bam` parameter.\n\nMore documentation can be seen in the [bamUtil\ndocumentation](https://genome.sph.umich.edu/wiki/BamUtil:_trimBam)\n"
},
"genotyping": {
"title": "Genotyping",
"type": "object",
"description": "Options for variant calling.",
"default": "",
"properties": {
"run_genotyping": {
"type": "boolean",
"description": "Turn on genotyping of BAM files.",
"fa_icon": "fas fa-power-off",
"help_text": "Turns on genotyping to run on all post-dedup and downstream BAMs. For example if `--run_pmdtools` and `--trim_bam` are both supplied, the genotyper will be run on all three BAM files i.e. post-deduplication, post-pmd and post-trimmed BAM files."
},
"genotyping_tool": {
"type": "string",
"description": "Specify which genotyper to use either GATK UnifiedGenotyper, GATK HaplotypeCaller, Freebayes, or pileupCaller. Options: 'ug', 'hc', 'freebayes', 'pileupcaller', 'angsd'.",
"fa_icon": "fas fa-tools",
"help_text": "Specifies which genotyper to use. Current options are: GATK (v3.5) UnifiedGenotyper or GATK Haplotype Caller (v4); and the FreeBayes Caller. Specify 'ug', 'hc', 'freebayes', 'pileupcaller' and 'angsd' respectively.\n\n> > Note that while UnifiedGenotyper is more suitable for low-coverage ancient DNA (HaplotypeCaller does _de novo_ assembly around each variant site), be aware GATK 3.5 it is officially deprecated by the Broad Institute.",
"enum": [
"ug",
"hc",
"freebayes",
"pileupcaller",
"angsd"
]
},
"genotyping_source": {
"type": "string",
"default": "raw",
"description": "Specify which input BAM to use for genotyping. Options: 'raw', 'trimmed', 'pmd' or 'rescaled'.",
"fa_icon": "fas fa-faucet",
"help_text": "Indicates which BAM file to use for genotyping, depending on what BAM processing modules you have turned on. Options are: `'raw'` for mapped only, filtered, or DeDup BAMs (with priority right to left); `'trimmed'` (for base clipped BAMs); `'pmd'` (for pmdtools output); `'rescaled'` (for mapDamage2 rescaling output). Default is: `'raw'`.\n",
"enum": [
"raw",
"pmd",
"trimmed",
"rescaled"
]
},
"gatk_call_conf": {
"type": "integer",
"default": 30,
"description": "Specify GATK phred-scaled confidence threshold.",
"fa_icon": "fas fa-balance-scale-right",
"help_text": "If selected, specify a GATK genotyper phred-scaled confidence threshold of a given SNP/INDEL call. Default: `30`\n\n> Modifies GATK UnifiedGenotyper or HaplotypeCaller parameter: `-stand_call_conf`"
},
"gatk_ploidy": {
"type": "integer",
"default": 2,
"description": "Specify GATK organism ploidy.",
"fa_icon": "fas fa-pastafarianism",
"help_text": "If selected, specify a GATK genotyper ploidy value of your reference organism. E.g. if you want to allow heterozygous calls from >= diploid organisms. Default: `2`\n\n> Modifies GATK UnifiedGenotyper or HaplotypeCaller parameter: `--sample-ploidy`"
},
"gatk_downsample": {
"type": "integer",
"default": 250,
"description": "Maximum depth coverage allowed for genotyping before down-sampling is turned on.",
"fa_icon": "fas fa-icicles",
"help_text": "Maximum depth coverage allowed for genotyping before down-sampling is turned on. Any position with a coverage higher than this value will be randomly down-sampled to 250 reads. Default: `250`\n\n> Modifies GATK UnifiedGenotyper parameter: `-dcov`"
},
"gatk_dbsnp": {
"type": "string",
"description": "Specify VCF file for SNP annotation of output VCF files. Optional. Gzip not accepted.",
"fa_icon": "fas fa-marker",