You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

108 lines
2.7KB

  1. import "./tasks/indelNorm.wdl" as indelNorm
  2. import "./tasks/SepSnvIndel.wdl" as SepSnvIndel
  3. import "./tasks/ExtractVCFinfo.wdl" as ExtractVCFinfo
  4. import "./tasks/oneClass.wdl" as oneClass
  5. import "./tasks/SepTrueFalse.wdl" as SepTrueFalse
  6. import "./tasks/vcfeval.wdl" as vcfeval
  7. workflow {{ project_name }} {
  8. File nist_vcf
  9. File giab_bed
  10. File giab_snv
  11. File giab_snv_idx
  12. File giab_indel
  13. File giab_indel_idx
  14. File snv_train
  15. File indel_train
  16. File ref_dir
  17. File sdf
  18. String kernel
  19. String nu
  20. String nist_sample_name
  21. String cluster_config
  22. String disk_size
  23. String fasta
  24. call indelNorm.indelNorm as indelNorm {
  25. input:
  26. nist_vcf=nist_vcf,
  27. sampleName=nist_sample_name,
  28. ref_dir=ref_dir,
  29. fasta=fasta,
  30. disk_size=disk_size,
  31. cluster_config=cluster_config
  32. }
  33. call SepSnvIndel.SepSnvIndel as SepSnvIndel {
  34. input:
  35. vcf=indelNorm.normed_vcf,
  36. sampleName=nist_sample_name,
  37. cluster_config=cluster_config,
  38. disk_size=disk_size
  39. }
  40. call ExtractVCFinfo.ExtractVCFinfo as ExtractVCFinfo {
  41. input:
  42. nist_snv=SepSnvIndel.nist_snv,
  43. nist_indel=SepSnvIndel.nist_indel,
  44. sampleName=nist_sample_name,
  45. cluster_config=cluster_config,
  46. disk_size=disk_size
  47. }
  48. call oneClass.oneClass as oneClass {
  49. input:
  50. snv_vcf=ExtractVCFinfo.snv_vcf,
  51. indel_vcf=ExtractVCFinfo.indel_vcf,
  52. snv_train=snv_train,
  53. indel_train=indel_train,
  54. kernel=kernel,
  55. nu=nu,
  56. sampleName=nist_sample_name,
  57. cluster_config=cluster_config,
  58. disk_size=disk_size
  59. }
  60. call SepTrueFalse.SepTrueFalse as SepTrueFalse {
  61. input:
  62. snv_true_bed=oneClass.snv_true_bed,
  63. snv_false_bed=oneClass.snv_false_bed,
  64. indel_true_bed=oneClass.indel_true_bed,
  65. indel_false_bed=oneClass.indel_false_bed,
  66. snv_padding=oneClass.snv_padding,
  67. indel_padding=oneClass.indel_padding,
  68. snv_gz=SepSnvIndel.nist_snv_gz,
  69. indel_gz=SepSnvIndel.nist_indel_gz,
  70. snv_idx=SepSnvIndel.nist_snv_gz_idx,
  71. indel_idx=SepSnvIndel.nist_indel_gz_idx,
  72. sampleName=nist_sample_name,
  73. cluster_config=cluster_config,
  74. disk_size=disk_size
  75. }
  76. call vcfeval.vcfeval as vcfeval {
  77. input:
  78. snv_true_vcf=SepTrueFalse.snv_true_vcf,
  79. snv_true_vcf_index=SepTrueFalse.snv_true_vcf_index,
  80. snv_false_vcf=SepTrueFalse.snv_false_vcf,
  81. snv_false_vcf_index=SepTrueFalse.snv_false_vcf_index,
  82. indel_true_vcf=SepTrueFalse.indel_true_vcf,
  83. indel_true_vcf_index=SepTrueFalse.indel_true_vcf_index,
  84. indel_false_vcf=SepTrueFalse.indel_false_vcf,
  85. indel_false_vcf_index=SepTrueFalse.indel_false_vcf_index,
  86. giab_bed=giab_bed,
  87. giab_snv=giab_snv,
  88. giab_snv_idx=giab_snv_idx,
  89. giab_indel=giab_indel,
  90. giab_indel_idx=giab_indel_idx,
  91. sdf=sdf,
  92. kernel=kernel,
  93. nu=nu,
  94. cluster_config=cluster_config,
  95. disk_size=disk_size
  96. }
  97. }