mutectcaller
This tool is an accelerated version of the GATK somatic variant caller, Mutect2, which takes aligned BAMs from the FQ2BAM tool, and outputs a VCF file. This can take as input either a single (“tumor-only”) BAM, or a pair of BAMs (“tumor-normal”) to provide a baseline to call somatic variants against.
The figure below shows the high-level functionality of mutectcaller. All dotted boxes indicate optional data, with some constraints.
# This command assumes all the inputs are in INPUT_DIR and all the outputs go to OUTPUT_DIR.
$ docker run --rm --gpus all --volume INPUT_DIR:/workdir --volume OUTPUT_DIR:/outputdir \
--workdir /workdir \
nvcr.io/nvidia/clara/clara-parabricks:4.1.0-1 \
pbrun mutectcaller \
--ref /workdir/${REFERENCE_FILE} \
--tumor-name tumor \
--in-tumor-bam /workdir/${INPUT_TUMOR_BAM} \
--in-normal-bam /workdir/${INPUT_NORMAL_BAM} \
--normal-name normal \
--out-vcf /outputdir/${OUTPUT_VCF}
The command below is the GATK4 counterpart of the Parabricks command above. The output from this command will be identical to the output from the above command. See the Output Comparison page for comparing the results.
$ gatk Mutect2 \
-R <INPUT_DIR>/${REFERENCE_FILE} \
--input <INPUT_DIR>/${INPUT_TUMOR_BAM} \
--tumor-sample tumor \
--input <INPUT_DIR>/${INPUT_NORMAL_BAM} \
--normal-sample normal \
--output <OUTPUT_DIR>/${OUTPUT_VCF}
Parabricks Mutect2 from version 3.7.0-1 has started supporting Panel of Normals to process variants. There are three steps involved:
prepon
running mutectcaller with the index generated by prepon
postpon, updating the vcf with pon information
# The first command will generate input.pon that should be done once for the input.vcf.gz
# This command assumes all the inputs are in INPUT_DIR and all the outputs go to OUTPUT_DIR.
$ docker run --rm --gpus all --volume INPUT_DIR:/workdir --volume OUTPUT_DIR:/outputdir \
--workdir /workdir \
nvcr.io/nvidia/clara/clara-parabricks:4.1.0-1 \
pbrun prepon --in-pon-file /workdir/${INPUT_PON_VCF}
# Run mutectcaller with the pon index
# This command assumes all the inputs are in INPUT_DIR and all the outputs go to OUTPUT_DIR.
$ docker run --rm --gpus all --volume INPUT_DIR:/workdir --volume OUTPUT_DIR:/outputdir \
--workdir /workdir \
nvcr.io/nvidia/clara/clara-parabricks:4.1.0-1 \
pbrun mutectcaller \
--ref /workdir/${REFERENCE_FILE} \
--tumor-name tumor \
--in-tumor-bam /workdir/${INPUT_TUMOR_BAM} \
--in-normal-bam /workdir/${INPUT_NORMAL_BAM} \
--pon /workdir/${INPUT_PON_VCF} \
--normal-name normal \
--out-vcf /outputdir/${OUTPUT_VCF}
# Add the annotation to the output.vcf generated above
# This command assumes all the inputs are in INPUT_DIR and all the outputs go to OUTPUT_DIR.
$ docker run --rm --gpus all --volume INPUT_DIR:/workdir --volume OUTPUT_DIR:/outputdir \
--workdir /workdir \
nvcr.io/nvidia/clara/clara-parabricks:4.1.0-1 \
pbrun postpon \
--in-vcf /workdir/${OUTPUT_VCF} \
--in-pon-file /workdir/${INPUT_PON_FILE} \
--out-vcf /outputdir/${OUTPUT_ANNOTATED_VCF}
Run GPU mutect2 to convert BAM/CRAM to vcf
Input/Output file options
- --ref REF
- --out-vcf OUT_VCF
- --in-tumor-bam IN_TUMOR_BAM
- --in-normal-bam IN_NORMAL_BAM
- --in-tumor-recal-file IN_TUMOR_RECAL_FILE
- --in-normal-recal-file IN_NORMAL_RECAL_FILE
- --interval-file INTERVAL_FILE
- --pon PON
Path to the reference file. (default: None)
Option is required.
Path of the VCF file after Variant Calling. (default: None)
Option is required.
Path of the BAM/CRAM file for tumor reads. (default: None)
Option is required.
Path of the BAM/CRAM file for normal reads. (default: None)
Path of the report file after Base Quality Score Recalibration for tumor sample. (default: None)
Path of the report file after Base Quality Score Recalibration for normal sample. (default: None)
Path to an interval file in one of these formats: Picard-style (.interval_list or .picard), GATK-style (.list or .intervals), or BED file (.bed). This option can be used multiple times. (default: None)
Path of the vcf.gz PON file. Make sure you run prepon first and there is a '.pon' file already. (default: None)
Tool Options:
- --ploidy PLOIDY
- --max-mnp-distance MAX_MNP_DISTANCE
- --mutectcaller-options MUTECTCALLER_OPTIONS
- --tumor-name TUMOR_NAME
- --normal-name NORMAL_NAME
- -L INTERVAL, --interval INTERVAL
- -ip INTERVAL_PADDING, --interval-padding INTERVAL_PADDING
Ploidy assumed for the BAM file. Currently only haploid (ploidy 1) and diploid (ploidy 2) are supported. (default: 2)
Two or more phased substitutions separated by this distance or less are merged into MNPs. (default: 1)
Pass supported mutectcaller options as one string. The following are currently supported original mutectcaller options: -pcr-indel-model <NONE, HOSTILE, AGGRESSIVE, CONSERVATIVE> (e.g. --mutectcaller-options="-pcr-indel-model HOSTILE"). (default: None)
Name of the sample for tumor reads. This MUST match the SM tag in the tumor BAM file. (default: None)
Option is required.
Name of the sample for normal reads. If specified, this MUST match the SM tag in the normal BAM file. (default: None)
Interval within which to call the variants from the BAM/CRAM file. All intervals will have a padding of 100 to get read records, and overlapping intervals will be combined. Interval files should be passed using the --interval-file option. This option can be used multiple times (e.g. "-L chr1 -L chr2:10000 -L chr3:20000+ -L chr4:10000-20000"). (default: None)
Amount of padding (in base pairs) to add to each interval you are including. (default: None)
Common options:
- --logfile LOGFILE
- --tmp-dir TMP_DIR
- --with-petagene-dir WITH_PETAGENE_DIR
- --keep-tmp
- --no-seccomp-override
- --version
Path to the log file. If not specified, messages will only be written to the standard error output. (default: None)
Full path to the directory where temporary files will be stored.
Full path to the PetaGene installation directory. By default, this should have been installed at /opt/petagene. Use of this option also requires that the PetaLink library has been preloaded by setting the LD_PRELOAD environment variable. Optionally set the PETASUITE_REFPATH and PGCLOUD_CREDPATH environment variables that are used for data and credentials (default: None)
Do not delete the directory storing temporary files after completion.
Do not override seccomp options for docker (default: None).
View compatible software versions.
GPU options:
- --num-gpus NUM_GPUS
Number of GPUs to use for a run. GPUs 0..(NUM_GPUS-1) will be used.