]> git.donarmstrong.com Git - samtools.git/blobdiff - samtools.1
Release samtools-0.1.4
[samtools.git] / samtools.1
index 91f627f77195021323094033d8dab25c359bc1e7..99ab3f6d55d72e3efe32b99dc962268d161a33c6 100644 (file)
@@ -1,10 +1,10 @@
-.TH samtools 1 "22 December 2008" "samtools-0.1.1" "Bioinformatics tools"
+.TH samtools 1 "21 May 2009" "samtools-0.1.4" "Bioinformatics tools"
 .SH NAME
 .PP
 samtools - Utilities for the Sequence Alignment/Map (SAM) format
 .SH SYNOPSIS
 .PP
-samtools import ref_list.txt aln.sam.gz aln.bam
+samtools view -bt ref_list.txt -o aln.bam aln.sam.gz
 .PP
 samtools sort aln.bam aln.sorted
 .PP
@@ -32,21 +32,15 @@ allows to retrieve reads in any regions swiftly.
 .B import
 samtools import <in.ref_list> <in.sam> <out.bam>
 
-Convert alignments in SAM format to BAM format. File
-.I <in.ref_list>
-is TAB-delimited. Each line must contain the reference name and the
-length of the reference, one line for each distinct reference;
-additional fields are ignored. This file also defines the order of the
-reference sequences in sorting. File
-.I <in.sam>
-can be optionally compressed by zlib or gzip. A single hyphen is
-recognized as stdin or stdout, depending on the context.
+Since 0.1.4, this command is an alias of:
+
+samtools view -bt <in.ref_list> -o <out.bam> <in.sam>
 
 .TP
 .B sort
 samtools sort [-n] [-m maxMem] <in.bam> <out.prefix>
 
-Sort alignments based on the leftmost coordinate. File
+Sort alignments by leftmost coordinates. File
 .I <out.prefix>.bam
 will be created. This command may also create temporary files
 .I <out.prefix>.%d.bam
@@ -60,7 +54,7 @@ option -m).
 Sort by read names rather than by chromosomal coordinates
 .TP
 .B -m INT
-Approximately the maximum required memory.
+Approximately the maximum required memory. [500000000]
 .RE
 
 .TP
@@ -91,7 +85,8 @@ will be created.
 
 .TP
 .B view
-samtools view [-b] <in.bam> [region1 [...]]
+samtools view [-bhHS] [-t in.refList] [-o output] [-f reqFlag] [-F
+skipFlag] [-q minMapQ] <in.bam> [region1 [...]]
 
 Extract/print all or sub alignments in SAM or BAM format. If no region
 is specified, all the alignments will be printed; otherwise only
@@ -105,6 +100,41 @@ format: `chr2', `chr2:1000000' or `chr2:1,000,000-2,000,000'.
 .TP 8
 .B -b
 Output in the BAM format.
+.TP
+.B -h
+Include the header in the output.
+.TP
+.B -H
+Output the header only.
+.TP
+.B -S
+Input is in SAM. If @SQ header lines are absent, the
+.B `-t'
+option is required.
+.TP
+.B -t FILE
+This file is TAB-delimited. Each line must contain the reference name
+and the length of the reference, one line for each distinct reference;
+additional fields are ignored. This file also defines the order of the
+reference sequences in sorting. If you run `samtools faidx <ref.fa>',
+the resultant index file
+.I <ref.fa>.fai
+can be used as this
+.I <in.ref_list>
+file.
+.TP
+.B -o FILE
+Output file [stdout]
+.TP
+.B -f INT
+Only output alignments with all bits in INT present in the FLAG
+field. INT can be in hex in the format of /^0x[0-9A-F]+/ [0]
+.TP
+.B -F INT
+Skip alignments with bits present in INT [0]
+.TP
+.B -q INT
+Skip alignments with MAPQ smaller than INT [0]
 .RE
 
 .TP
@@ -125,7 +155,7 @@ format.
 .TP
 .B pileup
 samtools pileup [-f in.ref.fasta] [-t in.ref_list] [-l in.site_list]
-[-s] [-c] [-T theta] [-N nHap] [-r pairDiffRate] <in.alignment>
+[-iscg] [-T theta] [-N nHap] [-r pairDiffRate] <in.alignment>
 
 Print the alignment in the pileup format. In the pileup format, each
 line represents a genomic position, consisting of chromosome name,
@@ -139,7 +169,8 @@ on the reverse strand. A pattern `\\+[0-9]+[ACGTNacgtn]+' indicates
 there is an insertion between this reference position and the next
 reference position. The length of the insertion is given by the integer
 in the pattern, followed by the inserted sequence. Similarly, a pattern
-`-[0-9]+[ACGTNacgtn]+' represents a deletion from the reference. Also at
+`-[0-9]+[ACGTNacgtn]+' represents a deletion from the reference. The
+deleted bases will be presented as `*' in the following lines. Also at
 the read base column, a symbol `^' marks the start of a read segment
 which is a contiguous subsequence on the read separated by `N/S/H' CIGAR
 operations. The ASCII of the character following `^' minus 33 gives the
@@ -147,15 +178,14 @@ mapping quality. A symbol `$' marks the end of a read segment.
 
 If option
 .B -c
