Browse Source

同步至HPC-v20190527版

增加Unaligned片段成分分析
master
chenziyin 6 years ago
parent
commit
2fcc34e495
1 changed files with 95 additions and 30 deletions
  1. +95
    -30
      workflow.wdl

+ 95
- 30
workflow.wdl View File

import "./tasks/Fastqc.wdl" as Fastqc
import "./tasks/TrimAdapt.wdl" as TrimAdapt import "./tasks/TrimAdapt.wdl" as TrimAdapt
import "./tasks/ReadFilter.wdl" as ReadFilter import "./tasks/ReadFilter.wdl" as ReadFilter
import "./tasks/Align.wdl" as Align import "./tasks/Align.wdl" as Align
import "./tasks/ReadStats.wdl" as ReadStats import "./tasks/ReadStats.wdl" as ReadStats


workflow {{ project_name }} { workflow {{ project_name }} {

String sample_ID
String sample_id
File raw_fastq File raw_fastq
String docker_fastp
String docker_bowtie

String cluster_config
String disk_size


String adapter_seq String adapter_seq
Int randomBase_in_adapter Int randomBase_in_adapter
Int sequencing_length

Int qualified_quality_phred Int qualified_quality_phred
Int unqualified_percent_limit Int unqualified_percent_limit
Int n_base_limit Int n_base_limit
Int length_required Int length_required


File dir_index_mature
String prefix_index_mature
Int sum_unmatch_quality_limit
Int max_mismatch_allowed

File dir_index_miRNA
String prefix_index_miRNA
File dir_index_preMiRNA
String prefix_index_preMiRNA
File dir_index_piRNA
String prefix_index_piRNA
File dir_index_tRNA
String prefix_index_tRNA
File dir_index_RNA
String prefix_index_RNA
File dir_index_hg38
String prefix_index_hg38

String docker_fastqc
String docker_fastp
String docker_bowtie

String cluster_config

String disk_size

call Fastqc.Fastqc as Fastqc {
input:
in_fastq=raw_fastq,
docker=docker_fastqc, cluster_config=cluster_config, disk_size=disk_size
}


call TrimAdapt.TrimAdapt as TrimAdapt { call TrimAdapt.TrimAdapt as TrimAdapt {
input: input:
sample_ID=sample_ID,in_fastq=raw_fastq,
adapter_seq=adapter_seq, randomBase_in_adapter=randomBase_in_adapter,
sample_id=sample_id,in_fastq=raw_fastq,
adapter_seq=adapter_seq, randomBase_in_adapter=randomBase_in_adapter, sequencing_length=sequencing_length,
docker=docker_fastp, cluster_config=cluster_config, disk_size=disk_size docker=docker_fastp, cluster_config=cluster_config, disk_size=disk_size
} }



call ReadFilter.ReadFilter as ReadFilter { call ReadFilter.ReadFilter as ReadFilter {
input: input:
sample_ID=sample_ID,
sample_id=sample_id,
in_fastq=TrimAdapt.out_fastq, in_fastq=TrimAdapt.out_fastq,
qualified_quality_phred=qualified_quality_phred,unqualified_percent_limit=unqualified_percent_limit, qualified_quality_phred=qualified_quality_phred,unqualified_percent_limit=unqualified_percent_limit,
n_base_limit=n_base_limit, n_base_limit=n_base_limit,
docker=docker_fastp, cluster_config=cluster_config, disk_size=disk_size docker=docker_fastp, cluster_config=cluster_config, disk_size=disk_size
} }


call Align.Align as Align2Mature {
call Align.AlignToSenseOnly as Align2miRNA {
input: input:
sample_ID=sample_ID,
sample_id=sample_id,
in_fastq=ReadFilter.out_fastq, in_fastq=ReadFilter.out_fastq,
dir_index=dir_index_mature,prefix_index=prefix_index_mature,
sum_unmatch_quality_limit=sum_unmatch_quality_limit,
refname="miRNA",dir_index=dir_index_miRNA,prefix_index=prefix_index_miRNA,
max_mismatch_allowed=max_mismatch_allowed,
docker=docker_bowtie, cluster_config=cluster_config, disk_size=disk_size
}

call Align.AlignToSenseOnly as Align2PreMiRNA {
input:
sample_id=sample_id,
in_fastq=Align2miRNA.out_fastq,
refname="preMiRNA",dir_index=dir_index_preMiRNA,prefix_index=prefix_index_preMiRNA,
max_mismatch_allowed=max_mismatch_allowed,
docker=docker_bowtie, cluster_config=cluster_config, disk_size=disk_size docker=docker_bowtie, cluster_config=cluster_config, disk_size=disk_size
} }


call Quantification.Quantification as Quantification{
call Align.AlignToSenseOnly as Align2piRNA {
input: input:
sample_ID=sample_ID,
in_sam=Align2Mature.out_sam,
cluster_config=cluster_config, disk_size=disk_size
sample_id=sample_id,
in_fastq=Align2PreMiRNA.out_fastq,
refname="piRNA",dir_index=dir_index_piRNA,prefix_index=prefix_index_piRNA,
max_mismatch_allowed=max_mismatch_allowed,
docker=docker_bowtie, cluster_config=cluster_config, disk_size=disk_size
} }


call ReadStats.ReadStats as ReadStats {

call Align.AlignToSenseOnly as Align2tRNA {
input:
sample_id=sample_id,
in_fastq=Align2piRNA.out_fastq,
refname="tRNA",dir_index=dir_index_tRNA,prefix_index=prefix_index_tRNA,
max_mismatch_allowed=max_mismatch_allowed,
docker=docker_bowtie, cluster_config=cluster_config, disk_size=disk_size
}

call Align.AlignToSenseOnly as Align2RNA {
input: input:
sample_ID=sample_ID,
in_log_trimAdatper=TrimAdapt.out_log,
in_log_readFilter=ReadFilter.out_log,
in_log_align_mature=Align2Mature.out_log,
cluster_config=cluster_config, disk_size=disk_size
sample_id=sample_id,
in_fastq=Align2tRNA.out_fastq,
refname="RNA",dir_index=dir_index_RNA,prefix_index=prefix_index_RNA,
max_mismatch_allowed=max_mismatch_allowed,
docker=docker_bowtie, cluster_config=cluster_config, disk_size=disk_size
}
call Align.AlignToBothStrand as Align2Hg38 {
input:
sample_id=sample_id,
in_fastq=Align2RNA.out_fastq,
refname="Hg38",dir_index=dir_index_hg38,prefix_index=prefix_index_hg38,
max_mismatch_allowed=max_mismatch_allowed,
docker=docker_bowtie, cluster_config=cluster_config, disk_size=disk_size
}

call Quantification.Quantification as Quantification {
input:
sample_id=sample_id,
in_sam=Align2miRNA.out_sam,
cluster_config=cluster_config,disk_size=disk_size
} }


}
call ReadStats.ReadStats as ReadStats {
input:
sample_id=sample_id,
in_log_trimAdatper=TrimAdapt.out_log,in_log_readFilter=ReadFilter.out_log,
in_log_align_miRNA=Align2miRNA.out_log,in_log_align_preMiRNA=Align2PreMiRNA.out_log,in_log_align_piRNA=Align2piRNA.out_log,in_log_align_tRNA=Align2tRNA.out_log,in_log_align_RNA=Align2RNA.out_log,in_log_align_hg38=Align2Hg38.out_log,
in_sam_align_RNA=Align2RNA.out_sam,
cluster_config=cluster_config,disk_size=disk_size
}
}

Loading…
Cancel
Save