From fastq to lncRNA profile.
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

106 lines
2.5KB

  1. import "./tasks/fastp.wdl" as fastp
  2. import "./tasks/hisat2.wdl" as hisat2
  3. import "./tasks/samtools.wdl" as samtools
  4. import "./tasks/featureCounts.wdl" as featureCounts
  5. workflow {{ project_name }} {
  6. String sample_id
  7. File read1
  8. File read2
  9. String adapter_sequence
  10. String adapter_sequence_r2
  11. String fastp_docker
  12. String fastp_cluster
  13. String umi_loc
  14. Int trim_front1
  15. Int trim_tail1
  16. Int max_len1
  17. Int trim_front2
  18. Int trim_tail2
  19. Int max_len2
  20. Int disable_adapter_trimming
  21. Int length_required
  22. Int umi_len
  23. Int UMI
  24. Int qualified_quality_phred
  25. Int length_required1
  26. Int disable_quality_filtering
  27. File idx
  28. String idx_prefix
  29. String pen_intronlen
  30. String hisat2_docker
  31. String hisat2_cluster
  32. Int pen_cansplice
  33. Int pen_noncansplice
  34. Int min_intronlen
  35. Int max_intronlen
  36. Int maxins
  37. Int minins
  38. String ins_size = sample_id + ".ins_size"
  39. String samtools_docker
  40. String samtools_cluster
  41. Int insert_size
  42. String subread_docker
  43. String subread_cluster
  44. call fastp.fastp as fastp {
  45. input:
  46. sample_id = sample_id,
  47. read1 = read1,
  48. read2 = read2,
  49. docker = fastp_docker,
  50. cluster = fastp_cluster,
  51. adapter_sequence = adapter_sequence,
  52. adapter_sequence_r2 = adapter_sequence_r2,
  53. umi_loc = umi_loc,
  54. trim_front1 = trim_front1,
  55. trim_tail1 = trim_tail1,
  56. max_len1 = max_len1,
  57. trim_front2 = trim_front2,
  58. trim_tail2 = trim_tail2,
  59. max_len2 = max_len2,
  60. disable_adapter_trimming = disable_adapter_trimming,
  61. length_required = length_required,
  62. umi_len = umi_len,
  63. UMI = UMI,
  64. qualified_quality_phred = qualified_quality_phred,
  65. length_required1 = length_required1,
  66. disable_quality_filtering = disable_quality_filtering
  67. }
  68. call hisat2.hisat2 as hisat2 {
  69. input:
  70. sample_id = sample_id,
  71. idx = idx,
  72. idx_prefix = idx_prefix,
  73. Trim_R1 = fastp.Trim_R1,
  74. Trim_R2 = fastp.Trim_R2,
  75. docker = hisat2_docker,
  76. cluster = hisat2_cluster,
  77. pen_intronlen = pen_intronlen,
  78. pen_cansplice = pen_cansplice,
  79. pen_noncansplice = pen_noncansplice,
  80. min_intronlen = min_intronlen,
  81. max_intronlen = max_intronlen,
  82. maxins = maxins,
  83. minins = minins
  84. }
  85. call samtools.samtools as samtools {
  86. input:
  87. sample_id = sample_id,
  88. sam = hisat2.sam,
  89. docker = samtools_docker,
  90. cluster = samtools_cluster,
  91. insert_size = insert_size
  92. }
  93. call featureCounts.featureCounts as featureCounts {
  94. input:
  95. sample_id = sample_id,
  96. bam_file = samtools.out_bam,
  97. docker = subread_docker,
  98. cluster = subread_cluster
  99. }
  100. }