您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

79 行
2.0KB

  1. task TNseq {
  2. String sample
  3. String SENTIEON_LICENSE
  4. File tumor_bam
  5. File tumor_bam_index
  6. File? normal_bam
  7. File? normal_bam_index
  8. String tumor_name
  9. String normal_name
  10. File ref_dir
  11. String fasta
  12. File germline_resource
  13. File germline_resource_tbi
  14. File? regions
  15. Int? interval_padding
  16. String docker
  17. String cluster_config
  18. String disk_size
  19. command <<<
  20. set -o pipefail
  21. set -e
  22. export SENTIEON_LICENSE=${SENTIEON_LICENSE}
  23. nt=$(nproc)
  24. if [ ${regions} ]; then
  25. INTERVAL="--interval ${regions} --interval_padding ${interval_padding}"
  26. else
  27. INTERVAL=""
  28. fi
  29. if [ ${normal_bam} ]; then
  30. INPUT="-i ${tumor_bam} -i ${normal_bam}"
  31. SAMPLE="--tumor_sample ${tumor_name} --normal_sample ${normal_name}"
  32. else
  33. INPUT="-i ${tumor_bam}"
  34. SAMPLE="--tumor_sample ${tumor_name}"
  35. fi
  36. sentieon driver -t $nt -r ${ref_dir}/${fasta} \
  37. $INPUT $INTERVAL \
  38. --algo TNhaplotyper2 $SAMPLE \
  39. --germline_vcf ${germline_resource} \
  40. ${sample}.TNseq.raw.vcf \
  41. --algo OrientationBias --tumor_sample ${tumor_name} \
  42. ${sample}.orientation \
  43. --algo ContaminationModel $SAMPLE \
  44. --vcf ${germline_resource} \
  45. --tumor_segments ${sample}.contamination.segments \
  46. ${sample}.contamination
  47. sentieon driver -t $nt \
  48. -r ${ref_dir}/${fasta} \
  49. --algo TNfilter $SAMPLE \
  50. -v ${sample}.TNseq.raw.vcf \
  51. --contamination ${sample}.contamination \
  52. --tumor_segments ${sample}.contamination.segments \
  53. --orientation_priors ${sample}.orientation \
  54. ${sample}.TNseq.vcf
  55. >>>
  56. runtime {
  57. docker: docker
  58. cluster: cluster_config
  59. systemDisk: "cloud_ssd 40"
  60. dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/"
  61. }
  62. output {
  63. File vcf = "${sample}.TNseq.vcf"
  64. File vcf_index = "${sample}.TNseq.vcf.idx"
  65. File contamination = "${sample}.contamination"
  66. File contamination_segments = "${sample}.contamination.segments"
  67. File orientation = "${sample}.orientation"
  68. }
  69. }