@@ -18,6 +18,11 @@ task alignment_metrics {
1818 XMX = $(echo "-Xmx" $MEM_MB "m" )
1919 echo "Requesting $MEM_MB MB of RAM for Java"
2020
21+ # R fails unless you do this, CollectInsertSizeMetrics needs R
22+ if [ ! -f /lib/x86_64-linux-gnu/libreadline.so.6 ]; then
23+ ln -s /lib/x86_64-linux-gnu/libreadline.so.7 /lib/x86_64-linux-gnu/libreadline.so.6
24+ fi
25+
2126 # requisite Picard fasta indexing
2227 cp "~{ref_fasta}" reference.fasta
2328 picard $XMX CreateSequenceDictionary -R reference.fasta
@@ -35,6 +40,13 @@ task alignment_metrics {
3540 -O picard_raw.alignment_metrics.txt
3641 grep -v \# picard_raw.alignment_metrics.txt | grep . | head -4 > picard_clean.alignment_metrics.txt
3742
43+ picard $XMX CollectInsertSizeMetrics \
44+ -I "~{aligned_bam}" \
45+ -O picard_raw.insert_size_metrics.txt \
46+ -H picard_raw.insert_size_metrics.pdf \
47+ --INCLUDE_DUPLICATES true
48+ grep -v \# picard_raw.insert_size_metrics.txt | grep . | head -2 > picard_clean.insert_size_metrics.txt
49+
3850 # prepend the sample name in order to facilitate tsv joining later
3951 SAMPLE = $(samtools view -H "~{aligned_bam}" | grep ^@RG | perl -lape 's/^@RG.*SM:(\S+).*$/$1/' | sort | uniq )
4052 echo -e "sample_sanitized\tbam" > prepend.txt
@@ -43,6 +55,9 @@ task alignment_metrics {
4355 echo -e "$SAMPLE \t~{out_basename}" >> prepend.txt
4456 echo -e "$SAMPLE \t~{out_basename}" >> prepend.txt
4557 paste prepend.txt picard_clean.alignment_metrics.txt > "~{out_basename}" .alignment_metrics.txt
58+ echo -e "sample_sanitized\tbam" > prepend.txt
59+ echo -e "$SAMPLE \t~{out_basename}" >> prepend.txt
60+ paste prepend.txt picard_clean.insert_size_metrics.txt > "~{out_basename}" .insert_size_metrics.txt
4661
4762 # actually don't know how to do CollectTargetedPcrMetrics yet
4863 if [ -n "~{primers_bed}" ]; then
@@ -54,8 +69,9 @@ task alignment_metrics {
5469 >>>
5570
5671 output {
57- File wgs_metrics = "~{out_basename }.raw_wgs_metrics.txt"
58- File alignment_metrics = "~{out_basename }.alignment_metrics.txt"
72+ File wgs_metrics = "~{out_basename }.raw_wgs_metrics.txt"
73+ File alignment_metrics = "~{out_basename }.alignment_metrics.txt"
74+ File insert_size_metrics = "~{out_basename }.insert_size_metrics.txt"
5975 }
6076
6177 runtime {
0 commit comments