|
- import "./tasks/variantsNorm.wdl" as variantsNorm
- import "./tasks/mendelian.wdl" as mendelian
- import "./tasks/zipIndex.wdl" as zipIndex
- import "./tasks/VCFrename.wdl" as VCFrename
- import "./tasks/mergeSister.wdl" as mergeSister
- import "./tasks/reformVCF.wdl" as reformVCF
- import "./tasks/merge.wdl" as merge
- import "./tasks/votes.wdl" as votes
-
- workflow {{ project_name }} {
- File inputSamplesFile
- Array[Array[File]] inputSamples = read_tsv(inputSamplesFile)
- File ref_dir
- String fasta
- String cluster_config
- String disk_size
-
- scatter (quartet in inputSamples){
- call variantsNorm.variantsNorm as LCL5variantsNorm{
- input:
- vcf=quartet[0],
- ref_dir=ref_dir,
- fasta=fasta,
- sampleName=quartet[4],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call variantsNorm.variantsNorm as LCL6variantsNorm{
- input:
- vcf=quartet[1],
- ref_dir=ref_dir,
- fasta=fasta,
- sampleName=quartet[5],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call variantsNorm.variantsNorm as LCL7variantsNorm{
- input:
- vcf=quartet[2],
- ref_dir=ref_dir,
- fasta=fasta,
- sampleName=quartet[6],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call variantsNorm.variantsNorm as LCL8variantsNorm{
- input:
- vcf=quartet[3],
- ref_dir=ref_dir,
- fasta=fasta,
- sampleName=quartet[7],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call mendelian.mendelian as LCL5mendelian {
- input:
- child_vcf=LCL5variantsNorm.normed_vcf,
- LCL7_vcf=LCL7variantsNorm.normed_vcf,
- LCL8_vcf=LCL8variantsNorm.normed_vcf,
- LCL7_name=quartet[6],
- LCL8_name=quartet[7],
- child_name=quartet[4],
- ref_dir=ref_dir,
- fasta=fasta,
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call mendelian.mendelian as LCL6mendelian {
- input:
- child_vcf=LCL6variantsNorm.normed_vcf,
- LCL7_vcf=LCL7variantsNorm.normed_vcf,
- LCL8_vcf=LCL8variantsNorm.normed_vcf,
- LCL7_name=quartet[6],
- LCL8_name=quartet[7],
- child_name=quartet[5],
- ref_dir=ref_dir,
- fasta=fasta,
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call zipIndex.zipIndex as LCL5zipIndex {
- input:
- vcf=LCL5mendelian.trio_vcf,
- sample="LCL5",
- family_name=quartet[8],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call zipIndex.zipIndex as LCL6zipIndex {
- input:
- vcf=LCL6mendelian.trio_vcf,
- sample="LCL6",
- family_name=quartet[8],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call VCFrename.VCFrename as LCL5VCFrename {
- input:
- trio_vcf_gz=LCL5zipIndex.vcf_gz,
- trio_vcf_idx=LCL5zipIndex.vcf_idx,
- mother_name=quartet[7],
- father_name=quartet[6],
- child_name=quartet[4],
- family_name=quartet[8],
- child="LCL5",
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call VCFrename.VCFrename as LCL6VCFrename {
- input:
- trio_vcf_gz=LCL6zipIndex.vcf_gz,
- trio_vcf_idx=LCL6zipIndex.vcf_idx,
- mother_name=quartet[7],
- father_name=quartet[6],
- child_name=quartet[5],
- family_name=quartet[8],
- child="LCL6",
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call mergeSister.mergeSister as mergeSister {
- input:
- LCL5_trio_vcf_gz=LCL5VCFrename.rename_trio_vcf_gz,
- LCL5_trio_vcf_idx=LCL5VCFrename.rename_trio_vcf_idx,
- LCL6_trio_vcf_gz=LCL6VCFrename.rename_trio_vcf_gz,
- LCL6_trio_vcf_idx=LCL6VCFrename.rename_trio_vcf_idx,
- family_name=quartet[8],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call reformVCF.reformVCF as reformVCF {
- input:
- family_mendelian_info=mergeSister.family_mendelian_info,
- family_name=quartet[8],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call zipIndex.zipIndex as LCL5familyzipIndex {
- input:
- vcf=reformVCF.LCL5_family_info,
- sample='LCL5',
- family_name=quartet[8],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call zipIndex.zipIndex as LCL6familyzipIndex {
- input:
- vcf=reformVCF.LCL6_family_info,
- sample='LCL6',
- family_name=quartet[8],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call zipIndex.zipIndex as LCL7familyzipIndex {
- input:
- vcf=reformVCF.LCL7_family_info,
- sample='LCL7',
- family_name=quartet[8],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call zipIndex.zipIndex as LCL8familyzipIndex {
- input:
- vcf=reformVCF.LCL8_family_info,
- sample='LCL8',
- family_name=quartet[8],
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- }
- call merge.merge as LCL5merge {
- input:
- family_vcf_gz=LCL5familyzipIndex.vcf_gz,
- family_vcf_idx=LCL5familyzipIndex.vcf_idx,
- sample="LCL5",
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call votes.votes as LCL5votes{
- input:
- merged_vcf=LCL5merge.merged_vcf,
- vcf_dup=LCL5merge.vcf_dup,
- sample='LCL5',
- prefix='LCL5_consensus',
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call merge.merge as LCL6merge {
- input:
- family_vcf_gz=LCL6familyzipIndex.vcf_gz,
- family_vcf_idx=LCL6familyzipIndex.vcf_idx,
- sample="LCL6",
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call votes.votes as LCL6votes {
- input:
- merged_vcf=LCL6merge.merged_vcf,
- vcf_dup=LCL6merge.vcf_dup,
- sample='LCL6',
- prefix='LCL6_consensus',
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call merge.merge as LCL7merge {
- input:
- family_vcf_gz=LCL7familyzipIndex.vcf_gz,
- family_vcf_idx=LCL7familyzipIndex.vcf_idx,
- sample="LCL7",
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call votes.votes as LCL7votes {
- input:
- merged_vcf=LCL7merge.merged_vcf,
- vcf_dup=LCL7merge.vcf_dup,
- sample='LCL7',
- prefix='LCL7_consensus',
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call merge.merge as LCL8merge {
- input:
- family_vcf_gz=LCL8familyzipIndex.vcf_gz,
- family_vcf_idx=LCL8familyzipIndex.vcf_idx,
- sample="LCL8",
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- call votes.votes as LCL8votes {
- input:
- merged_vcf=LCL8merge.merged_vcf,
- vcf_dup=LCL8merge.vcf_dup,
- sample='LCL8',
- prefix='LCL8_consensus',
- cluster_config=cluster_config,
- disk_size=disk_size
- }
- }
|