diff --git a/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/HaplotypeCaller.scala b/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/HaplotypeCaller.scala index 001fb9d17b858320d22549bae321ca0b820eac12..b8f4ea4efa3ea8cfed563c2b82651c0001b794f7 100644 --- a/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/HaplotypeCaller.scala +++ b/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/HaplotypeCaller.scala @@ -9,40 +9,40 @@ import nl.lumc.sasc.biopet.core.config.Configurable import org.broadinstitute.gatk.utils.variant.GATKVCFIndexType class HaplotypeCaller(val root: Configurable) extends org.broadinstitute.gatk.queue.extensions.gatk.HaplotypeCaller with GatkGeneral { - override def afterGraph { - super.afterGraph - - min_mapping_quality_score = config("minMappingQualityScore", default = 20) - if (config.contains("scattercount")) scatterCount = config("scattercount") - if (config.contains("dbsnp")) this.dbsnp = config("dbsnp") - this.sample_ploidy = config("ploidy") - nct = config("threads", default = 1) - bamOutput = config("bamOutput") - memoryLimit = Option(nct.getOrElse(1) * 2) - if (config.contains("allSitePLs")) this.allSitePLs = config("allSitePLs") - if (config.contains("output_mode")) { - import org.broadinstitute.gatk.tools.walkers.genotyper.OutputMode._ - config("output_mode").asString match { - case "EMIT_ALL_CONFIDENT_SITES" => output_mode = EMIT_ALL_CONFIDENT_SITES - case "EMIT_ALL_SITES" => output_mode = EMIT_ALL_SITES - case "EMIT_VARIANTS_ONLY" => output_mode = EMIT_VARIANTS_ONLY - case e => logger.warn("output mode '" + e + "' does not exist") - } + min_mapping_quality_score = config("minMappingQualityScore", default = 20) + scatterCount = config("scattercount", default = 1) + if (config.contains("dbsnp")) this.dbsnp = config("dbsnp") + this.sample_ploidy = config("ploidy") + if (config.contains("bamOutput")) bamOutput = config("bamOutput") + if (config.contains("allSitePLs")) allSitePLs = config("allSitePLs") + if (config.contains("output_mode")) { + import org.broadinstitute.gatk.tools.walkers.genotyper.OutputMode._ + config("output_mode").asString match { + case "EMIT_ALL_CONFIDENT_SITES" => output_mode = EMIT_ALL_CONFIDENT_SITES + case "EMIT_ALL_SITES" => output_mode = EMIT_ALL_SITES + case "EMIT_VARIANTS_ONLY" => output_mode = EMIT_VARIANTS_ONLY + case e => logger.warn("output mode '" + e + "' does not exist") } + } - if (config("inputtype", default = "dna").asString == "rna") { - dontUseSoftClippedBases = config("dontusesoftclippedbases", default = true) - stand_call_conf = config("stand_call_conf", default = 5) - stand_emit_conf = config("stand_emit_conf", default = 0) - } else { - dontUseSoftClippedBases = config("dontusesoftclippedbases", default = false) - stand_call_conf = config("stand_call_conf", default = 5) - stand_emit_conf = config("stand_emit_conf", default = 0) - } + if (config("inputtype", default = "dna").asString == "rna") { + dontUseSoftClippedBases = config("dontusesoftclippedbases", default = true) + stand_call_conf = config("stand_call_conf", default = 5) + stand_emit_conf = config("stand_emit_conf", default = 0) + } else { + dontUseSoftClippedBases = config("dontusesoftclippedbases", default = false) + stand_call_conf = config("stand_call_conf", default = 5) + stand_emit_conf = config("stand_emit_conf", default = 0) + } + + override def afterGraph { + super.afterGraph if (bamOutput != null && nct.getOrElse(1) > 1) { - nct = Option(1) + threads = 1 logger.warn("BamOutput is on, nct/threads is forced to set on 1, this option is only for debug") } + nct = Some(threads) + memoryLimit = Option(memoryLimit.getOrElse(2.0) * nct.getOrElse(1)) } def useGvcf() { diff --git a/protected/biopet-gatk-pipelines/src/main/scala/nl/lumc/sasc/biopet/pipelines/gatk/GatkVariantcalling.scala b/protected/biopet-gatk-pipelines/src/main/scala/nl/lumc/sasc/biopet/pipelines/gatk/GatkVariantcalling.scala index 10036b6bc88bfb9061a2d6e8e78eb5bc821db4da..8bac4aaf68c33a245da877d460bc26abb9ebe564 100644 --- a/protected/biopet-gatk-pipelines/src/main/scala/nl/lumc/sasc/biopet/pipelines/gatk/GatkVariantcalling.scala +++ b/protected/biopet-gatk-pipelines/src/main/scala/nl/lumc/sasc/biopet/pipelines/gatk/GatkVariantcalling.scala @@ -50,7 +50,7 @@ class GatkVariantcalling(val root: Configurable) extends QScript with BiopetQScr def init() { if (outputName == null && sampleID != null) outputName = sampleID - else if (outputName == null) outputName = "noname" + else if (outputName == null) outputName = config("output_name", default = "noname") if (outputDir == null) throw new IllegalStateException("Missing Output directory on gatk module") else if (!outputDir.endsWith("/")) outputDir += "/" diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetCommandLineFunctionTrait.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetCommandLineFunctionTrait.scala index 97cc2bd46adc5826c560b9a0759f4379e2ff5f0b..4a5b25f7a5b816fe32ad39897a334a6e13fe1eda 100644 --- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetCommandLineFunctionTrait.scala +++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetCommandLineFunctionTrait.scala @@ -15,13 +15,11 @@ */ package nl.lumc.sasc.biopet.core -//import java.io.BufferedInputStream import java.io.File import nl.lumc.sasc.biopet.core.config.Configurable import org.broadinstitute.gatk.queue.QException import org.broadinstitute.gatk.queue.function.CommandLineFunction import org.broadinstitute.gatk.utils.commandline.{ Input, Argument } -//import scala.io.Source import scala.sys.process.{ Process, ProcessLogger } import scala.util.matching.Regex import java.io.FileInputStream @@ -53,7 +51,7 @@ trait BiopetCommandLineFunctionTrait extends CommandLineFunction with Configurab override def freezeFieldValues() { checkExecutable afterGraph - jobOutputFile = new File(firstOutput.getParent + "/." + firstOutput.getName + "." + configName + ".out") + if (jobOutputFile == null) jobOutputFile = new File(firstOutput.getParent + "/." + firstOutput.getName + "." + configName + ".out") if (threads == 0) threads = getThreads(defaultThreads) if (threads > 1) nCoresRequest = Option(threads) @@ -62,8 +60,8 @@ trait BiopetCommandLineFunctionTrait extends CommandLineFunction with Configurab vmem = config("vmem") if (vmem.isEmpty && defaultVmem.nonEmpty) vmem = Some(defaultVmem) } - if (vmem != null) jobResourceRequests :+= "h_vmem=" + vmem - jobName = configName + ":" + firstOutput.getName + if (vmem.isDefined) jobResourceRequests :+= "h_vmem=" + vmem.get + jobName = configName + ":" + (if (firstOutput != null) firstOutput.getName else jobOutputFile) super.freezeFieldValues() }