-is applied, the consensus base, consensus quality, SNP quality and
-maximum mapping quality of the reads covering the site will be inserted
-between the `reference base' and the `read bases' columns. An indel
-occupies an additional line. Each indel line consists of chromosome
-name, coordinate, a star, top two high-scoring ins/del sequences, the
-number of reads strongly supporting the first indel, the number of reads
-strongly supporting the second indel, the number of reads that confer
-little information on distinguishing indels and the number of reads that
-contain indels different from the top two ones.
+is applied, the consensus base, consensus quality, SNP quality and RMS
+mapping quality of the reads covering the site will be inserted between
+the `reference base' and the `read bases' columns. An indel occupies an
+additional line. Each indel line consists of chromosome name,
+coordinate, a star, the genotype, consensus quality, SNP quality, RMS
+mapping quality, # covering reads, the first alllele, the second allele,
+# reads supporting the first allele, # reads supporting the second
+allele and # reads containing indels different from the top two alleles.
 
 .B OPTIONS:
 .RS
@@ -165,6 +195,10 @@ contain indels different from the top two ones.
 Print the mapping quality as the last column. This option makes the
 output easier to parse, although this format is not space efficient.
 
+.TP
+.B -i
+Only output pileup lines containing indels.
+
 .TP
 .B -f FILE
 The reference sequence in the FASTA format. Index file
@@ -194,7 +228,7 @@ as in the default format we may not know the mapping quality.
 
 .TP
 .B -c
-Call the consensus sequnce using MAQ consensus model. Options
+Call the consensus sequence using MAQ consensus model. Options
 .B -T,
 .B -N
 and
@@ -203,6 +237,11 @@ are only effective when
 .B -c
 is in use.
 
+.TP
+.B -g
+Generate genotype likelihood in the binary GLFv3 format. This option
+suppresses -c, -i and -s.
+
 .TP
 .B -T FLOAT
 The theta parameter (error dependency coefficient) in the maq consensus
@@ -230,24 +269,111 @@ seen. This is a known issue and will be improved later.
 
 .RE
 
+.TP
+.B fixmate
+samtools fixmate <in.nameSrt.bam> <out.bam>
+
+Fill in mate coordinates, ISIZE and mate related flags from a
+name-sorted alignment.
+
+.TP
+.B rmdup
+samtools rmdup <input.srt.bam> <out.bam>
+
+Remove potential PCR duplicates: if multiple read pairs have identical
+external coordinates, only retain the pair with highest mapping quality.
+This command
+.B ONLY
+works with FR orientation and requires ISIZE is correctly set.
+
+.RE
+
+.TP
+.B rmdupse
+samtools rmdupse <input.srt.bam> <out.bam>
+
+Remove potential duplicates for single-ended reads. This command will
+treat all reads as single-ended even if they are paired in fact.
+
+.RE
+
+.TP
+.B fillmd
+samtools fillmd [-e] <aln.bam> <ref.fasta>
+
+Generate the MD tag. If the MD tag is already present, this command will
+give a warning if the MD tag generated is different from the existing
+tag.
+
+.B OPTIONS:
+.RS
+.TP 8
+.B -e
+Convert a the read base to = if it is identical to the aligned reference
+base. Indel caller does not support the = bases at the moment.
+
+.RE
+
+
+.SH SAM FORFAM
+
+SAM is TAB-delimited. Apart from the header lines, which are started
+with the `@' symbol, each alignment line consists of:
+
+.TS
+center box;
+cb | cb | cb
+n | l | l .
+Col    Field   Description
+_
+1      QNAME   Query (pair) NAME
+2      FLAG    bitwise FLAG
+3      RNAME   Reference sequence NAME
+4      POS     1-based leftmost POSition/coordinate of clipped sequence
+5      MAPQ    MAPping Quality (Phred-scaled)
+6      CIAGR   extended CIGAR string
+7      MRNM    Mate Reference sequence NaMe (`=' if same as RNAME)
+8      MPOS    1-based Mate POSistion
+9      ISIZE   Inferred insert SIZE
+10     SEQ     query SEQuence on the same strand as the reference
+11     QUAL    query QUALity (ASCII-33 gives the Phred base quality)
+12     OPT     variable OPTional fields in the format TAG:VTYPE:VALUE
+.TE
+
+.PP
+Each bit in the FLAG field is defined as:
+
+.TS
+center box;
+cb | cb
+l | l .
+Flag   Description
+_
+0x0001 the read is paired in sequencing
+0x0002 the read is mapped in a proper pair
+0x0004 the query sequence itself is unmapped
+0x0008 the mate is unmapped
+0x0010 strand of the query (1 for reverse)
+0x0020 strand of the mate
+0x0040 the read is the first read in a pair
+0x0080 the read is the second read in a pair
+0x0100 the alignment is not primary
+0x0200 the read fails platform/vendor quality checks
+0x0400 the read is either a PCR or an optical duplicate
+.TE
+
 .SH LIMITATIONS
 .PP
 .IP o 2
-In general, more testing is needed to ensure there is no severe bug.
-.IP o 2
-PCR duplicate removal has not been implemented.
-.IP o 2
-Only MAQ->SAM converter is implemented. More converters are needed.
-.IP o 2
-Reference sequence names and lengths are not acquired from the BAM/SAM header.
+Unaligned words used in bam_import.c, bam_endian.h, bam.c and bam_aux.c.
 .IP o 2
-CIGAR operations N and P may not be properly handled.
+CIGAR operation P is not properly handled at the moment.
 .IP o 2
-There is a small known memory leak in the viewer.
+The text viewer mysteriously crashes in a very rare case.
 
 .SH AUTHOR
 .PP
-Heng Li from the Sanger Institute is the author of samtools. Bob
+Heng Li from the Sanger Institute wrote the C version of samtools. Bob
 Handsaker from the Broad Institute implemented the BGZF library and Jue
 Ruan from Beijing Genomics Institute wrote the RAZF library. Various
 people in the 1000Genomes Project contributed to the SAM format