Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

mendelian.wdl 2.1KB

5 lat temu
5 lat temu
5 lat temu
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. task mendelian {
  2. File mother_vcf_gz
  3. File father_vcf_gz
  4. File child_vcf_gz
  5. File mother_vcf_idx
  6. File father_vcf_idx
  7. File child_vcf_idx
  8. String mother_name
  9. String father_name
  10. String child_name
  11. String family_name
  12. File sdf
  13. String docker
  14. String cluster_config
  15. String disk_size
  16. command <<<
  17. rtg vcfmerge -o family.vcf.gz ${mother_vcf_gz} ${father_vcf_gz} ${child_vcf_gz}
  18. rtg vcfannotate -i family.vcf.gz -o family.anno.vcf.gz \
  19. --add-header "##SAMPLE=<ID=${mother_name},Sex=FEMALE>" \
  20. --add-header "##SAMPLE=<ID=${father_name},Sex=MALE>" \
  21. --add-header "##SAMPLE=<ID=${child_name},Sex=FEMALE>" \
  22. --add-header "##PEDIGREE=<Child=${child_name},Mother=${mother_name},Father=${father_name}>"
  23. rtg mendelian -i family.anno.vcf.gz -t ${sdf} -o ${family_name}.family.anno.mendelian.vcf.gz --lenient
  24. zcat ${family_name}.family.anno.mendelian.vcf.gz | grep '#' > header
  25. zcat ${family_name}.family.anno.mendelian.vcf.gz | grep -v '#'| grep 'MCU\|MCV' | cat header - > ${family_name}.violation.vcf
  26. zcat ${family_name}.family.anno.mendelian.vcf.gz | grep -v '#'| grep -v 'MCV' | grep -v 'MCU' | cat header - > ${family_name}.consistent.vcf
  27. rtg bgzip ${family_name}.violation.vcf
  28. rtg index -f vcf ${family_name}.violation.vcf.gz
  29. rtg bgzip ${family_name}.consistent.vcf
  30. rtg index -f vcf ${family_name}.consistent.vcf.gz
  31. rtg vcffilter -i ${child_vcf_gz} -o ${child_name}.violation.vcf.gz --include-vcf=${family_name}.violation.vcf.gz
  32. rtg vcffilter -i ${child_vcf_gz} -o ${child_name}.consistent.vcf.gz --include-vcf=${family_name}.consistent.vcf.gz
  33. >>>
  34. runtime {
  35. docker:docker
  36. cluster: cluster_config
  37. systemDisk: "cloud_ssd 40"
  38. dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/"
  39. }
  40. output {
  41. File family_vcf_gz = "${family_name}.family.anno.mendelian.vcf.gz"
  42. File family_vcf_index = "${family_name}.family.anno.mendelian.vcf.gz.tbi"
  43. File violation_vcf_gz = "${child_name}.violation.vcf.gz"
  44. File violation_vcf_idx = "${child_name}.violation.vcf.gz.tbi"
  45. File consistent_vcf_gz = "${child_name}.consistent.vcf.gz"
  46. File consistent_vcf_idx = "${child_name}.consistent.vcf.gz.tbi"
  47. }
  48. }